diff --git a/build/.DS_Store b/build/.DS_Store index a21467c..a07a5ee 100644 Binary files a/build/.DS_Store and b/build/.DS_Store differ diff --git a/build/404.html b/build/404.html index 2cfc4c8..68da647 100644 --- a/build/404.html +++ b/build/404.html @@ -1,4 +1,4 @@ -404: This page could not be found.Doormile — Delivering Trust. Beyond Boundaries

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

404

This page could not be found.

404

This page could not be found.

\ No newline at end of file +
\ No newline at end of file diff --git a/build/__next.__PAGE__.txt b/build/__next.__PAGE__.txt index 798f01f..55c51ae 100644 --- a/build/__next.__PAGE__.txt +++ b/build/__next.__PAGE__.txt @@ -1,16 +1,16 @@ 1:"$Sreact.fragment" -2:I[97677,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -3:I[58140,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -4:I[36854,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -10:I[32693,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -11:I[24911,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -12:I[14224,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -17:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[97677,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +3:I[58140,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +4:I[36854,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +10:I[32693,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +11:I[24911,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +12:I[14224,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +17:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 18:"$Sreact.suspense" -1a:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"ScrollReveal"] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],""] -1c:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"Image"] -0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"61","className":"elementor elementor-61","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{}],["$","div",null,{"className":"elementor-element elementor-element-b62c0b3 e-con-full e-flex cut-corner-no sticky-container-off e-con e-parent","data-id":"b62c0b3","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-592e9e8 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"592e9e8","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-ab41b28 elementor-widget elementor-widget-logico_marquee","data-id":"ab41b28","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_marquee.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-ticker-wrapper","style":{"overflow":"hidden","position":"relative","width":"100%"},"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"\n @keyframes cssMarquee {\n 0% { transform: translate3d(0, 0, 0); }\n 100% { transform: translate3d(-33.33%, 0, 0); }\n }\n .marquee-container-css {\n display: flex;\n width: max-content;\n animation: cssMarquee 25s linear infinite;\n }\n .marquee-container-css:hover {\n animation-play-state: paused;\n }\n "}}],["$","div",null,{"className":"marquee-container-css","children":[["$","div","0",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","1",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","2",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","3",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","4",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":"$L5"}]]}],"$L6","$L7","$L8","$L9"]}]]}]}]}]}]}],"$La","$Lb","$Lc","$Ld"]}]}]}]}],["$Le"],"$Lf"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +1a:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],""] +1c:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"Image"] +0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"61","className":"elementor elementor-61","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{}],["$","div",null,{"className":"elementor-element elementor-element-b62c0b3 e-con-full e-flex cut-corner-no sticky-container-off e-con e-parent","data-id":"b62c0b3","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-592e9e8 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"592e9e8","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-ab41b28 elementor-widget elementor-widget-logico_marquee","data-id":"ab41b28","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_marquee.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-ticker-wrapper","style":{"overflow":"hidden","position":"relative","width":"100%"},"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"\n @keyframes cssMarquee {\n 0% { transform: translate3d(0, 0, 0); }\n 100% { transform: translate3d(-33.33%, 0, 0); }\n }\n .marquee-container-css {\n display: flex;\n width: max-content;\n animation: cssMarquee 25s linear infinite;\n }\n .marquee-container-css:hover {\n animation-play-state: paused;\n }\n "}}],["$","div",null,{"className":"marquee-container-css","children":[["$","div","0",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","1",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","2",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","3",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","4",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":"$L5"}]]}],"$L6","$L7","$L8","$L9"]}]]}]}]}]}]}],"$La","$Lb","$Lc","$Ld"]}]}]}]}],["$Le"],"$Lf"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 5:["$","i",null,{"className":"fontello icon-half-logo"}] 6:["$","div","5",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}] 7:["$","div","6",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}] @@ -57,7 +57,7 @@ c:["$","$L12",null,{}] } } d:["$","div",null,{"className":"elementor-element elementor-element-3b4a7cc e-flex e-con-boxed cut-corner-no sticky-container-off e-con e-parent","data-id":"3b4a7cc","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"e-con-inner","children":["$","div",null,{"className":"elementor-element elementor-element-d602f7f e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"d602f7f","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-f64bd88 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"f64bd88","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-5ed2dbb e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"5ed2dbb","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-c8162c4 elementor-widget elementor-widget-logico_heading industry-section-label","data-id":"c8162c4","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$13"}}],["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"/ Industry Solutions /"}]}]]}],["$","div",null,{"className":"elementor-element elementor-element-1487241 elementor-widget__width-initial elementor-widget elementor-widget-logico_heading","data-id":"1487241","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","style":{"margin":"30px 0 0 0"},"children":["$","h3",null,{"className":"logico-title","style":{"fontSize":"clamp(28px, 3.5vw, 48px)","lineHeight":"1.1","fontWeight":800,"textTransform":"uppercase","maxWidth":"900px"},"children":"$L14"}]}]}]]}],"$L15"]}],"$L16"]}]}]}] -e:["$","script","script-0",{"src":"/_next/static/chunks/000jk3-x5hh9p.js","async":true}] +e:["$","script","script-0",{"src":"/_next/static/chunks/0szb3fwecq10z.js","async":true}] f:["$","$L17",null,{"children":["$","$18",null,{"name":"Next.MetadataOutlet","children":"$@19"}]}] 14:["$","$L1a",null,{"delay":0.05,"duration":0.8,"yOffset":25,"children":["Smart solutions built exclusively for your ",["$","span",null,{"style":{"color":"#c01227"},"children":"industry"}]]}] 15:["$","div",null,{"className":"elementor-element elementor-element-4af73cb e-con-full elementor-hidden-tablet elementor-hidden-mobile_extra elementor-hidden-mobile e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"4af73cb","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-46f2f7d elementor-widget__width-initial elementor-widget elementor-widget-logico_button","data-id":"46f2f7d","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_button.default","children":["$","div",null,{"className":"elementor-widget-container"}]}]}] diff --git a/build/__next._full.txt b/build/__next._full.txt index 65ff8b6..32e6943 100644 --- a/build/__next._full.txt +++ b/build/__next._full.txt @@ -1,19 +1,19 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -c:I[97677,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -d:I[58140,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -e:I[36854,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -17:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +c:I[97677,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +d:I[58140,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +e:I[36854,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +17:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -21,14 +21,14 @@ e:I[36854,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"61","className":"elementor elementor-61","children":[["$","$Lc",null,{}],["$","$Ld",null,{}],["$","$Le",null,{}],["$","div",null,{"className":"elementor-element elementor-element-b62c0b3 e-con-full e-flex cut-corner-no sticky-container-off e-con e-parent","data-id":"b62c0b3","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-592e9e8 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"592e9e8","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-ab41b28 elementor-widget elementor-widget-logico_marquee","data-id":"ab41b28","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_marquee.default","children":["$","div",null,{"className":"elementor-widget-container","children":"$Lf"}]}]}]}],"$L10","$L11","$L12","$L13"]}]}]}]}],["$L14"],"$L15"]}],{},null,false,null]},null,false,null],"$L16",false]],"m":"$undefined","G":["$17",["$L18"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -1b:I[32693,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -1c:I[24911,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -1d:I[14224,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -22:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +0:{"P":null,"c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"61","className":"elementor elementor-61","children":[["$","$Lc",null,{}],["$","$Ld",null,{}],["$","$Le",null,{}],["$","div",null,{"className":"elementor-element elementor-element-b62c0b3 e-con-full e-flex cut-corner-no sticky-container-off e-con e-parent","data-id":"b62c0b3","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-592e9e8 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"592e9e8","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-ab41b28 elementor-widget elementor-widget-logico_marquee","data-id":"ab41b28","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_marquee.default","children":["$","div",null,{"className":"elementor-widget-container","children":"$Lf"}]}]}]}],"$L10","$L11","$L12","$L13"]}]}]}]}],["$L14"],"$L15"]}],{},null,false,null]},null,false,null],"$L16",false]],"m":"$undefined","G":["$17",["$L18"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +1b:I[32693,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +1c:I[24911,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +1d:I[14224,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +22:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 23:"$Sreact.suspense" -25:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -27:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +25:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +27:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] f:["$","div",null,{"className":"logico-ticker-wrapper","style":{"overflow":"hidden","position":"relative","width":"100%"},"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"\n @keyframes cssMarquee {\n 0% { transform: translate3d(0, 0, 0); }\n 100% { transform: translate3d(-33.33%, 0, 0); }\n }\n .marquee-container-css {\n display: flex;\n width: max-content;\n animation: cssMarquee 25s linear infinite;\n }\n .marquee-container-css:hover {\n animation-play-state: paused;\n }\n "}}],["$","div",null,{"className":"marquee-container-css","children":[["$","div","0",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","1",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","2",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","3",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","4",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","5",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","6",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","7",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":"$L19"}]]}],"$L1a"]}]]}] 10:["$","$L1b",null,{}] 11:["$","$L1c",null,{}] @@ -71,13 +71,13 @@ f:["$","div",null,{"className":"logico-ticker-wrapper","style":{"overflow":"hidd } } 13:["$","div",null,{"className":"elementor-element elementor-element-3b4a7cc e-flex e-con-boxed cut-corner-no sticky-container-off e-con e-parent","data-id":"3b4a7cc","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"e-con-inner","children":["$","div",null,{"className":"elementor-element elementor-element-d602f7f e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"d602f7f","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-f64bd88 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"f64bd88","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-5ed2dbb e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"5ed2dbb","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-c8162c4 elementor-widget elementor-widget-logico_heading industry-section-label","data-id":"c8162c4","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$1e"}}],["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"/ Industry Solutions /"}]}]]}],["$","div",null,{"className":"elementor-element elementor-element-1487241 elementor-widget__width-initial elementor-widget elementor-widget-logico_heading","data-id":"1487241","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","style":{"margin":"30px 0 0 0"},"children":["$","h3",null,{"className":"logico-title","style":{"fontSize":"clamp(28px, 3.5vw, 48px)","lineHeight":"1.1","fontWeight":800,"textTransform":"uppercase","maxWidth":"900px"},"children":"$L1f"}]}]}]]}],"$L20"]}],"$L21"]}]}]}] -14:["$","script","script-0",{"src":"/_next/static/chunks/000jk3-x5hh9p.js","async":true,"nonce":"$undefined"}] +14:["$","script","script-0",{"src":"/_next/static/chunks/0szb3fwecq10z.js","async":true,"nonce":"$undefined"}] 15:["$","$L22",null,{"children":["$","$23",null,{"name":"Next.MetadataOutlet","children":"$@24"}]}] 16:["$","$1","h",{"children":[null,["$","$L25",null,{"children":"$L26"}],["$","div",null,{"hidden":true,"children":["$","$L27",null,{"children":["$","$23",null,{"name":"Next.Metadata","children":"$L28"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -18:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] -29:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"ScrollReveal"] -2a:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],""] -2b:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"Image"] +18:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +29:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"ScrollReveal"] +2a:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],""] +2b:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"Image"] 19:["$","i",null,{"className":"fontello icon-half-logo"}] 1a:["$","div","8",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}] 1f:["$","$L29",null,{"delay":0.05,"duration":0.8,"yOffset":25,"children":["Smart solutions built exclusively for your ",["$","span",null,{"style":{"color":"#c01227"},"children":"industry"}]]}] @@ -88,6 +88,6 @@ f:["$","div",null,{"className":"logico-ticker-wrapper","style":{"overflow":"hidd 2e:["$","div",null,{"className":"industry-card-hover-bottom","children":[["$","div",null,{"className":"industry-card-hover-icon","children":["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"3","strokeLinecap":"round","strokeLinejoin":"round","style":{"width":"20px","height":"20px"},"children":[["$","line",null,{"x1":"7","y1":"17","x2":"17","y2":"7"}],["$","polyline",null,{"points":"7 7 17 7 17 17"}]]}]}],["$","h4",null,{"className":"industry-card-hover-title","children":"Pharmaceutical"}]]}] 2f:["$","$L2a",null,{"href":"/solutions","className":"industry-card-link","children":[["$","div",null,{"className":"industry-card-bg","children":["$","$L2b",null,{"src":"/images/tab-pic-3.jpeg","alt":"Enterprise Logistics","fill":true,"style":{"objectFit":"cover"},"sizes":"(max-width: 768px) 100vw, (max-width: 1024px) 50vw, 33vw"}]}],["$","div",null,{"className":"industry-card-overlay"}],["$","div",null,{"className":"industry-card-hover-bg"}],["$","div",null,{"className":"industry-card-default-content","children":["$","h4",null,{"className":"industry-card-default-title","children":"Enterprise & B2B"}]}],["$","div",null,{"className":"industry-card-hover-content","children":[["$","div",null,{"className":"industry-card-hover-top","children":[["$","p",null,{"className":"industry-card-description","children":"High-value shipments with complex delivery requirements."}],["$","div",null,{"children":[["$","h5",null,{"className":"industry-card-section-title","children":"Challenges"}],["$","ul",null,{"className":"industry-card-list","children":[["$","li",null,{"className":"industry-card-list-item bullet-1","children":"Appointment scheduling coordination"}],["$","li",null,{"className":"industry-card-list-item bullet-2","children":"White-glove delivery standards"}],["$","li",null,{"className":"industry-card-list-item bullet-3","children":"Multi-location routing complexity"}]]}]]}],["$","div",null,{"children":[["$","h5",null,{"className":"industry-card-section-title","children":"Doormile Solutions"}],["$","ul",null,{"className":"industry-card-list","children":[["$","li",null,{"className":"industry-card-list-item bullet-4","children":"Automated appointment optimization"}],["$","li",null,{"className":"industry-card-list-item bullet-5","children":"Service level guarantee tracking"}],["$","li",null,{"className":"industry-card-list-item bullet-6","children":"Enterprise integration APIs"}]]}]]}]]}],["$","div",null,{"className":"industry-card-hover-bottom","children":[["$","div",null,{"className":"industry-card-hover-icon","children":["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"3","strokeLinecap":"round","strokeLinejoin":"round","style":{"width":"20px","height":"20px"},"children":[["$","line",null,{"x1":"7","y1":"17","x2":"17","y2":"7"}],["$","polyline",null,{"points":"7 7 17 7 17 17"}]]}]}],["$","h4",null,{"className":"industry-card-hover-title","children":"Enterprise & B2B"}]]}]]}]]}] 26:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -30:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +30:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 24:null 28:[["$","title","0",{"children":"Doormile — Delivering Trust. Beyond Boundaries"}],["$","meta","1",{"name":"description","content":"Doormile helps logistics companies track every mile with MileTruth™ AI. Real-time SLA protection and connected miles visibility."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L30","7",{}]] diff --git a/build/__next._head.txt b/build/__next._head.txt index 5bbd0a6..dc31b70 100644 --- a/build/__next._head.txt +++ b/build/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Doormile — Delivering Trust. Beyond Boundaries"}],["$","meta","1",{"name":"description","content":"Doormile helps logistics companies track every mile with MileTruth™ AI. Real-time SLA protection and connected miles visibility."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Doormile — Delivering Trust. Beyond Boundaries"}],["$","meta","1",{"name":"description","content":"Doormile helps logistics companies track every mile with MileTruth™ AI. Real-time SLA protection and connected miles visibility."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/__next._index.txt b/build/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/__next._index.txt +++ b/build/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/__next._tree.txt b/build/__next._tree.txt index 9cd8921..ef8caaf 100644 --- a/build/__next._tree.txt +++ b/build/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/_next/static/SnoAOpbT_RGaY5uBgRytO/_buildManifest.js b/build/_next/static/6fArXL0vngyn3fcJQtVmY/_buildManifest.js similarity index 100% rename from build/_next/static/SnoAOpbT_RGaY5uBgRytO/_buildManifest.js rename to build/_next/static/6fArXL0vngyn3fcJQtVmY/_buildManifest.js diff --git a/build/_next/static/SnoAOpbT_RGaY5uBgRytO/_clientMiddlewareManifest.js b/build/_next/static/6fArXL0vngyn3fcJQtVmY/_clientMiddlewareManifest.js similarity index 100% rename from build/_next/static/SnoAOpbT_RGaY5uBgRytO/_clientMiddlewareManifest.js rename to build/_next/static/6fArXL0vngyn3fcJQtVmY/_clientMiddlewareManifest.js diff --git a/build/_next/static/SnoAOpbT_RGaY5uBgRytO/_ssgManifest.js b/build/_next/static/6fArXL0vngyn3fcJQtVmY/_ssgManifest.js similarity index 100% rename from build/_next/static/SnoAOpbT_RGaY5uBgRytO/_ssgManifest.js rename to build/_next/static/6fArXL0vngyn3fcJQtVmY/_ssgManifest.js diff --git a/build/_next/static/chunks/0rn9tljn2_ryg.js b/build/_next/static/chunks/0-4ghbvvrr_dw.js similarity index 92% rename from build/_next/static/chunks/0rn9tljn2_ryg.js rename to build/_next/static/chunks/0-4ghbvvrr_dw.js index f455245..acdebbd 100644 --- a/build/_next/static/chunks/0rn9tljn2_ryg.js +++ b/build/_next/static/chunks/0-4ghbvvrr_dw.js @@ -1,4 +1,4 @@ -(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,61867,e=>{"use strict";var t=e.i(43476),i=e.i(71645),a=e.i(57688),r=e.i(89970),o=e.i(83495);r.default.registerPlugin(o.ScrollTrigger);let n=[{index:1,num:"01",title:"Battery-First Planning",desc:"Routes are optimized around battery levels and charging windows, not retrofitted as an afterthought."},{index:2,num:"02",title:"Energy-Aware Routing",desc:"Our algorithms factor in terrain, traffic, and payload weight to maximize range efficiency."},{index:3,num:"03",title:"Smart Charging Integration",desc:"Seamless coordination with charging infrastructure to eliminate range anxiety for drivers."},{index:4,num:"04",title:"Carbon Footprint Tracking",desc:"Real-time emissions monitoring and sustainability reports for every delivery."}];e.s(["default",0,function(){let[e,o]=(0,i.useState)(4),s=(0,i.useRef)(null),l=(0,i.useRef)(null),c=(0,i.useRef)(null);return(0,i.useEffect)(()=>{let e=s.current,t=c.current,i=l.current;if(!e||!t||!i)return;let a=r.default.to(i,{y:"-=10",duration:4.5,ease:"sine.inOut",yoyo:!0,repeat:-1});return r.default.timeline({scrollTrigger:{trigger:e,start:"top 80%",toggleActions:"play none none none"}}).to(e.querySelector(".ev-logistic-kicker"),{opacity:1,y:0,letterSpacing:"3px",duration:.8,ease:"power3.out"}).to(e.querySelectorAll(".ev-char"),{y:"0%",opacity:1,duration:.95,stagger:.02,ease:"power4.out"},"-=0.45").to(e.querySelectorAll(".ev-logistic-accordion-item"),{opacity:1,y:0,duration:.6,stagger:.08,ease:"power3.out"},"-=0.6").fromTo(t,{opacity:0,scale:.95},{opacity:1,scale:1,duration:1,ease:"power4.out"},"-=0.8"),()=>{a.kill()}},[]),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:` +(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,61867,e=>{"use strict";var t=e.i(43476),i=e.i(71645),a=e.i(57688),o=e.i(89970),r=e.i(83495);o.default.registerPlugin(r.ScrollTrigger);let n=[{index:1,num:"01",title:"Battery-First Planning",desc:"Routes are optimized around battery levels and charging windows, not retrofitted as an afterthought."},{index:2,num:"02",title:"Energy-Aware Routing",desc:"Our algorithms factor in terrain, traffic, and payload weight to maximize range efficiency."},{index:3,num:"03",title:"Smart Charging Integration",desc:"Seamless coordination with charging infrastructure to eliminate range anxiety for drivers."},{index:4,num:"04",title:"Carbon Footprint Tracking",desc:"Real-time emissions monitoring and sustainability reports for every delivery."}];e.s(["default",0,function(){let[e,r]=(0,i.useState)(4),s=(0,i.useRef)(null),l=(0,i.useRef)(null),c=(0,i.useRef)(null);return(0,i.useEffect)(()=>{let e=s.current,t=c.current,i=l.current;if(!e||!t||!i)return;let a=o.default.to(i,{y:"-=10",duration:4.5,ease:"sine.inOut",yoyo:!0,repeat:-1});return o.default.timeline({scrollTrigger:{trigger:e,start:"top 80%",toggleActions:"play none none none"}}).to(e.querySelector(".ev-logistic-kicker"),{opacity:1,y:0,letterSpacing:"3px",duration:.8,ease:"power3.out"}).to(e.querySelectorAll(".ev-char"),{y:"0%",opacity:1,duration:.95,stagger:.02,ease:"power4.out"},"-=0.45").to(e.querySelectorAll(".ev-logistic-accordion-item"),{opacity:1,y:0,duration:.6,stagger:.08,ease:"power3.out"},"-=0.6").fromTo(t,{opacity:0,scale:.95},{opacity:1,scale:1,duration:1,ease:"power4.out"},"-=0.8"),()=>{a.kill()}},[]),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:` /* Custom CSS Scoped to EV Logistics Section - New Premium Look */ .ev-logistic-section { display: flex !important; @@ -157,7 +157,10 @@ opacity: 0; transform: translateY(20px); will-change: transform, opacity; - transition: background-color 0.4s cubic-bezier(0.25, 1, 0.5, 1); + transition: background-color 0.45s cubic-bezier(0.25, 1, 0.5, 1), + border-color 0.45s cubic-bezier(0.25, 1, 0.5, 1), + border-radius 0.45s cubic-bezier(0.25, 1, 0.5, 1), + box-shadow 0.45s cubic-bezier(0.25, 1, 0.5, 1); } .ev-logistic-accordion-item:last-child { @@ -169,6 +172,41 @@ background: rgba(192, 18, 39, 0.015); } + /* ---- Active (expanded) item: subtle premium highlight ---- + A soft ~5% red tint, a 16–20px rounded container, a 3px red + accent on the left (drawn as an inset shadow so the row never + shifts) and an extremely soft shadow for quiet depth. The grid + dividers directly above and below the active row are hidden so + the tinted block reads as one clean, rounded surface — refined + and integrated, never a floating "card". overflow:hidden clips + the progress bar to the rounded corners (it does not clip the + element's own outer shadow). */ + .ev-logistic-accordion-item.active { + background: rgba(192, 18, 39, 0.045); + border-top-color: transparent; + border-radius: 16px; + overflow: hidden; + box-shadow: + inset 3px 0 0 0 #c01227, + 0 4px 14px -12px rgba(17, 17, 17, 0.12); + } + .ev-logistic-accordion-item.active + .ev-logistic-accordion-item { + border-top-color: transparent; + } + .ev-logistic-accordion-item.active:last-child { + border-bottom-color: transparent; + } + /* Comfortable internal padding on the active row so the content + feels more structured and clears the left accent. */ + .ev-logistic-accordion-item.active .ev-logistic-accordion-header { + padding-left: 28px; + padding-right: 28px; + } + .ev-logistic-accordion-item.active .ev-logistic-accordion-content-inner { + padding-left: 28px; + padding-right: 28px; + } + /* Spacious row padding for luxurious design - INCREASED font size for headers */ .ev-logistic-accordion-header { width: 100%; @@ -185,7 +223,8 @@ font-size: clamp(24px, 2.2vw, 30px); /* Increased to clamp up to 30px! */ font-weight: 700; color: #111111; - transition: color 0.3s ease; + transition: color 0.3s ease, + padding 0.45s cubic-bezier(0.25, 1, 0.5, 1); } .ev-logistic-accordion-header span:first-child { @@ -258,6 +297,7 @@ line-height: 1.6; color: #555555; font-weight: 500; + transition: padding 0.45s cubic-bezier(0.25, 1, 0.5, 1); } /* Underline track & sweeping active red bar */ @@ -287,6 +327,13 @@ transform: scaleX(1); } + /* The active row now carries its own highlight (tint + left accent), + so the bottom sweeping red bar is redundant and clashes with the + rounded corners — hide it while the row is expanded. */ + .ev-logistic-accordion-item.active .ev-logistic-accordion-progress-track { + display: none; + } + /* Responsiveness constraints */ @media (max-width: 1024px) { .ev-logistic-section { @@ -339,13 +386,27 @@ font-size: 19px; padding: 22px 8px; } - + .ev-logistic-accordion-content-inner { padding: 0; font-size: 15.5px; } + + /* Keep the active row's comfortable padding proportional on phones + (smaller bump than desktop so it never crowds the narrow column). */ + .ev-logistic-accordion-item.active { + border-radius: 16px; + } + .ev-logistic-accordion-item.active .ev-logistic-accordion-header { + padding-left: 16px; + padding-right: 16px; + } + .ev-logistic-accordion-item.active .ev-logistic-accordion-content-inner { + padding-left: 16px; + padding-right: 16px; + } } - `}}),(0,t.jsxs)("div",{ref:s,className:"ev-logistic-section",children:[(0,t.jsx)("div",{className:"ev-logistic-header",children:(0,t.jsx)("div",{className:"ev-logistic-kicker",children:"/ Build Electric Vehicles /"})}),(0,t.jsxs)("div",{className:"ev-logistic-body-grid",children:[(0,t.jsxs)("div",{className:"ev-logistic-image-col",children:[(0,t.jsx)("div",{className:"ev-logistic-image-glow"}),(0,t.jsx)("div",{ref:l,className:"ev-logistic-image-wrapper",children:(0,t.jsx)(a.default,{ref:c,src:"/images/ev.jpeg",alt:"EV Logistics",width:1050,height:854,priority:!0})})]}),(0,t.jsxs)("div",{className:"ev-logistic-content-col",children:[(0,t.jsx)("div",{className:"ev-logistic-title-wrapper",children:(0,t.jsx)("h3",{className:"ev-logistic-title",children:"LOGISTICS BUILT FOR ELECTRIC VEHICLES".split(" ").map((e,i)=>(0,t.jsxs)("span",{className:"ev-word-inline",children:[e.split("").map((e,i)=>(0,t.jsx)("span",{className:"ev-char-wrapper",children:(0,t.jsx)("span",{className:"ev-char",children:e})},i)),(0,t.jsx)("span",{className:"ev-char-space",children:" "})]},i))})}),(0,t.jsx)("div",{className:"ev-logistic-accordion",children:n.map(i=>(0,t.jsxs)("div",{className:`ev-logistic-accordion-item ${e===i.index?"active":""}`,children:[(0,t.jsxs)("button",{className:"ev-logistic-accordion-header",onClick:()=>{var e;return e=i.index,void o(t=>t===e?null:e)},"aria-expanded":e===i.index,children:[(0,t.jsxs)("span",{children:[i.num,". ",i.title]}),(0,t.jsx)("span",{className:"ev-logistic-accordion-arrow-container",children:(0,t.jsxs)("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("line",{x1:"7",y1:"17",x2:"17",y2:"7"}),(0,t.jsx)("polyline",{points:"7 7 17 7 17 17"})]})})]}),(0,t.jsx)("div",{className:"ev-logistic-accordion-content",children:(0,t.jsx)("div",{className:"ev-logistic-accordion-content-inner",children:(0,t.jsx)("p",{style:{transform:e===i.index?"translateY(0)":"translateY(12px)",opacity:+(e===i.index),transition:"transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.5s ease",transitionDelay:"0.08s",margin:0},children:i.desc})})}),(0,t.jsx)("div",{className:"ev-logistic-accordion-progress-track",children:(0,t.jsx)("div",{className:"ev-logistic-accordion-progress-bar"})})]},i.index))})]})]})]})]})}])},47580,e=>{"use strict";var t=e.i(43476),i=e.i(71645),a=e.i(89970),r=e.i(83495);a.default.registerPlugin(r.ScrollTrigger),e.s(["default",0,function(){let e=(0,i.useRef)(null),r=(0,i.useRef)(null),o=(0,i.useRef)(null);return(0,i.useEffect)(()=>{let t=e.current,i=r.current,n=o.current;if(!t||!i||!n)return;let s=t.querySelectorAll(".table-row-hover"),l=t.querySelectorAll(".yes-badge, .advanced-badge");a.default.set([n,i],{opacity:0,y:45}),a.default.set(s,{opacity:0,y:20}),a.default.set(l,{opacity:0,scale:.8}),a.default.timeline({scrollTrigger:{trigger:t,start:"top 78%",toggleActions:"play none none none"}}).to([n,i],{opacity:1,y:0,duration:.95,stagger:.15,ease:"power4.out"}).to(s,{opacity:1,y:0,duration:.75,stagger:.05,ease:"power3.out"},"-=0.6").to(l,{opacity:1,scale:1,duration:.55,stagger:.03,ease:"back.out(1.6)"},"-=0.45")},[]),(0,t.jsxs)("section",{id:"comparison",className:"comparison-section",ref:e,children:[(0,t.jsx)("div",{className:"comparison-bg-glow"}),(0,t.jsx)("div",{className:"comparison-bg-dots"}),(0,t.jsxs)("div",{className:"container",children:[(0,t.jsxs)("div",{className:"comparison-header",ref:o,children:[(0,t.jsx)("div",{className:"advantage-eyebrow-container",children:(0,t.jsx)("span",{className:"advantage-eyebrow",children:"/ DoorMile wins/"})}),(0,t.jsx)("h2",{className:"moat-heading","data-text":"WHERE DOORMILE WINS",children:"WHERE DOORMILE WINS"}),(0,t.jsx)("p",{className:"moat-desc",children:"A side-by-side technical capabilities comparison showing how operational fleet ownership and dynamic AI planning disrupt basic aggregators."})]}),(0,t.jsx)("div",{className:"table-wrapper",ref:r,children:(0,t.jsxs)("table",{className:"comparison-table",children:[(0,t.jsx)("thead",{children:(0,t.jsxs)("tr",{children:[(0,t.jsx)("th",{children:"Capability"}),(0,t.jsx)("th",{className:"col-highlight",children:"Doormile"}),(0,t.jsx)("th",{children:"Aggregators"}),(0,t.jsx)("th",{children:"Local Couriers"}),(0,t.jsx)("th",{children:"Software Platforms"})]})}),(0,t.jsxs)("tbody",{children:[(0,t.jsxs)("tr",{className:"table-row-hover",children:[(0,t.jsxs)("td",{className:"capability-cell",children:[(0,t.jsxs)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("rect",{x:"1",y:"3",width:"15",height:"13"}),(0,t.jsx)("polygon",{points:"16 8 20 8 23 11 23 16 16 16 16 8"}),(0,t.jsx)("circle",{cx:"5.5",cy:"18.5",r:"2.5"}),(0,t.jsx)("circle",{cx:"18.5",cy:"18.5",r:"2.5"})]}),"Owned fleet control"]}),(0,t.jsx)("td",{className:"col-highlight",children:(0,t.jsx)("span",{className:"yes-badge",children:"✓ Yes"})}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"partial-text",children:"Yes"}),(0,t.jsx)("td",{className:"no-text",children:"No"})]}),(0,t.jsxs)("tr",{className:"table-row-hover",children:[(0,t.jsxs)("td",{className:"capability-cell",children:[(0,t.jsxs)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,t.jsx)("polyline",{points:"12 6 12 12 16 14"})]}),"Dynamic routing & dispatch"]}),(0,t.jsx)("td",{className:"col-highlight",children:(0,t.jsx)("span",{className:"advanced-badge",children:"✓ Advanced"})}),(0,t.jsx)("td",{className:"partial-text",children:"Basic"}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"partial-text",children:"Advanced"})]}),(0,t.jsxs)("tr",{className:"table-row-hover",children:[(0,t.jsxs)("td",{className:"capability-cell",children:[(0,t.jsx)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:(0,t.jsx)("polygon",{points:"13 2 3 14 12 14 11 22 21 10 12 10 13 2"})}),"EV-aware planning"]}),(0,t.jsx)("td",{className:"col-highlight",children:(0,t.jsx)("span",{className:"yes-badge",children:"✓ Yes"})}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"no-text",children:"No"})]}),(0,t.jsxs)("tr",{className:"table-row-hover",children:[(0,t.jsxs)("td",{className:"capability-cell",children:[(0,t.jsxs)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"}),(0,t.jsx)("polyline",{points:"14 2 14 8 20 8"}),(0,t.jsx)("line",{x1:"16",y1:"13",x2:"8",y2:"13"}),(0,t.jsx)("line",{x1:"16",y1:"17",x2:"8",y2:"17"}),(0,t.jsx)("polyline",{points:"10 9 9 9 8 9"})]}),"Documentation & proof trail"]}),(0,t.jsx)("td",{className:"col-highlight",children:(0,t.jsx)("span",{className:"yes-badge",children:"✓ Yes"})}),(0,t.jsx)("td",{className:"partial-text",children:"Partial"}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"partial-text",children:"Yes"})]}),(0,t.jsxs)("tr",{className:"table-row-hover",children:[(0,t.jsxs)("td",{className:"capability-cell",children:[(0,t.jsxs)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,t.jsx)("polyline",{points:"12 6 12 12 16 14"})]}),"Real-time tracking"]}),(0,t.jsx)("td",{className:"col-highlight",children:(0,t.jsx)("span",{className:"yes-badge",children:"✓ Yes"})}),(0,t.jsx)("td",{className:"partial-text",children:"Yes"}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"partial-text",children:"Yes"})]}),(0,t.jsxs)("tr",{className:"table-row-hover",children:[(0,t.jsxs)("td",{className:"capability-cell",children:[(0,t.jsx)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:(0,t.jsx)("path",{d:"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"})}),"Verified handling"]}),(0,t.jsx)("td",{className:"col-highlight",children:(0,t.jsx)("span",{className:"yes-badge",children:"✓ Yes"})}),(0,t.jsx)("td",{className:"partial-text",children:"Partial"}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"no-text",children:"No"})]}),(0,t.jsxs)("tr",{className:"table-row-hover",children:[(0,t.jsxs)("td",{className:"capability-cell",children:[(0,t.jsxs)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9"}),(0,t.jsx)("path",{d:"M13.73 21a2 2 0 0 1-3.46 0"})]}),"Hyperlocal learning"]}),(0,t.jsx)("td",{className:"col-highlight",children:(0,t.jsx)("span",{className:"yes-badge",children:"✓ Yes"})}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"no-text",children:"No"})]}),(0,t.jsxs)("tr",{className:"table-row-hover",children:[(0,t.jsxs)("td",{className:"capability-cell",children:[(0,t.jsxs)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,t.jsx)("line",{x1:"22",y1:"12",x2:"18",y2:"12"}),(0,t.jsx)("line",{x1:"6",y1:"12",x2:"2",y2:"12"}),(0,t.jsx)("line",{x1:"12",y1:"6",x2:"12",y2:"2"}),(0,t.jsx)("line",{x1:"12",y1:"22",x2:"12",y2:"18"})]}),"SLA accountability"]}),(0,t.jsx)("td",{className:"col-highlight",children:(0,t.jsx)("span",{className:"advanced-badge",children:"✓ High"})}),(0,t.jsx)("td",{className:"no-text",children:"Low"}),(0,t.jsx)("td",{className:"partial-text",children:"Medium"}),(0,t.jsx)("td",{className:"no-text",children:"Low"})]})]})]})})]}),(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:` + `}}),(0,t.jsxs)("div",{ref:s,className:"ev-logistic-section",children:[(0,t.jsx)("div",{className:"ev-logistic-header",children:(0,t.jsx)("div",{className:"ev-logistic-kicker",children:"/ Build Electric Vehicles /"})}),(0,t.jsxs)("div",{className:"ev-logistic-body-grid",children:[(0,t.jsxs)("div",{className:"ev-logistic-image-col",children:[(0,t.jsx)("div",{className:"ev-logistic-image-glow"}),(0,t.jsx)("div",{ref:l,className:"ev-logistic-image-wrapper",children:(0,t.jsx)(a.default,{ref:c,src:"/images/ev.jpeg",alt:"EV Logistics",width:1050,height:854,priority:!0})})]}),(0,t.jsxs)("div",{className:"ev-logistic-content-col",children:[(0,t.jsx)("div",{className:"ev-logistic-title-wrapper",children:(0,t.jsx)("h3",{className:"ev-logistic-title",children:"LOGISTICS BUILT FOR ELECTRIC VEHICLES".split(" ").map((e,i)=>(0,t.jsxs)("span",{className:"ev-word-inline",children:[e.split("").map((e,i)=>(0,t.jsx)("span",{className:"ev-char-wrapper",children:(0,t.jsx)("span",{className:"ev-char",children:e})},i)),(0,t.jsx)("span",{className:"ev-char-space",children:" "})]},i))})}),(0,t.jsx)("div",{className:"ev-logistic-accordion",children:n.map(i=>(0,t.jsxs)("div",{className:`ev-logistic-accordion-item ${e===i.index?"active":""}`,children:[(0,t.jsxs)("button",{className:"ev-logistic-accordion-header",onClick:()=>{var e;return e=i.index,void r(t=>t===e?null:e)},"aria-expanded":e===i.index,children:[(0,t.jsxs)("span",{children:[i.num,". ",i.title]}),(0,t.jsx)("span",{className:"ev-logistic-accordion-arrow-container",children:(0,t.jsxs)("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("line",{x1:"7",y1:"17",x2:"17",y2:"7"}),(0,t.jsx)("polyline",{points:"7 7 17 7 17 17"})]})})]}),(0,t.jsx)("div",{className:"ev-logistic-accordion-content",children:(0,t.jsx)("div",{className:"ev-logistic-accordion-content-inner",children:(0,t.jsx)("p",{style:{transform:e===i.index?"translateY(0)":"translateY(12px)",opacity:+(e===i.index),transition:"transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.5s ease",transitionDelay:"0.08s",margin:0},children:i.desc})})}),(0,t.jsx)("div",{className:"ev-logistic-accordion-progress-track",children:(0,t.jsx)("div",{className:"ev-logistic-accordion-progress-bar"})})]},i.index))})]})]})]})]})}])},47580,e=>{"use strict";var t=e.i(43476),i=e.i(71645),a=e.i(89970),o=e.i(83495);a.default.registerPlugin(o.ScrollTrigger),e.s(["default",0,function(){let e=(0,i.useRef)(null),o=(0,i.useRef)(null),r=(0,i.useRef)(null);return(0,i.useEffect)(()=>{let t=e.current,i=o.current,n=r.current;if(!t||!i||!n)return;let s=t.querySelectorAll(".table-row-hover"),l=t.querySelectorAll(".yes-badge, .advanced-badge");a.default.set([n,i],{opacity:0,y:45}),a.default.set(s,{opacity:0,y:20}),a.default.set(l,{opacity:0,scale:.8}),a.default.timeline({scrollTrigger:{trigger:t,start:"top 78%",toggleActions:"play none none none"}}).to([n,i],{opacity:1,y:0,duration:.95,stagger:.15,ease:"power4.out"}).to(s,{opacity:1,y:0,duration:.75,stagger:.05,ease:"power3.out"},"-=0.6").to(l,{opacity:1,scale:1,duration:.55,stagger:.03,ease:"back.out(1.6)"},"-=0.45")},[]),(0,t.jsxs)("section",{id:"comparison",className:"comparison-section",ref:e,children:[(0,t.jsx)("div",{className:"comparison-bg-glow"}),(0,t.jsx)("div",{className:"comparison-bg-dots"}),(0,t.jsxs)("div",{className:"container",children:[(0,t.jsxs)("div",{className:"comparison-header",ref:r,children:[(0,t.jsx)("div",{className:"advantage-eyebrow-container",children:(0,t.jsx)("span",{className:"advantage-eyebrow",children:"/ DoorMile wins/"})}),(0,t.jsx)("h2",{className:"moat-heading","data-text":"WHERE DOORMILE WINS",children:"WHERE DOORMILE WINS"}),(0,t.jsx)("p",{className:"moat-desc",children:"A side-by-side technical capabilities comparison showing how operational fleet ownership and dynamic AI planning disrupt basic aggregators."})]}),(0,t.jsx)("div",{className:"table-wrapper",ref:o,children:(0,t.jsxs)("table",{className:"comparison-table",children:[(0,t.jsx)("thead",{children:(0,t.jsxs)("tr",{children:[(0,t.jsx)("th",{children:"Capability"}),(0,t.jsx)("th",{className:"col-highlight",children:"Doormile"}),(0,t.jsx)("th",{children:"Aggregators"}),(0,t.jsx)("th",{children:"Local Couriers"}),(0,t.jsx)("th",{children:"Software Platforms"})]})}),(0,t.jsxs)("tbody",{children:[(0,t.jsxs)("tr",{className:"table-row-hover",children:[(0,t.jsxs)("td",{className:"capability-cell",children:[(0,t.jsxs)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("rect",{x:"1",y:"3",width:"15",height:"13"}),(0,t.jsx)("polygon",{points:"16 8 20 8 23 11 23 16 16 16 16 8"}),(0,t.jsx)("circle",{cx:"5.5",cy:"18.5",r:"2.5"}),(0,t.jsx)("circle",{cx:"18.5",cy:"18.5",r:"2.5"})]}),"Owned fleet control"]}),(0,t.jsx)("td",{className:"col-highlight",children:(0,t.jsx)("span",{className:"yes-badge",children:"✓ Yes"})}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"partial-text",children:"Yes"}),(0,t.jsx)("td",{className:"no-text",children:"No"})]}),(0,t.jsxs)("tr",{className:"table-row-hover",children:[(0,t.jsxs)("td",{className:"capability-cell",children:[(0,t.jsxs)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,t.jsx)("polyline",{points:"12 6 12 12 16 14"})]}),"Dynamic routing & dispatch"]}),(0,t.jsx)("td",{className:"col-highlight",children:(0,t.jsx)("span",{className:"advanced-badge",children:"✓ Advanced"})}),(0,t.jsx)("td",{className:"partial-text",children:"Basic"}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"partial-text",children:"Advanced"})]}),(0,t.jsxs)("tr",{className:"table-row-hover",children:[(0,t.jsxs)("td",{className:"capability-cell",children:[(0,t.jsx)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:(0,t.jsx)("polygon",{points:"13 2 3 14 12 14 11 22 21 10 12 10 13 2"})}),"EV-aware planning"]}),(0,t.jsx)("td",{className:"col-highlight",children:(0,t.jsx)("span",{className:"yes-badge",children:"✓ Yes"})}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"no-text",children:"No"})]}),(0,t.jsxs)("tr",{className:"table-row-hover",children:[(0,t.jsxs)("td",{className:"capability-cell",children:[(0,t.jsxs)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"}),(0,t.jsx)("polyline",{points:"14 2 14 8 20 8"}),(0,t.jsx)("line",{x1:"16",y1:"13",x2:"8",y2:"13"}),(0,t.jsx)("line",{x1:"16",y1:"17",x2:"8",y2:"17"}),(0,t.jsx)("polyline",{points:"10 9 9 9 8 9"})]}),"Documentation & proof trail"]}),(0,t.jsx)("td",{className:"col-highlight",children:(0,t.jsx)("span",{className:"yes-badge",children:"✓ Yes"})}),(0,t.jsx)("td",{className:"partial-text",children:"Partial"}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"partial-text",children:"Yes"})]}),(0,t.jsxs)("tr",{className:"table-row-hover",children:[(0,t.jsxs)("td",{className:"capability-cell",children:[(0,t.jsxs)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,t.jsx)("polyline",{points:"12 6 12 12 16 14"})]}),"Real-time tracking"]}),(0,t.jsx)("td",{className:"col-highlight",children:(0,t.jsx)("span",{className:"yes-badge",children:"✓ Yes"})}),(0,t.jsx)("td",{className:"partial-text",children:"Yes"}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"partial-text",children:"Yes"})]}),(0,t.jsxs)("tr",{className:"table-row-hover",children:[(0,t.jsxs)("td",{className:"capability-cell",children:[(0,t.jsx)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:(0,t.jsx)("path",{d:"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"})}),"Verified handling"]}),(0,t.jsx)("td",{className:"col-highlight",children:(0,t.jsx)("span",{className:"yes-badge",children:"✓ Yes"})}),(0,t.jsx)("td",{className:"partial-text",children:"Partial"}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"no-text",children:"No"})]}),(0,t.jsxs)("tr",{className:"table-row-hover",children:[(0,t.jsxs)("td",{className:"capability-cell",children:[(0,t.jsxs)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9"}),(0,t.jsx)("path",{d:"M13.73 21a2 2 0 0 1-3.46 0"})]}),"Hyperlocal learning"]}),(0,t.jsx)("td",{className:"col-highlight",children:(0,t.jsx)("span",{className:"yes-badge",children:"✓ Yes"})}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"no-text",children:"No"}),(0,t.jsx)("td",{className:"no-text",children:"No"})]}),(0,t.jsxs)("tr",{className:"table-row-hover",children:[(0,t.jsxs)("td",{className:"capability-cell",children:[(0,t.jsxs)("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,t.jsx)("line",{x1:"22",y1:"12",x2:"18",y2:"12"}),(0,t.jsx)("line",{x1:"6",y1:"12",x2:"2",y2:"12"}),(0,t.jsx)("line",{x1:"12",y1:"6",x2:"12",y2:"2"}),(0,t.jsx)("line",{x1:"12",y1:"22",x2:"12",y2:"18"})]}),"SLA accountability"]}),(0,t.jsx)("td",{className:"col-highlight",children:(0,t.jsx)("span",{className:"advanced-badge",children:"✓ High"})}),(0,t.jsx)("td",{className:"no-text",children:"Low"}),(0,t.jsx)("td",{className:"partial-text",children:"Medium"}),(0,t.jsx)("td",{className:"no-text",children:"Low"})]})]})]})})]}),(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:` /* --- HIGH-IMPACT PREMIUM CAPABILITIES SECTION STYLE --- */ .comparison-section { position: relative; @@ -707,7 +768,7 @@ color: inherit !important; } } - `}})]})}])},2012,e=>{"use strict";var t=e.i(43476),i=e.i(71645),a=e.i(89970),r=e.i(83495);a.default.registerPlugin(r.ScrollTrigger);let o=[{year:2026,pct:25,trackLeft:"12.5%",phase:"Pilot Phase",phaseClass:"yellow",title:"Hyderabad Pilot",desc:"Launch operations in Hyderabad with dedicated EV hubs and MileTruth AI v1.0.",icon:(0,t.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M4.5 16.5c-1.5 1.5-2.5 3.5-2.5 5.5C4 22 6 21 7.5 19.5"}),(0,t.jsx)("path",{d:"M12 12l9-9-9 9z"}),(0,t.jsx)("path",{d:"M12 12c-2.3 2.3-3.4 5.3-3.5 8.5l12-12c-3.2-.1-6.2-1.2-8.5-3.5z"})]}),stats:[{text:"50-80 orders/day",icon:(0,t.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("rect",{x:"3",y:"4",width:"18",height:"18",rx:"2",ry:"2"}),(0,t.jsx)("line",{x1:"16",y1:"2",x2:"16",y2:"6"}),(0,t.jsx)("line",{x1:"8",y1:"2",x2:"8",y2:"6"}),(0,t.jsx)("line",{x1:"3",y1:"10",x2:"21",y2:"10"})]})},{text:"1 city",icon:(0,t.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:(0,t.jsx)("path",{d:"M3 21h18M19 21v-2a4 4 0 0 0-3-3.87M5 21v-2a4 4 0 0 1 3-3.87M9 21v-5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v5"})})},{text:"10+ women partners",icon:(0,t.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("path",{d:"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"}),(0,t.jsx)("circle",{cx:"9",cy:"7",r:"4"})]})}]},{year:2027,pct:50,trackLeft:"37.5%",phase:"Multi-City",phaseClass:"green",title:"Multi-City Scale",desc:"Expand to Bengaluru and Chennai, securing key B2B enterprise traction.",icon:(0,t.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,t.jsx)("line",{x1:"12",y1:"8",x2:"12",y2:"16"}),(0,t.jsx)("line",{x1:"8",y1:"12",x2:"16",y2:"12"})]}),stats:[{text:"300-500 orders/day",icon:(0,t.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("rect",{x:"3",y:"4",width:"18",height:"18",rx:"2",ry:"2"}),(0,t.jsx)("line",{x1:"16",y1:"2",x2:"16",y2:"6"}),(0,t.jsx)("line",{x1:"8",y1:"2",x2:"8",y2:"6"}),(0,t.jsx)("line",{x1:"3",y1:"10",x2:"21",y2:"10"})]})},{text:"3 cities",icon:(0,t.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:(0,t.jsx)("path",{d:"M3 21h18M19 21v-2a4 4 0 0 0-3-3.87M5 21v-2a4 4 0 0 1 3-3.87M9 21v-5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v5"})})},{text:"50+ EVs",icon:(0,t.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:(0,t.jsx)("polygon",{points:"13 2 3 14 12 14 11 22 21 10 12 10 13 2"})})}]},{year:2028,pct:75,trackLeft:"62.5%",phase:"Platform",phaseClass:"blue",title:"Platform Expansion",desc:"Scale to 5+ cities. Launch developer API marketplace and Series A readiness.",icon:(0,t.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("circle",{cx:"12",cy:"12",r:"3"}),(0,t.jsx)("path",{d:"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 1 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 1 1-2.83-2.83l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 1 1 2.83 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z"})]}),stats:[{text:"1,200+ orders/day",icon:(0,t.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("rect",{x:"3",y:"4",width:"18",height:"18",rx:"2",ry:"2"}),(0,t.jsx)("line",{x1:"16",y1:"2",x2:"16",y2:"6"}),(0,t.jsx)("line",{x1:"8",y1:"2",x2:"8",y2:"6"}),(0,t.jsx)("line",{x1:"3",y1:"10",x2:"21",y2:"10"})]})},{text:"5+ cities",icon:(0,t.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:(0,t.jsx)("path",{d:"M3 21h18M19 21v-2a4 4 0 0 0-3-3.87M5 21v-2a4 4 0 0 1 3-3.87M9 21v-5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v5"})})},{text:"API marketplace",icon:(0,t.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("polyline",{points:"16 18 22 12 16 6"}),(0,t.jsx)("polyline",{points:"8 6 2 12 8 18"})]})}]},{year:2030,pct:100,trackLeft:"87.5%",phase:"Vision State",phaseClass:"white-pill",title:"AI Pulse Layer",desc:"Nationwide AI logistics grid reaching 15+ cities, empowering female micro-entrepreneurs.",icon:(0,t.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M2 4l3 12h14l3-12-6 7-4-7-4 7-6-7z"}),(0,t.jsx)("path",{d:"M3 20h18",strokeWidth:"3"})]}),stats:[{text:"5,000+ orders/day",icon:(0,t.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("rect",{x:"3",y:"4",width:"18",height:"18",rx:"2",ry:"2"}),(0,t.jsx)("line",{x1:"16",y1:"2",x2:"16",y2:"6"}),(0,t.jsx)("line",{x1:"8",y1:"2",x2:"8",y2:"6"}),(0,t.jsx)("line",{x1:"3",y1:"10",x2:"21",y2:"10"})]})},{text:"Rs 65 Cr+ revenue",icon:(0,t.jsx)("span",{className:"currency-symbol",style:{marginRight:"4px",fontSize:"11px",fontWeight:800},children:"Rs"})},{text:"2,000+ women partners",icon:(0,t.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("path",{d:"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"}),(0,t.jsx)("circle",{cx:"9",cy:"7",r:"4"}),(0,t.jsx)("path",{d:"M23 21v-2a4 4 0 0 0-3-3.87"}),(0,t.jsx)("path",{d:"M16 3.13a4 4 0 0 1 0 7.75"})]})}]}];e.s(["default",0,function(){let[e,a]=(0,i.useState)(2030),r=(0,i.useRef)(null),n=(0,i.useRef)(null);(0,i.useEffect)(()=>{let e;if(!r.current)return;let t=n.current;if(!t)return;let i=t.getContext("2d");if(!i)return;let a=t.width=t.offsetWidth,o=t.height=t.offsetHeight,s=()=>{t&&(a=t.width=t.offsetWidth,o=t.height=t.offsetHeight)};window.addEventListener("resize",s);let l=[{name:"Hyderabad",x:.18,y:.55},{name:"Chennai",x:.42,y:.72},{name:"Bengaluru",x:.64,y:.42},{name:"Mumbai",x:.82,y:.62}],c=[{from:0,to:1,t:0,speed:.005},{from:1,to:2,t:.3,speed:.004},{from:2,to:3,t:.6,speed:.006}],d=()=>{i.clearRect(0,0,a,o),i.lineWidth=1.5,i.setLineDash([6,6]),i.strokeStyle="rgba(220, 38, 38, 0.12)",i.beginPath();for(let e=0;e{e.t+=e.speed,e.t>=1&&(e.t=0);let t=l[e.from],r=l[e.to],n=t.x*a,s=t.y*o,c=r.x*a,d=r.y*o,p=n+(c-n)*e.t,g=s+(d-s)*e.t;i.beginPath(),i.arc(p,g,4,0,2*Math.PI),i.fillStyle="#c01227",i.shadowColor="#c01227",i.shadowBlur=10,i.fill(),i.shadowBlur=0}),l.forEach(e=>{let t=e.x*a,r=e.y*o;i.beginPath(),i.arc(t,r,8,0,2*Math.PI),i.fillStyle="rgba(220, 38, 38, 0.08)",i.fill(),i.beginPath(),i.arc(t,r,3,0,2*Math.PI),i.fillStyle="rgba(255, 255, 255, 0.25)",i.fill(),i.fillStyle="rgba(255, 255, 255, 0.12)",i.font="bold 11px 'Manrope', sans-serif",i.textAlign="center",i.fillText(e.name,t,r-14)}),e=requestAnimationFrame(d)};return d(),()=>{window.removeEventListener("resize",s),cancelAnimationFrame(e)}},[]);let s=2026===e?25:2027===e?50:2028===e?75:100,l=2*Math.PI*30;return(0,t.jsx)("div",{ref:r,className:"elementor-element elementor-element-bbc6760 e-con-full e-flex cut-corner-no sticky-container-off e-con e-parent","data-id":"bbc6760","data-element_type":"container","data-e-type":"container",style:{position:"relative",zIndex:1},children:(0,t.jsxs)("section",{id:"hero",className:"roadmap-hero-section",children:[(0,t.jsx)("canvas",{ref:n,className:"ce-canvas-bg","aria-hidden":"true"}),(0,t.jsx)("div",{className:"roadmap-glow-spot top-left"}),(0,t.jsx)("div",{className:"roadmap-glow-spot bottom-right"}),(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:` + `}})]})}])},2012,e=>{"use strict";var t=e.i(43476),i=e.i(71645),a=e.i(89970),o=e.i(83495);a.default.registerPlugin(o.ScrollTrigger);let r=[{year:2026,pct:25,trackLeft:"12.5%",phase:"Pilot Phase",phaseClass:"yellow",title:"Hyderabad Pilot",desc:"Launch operations in Hyderabad with dedicated EV hubs and MileTruth AI v1.0.",icon:(0,t.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M4.5 16.5c-1.5 1.5-2.5 3.5-2.5 5.5C4 22 6 21 7.5 19.5"}),(0,t.jsx)("path",{d:"M12 12l9-9-9 9z"}),(0,t.jsx)("path",{d:"M12 12c-2.3 2.3-3.4 5.3-3.5 8.5l12-12c-3.2-.1-6.2-1.2-8.5-3.5z"})]}),stats:[{text:"50-80 orders/day",icon:(0,t.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("rect",{x:"3",y:"4",width:"18",height:"18",rx:"2",ry:"2"}),(0,t.jsx)("line",{x1:"16",y1:"2",x2:"16",y2:"6"}),(0,t.jsx)("line",{x1:"8",y1:"2",x2:"8",y2:"6"}),(0,t.jsx)("line",{x1:"3",y1:"10",x2:"21",y2:"10"})]})},{text:"1 city",icon:(0,t.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:(0,t.jsx)("path",{d:"M3 21h18M19 21v-2a4 4 0 0 0-3-3.87M5 21v-2a4 4 0 0 1 3-3.87M9 21v-5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v5"})})},{text:"10+ women partners",icon:(0,t.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("path",{d:"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"}),(0,t.jsx)("circle",{cx:"9",cy:"7",r:"4"})]})}]},{year:2027,pct:50,trackLeft:"37.5%",phase:"Multi-City",phaseClass:"green",title:"Multi-City Scale",desc:"Expand to Bengaluru and Chennai, securing key B2B enterprise traction.",icon:(0,t.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,t.jsx)("line",{x1:"12",y1:"8",x2:"12",y2:"16"}),(0,t.jsx)("line",{x1:"8",y1:"12",x2:"16",y2:"12"})]}),stats:[{text:"300-500 orders/day",icon:(0,t.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("rect",{x:"3",y:"4",width:"18",height:"18",rx:"2",ry:"2"}),(0,t.jsx)("line",{x1:"16",y1:"2",x2:"16",y2:"6"}),(0,t.jsx)("line",{x1:"8",y1:"2",x2:"8",y2:"6"}),(0,t.jsx)("line",{x1:"3",y1:"10",x2:"21",y2:"10"})]})},{text:"3 cities",icon:(0,t.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:(0,t.jsx)("path",{d:"M3 21h18M19 21v-2a4 4 0 0 0-3-3.87M5 21v-2a4 4 0 0 1 3-3.87M9 21v-5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v5"})})},{text:"50+ EVs",icon:(0,t.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:(0,t.jsx)("polygon",{points:"13 2 3 14 12 14 11 22 21 10 12 10 13 2"})})}]},{year:2028,pct:75,trackLeft:"62.5%",phase:"Platform",phaseClass:"blue",title:"Platform Expansion",desc:"Scale to 5+ cities. Launch developer API marketplace and Series A readiness.",icon:(0,t.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("circle",{cx:"12",cy:"12",r:"3"}),(0,t.jsx)("path",{d:"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 1 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 1 1-2.83-2.83l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 1 1 2.83 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z"})]}),stats:[{text:"1,200+ orders/day",icon:(0,t.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("rect",{x:"3",y:"4",width:"18",height:"18",rx:"2",ry:"2"}),(0,t.jsx)("line",{x1:"16",y1:"2",x2:"16",y2:"6"}),(0,t.jsx)("line",{x1:"8",y1:"2",x2:"8",y2:"6"}),(0,t.jsx)("line",{x1:"3",y1:"10",x2:"21",y2:"10"})]})},{text:"5+ cities",icon:(0,t.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:(0,t.jsx)("path",{d:"M3 21h18M19 21v-2a4 4 0 0 0-3-3.87M5 21v-2a4 4 0 0 1 3-3.87M9 21v-5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v5"})})},{text:"API marketplace",icon:(0,t.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("polyline",{points:"16 18 22 12 16 6"}),(0,t.jsx)("polyline",{points:"8 6 2 12 8 18"})]})}]},{year:2030,pct:100,trackLeft:"87.5%",phase:"Vision State",phaseClass:"white-pill",title:"AI Pulse Layer",desc:"Nationwide AI logistics grid reaching 15+ cities, empowering female micro-entrepreneurs.",icon:(0,t.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M2 4l3 12h14l3-12-6 7-4-7-4 7-6-7z"}),(0,t.jsx)("path",{d:"M3 20h18",strokeWidth:"3"})]}),stats:[{text:"5,000+ orders/day",icon:(0,t.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("rect",{x:"3",y:"4",width:"18",height:"18",rx:"2",ry:"2"}),(0,t.jsx)("line",{x1:"16",y1:"2",x2:"16",y2:"6"}),(0,t.jsx)("line",{x1:"8",y1:"2",x2:"8",y2:"6"}),(0,t.jsx)("line",{x1:"3",y1:"10",x2:"21",y2:"10"})]})},{text:"Rs 65 Cr+ revenue",icon:(0,t.jsx)("span",{className:"currency-symbol",style:{marginRight:"4px",fontSize:"11px",fontWeight:800},children:"Rs"})},{text:"2,000+ women partners",icon:(0,t.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:[(0,t.jsx)("path",{d:"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"}),(0,t.jsx)("circle",{cx:"9",cy:"7",r:"4"}),(0,t.jsx)("path",{d:"M23 21v-2a4 4 0 0 0-3-3.87"}),(0,t.jsx)("path",{d:"M16 3.13a4 4 0 0 1 0 7.75"})]})}]}];e.s(["default",0,function(){let[e,a]=(0,i.useState)(2030),o=(0,i.useRef)(null),n=(0,i.useRef)(null);(0,i.useEffect)(()=>{let e;if(!o.current)return;let t=n.current;if(!t)return;let i=t.getContext("2d");if(!i)return;let a=t.width=t.offsetWidth,r=t.height=t.offsetHeight,s=()=>{t&&(a=t.width=t.offsetWidth,r=t.height=t.offsetHeight)};window.addEventListener("resize",s);let l=[{name:"Hyderabad",x:.18,y:.55},{name:"Chennai",x:.42,y:.72},{name:"Bengaluru",x:.64,y:.42},{name:"Mumbai",x:.82,y:.62}],c=[{from:0,to:1,t:0,speed:.005},{from:1,to:2,t:.3,speed:.004},{from:2,to:3,t:.6,speed:.006}],d=()=>{i.clearRect(0,0,a,r),i.lineWidth=1.5,i.setLineDash([6,6]),i.strokeStyle="rgba(220, 38, 38, 0.12)",i.beginPath();for(let e=0;e{e.t+=e.speed,e.t>=1&&(e.t=0);let t=l[e.from],o=l[e.to],n=t.x*a,s=t.y*r,c=o.x*a,d=o.y*r,p=n+(c-n)*e.t,g=s+(d-s)*e.t;i.beginPath(),i.arc(p,g,4,0,2*Math.PI),i.fillStyle="#c01227",i.shadowColor="#c01227",i.shadowBlur=10,i.fill(),i.shadowBlur=0}),l.forEach(e=>{let t=e.x*a,o=e.y*r;i.beginPath(),i.arc(t,o,8,0,2*Math.PI),i.fillStyle="rgba(220, 38, 38, 0.08)",i.fill(),i.beginPath(),i.arc(t,o,3,0,2*Math.PI),i.fillStyle="rgba(255, 255, 255, 0.25)",i.fill(),i.fillStyle="rgba(255, 255, 255, 0.12)",i.font="bold 11px 'Manrope', sans-serif",i.textAlign="center",i.fillText(e.name,t,o-14)}),e=requestAnimationFrame(d)};return d(),()=>{window.removeEventListener("resize",s),cancelAnimationFrame(e)}},[]);let s=2026===e?25:2027===e?50:2028===e?75:100,l=2*Math.PI*30;return(0,t.jsx)("div",{ref:o,className:"elementor-element elementor-element-bbc6760 e-con-full e-flex cut-corner-no sticky-container-off e-con e-parent","data-id":"bbc6760","data-element_type":"container","data-e-type":"container",style:{position:"relative",zIndex:1},children:(0,t.jsxs)("section",{id:"hero",className:"roadmap-hero-section",children:[(0,t.jsx)("canvas",{ref:n,className:"ce-canvas-bg","aria-hidden":"true"}),(0,t.jsx)("div",{className:"roadmap-glow-spot top-left"}),(0,t.jsx)("div",{className:"roadmap-glow-spot bottom-right"}),(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:` /* Buttery-Smooth Hardware-Accelerated 3D AI Logistics Timeline Styles */ .roadmap-hero-section { position: relative; @@ -1257,4 +1318,4 @@ .card-heading { font-size: 16px; } .card-text { font-size: 13px; } } - `}}),(0,t.jsxs)("div",{className:"container",children:[(0,t.jsx)("div",{className:"vision-tag-top",children:"VISION / 2030"}),(0,t.jsx)("div",{className:"elementor-element elementor-element-54d05ac elementor-widget elementor-widget-logico_heading","data-id":"54d05ac","data-element_type":"widget","data-widget_type":"logico_heading.default",children:(0,t.jsxs)("div",{className:"elementor-widget-container",children:[(0,t.jsxs)("h3",{className:"logico-title intelligence-grid-title",children:["The ",(0,t.jsx)("span",{className:"intelligence-grid-title-highlight",children:"Intelligence Grid"})," Behind Every Urban Mile"]}),(0,t.jsx)("p",{className:"vision-main-subtitle",children:"From Hyderabad EV pilot to nationwide AI logistics intelligence by 2030"})]})}),(0,t.jsxs)("div",{className:"roadmap-track-container",children:[(0,t.jsx)("span",{className:"roadmap-track-label",children:"ROADMAP TO 2030"}),(0,t.jsxs)("div",{className:"timeline-horizontal-wrapper",children:[(0,t.jsx)("div",{className:"timeline-horizontal-line"}),(0,t.jsx)("div",{className:"timeline-horizontal-fill",style:{width:2026===e?"12.5%":2027===e?"37.5%":2028===e?"62.5%":"87.5%"}}),(0,t.jsx)("div",{className:"node-dots-row",children:o.map(i=>(0,t.jsx)("div",{className:`node-dot-item ${e>=i.year?"active":""}`,style:{left:i.trackLeft},children:e===i.year&&(0,t.jsx)("div",{className:"node-pulse-crown"})},i.year))})]}),(0,t.jsxs)("div",{className:"roadmap-complete-pct-container",children:[(0,t.jsxs)("span",{className:"roadmap-complete-pct",children:[s,"% COMPLETE →"]}),(0,t.jsxs)("svg",{width:"40",height:"40",viewBox:"0 0 80 80",children:[(0,t.jsx)("circle",{cx:"40",cy:"40",r:"30",fill:"none",stroke:"rgba(255,255,255,0.06)",strokeWidth:"6"}),(0,t.jsx)("circle",{className:"progress-ring-circle",cx:"40",cy:"40",r:"30",fill:"none",strokeWidth:"6",strokeDasharray:l,strokeDashoffset:l*(1-s/100),strokeLinecap:"round"})]})]})]}),(0,t.jsx)("div",{className:"roadmap-grid-container",children:o.map(i=>{let r=2030===i.year,o=e===i.year;return(0,t.jsxs)("div",{onMouseEnter:()=>a(i.year),onClick:()=>a(i.year),className:`roadmap-col-card ${r?"glowing-vision-card":""} ${o?"active":""}`,"data-card":i.year,children:[r&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"ce-sparkle sparkle-1"}),(0,t.jsx)("span",{className:"ce-sparkle sparkle-2"}),(0,t.jsx)("span",{className:"ce-sparkle sparkle-3"})]}),(0,t.jsxs)("div",{className:"card-top-row",children:[(0,t.jsx)("span",{className:"year-num",children:i.year}),(0,t.jsx)("div",{className:`card-icon-badge ${r?"translucent-white":""}`,children:i.icon})]}),(0,t.jsx)("span",{className:`phase-badge-pill ${i.phaseClass}`,children:i.phase}),(0,t.jsx)("h5",{className:"card-heading",style:{color:"white"},children:i.title}),(0,t.jsx)("p",{className:"card-text",children:i.desc}),(0,t.jsx)("div",{className:"card-pills-stack",children:i.stats.map((e,i)=>(0,t.jsxs)("div",{className:`card-stat-pill-mini ${r?"translucent-crimson":""}`,children:[e.icon,(0,t.jsx)("span",{children:e.text})]},i))})]},i.year)})})]})]})})}])}]); \ No newline at end of file + `}}),(0,t.jsxs)("div",{className:"container",children:[(0,t.jsx)("div",{className:"vision-tag-top",children:"VISION / 2030"}),(0,t.jsx)("div",{className:"elementor-element elementor-element-54d05ac elementor-widget elementor-widget-logico_heading","data-id":"54d05ac","data-element_type":"widget","data-widget_type":"logico_heading.default",children:(0,t.jsxs)("div",{className:"elementor-widget-container",children:[(0,t.jsxs)("h3",{className:"logico-title intelligence-grid-title",children:["The ",(0,t.jsx)("span",{className:"intelligence-grid-title-highlight",children:"Intelligence Grid"})," Behind Every Urban Mile"]}),(0,t.jsx)("p",{className:"vision-main-subtitle",children:"From Hyderabad EV pilot to nationwide AI logistics intelligence by 2030"})]})}),(0,t.jsxs)("div",{className:"roadmap-track-container",children:[(0,t.jsx)("span",{className:"roadmap-track-label",children:"ROADMAP TO 2030"}),(0,t.jsxs)("div",{className:"timeline-horizontal-wrapper",children:[(0,t.jsx)("div",{className:"timeline-horizontal-line"}),(0,t.jsx)("div",{className:"timeline-horizontal-fill",style:{width:2026===e?"12.5%":2027===e?"37.5%":2028===e?"62.5%":"87.5%"}}),(0,t.jsx)("div",{className:"node-dots-row",children:r.map(i=>(0,t.jsx)("div",{className:`node-dot-item ${e>=i.year?"active":""}`,style:{left:i.trackLeft},children:e===i.year&&(0,t.jsx)("div",{className:"node-pulse-crown"})},i.year))})]}),(0,t.jsxs)("div",{className:"roadmap-complete-pct-container",children:[(0,t.jsxs)("span",{className:"roadmap-complete-pct",children:[s,"% COMPLETE →"]}),(0,t.jsxs)("svg",{width:"40",height:"40",viewBox:"0 0 80 80",children:[(0,t.jsx)("circle",{cx:"40",cy:"40",r:"30",fill:"none",stroke:"rgba(255,255,255,0.06)",strokeWidth:"6"}),(0,t.jsx)("circle",{className:"progress-ring-circle",cx:"40",cy:"40",r:"30",fill:"none",strokeWidth:"6",strokeDasharray:l,strokeDashoffset:l*(1-s/100),strokeLinecap:"round"})]})]})]}),(0,t.jsx)("div",{className:"roadmap-grid-container",children:r.map(i=>{let o=2030===i.year,r=e===i.year;return(0,t.jsxs)("div",{onMouseEnter:()=>a(i.year),onClick:()=>a(i.year),className:`roadmap-col-card ${o?"glowing-vision-card":""} ${r?"active":""}`,"data-card":i.year,children:[o&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"ce-sparkle sparkle-1"}),(0,t.jsx)("span",{className:"ce-sparkle sparkle-2"}),(0,t.jsx)("span",{className:"ce-sparkle sparkle-3"})]}),(0,t.jsxs)("div",{className:"card-top-row",children:[(0,t.jsx)("span",{className:"year-num",children:i.year}),(0,t.jsx)("div",{className:`card-icon-badge ${o?"translucent-white":""}`,children:i.icon})]}),(0,t.jsx)("span",{className:`phase-badge-pill ${i.phaseClass}`,children:i.phase}),(0,t.jsx)("h5",{className:"card-heading",style:{color:"white"},children:i.title}),(0,t.jsx)("p",{className:"card-text",children:i.desc}),(0,t.jsx)("div",{className:"card-pills-stack",children:i.stats.map((e,i)=>(0,t.jsxs)("div",{className:`card-stat-pill-mini ${o?"translucent-crimson":""}`,children:[e.icon,(0,t.jsx)("span",{children:e.text})]},i))})]},i.year)})})]})]})})}])}]); \ No newline at end of file diff --git a/build/_next/static/chunks/0y0w40785mt~m.js b/build/_next/static/chunks/01om.zjj76s3i.js similarity index 88% rename from build/_next/static/chunks/0y0w40785mt~m.js rename to build/_next/static/chunks/01om.zjj76s3i.js index e42620a..61587ab 100644 --- a/build/_next/static/chunks/0y0w40785mt~m.js +++ b/build/_next/static/chunks/01om.zjj76s3i.js @@ -1,4 +1,4 @@ -(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,5074,e=>{"use strict";var t=e.i(43476),i=e.i(71645);let n=[[[.04,.2],[.1,.12],[.18,.1],[.24,.13],[.29,.12],[.3,.18],[.27,.22],[.26,.28],[.22,.3],[.2,.38],[.17,.44],[.15,.4],[.16,.32],[.12,.3],[.09,.26],[.06,.24]],[[.21,.5],[.27,.48],[.31,.52],[.31,.6],[.29,.66],[.27,.74],[.24,.82],[.22,.8],[.22,.7],[.205,.62],[.2,.55]],[[.45,.16],[.5,.13],[.55,.15],[.57,.19],[.55,.24],[.5,.27],[.47,.25],[.455,.2]],[[.46,.34],[.53,.32],[.58,.36],[.585,.44],[.56,.52],[.53,.6],[.5,.66],[.47,.62],[.46,.52],[.45,.44],[.45,.38]],[[.56,.14],[.64,.1],[.74,.1],[.84,.14],[.9,.2],[.92,.26],[.86,.3],[.8,.3],[.74,.34],[.7,.34],[.66,.3],[.6,.3],[.575,.24],[.565,.18]],[[.81,.66],[.87,.64],[.92,.68],[.92,.74],[.86,.77],[.81,.74],[.8,.7]]],o=[[.115,.3],[.265,.255],[.285,.66],[.475,.185],[.605,.345],[.655,.4],[.745,.5],[.815,.275],[.865,.715]],a=[[0,1],[1,3],[3,4],[4,5],[5,6],[6,7],[7,8],[1,2],[3,7],[0,7]];e.s(["default",0,function(){let e=(0,i.useRef)(null);return(0,i.useEffect)(()=>{let t=e.current,i=t?.parentElement;if(!t||!i)return;let r=t.getContext("2d");if(!r)return;let s=window.matchMedia?.("(prefers-reduced-motion: reduce)").matches,l=0,d=0,c=[],m=0,p=0,h=()=>{let e=i.getBoundingClientRect();l=Math.max(1,e.width),d=Math.max(1,e.height);let o=Math.min(window.devicePixelRatio||1,2);t.width=Math.round(l*o),t.height=Math.round(d*o),t.style.width=l+"px",t.style.height=d+"px",r.setTransform(o,0,0,o,0,0),(()=>{c=[];let e=Math.max(11,Math.min(17,l/70));for(let t=e/2;tt!=d>t&&e<(l-r)*(t-s)/(d-s)+r&&(n=!n)}return n}(e,o,a)){c.push({x:t,y:i});break}}})()},g=(e,t)=>({x:(e.x+t.x)/2,y:(e.y+t.y)/2-.28*Math.hypot(t.x-e.x,t.y-e.y)}),x=(e,t,i,n)=>{let o=1-n;return{x:o*o*e.x+2*o*n*t.x+n*n*i.x,y:o*o*e.y+2*o*n*t.y+n*n*i.y}},u=e=>{for(let e of(r.clearRect(0,0,l,d),r.fillStyle="rgba(120,122,130,0.55)",c))r.beginPath(),r.arc(e.x,e.y,1.15,0,2*Math.PI),r.fill();let t=o.map(([e,t])=>({x:e*l,y:t*d}));for(let[e,i]of(r.save(),r.setLineDash([4,7]),r.lineWidth=1,r.strokeStyle="rgba(239,68,68,0.13)",a)){let n=g(t[e],t[i]);r.beginPath(),r.moveTo(t[e].x,t[e].y),r.quadraticCurveTo(n.x,n.y,t[i].x,t[i].y),r.stroke()}r.restore(),r.save();for(let i=0;i{p||(p=e),u((e-p)/1e3),m=requestAnimationFrame(b)};h(),s?u(0):m=requestAnimationFrame(b);let f=new ResizeObserver(()=>{h(),s&&u(0)});return f.observe(i),()=>{cancelAnimationFrame(m),f.disconnect()}},[]),(0,t.jsx)("canvas",{ref:e,className:"ind__map","aria-hidden":"true"})}])},89937,e=>{"use strict";var t=e.i(43476),i=e.i(71645);e.s(["default",0,function(){let[e,n]=(0,i.useState)(0);(0,i.useEffect)(()=>{let e=setInterval(()=>{n(e=>+(0===e))},7e3);return()=>clearInterval(e)},[]);let o=e=>{n(e)};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:` +(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,5074,e=>{"use strict";var t=e.i(43476),i=e.i(71645);let n=[[[.04,.2],[.1,.12],[.18,.1],[.24,.13],[.29,.12],[.3,.18],[.27,.22],[.26,.28],[.22,.3],[.2,.38],[.17,.44],[.15,.4],[.16,.32],[.12,.3],[.09,.26],[.06,.24]],[[.21,.5],[.27,.48],[.31,.52],[.31,.6],[.29,.66],[.27,.74],[.24,.82],[.22,.8],[.22,.7],[.205,.62],[.2,.55]],[[.45,.16],[.5,.13],[.55,.15],[.57,.19],[.55,.24],[.5,.27],[.47,.25],[.455,.2]],[[.46,.34],[.53,.32],[.58,.36],[.585,.44],[.56,.52],[.53,.6],[.5,.66],[.47,.62],[.46,.52],[.45,.44],[.45,.38]],[[.56,.14],[.64,.1],[.74,.1],[.84,.14],[.9,.2],[.92,.26],[.86,.3],[.8,.3],[.74,.34],[.7,.34],[.66,.3],[.6,.3],[.575,.24],[.565,.18]],[[.81,.66],[.87,.64],[.92,.68],[.92,.74],[.86,.77],[.81,.74],[.8,.7]]],o=[[.115,.3],[.265,.255],[.285,.66],[.475,.185],[.605,.345],[.655,.4],[.745,.5],[.815,.275],[.865,.715]],a=[[0,1],[1,3],[3,4],[4,5],[5,6],[6,7],[7,8],[1,2],[3,7],[0,7]];e.s(["default",0,function({accent:e="#ef4444"}){let r=(0,i.useRef)(null);return(0,i.useEffect)(()=>{let[t,i,s]=function(e){let t=/^#?([0-9a-f]{6})$/i.exec(e.trim());if(!t)return[239,68,68];let i=parseInt(t[1],16);return[i>>16&255,i>>8&255,255&i]}(e),l=e=>`rgba(${t},${i},${s},${e})`,d=`rgb(${t},${i},${s})`,c=r.current,m=c?.parentElement;if(!c||!m)return;let p=c.getContext("2d");if(!p)return;let h=window.matchMedia?.("(prefers-reduced-motion: reduce)").matches,g=0,x=0,u=[],b=0,f=0,y=()=>{let e=m.getBoundingClientRect();g=Math.max(1,e.width),x=Math.max(1,e.height);let t=Math.min(window.devicePixelRatio||1,2);c.width=Math.round(g*t),c.height=Math.round(x*t),c.style.width=g+"px",c.style.height=x+"px",p.setTransform(t,0,0,t,0,0),(()=>{u=[];let e=Math.max(11,Math.min(17,g/70));for(let t=e/2;tt!=d>t&&e<(l-r)*(t-s)/(d-s)+r&&(n=!n)}return n}(e,o,a)){u.push({x:t,y:i});break}}})()},v=(e,t)=>({x:(e.x+t.x)/2,y:(e.y+t.y)/2-.28*Math.hypot(t.x-e.x,t.y-e.y)}),w=(e,t,i,n)=>{let o=1-n;return{x:o*o*e.x+2*o*n*t.x+n*n*i.x,y:o*o*e.y+2*o*n*t.y+n*n*i.y}},k=e=>{for(let e of(p.clearRect(0,0,g,x),p.fillStyle="rgba(120,122,130,0.55)",u))p.beginPath(),p.arc(e.x,e.y,1.15,0,2*Math.PI),p.fill();let t=o.map(([e,t])=>({x:e*g,y:t*x}));for(let[e,i]of(p.save(),p.setLineDash([4,7]),p.lineWidth=1,p.strokeStyle=l(.13),a)){let n=v(t[e],t[i]);p.beginPath(),p.moveTo(t[e].x,t[e].y),p.quadraticCurveTo(n.x,n.y,t[i].x,t[i].y),p.stroke()}p.restore(),p.save();for(let i=0;i{f||(f=e),k((e-f)/1e3),b=requestAnimationFrame(_)};y(),h?k(0):b=requestAnimationFrame(_);let j=new ResizeObserver(()=>{y(),h&&k(0)});return j.observe(m),()=>{cancelAnimationFrame(b),j.disconnect()}},[e]),(0,t.jsx)("canvas",{ref:r,className:"ind__map","aria-hidden":"true"})}])},89937,e=>{"use strict";var t=e.i(43476),i=e.i(71645);e.s(["default",0,function(){let[e,n]=(0,i.useState)(0);(0,i.useEffect)(()=>{let e=setInterval(()=>{n(e=>+(0===e))},7e3);return()=>clearInterval(e)},[]);let o=e=>{n(e)};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:` .howits-hero-custom-bg.elementor-repeater-item-3264830, .howits-hero-custom-bg.elementor-repeater-item-6867061 { background-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.1)), url('/images/home1-slide-1.png') !important; diff --git a/build/_next/static/chunks/0-u0mnwn1ei4e.js b/build/_next/static/chunks/01~rm~.6wwpvb.js similarity index 54% rename from build/_next/static/chunks/0-u0mnwn1ei4e.js rename to build/_next/static/chunks/01~rm~.6wwpvb.js index 2376a03..e329919 100644 --- a/build/_next/static/chunks/0-u0mnwn1ei4e.js +++ b/build/_next/static/chunks/01~rm~.6wwpvb.js @@ -1 +1 @@ -(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,48228,t=>{"use strict";let e=[{n:"01",key:"input",kicker:"Input",theme:"#22C55E"},{n:"02",key:"parallel",kicker:"Parallel Execution",theme:"#8B5CF6"},{n:"03",key:"optimize",kicker:"Smart Optimization",theme:"#3B82F6"},{n:"04",key:"grading",kicker:"Performance Grading",theme:"#F59E0B"},{n:"05",key:"winner",kicker:"Strategy Comparison",theme:"#C01227"}],i=e.length;function n(t){return[(t%2==0?-1:1)*1.4,0,-(13*t)]}t.s(["N",0,i,"STAGES",0,e,"cameraFor",0,function(t){let e,r,a,o,c,l,[k,s,h]=(r=Math.floor(e=Math.max(0,Math.min(i-1,t))),a=Math.min(i-1,r+1),o=e-r,c=n(r),l=n(a),[c[0]+(l[0]-c[0])*o,c[1]+(l[1]-c[1])*o,c[2]+(l[2]-c[2])*o]);return{pos:[.7*k,s+4,h+8.2],look:[.55*k,s+1.05,h-1.6]}},"districtPosition",0,n])},30860,t=>{t.v(e=>Promise.all(["static/chunks/04dzth4udk0lf.js","static/chunks/0a.~l01a83_pb.js","static/chunks/0ovd-l8hud6qg.js"].map(e=>t.l(e))).then(()=>e(20927)))}]); \ No newline at end of file +(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,48228,t=>{"use strict";let e=[{n:"01",key:"input",kicker:"Input",theme:"#22C55E"},{n:"02",key:"parallel",kicker:"Parallel Execution",theme:"#8B5CF6"},{n:"03",key:"optimize",kicker:"Smart Optimization",theme:"#3B82F6"},{n:"04",key:"grading",kicker:"Performance Grading",theme:"#F59E0B"},{n:"05",key:"winner",kicker:"Strategy Comparison",theme:"#C01227"}],i=e.length;function n(t){return[(t%2==0?-1:1)*1.4,0,-(13*t)]}t.s(["N",0,i,"STAGES",0,e,"cameraFor",0,function(t){let e,r,a,c,s,h,[o,k,l]=(r=Math.floor(e=Math.max(0,Math.min(i-1,t))),a=Math.min(i-1,r+1),c=e-r,s=n(r),h=n(a),[s[0]+(h[0]-s[0])*c,s[1]+(h[1]-s[1])*c,s[2]+(h[2]-s[2])*c]);return{pos:[.7*o,k+4,l+8.2],look:[.55*o,k+1.05,l-1.6]}},"districtPosition",0,n])},30860,t=>{t.v(e=>Promise.all(["static/chunks/15p8tu-h65hwr.js","static/chunks/0bfq--x47h8z1.js","static/chunks/0e.~6vil2~4uy.js","static/chunks/0d1hvye~4r7kb.js","static/chunks/0l1v23rjy.-qh.js"].map(e=>t.l(e))).then(()=>e(20927)))}]); \ No newline at end of file diff --git a/build/_next/static/chunks/02wozf8tof0sv.js b/build/_next/static/chunks/02wozf8tof0sv.js deleted file mode 100644 index 32a6ec6..0000000 --- a/build/_next/static/chunks/02wozf8tof0sv.js +++ /dev/null @@ -1,31 +0,0 @@ -(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,55682,(e,t,r)=>{"use strict";r._=function(e){return e&&e.__esModule?e:{default:e}}},90317,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={bindSnapshot:function(){return l},createAsyncLocalStorage:function(){return a},createSnapshot:function(){return c}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=Object.defineProperty(Error("Invariant: AsyncLocalStorage accessed in runtime where it is not available"),"__NEXT_ERROR_CODE",{value:"E504",enumerable:!1,configurable:!0});class u{disable(){throw i}getStore(){}run(){throw i}exit(){throw i}enterWith(){throw i}static bind(e){return e}}let s="u">typeof globalThis&&globalThis.AsyncLocalStorage;function a(){return s?new s:new u}function l(e){return s?s.bind(e):u.bind(e)}function c(){return s?s.snapshot():function(e,...t){return e(...t)}}},35451,(e,t,r)=>{var n={229:function(e){var t,r,n,o=e.exports={};function i(){throw Error("setTimeout has not been defined")}function u(){throw Error("clearTimeout has not been defined")}try{t="function"==typeof setTimeout?setTimeout:i}catch(e){t=i}try{r="function"==typeof clearTimeout?clearTimeout:u}catch(e){r=u}function s(e){if(t===setTimeout)return setTimeout(e,0);if((t===i||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(r){try{return t.call(null,e,0)}catch(r){return t.call(this,e,0)}}}var a=[],l=!1,c=-1;function f(){l&&n&&(l=!1,n.length?a=n.concat(a):c=-1,a.length&&d())}function d(){if(!l){var e=s(f);l=!0;for(var t=a.length;t;){for(n=a,a=[];++c1)for(var r=1;r{"use strict";var n,o;t.exports=(null==(n=e.g.process)?void 0:n.env)&&"object"==typeof(null==(o=e.g.process)?void 0:o.env)?e.g.process:e.r(35451)},45689,(e,t,r)=>{"use strict";var n=Symbol.for("react.transitional.element");function o(e,t,r){var o=null;if(void 0!==r&&(o=""+r),void 0!==t.key&&(o=""+t.key),"key"in t)for(var i in r={},t)"key"!==i&&(r[i]=t[i]);else r=t;return{$$typeof:n,type:e,key:o,ref:void 0!==(t=r.ref)?t:null,props:r}}r.Fragment=Symbol.for("react.fragment"),r.jsx=o,r.jsxs=o},43476,(e,t,r)=>{"use strict";t.exports=e.r(45689)},50740,(e,t,r)=>{"use strict";var n=e.i(47167),o=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),u=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),l=Symbol.for("react.consumer"),c=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),p=Symbol.for("react.memo"),y=Symbol.for("react.lazy"),g=Symbol.for("react.activity"),h=Symbol.for("react.view_transition"),_=Symbol.iterator,b={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},v=Object.assign,m={};function x(e,t,r){this.props=e,this.context=t,this.refs=m,this.updater=r||b}function O(){}function S(e,t,r){this.props=e,this.context=t,this.refs=m,this.updater=r||b}x.prototype.isReactComponent={},x.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},x.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},O.prototype=x.prototype;var j=S.prototype=new O;j.constructor=S,v(j,x.prototype),j.isPureReactComponent=!0;var E=Array.isArray;function T(){}var w={H:null,A:null,T:null,S:null},R=Object.prototype.hasOwnProperty;function P(e,t,r){var n=r.ref;return{$$typeof:o,type:e,key:t,ref:void 0!==n?n:null,props:r}}function A(e){return"object"==typeof e&&null!==e&&e.$$typeof===o}var M=/\/+/g;function C(e,t){var r,n;return"object"==typeof e&&null!==e&&null!=e.key?(r=""+e.key,n={"=":"=0",":":"=2"},"$"+r.replace(/[=:]/g,function(e){return n[e]})):t.toString(36)}function k(e,t,r){if(null==e)return e;var n=[],u=0;return!function e(t,r,n,u,s){var a,l,c,f=typeof t;("undefined"===f||"boolean"===f)&&(t=null);var d=!1;if(null===t)d=!0;else switch(f){case"bigint":case"string":case"number":d=!0;break;case"object":switch(t.$$typeof){case o:case i:d=!0;break;case y:return e((d=t._init)(t._payload),r,n,u,s)}}if(d)return s=s(t),d=""===u?"."+C(t,0):u,E(s)?(n="",null!=d&&(n=d.replace(M,"$&/")+"/"),e(s,r,n,"",function(e){return e})):null!=s&&(A(s)&&(a=s,l=n+(null==s.key||t&&t.key===s.key?"":(""+s.key).replace(M,"$&/")+"/")+d,s=P(a.type,l,a.props)),r.push(s)),1;d=0;var p=""===u?".":u+":";if(E(t))for(var g=0;g{"use strict";t.exports=e.r(50740)},18800,(e,t,r)=>{"use strict";var n=e.r(71645);function o(e){var t="https://react.dev/errors/"+e;if(1{"use strict";!function e(){if("u">typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}(),t.exports=e.r(18800)},43369,(e,t,r)=>{"use strict";let n;Object.defineProperty(r,"__esModule",{value:!0});var o={getAssetToken:function(){return a},getAssetTokenQuery:function(){return l},getDeploymentId:function(){return u},getDeploymentIdQuery:function(){return s}};for(var i in o)Object.defineProperty(r,i,{enumerable:!0,get:o[i]});function u(){return n}function s(e=!1){let t=n;return t?`${e?"&":"?"}dpl=${t}`:""}function a(){return!1}function l(e=!1){return""}"u">typeof window?(n=document.documentElement.dataset.dplId,delete document.documentElement.dataset.dplId):n=void 0},90809,(e,t,r)=>{"use strict";function n(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,r=new WeakMap;return(n=function(e){return e?r:t})(e)}r._=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var r=n(t);if(r&&r.has(e))return r.get(e);var o={__proto__:null},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var s=i?Object.getOwnPropertyDescriptor(e,u):null;s&&(s.get||s.set)?Object.defineProperty(o,u,s):o[u]=e[u]}return o.default=e,r&&r.set(e,o),o}},42344,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"workAsyncStorageInstance",{enumerable:!0,get:function(){return n}});let n=(0,e.r(90317).createAsyncLocalStorage)()},63599,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"workAsyncStorage",{enumerable:!0,get:function(){return n.workAsyncStorageInstance}});let n=e.r(42344)},32061,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={BailoutToCSRError:function(){return u},isBailoutToCSRError:function(){return s}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i="BAILOUT_TO_CLIENT_SIDE_RENDERING";class u extends Error{constructor(e){super(`Bail out to client-side rendering: ${e}`),this.reason=e,this.digest=i}}function s(e){return"object"==typeof e&&null!==e&&"digest"in e&&e.digest===i}},12354,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"handleISRError",{enumerable:!0,get:function(){return o}});let n="u"{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useUntrackedPathname",{enumerable:!0,get:function(){return i}});let n=e.r(71645),o=e.r(61994);function i(){return!function(){if("u"0}}return!1}()?(0,n.useContext)(o.PathnameContext):null}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},78377,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={handleHardNavError:function(){return u},useNavFailureHandler:function(){return s}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});e.r(71645);let i=e.r(51191);function u(e){return!!(e&&"u">typeof window)&&!!window.next.__pendingUrl&&(0,i.createHrefFromUrl)(new URL(window.location.href))!==(0,i.createHrefFromUrl)(window.next.__pendingUrl)&&(console.error("Error occurred during navigation, falling back to hard navigation",e),window.location.href=window.next.__pendingUrl.toString(),!0)}function s(){}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},72383,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={ErrorBoundary:function(){return g},ErrorBoundaryHandler:function(){return y}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=e.r(90809),u=e.r(43476),s=i._(e.r(71645)),a=e.r(90373),l=e.r(65713);e.r(78377);let c=e.r(12354),f=e.r(82604),d=e.r(8372),p="u">typeof window&&(0,f.isBot)(window.navigator.userAgent);class y extends s.default.Component{static{this.contextType=d.AppRouterContext}constructor(e){super(e),this.reset=()=>{this.setState({error:null})},this.unstable_retry=()=>{(0,s.startTransition)(()=>{this.context?.refresh(),this.reset()})},this.state={error:null,previousPathname:this.props.pathname}}static getDerivedStateFromError(e){if((0,l.isNextRouterError)(e))throw e;return{error:e}}static getDerivedStateFromProps(e,t){let{error:r}=t;return e.pathname!==t.previousPathname&&t.error?{error:null,previousPathname:e.pathname}:{error:t.error,previousPathname:e.pathname}}render(){return this.state.error&&!p?((0,c.handleISRError)({error:this.state.error}),(0,u.jsxs)(u.Fragment,{children:[this.props.errorStyles,this.props.errorScripts,(0,u.jsx)(this.props.errorComponent,{error:this.state.error,reset:this.reset,unstable_retry:this.unstable_retry})]})):this.props.children}}function g({errorComponent:e,errorStyles:t,errorScripts:r,children:n}){let o=(0,a.useUntrackedPathname)();return e?(0,u.jsx)(y,{pathname:o,errorComponent:e,errorStyles:t,errorScripts:r,children:n}):(0,u.jsx)(u.Fragment,{children:n})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},58442,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={RedirectBoundary:function(){return p},RedirectErrorBoundary:function(){return d}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=e.r(90809),u=e.r(43476),s=i._(e.r(71645)),a=e.r(76562),l=e.r(24063),c=e.r(68391);function f({redirect:e,reset:t,redirectType:r}){let n=(0,a.useRouter)();return(0,s.useEffect)(()=>{s.default.startTransition(()=>{"push"===r?n.push(e,{}):n.replace(e,{}),t()})},[e,r,t,n]),null}class d extends s.default.Component{constructor(e){super(e),this.state={redirect:null,redirectType:null}}static getDerivedStateFromError(e){if((0,c.isRedirectError)(e)){let t=(0,l.getURLFromRedirectError)(e),r=(0,l.getRedirectTypeFromError)(e);return"handled"in e?{redirect:null,redirectType:null}:{redirect:t,redirectType:r}}throw e}render(){let{redirect:e,redirectType:t}=this.state;return null!==e&&null!==t?(0,u.jsx)(f,{redirect:e,redirectType:t,reset:()=>this.setState({redirect:null})}):this.props.children}}function p({children:e}){let t=(0,a.useRouter)();return(0,u.jsx)(d,{router:t,children:e})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},70725,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"createRouterCacheKey",{enumerable:!0,get:function(){return o}});let n=e.r(13258);function o(e,t=!1){return Array.isArray(e)?`${e[0]}|${e[1]}|${e[2]}`:t&&e.startsWith(n.PAGE_SEGMENT_KEY)?n.PAGE_SEGMENT_KEY:e}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},1244,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"unresolvedThenable",{enumerable:!0,get:function(){return n}});let n={then:()=>{}};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},97367,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={MetadataBoundary:function(){return s},OutletBoundary:function(){return l},RootLayoutBoundary:function(){return c},ViewportBoundary:function(){return a}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=e.r(54839),u={[i.METADATA_BOUNDARY_NAME]:function({children:e}){return e},[i.VIEWPORT_BOUNDARY_NAME]:function({children:e}){return e},[i.OUTLET_BOUNDARY_NAME]:function({children:e}){return e},[i.ROOT_LAYOUT_BOUNDARY_NAME]:function({children:e}){return e}},s=u[i.METADATA_BOUNDARY_NAME.slice(0)],a=u[i.VIEWPORT_BOUNDARY_NAME.slice(0)],l=u[i.OUTLET_BOUNDARY_NAME.slice(0)],c=u[i.ROOT_LAYOUT_BOUNDARY_NAME.slice(0)]},42732,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"HeadManagerContext",{enumerable:!0,get:function(){return n}});let n=e.r(55682)._(e.r(71645)).default.createContext({})},18576,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={WarningIcon:function(){return a},errorStyles:function(){return u},errorThemeCss:function(){return s}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});e.r(55682);let i=e.r(43476);e.r(71645);let u={container:{fontFamily:'system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"',height:"100vh",display:"flex",alignItems:"center",justifyContent:"center"},card:{marginTop:"-32px",maxWidth:"325px",padding:"32px 28px",textAlign:"left"},icon:{marginBottom:"24px"},title:{fontSize:"24px",fontWeight:500,letterSpacing:"-0.02em",lineHeight:"32px",margin:"0 0 12px 0",color:"var(--next-error-title)"},message:{fontSize:"14px",fontWeight:400,lineHeight:"21px",margin:"0 0 20px 0",color:"var(--next-error-message)"},form:{margin:0},buttonGroup:{display:"flex",gap:"8px",alignItems:"center"},button:{display:"inline-flex",alignItems:"center",justifyContent:"center",height:"32px",padding:"0 12px",fontSize:"14px",fontWeight:500,lineHeight:"20px",borderRadius:"6px",cursor:"pointer",color:"var(--next-error-btn-text)",background:"var(--next-error-btn-bg)",border:"var(--next-error-btn-border)"},buttonSecondary:{display:"inline-flex",alignItems:"center",justifyContent:"center",height:"32px",padding:"0 12px",fontSize:"14px",fontWeight:500,lineHeight:"20px",borderRadius:"6px",cursor:"pointer",color:"var(--next-error-btn-secondary-text)",background:"var(--next-error-btn-secondary-bg)",border:"var(--next-error-btn-secondary-border)"},digestFooter:{position:"fixed",bottom:"32px",left:"0",right:"0",textAlign:"center",fontFamily:'ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace',fontSize:"12px",lineHeight:"18px",fontWeight:400,margin:"0",color:"var(--next-error-digest)"}},s=` -:root { - --next-error-bg: #fff; - --next-error-text: #171717; - --next-error-title: #171717; - --next-error-message: #171717; - --next-error-digest: #666666; - --next-error-btn-text: #fff; - --next-error-btn-bg: #171717; - --next-error-btn-border: none; - --next-error-btn-secondary-text: #171717; - --next-error-btn-secondary-bg: transparent; - --next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08); -} -@media (prefers-color-scheme: dark) { - :root { - --next-error-bg: #0a0a0a; - --next-error-text: #ededed; - --next-error-title: #ededed; - --next-error-message: #ededed; - --next-error-digest: #a0a0a0; - --next-error-btn-text: #0a0a0a; - --next-error-btn-bg: #ededed; - --next-error-btn-border: none; - --next-error-btn-secondary-text: #ededed; - --next-error-btn-secondary-bg: transparent; - --next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14); - } -} -body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); } -`.replace(/\n\s*/g,"");function a(){return(0,i.jsx)("svg",{width:"32",height:"32",viewBox:"-0.2 -1.5 32 32",fill:"none",style:u.icon,children:(0,i.jsx)("path",{d:"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z",fill:"var(--next-error-title)"})})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},68027,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return u}}),e.r(55682);let n=e.r(43476);e.r(71645);let o=e.r(12354),i=e.r(18576),u=function({error:e}){let t=e?.digest,r=!!t;return(0,o.handleISRError)({error:e}),(0,n.jsxs)("html",{id:"__next_error__",children:[(0,n.jsx)("head",{children:(0,n.jsx)("style",{dangerouslySetInnerHTML:{__html:i.errorThemeCss}})}),(0,n.jsxs)("body",{children:[(0,n.jsx)("div",{style:i.errorStyles.container,children:(0,n.jsxs)("div",{style:i.errorStyles.card,children:[(0,n.jsx)(i.WarningIcon,{}),(0,n.jsx)("h1",{style:i.errorStyles.title,children:"This page couldn’t load"}),(0,n.jsx)("p",{style:i.errorStyles.message,children:r?"A server error occurred. Reload to try again.":"Reload to try again, or go back."}),(0,n.jsxs)("div",{style:i.errorStyles.buttonGroup,children:[(0,n.jsx)("form",{style:i.errorStyles.form,children:(0,n.jsx)("button",{type:"submit",style:i.errorStyles.button,children:"Reload"})}),!r&&(0,n.jsx)("button",{type:"button",style:i.errorStyles.buttonSecondary,onClick:()=>{window.history.length>1?window.history.back():window.location.href="/"},children:"Back"})]})]})}),t&&(0,n.jsxs)("p",{style:i.errorStyles.digestFooter,children:["ERROR ",t]})]})]})};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)}]); \ No newline at end of file diff --git a/build/_next/static/chunks/04dzth4udk0lf.js b/build/_next/static/chunks/04dzth4udk0lf.js deleted file mode 100644 index 07f131a..0000000 --- a/build/_next/static/chunks/04dzth4udk0lf.js +++ /dev/null @@ -1,38 +0,0 @@ -(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,60099,31067,e=>{"use strict";let t,r;function n(){return(n=Object.assign.bind()).apply(null,arguments)}e.s(["default",()=>n],31067);var i=e.i(71645),o=e.i(88014),l=e.i(90072),a=e.i(28600),s=e.i(25234);let c=new l.Vector3,u=new l.Vector3,d=new l.Vector3,m=new l.Vector2;function f(e,t,r){let n=c.setFromMatrixPosition(e.matrixWorld);n.project(t);let i=r.width/2,o=r.height/2;return[n.x*i+i,-(n.y*o)+o]}let h=e=>1e-10>Math.abs(e)?0:e;function p(e,t,r=""){let n="matrix3d(";for(let r=0;16!==r;r++)n+=h(t[r]*e.elements[r])+(15!==r?",":")");return r+n}let x=(t=[1,-1,1,1,1,-1,1,1,1,-1,1,1,1,-1,1,1],e=>p(e,t)),v=(r=e=>[1/e,1/e,1/e,1,-1/e,-1/e,-1/e,-1,1/e,1/e,1/e,1,1,1,1,1],(e,t)=>p(e,r(t),"translate(-50%,-50%)")),y=i.forwardRef(({children:e,eps:t=.001,style:r,className:p,prepend:y,center:g,fullscreen:M,portal:P,distanceFactor:b,sprite:w=!1,transform:E=!1,occlude:W,onOcclude:S,castShadow:$,receiveShadow:R,material:T,geometry:z,zIndexRange:F=[0x1000037,0],calculatePosition:C=f,as:j="div",wrapperClass:A,pointerEvents:I="auto",...H},O)=>{let{gl:V,camera:k,scene:N,size:L,raycaster:B,events:D,viewport:K}=(0,a.useThree)(),[U]=i.useState(()=>document.createElement(j)),_=i.useRef(null),G=i.useRef(null),Z=i.useRef(0),q=i.useRef([0,0]),J=i.useRef(null),Q=i.useRef(null),X=(null==P?void 0:P.current)||D.connected||V.domElement.parentNode,Y=i.useRef(null),ee=i.useRef(!1),et=i.useMemo(()=>{var e;return W&&"blending"!==W||Array.isArray(W)&&W.length&&(e=W[0])&&"object"==typeof e&&"current"in e},[W]);i.useLayoutEffect(()=>{let e=V.domElement;W&&"blending"===W?(e.style.zIndex=`${Math.floor(F[0]/2)}`,e.style.position="absolute",e.style.pointerEvents="none"):(e.style.zIndex=null,e.style.position=null,e.style.pointerEvents=null)},[W]),i.useLayoutEffect(()=>{if(G.current){let e=_.current=o.createRoot(U);if(N.updateMatrixWorld(),E)U.style.cssText="position:absolute;top:0;left:0;pointer-events:none;overflow:hidden;";else{let e=C(G.current,k,L);U.style.cssText=`position:absolute;top:0;left:0;transform:translate3d(${e[0]}px,${e[1]}px,0);transform-origin:0 0;`}return X&&(y?X.prepend(U):X.appendChild(U)),()=>{X&&X.removeChild(U),e.unmount()}}},[X,E]),i.useLayoutEffect(()=>{A&&(U.className=A)},[A]);let er=i.useMemo(()=>E?{position:"absolute",top:0,left:0,width:L.width,height:L.height,transformStyle:"preserve-3d",pointerEvents:"none"}:{position:"absolute",transform:g?"translate3d(-50%,-50%,0)":"none",...M&&{top:-L.height/2,left:-L.width/2,width:L.width,height:L.height},...r},[r,g,M,L,E]),en=i.useMemo(()=>({position:"absolute",pointerEvents:I}),[I]);i.useLayoutEffect(()=>{var t,n;ee.current=!1,E?null==(t=_.current)||t.render(i.createElement("div",{ref:J,style:er},i.createElement("div",{ref:Q,style:en},i.createElement("div",{ref:O,className:p,style:r,children:e})))):null==(n=_.current)||n.render(i.createElement("div",{ref:O,style:er,className:p,children:e}))});let ei=i.useRef(!0);(0,s.useFrame)(e=>{if(G.current){k.updateMatrixWorld(),G.current.updateWorldMatrix(!0,!1);let e=E?q.current:C(G.current,k,L);if(E||Math.abs(Z.current-k.zoom)>t||Math.abs(q.current[0]-e[0])>t||Math.abs(q.current[1]-e[1])>t){var r;let t,n,i,o,a=(r=G.current,t=c.setFromMatrixPosition(r.matrixWorld),n=u.setFromMatrixPosition(k.matrixWorld),i=t.sub(n),o=k.getWorldDirection(d),i.angleTo(o)>Math.PI/2),s=!1;et&&(Array.isArray(W)?s=W.map(e=>e.current):"blending"!==W&&(s=[N]));let f=ei.current;s?ei.current=function(e,t,r,n){let i=c.setFromMatrixPosition(e.matrixWorld),o=i.clone();o.project(t),m.set(o.x,o.y),r.setFromCamera(m,t);let l=r.intersectObjects(n,!0);if(l.length){let e=l[0].distance;return i.distanceTo(r.ray.origin)({vertexShader:E?void 0:` - /* - This shader is from the THREE's SpriteMaterial. - We need to turn the backing plane into a Sprite - (make it always face the camera) if "transfrom" - is false. - */ - #include - - void main() { - vec2 center = vec2(0., 1.); - float rotation = 0.0; - - // This is somewhat arbitrary, but it seems to work well - // Need to figure out how to derive this dynamically if it even matters - float size = 0.03; - - vec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 ); - vec2 scale; - scale.x = length( vec3( modelMatrix[ 0 ].x, modelMatrix[ 0 ].y, modelMatrix[ 0 ].z ) ); - scale.y = length( vec3( modelMatrix[ 1 ].x, modelMatrix[ 1 ].y, modelMatrix[ 1 ].z ) ); - - bool isPerspective = isPerspectiveMatrix( projectionMatrix ); - if ( isPerspective ) scale *= - mvPosition.z; - - vec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale * size; - vec2 rotatedPosition; - rotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y; - rotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y; - mvPosition.xy += rotatedPosition; - - gl_Position = projectionMatrix * mvPosition; - } - `,fragmentShader:` - void main() { - gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0); - } - `}),[E]);return i.createElement("group",n({},H,{ref:G}),W&&!et&&i.createElement("mesh",{castShadow:$,receiveShadow:R,ref:Y},z||i.createElement("planeGeometry",null),T||i.createElement("shaderMaterial",{side:l.DoubleSide,vertexShader:eo.vertexShader,fragmentShader:eo.fragmentShader})))});e.s(["Html",0,y],60099)}]); \ No newline at end of file diff --git a/build/_next/static/chunks/04uib0xi8_zof.js b/build/_next/static/chunks/04uib0xi8_zof.js new file mode 100644 index 0000000..a1b75b6 --- /dev/null +++ b/build/_next/static/chunks/04uib0xi8_zof.js @@ -0,0 +1,243 @@ +(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,55838,(e,t,n)=>{"use strict";var i=e.r(71645),r="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},a=i.useState,s=i.useEffect,o=i.useLayoutEffect,l=i.useDebugValue;function u(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!r(e,n)}catch(e){return!0}}var c="u"{"use strict";t.exports=e.r(55838)},52822,(e,t,n)=>{"use strict";var i=e.r(71645),r=e.r(2239),a="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},s=r.useSyncExternalStore,o=i.useRef,l=i.useEffect,u=i.useMemo,c=i.useDebugValue;n.useSyncExternalStoreWithSelector=function(e,t,n,i,r){var h=o(null);if(null===h.current){var d={hasValue:!1,value:null};h.current=d}else d=h.current;var p=s(e,(h=u(function(){function e(e){if(!l){if(l=!0,s=e,e=i(e),void 0!==r&&d.hasValue){var t=d.value;if(r(t,e))return o=t}return o=e}if(t=o,a(s,e))return t;var n=i(e);return void 0!==r&&r(t,n)?(s=e,t):(s=e,o=n)}var s,o,l=!1,u=void 0===n?null:n;return[function(){return e(t())},null===u?void 0:function(){return e(u())}]},[t,n,i,r]))[0],h[1]);return l(function(){d.hasValue=!0,d.value=p},[p]),c(p),p}},30224,(e,t,n)=>{"use strict";t.exports=e.r(52822)},66936,(e,t,n)=>{"use strict";function i(e,t){var n=e.length;for(e.push(t);0>>1,r=e[i];if(0>>1;is(l,n))us(c,l)?(e[i]=c,e[u]=n,i=u):(e[i]=l,e[o]=n,i=o);else if(us(c,n))e[i]=c,e[u]=n,i=u;else break}}return t}function s(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}if(n.unstable_now=void 0,"object"==typeof performance&&"function"==typeof performance.now){var o,l=performance;n.unstable_now=function(){return l.now()}}else{var u=Date,c=u.now();n.unstable_now=function(){return u.now()-c}}var h=[],d=[],p=1,f=null,m=3,g=!1,v=!1,_=!1,y=!1,x="function"==typeof setTimeout?setTimeout:null,b="function"==typeof clearTimeout?clearTimeout:null,S="u">typeof setImmediate?setImmediate:null;function M(e){for(var t=r(d);null!==t;){if(null===t.callback)a(d);else if(t.startTime<=e)a(d),t.sortIndex=t.expirationTime,i(h,t);else break;t=r(d)}}function T(e){if(_=!1,M(e),!v)if(null!==r(h))v=!0,w||(w=!0,o());else{var t=r(d);null!==t&&N(T,t.startTime-e)}}var w=!1,E=-1,A=5,C=-1;function R(){return!!y||!(n.unstable_now()-Ce&&R());){var s=f.callback;if("function"==typeof s){f.callback=null,m=f.priorityLevel;var l=s(f.expirationTime<=e);if(e=n.unstable_now(),"function"==typeof l){f.callback=l,M(e),t=!0;break t}f===r(h)&&a(h),M(e)}else a(h);f=r(h)}if(null!==f)t=!0;else{var u=r(d);null!==u&&N(T,u.startTime-e),t=!1}}break e}finally{f=null,m=i,g=!1}}}finally{t?o():w=!1}}}if("function"==typeof S)o=function(){S(P)};else if("u">typeof MessageChannel){var I=new MessageChannel,L=I.port2;I.port1.onmessage=P,o=function(){L.postMessage(null)}}else o=function(){x(P,0)};function N(e,t){E=x(function(){e(n.unstable_now())},t)}n.unstable_IdlePriority=5,n.unstable_ImmediatePriority=1,n.unstable_LowPriority=4,n.unstable_NormalPriority=3,n.unstable_Profiling=null,n.unstable_UserBlockingPriority=2,n.unstable_cancelCallback=function(e){e.callback=null},n.unstable_forceFrameRate=function(e){0>e||125s?(e.sortIndex=a,i(d,e),null===r(h)&&e===r(d)&&(_?(b(E),E=-1):_=!0,N(T,a-s))):(e.sortIndex=l,i(h,e),v||g||(v=!0,w||(w=!0,o()))),e},n.unstable_shouldYield=R,n.unstable_wrapCallback=function(e){var t=m;return function(){var n=m;m=t;try{return e.apply(this,arguments)}finally{m=n}}}},89499,(e,t,n)=>{"use strict";t.exports=e.r(66936)},75056,90072,8560,8155,1950,25234,28600,e=>{"use strict";let t,n,i,r,a,s,o,l,u,c,h,d,p,f,m,g,v,_;var y,x,b,S,M,T,w=e.i(47167),E=e.i(71645);let A={LEFT:0,MIDDLE:1,RIGHT:2,ROTATE:0,DOLLY:1,PAN:2},C={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3},R="attached",P="detached",I="srgb",L="srgb-linear",N="linear",U="srgb",D="300 es";class O{addEventListener(e,t){void 0===this._listeners&&(this._listeners={});let n=this._listeners;void 0===n[e]&&(n[e]=[]),-1===n[e].indexOf(t)&&n[e].push(t)}hasEventListener(e,t){if(void 0===this._listeners)return!1;let n=this._listeners;return void 0!==n[e]&&-1!==n[e].indexOf(t)}removeEventListener(e,t){if(void 0===this._listeners)return;let n=this._listeners[e];if(void 0!==n){let e=n.indexOf(t);-1!==e&&n.splice(e,1)}}dispatchEvent(e){if(void 0===this._listeners)return;let t=this._listeners[e.type];if(void 0!==t){e.target=this;let n=t.slice(0);for(let t=0,i=n.length;t>8&255]+F[e>>16&255]+F[e>>24&255]+"-"+F[255&t]+F[t>>8&255]+"-"+F[t>>16&15|64]+F[t>>24&255]+"-"+F[63&n|128]+F[n>>8&255]+"-"+F[n>>16&255]+F[n>>24&255]+F[255&i]+F[i>>8&255]+F[i>>16&255]+F[i>>24&255]).toLowerCase()}function V(e,t,n){return Math.max(t,Math.min(n,e))}function G(e,t){return(e%t+t)%t}function W(e,t,n){return(1-n)*e+n*t}function j(e,t){switch(t.constructor){case Float32Array:return e;case Uint32Array:return e/0xffffffff;case Uint16Array:return e/65535;case Uint8Array:return e/255;case Int32Array:return Math.max(e/0x7fffffff,-1);case Int16Array:return Math.max(e/32767,-1);case Int8Array:return Math.max(e/127,-1);default:throw Error("Invalid component type.")}}function X(e,t){switch(t.constructor){case Float32Array:return e;case Uint32Array:return Math.round(0xffffffff*e);case Uint16Array:return Math.round(65535*e);case Uint8Array:return Math.round(255*e);case Int32Array:return Math.round(0x7fffffff*e);case Int16Array:return Math.round(32767*e);case Int8Array:return Math.round(127*e);default:throw Error("Invalid component type.")}}let q={DEG2RAD:B,RAD2DEG:k,generateUUID:H,clamp:V,euclideanModulo:G,mapLinear:function(e,t,n,i,r){return i+(e-t)*(r-i)/(n-t)},inverseLerp:function(e,t,n){return e!==t?(n-e)/(t-e):0},lerp:W,damp:function(e,t,n,i){return W(e,t,1-Math.exp(-n*i))},pingpong:function(e,t=1){return t-Math.abs(G(e,2*t)-t)},smoothstep:function(e,t,n){return e<=t?0:e>=n?1:(e=(e-t)/(n-t))*e*(3-2*e)},smootherstep:function(e,t,n){return e<=t?0:e>=n?1:(e=(e-t)/(n-t))*e*e*(e*(6*e-15)+10)},randInt:function(e,t){return e+Math.floor(Math.random()*(t-e+1))},randFloat:function(e,t){return e+Math.random()*(t-e)},randFloatSpread:function(e){return e*(.5-Math.random())},seededRandom:function(e){void 0!==e&&(z=e);let t=z+=0x6d2b79f5;return t=Math.imul(t^t>>>15,1|t),(((t^=t+Math.imul(t^t>>>7,61|t))^t>>>14)>>>0)/0x100000000},degToRad:function(e){return e*B},radToDeg:function(e){return e*k},isPowerOfTwo:function(e){return(e&e-1)==0&&0!==e},ceilPowerOfTwo:function(e){return Math.pow(2,Math.ceil(Math.log(e)/Math.LN2))},floorPowerOfTwo:function(e){return Math.pow(2,Math.floor(Math.log(e)/Math.LN2))},setQuaternionFromProperEuler:function(e,t,n,i,r){let a=Math.cos,s=Math.sin,o=a(n/2),l=s(n/2),u=a((t+i)/2),c=s((t+i)/2),h=a((t-i)/2),d=s((t-i)/2),p=a((i-t)/2),f=s((i-t)/2);switch(r){case"XYX":e.set(o*c,l*h,l*d,o*u);break;case"YZY":e.set(l*d,o*c,l*h,o*u);break;case"ZXZ":e.set(l*h,l*d,o*c,o*u);break;case"XZX":e.set(o*c,l*f,l*p,o*u);break;case"YXY":e.set(l*p,o*c,l*f,o*u);break;case"ZYZ":e.set(l*f,l*p,o*c,o*u);break;default:console.warn("THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: "+r)}},normalize:X,denormalize:j};class Y{constructor(e=0,t=0){Y.prototype.isVector2=!0,this.x=e,this.y=t}get width(){return this.x}set width(e){this.x=e}get height(){return this.y}set height(e){this.y=e}set(e,t){return this.x=e,this.y=t,this}setScalar(e){return this.x=e,this.y=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;default:throw Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;default:throw Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y)}copy(e){return this.x=e.x,this.y=e.y,this}add(e){return this.x+=e.x,this.y+=e.y,this}addScalar(e){return this.x+=e,this.y+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this}subScalar(e){return this.x-=e,this.y-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this}multiply(e){return this.x*=e.x,this.y*=e.y,this}multiplyScalar(e){return this.x*=e,this.y*=e,this}divide(e){return this.x/=e.x,this.y/=e.y,this}divideScalar(e){return this.multiplyScalar(1/e)}applyMatrix3(e){let t=this.x,n=this.y,i=e.elements;return this.x=i[0]*t+i[3]*n+i[6],this.y=i[1]*t+i[4]*n+i[7],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this}clamp(e,t){return this.x=V(this.x,e.x,t.x),this.y=V(this.y,e.y,t.y),this}clampScalar(e,t){return this.x=V(this.x,e,t),this.y=V(this.y,e,t),this}clampLength(e,t){let n=this.length();return this.divideScalar(n||1).multiplyScalar(V(n,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(e){return this.x*e.x+this.y*e.y}cross(e){return this.x*e.y-this.y*e.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}angleTo(e){let t=Math.sqrt(this.lengthSq()*e.lengthSq());return 0===t?Math.PI/2:Math.acos(V(this.dot(e)/t,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let t=this.x-e.x,n=this.y-e.y;return t*t+n*n}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this}equals(e){return e.x===this.x&&e.y===this.y}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this}rotateAround(e,t){let n=Math.cos(t),i=Math.sin(t),r=this.x-e.x,a=this.y-e.y;return this.x=r*n-a*i+e.x,this.y=r*i+a*n+e.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}}class Z{constructor(e,t,n,i,r,a,s,o,l){Z.prototype.isMatrix3=!0,this.elements=[1,0,0,0,1,0,0,0,1],void 0!==e&&this.set(e,t,n,i,r,a,s,o,l)}set(e,t,n,i,r,a,s,o,l){let u=this.elements;return u[0]=e,u[1]=i,u[2]=s,u[3]=t,u[4]=r,u[5]=o,u[6]=n,u[7]=a,u[8]=l,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(e){let t=this.elements,n=e.elements;return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t[8]=n[8],this}extractBasis(e,t,n){return e.setFromMatrix3Column(this,0),t.setFromMatrix3Column(this,1),n.setFromMatrix3Column(this,2),this}setFromMatrix4(e){let t=e.elements;return this.set(t[0],t[4],t[8],t[1],t[5],t[9],t[2],t[6],t[10]),this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){let n=e.elements,i=t.elements,r=this.elements,a=n[0],s=n[3],o=n[6],l=n[1],u=n[4],c=n[7],h=n[2],d=n[5],p=n[8],f=i[0],m=i[3],g=i[6],v=i[1],_=i[4],y=i[7],x=i[2],b=i[5],S=i[8];return r[0]=a*f+s*v+o*x,r[3]=a*m+s*_+o*b,r[6]=a*g+s*y+o*S,r[1]=l*f+u*v+c*x,r[4]=l*m+u*_+c*b,r[7]=l*g+u*y+c*S,r[2]=h*f+d*v+p*x,r[5]=h*m+d*_+p*b,r[8]=h*g+d*y+p*S,this}multiplyScalar(e){let t=this.elements;return t[0]*=e,t[3]*=e,t[6]*=e,t[1]*=e,t[4]*=e,t[7]*=e,t[2]*=e,t[5]*=e,t[8]*=e,this}determinant(){let e=this.elements,t=e[0],n=e[1],i=e[2],r=e[3],a=e[4],s=e[5],o=e[6],l=e[7],u=e[8];return t*a*u-t*s*l-n*r*u+n*s*o+i*r*l-i*a*o}invert(){let e=this.elements,t=e[0],n=e[1],i=e[2],r=e[3],a=e[4],s=e[5],o=e[6],l=e[7],u=e[8],c=u*a-s*l,h=s*o-u*r,d=l*r-a*o,p=t*c+n*h+i*d;if(0===p)return this.set(0,0,0,0,0,0,0,0,0);let f=1/p;return e[0]=c*f,e[1]=(i*l-u*n)*f,e[2]=(s*n-i*a)*f,e[3]=h*f,e[4]=(u*t-i*o)*f,e[5]=(i*r-s*t)*f,e[6]=d*f,e[7]=(n*o-l*t)*f,e[8]=(a*t-n*r)*f,this}transpose(){let e,t=this.elements;return e=t[1],t[1]=t[3],t[3]=e,e=t[2],t[2]=t[6],t[6]=e,e=t[5],t[5]=t[7],t[7]=e,this}getNormalMatrix(e){return this.setFromMatrix4(e).invert().transpose()}transposeIntoArray(e){let t=this.elements;return e[0]=t[0],e[1]=t[3],e[2]=t[6],e[3]=t[1],e[4]=t[4],e[5]=t[7],e[6]=t[2],e[7]=t[5],e[8]=t[8],this}setUvTransform(e,t,n,i,r,a,s){let o=Math.cos(r),l=Math.sin(r);return this.set(n*o,n*l,-n*(o*a+l*s)+a+e,-i*l,i*o,-i*(-l*a+o*s)+s+t,0,0,1),this}scale(e,t){return this.premultiply(J.makeScale(e,t)),this}rotate(e){return this.premultiply(J.makeRotation(-e)),this}translate(e,t){return this.premultiply(J.makeTranslation(e,t)),this}makeTranslation(e,t){return e.isVector2?this.set(1,0,e.x,0,1,e.y,0,0,1):this.set(1,0,e,0,1,t,0,0,1),this}makeRotation(e){let t=Math.cos(e),n=Math.sin(e);return this.set(t,-n,0,n,t,0,0,0,1),this}makeScale(e,t){return this.set(e,0,0,0,t,0,0,0,1),this}equals(e){let t=this.elements,n=e.elements;for(let e=0;e<9;e++)if(t[e]!==n[e])return!1;return!0}fromArray(e,t=0){for(let n=0;n<9;n++)this.elements[n]=e[n+t];return this}toArray(e=[],t=0){let n=this.elements;return e[t]=n[0],e[t+1]=n[1],e[t+2]=n[2],e[t+3]=n[3],e[t+4]=n[4],e[t+5]=n[5],e[t+6]=n[6],e[t+7]=n[7],e[t+8]=n[8],e}clone(){return new this.constructor().fromArray(this.elements)}}let J=new Z;function K(e){for(let t=e.length-1;t>=0;--t)if(e[t]>=65535)return!0;return!1}let $={Int8Array:Int8Array,Uint8Array:Uint8Array,Uint8ClampedArray:Uint8ClampedArray,Int16Array:Int16Array,Uint16Array:Uint16Array,Int32Array:Int32Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array};function Q(e,t){return new $[e](t)}function ee(e){return document.createElementNS("http://www.w3.org/1999/xhtml",e)}function et(){let e=ee("canvas");return e.style.display="block",e}let en={};function ei(e){e in en||(en[e]=!0,console.warn(e))}function er(e,t,n){return new Promise(function(i,r){setTimeout(function a(){switch(e.clientWaitSync(t,e.SYNC_FLUSH_COMMANDS_BIT,0)){case e.WAIT_FAILED:r();break;case e.TIMEOUT_EXPIRED:setTimeout(a,n);break;default:i()}},n)})}function ea(e){let t=e.elements;t[2]=.5*t[2]+.5*t[3],t[6]=.5*t[6]+.5*t[7],t[10]=.5*t[10]+.5*t[11],t[14]=.5*t[14]+.5*t[15]}function es(e){let t=e.elements;-1===t[11]?(t[10]=-t[10]-1,t[14]=-t[14]):(t[10]=-t[10],t[14]=-t[14]+1)}let eo=new Z().set(.4123908,.3575843,.1804808,.212639,.7151687,.0721923,.0193308,.1191948,.9505322),el=new Z().set(3.2409699,-1.5373832,-.4986108,-.9692436,1.8759675,.0415551,.0556301,-.203977,1.0569715),eu=(d=[.64,.33,.3,.6,.15,.06],p=[.2126,.7152,.0722],f=[.3127,.329],(h={enabled:!0,workingColorSpace:L,spaces:{},convert:function(e,t,n){return!1!==this.enabled&&t!==n&&t&&n&&(this.spaces[t].transfer===U&&(e.r=ec(e.r),e.g=ec(e.g),e.b=ec(e.b)),this.spaces[t].primaries!==this.spaces[n].primaries&&(e.applyMatrix3(this.spaces[t].toXYZ),e.applyMatrix3(this.spaces[n].fromXYZ)),this.spaces[n].transfer===U&&(e.r=eh(e.r),e.g=eh(e.g),e.b=eh(e.b))),e},fromWorkingColorSpace:function(e,t){return this.convert(e,this.workingColorSpace,t)},toWorkingColorSpace:function(e,t){return this.convert(e,t,this.workingColorSpace)},getPrimaries:function(e){return this.spaces[e].primaries},getTransfer:function(e){return""===e?N:this.spaces[e].transfer},getLuminanceCoefficients:function(e,t=this.workingColorSpace){return e.fromArray(this.spaces[t].luminanceCoefficients)},define:function(e){Object.assign(this.spaces,e)},_getMatrix:function(e,t,n){return e.copy(this.spaces[t].toXYZ).multiply(this.spaces[n].fromXYZ)},_getDrawingBufferColorSpace:function(e){return this.spaces[e].outputColorSpaceConfig.drawingBufferColorSpace},_getUnpackColorSpace:function(e=this.workingColorSpace){return this.spaces[e].workingColorSpaceConfig.unpackColorSpace}}).define({[L]:{primaries:d,whitePoint:f,transfer:N,toXYZ:eo,fromXYZ:el,luminanceCoefficients:p,workingColorSpaceConfig:{unpackColorSpace:I},outputColorSpaceConfig:{drawingBufferColorSpace:I}},[I]:{primaries:d,whitePoint:f,transfer:U,toXYZ:eo,fromXYZ:el,luminanceCoefficients:p,outputColorSpaceConfig:{drawingBufferColorSpace:I}}}),h);function ec(e){return e<.04045?.0773993808*e:Math.pow(.9478672986*e+.0521327014,2.4)}function eh(e){return e<.0031308?12.92*e:1.055*Math.pow(e,.41666)-.055}class ed{static getDataURL(e){let n;if(/^data:/i.test(e.src)||"u"2048||n.height>2048?(console.warn("THREE.ImageUtils.getDataURL: Image converted to jpg for performance reasons",e),n.toDataURL("image/jpeg",.6)):n.toDataURL("image/png")}static sRGBToLinear(e){if("u">typeof HTMLImageElement&&e instanceof HTMLImageElement||"u">typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement||"u">typeof ImageBitmap&&e instanceof ImageBitmap){let t=ee("canvas");t.width=e.width,t.height=e.height;let n=t.getContext("2d");n.drawImage(e,0,0,e.width,e.height);let i=n.getImageData(0,0,e.width,e.height),r=i.data;for(let e=0;etypeof HTMLImageElement&&e instanceof HTMLImageElement||"u">typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement||"u">typeof ImageBitmap&&e instanceof ImageBitmap?ed.getDataURL(e):e.data?{data:Array.from(e.data),width:e.width,height:e.height,type:e.data.constructor.name}:(console.warn("THREE.Texture: Unable to serialize Texture."),{})}let eg=0;class ev extends O{constructor(e=ev.DEFAULT_IMAGE,t=ev.DEFAULT_MAPPING,n=1001,i=1001,r=1006,a=1008,s=1023,o=1009,l=ev.DEFAULT_ANISOTROPY,u=""){super(),this.isTexture=!0,Object.defineProperty(this,"id",{value:eg++}),this.uuid=H(),this.name="",this.source=new ef(e),this.mipmaps=[],this.mapping=t,this.channel=0,this.wrapS=n,this.wrapT=i,this.magFilter=r,this.minFilter=a,this.anisotropy=l,this.format=s,this.internalFormat=null,this.type=o,this.offset=new Y(0,0),this.repeat=new Y(1,1),this.center=new Y(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new Z,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,this.colorSpace=u,this.userData={},this.version=0,this.onUpdate=null,this.isRenderTargetTexture=!1,this.pmremVersion=0}get image(){return this.source.data}set image(e=null){this.source.data=e}updateMatrix(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)}clone(){return new this.constructor().copy(this)}copy(e){return this.name=e.name,this.source=e.source,this.mipmaps=e.mipmaps.slice(0),this.mapping=e.mapping,this.channel=e.channel,this.wrapS=e.wrapS,this.wrapT=e.wrapT,this.magFilter=e.magFilter,this.minFilter=e.minFilter,this.anisotropy=e.anisotropy,this.format=e.format,this.internalFormat=e.internalFormat,this.type=e.type,this.offset.copy(e.offset),this.repeat.copy(e.repeat),this.center.copy(e.center),this.rotation=e.rotation,this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrix.copy(e.matrix),this.generateMipmaps=e.generateMipmaps,this.premultiplyAlpha=e.premultiplyAlpha,this.flipY=e.flipY,this.unpackAlignment=e.unpackAlignment,this.colorSpace=e.colorSpace,this.userData=JSON.parse(JSON.stringify(e.userData)),this.needsUpdate=!0,this}toJSON(e){let t=void 0===e||"string"==typeof e;if(!t&&void 0!==e.textures[this.uuid])return e.textures[this.uuid];let n={metadata:{version:4.6,type:"Texture",generator:"Texture.toJSON"},uuid:this.uuid,name:this.name,image:this.source.toJSON(e).uuid,mapping:this.mapping,channel:this.channel,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,internalFormat:this.internalFormat,type:this.type,colorSpace:this.colorSpace,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,generateMipmaps:this.generateMipmaps,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};return Object.keys(this.userData).length>0&&(n.userData=this.userData),t||(e.textures[this.uuid]=n),n}dispose(){this.dispatchEvent({type:"dispose"})}transformUv(e){if(300!==this.mapping)return e;if(e.applyMatrix3(this.matrix),e.x<0||e.x>1)switch(this.wrapS){case 1e3:e.x=e.x-Math.floor(e.x);break;case 1001:e.x=e.x<0?0:1;break;case 1002:1===Math.abs(Math.floor(e.x)%2)?e.x=Math.ceil(e.x)-e.x:e.x=e.x-Math.floor(e.x)}if(e.y<0||e.y>1)switch(this.wrapT){case 1e3:e.y=e.y-Math.floor(e.y);break;case 1001:e.y=e.y<0?0:1;break;case 1002:1===Math.abs(Math.floor(e.y)%2)?e.y=Math.ceil(e.y)-e.y:e.y=e.y-Math.floor(e.y)}return this.flipY&&(e.y=1-e.y),e}set needsUpdate(e){!0===e&&(this.version++,this.source.needsUpdate=!0)}set needsPMREMUpdate(e){!0===e&&this.pmremVersion++}}ev.DEFAULT_IMAGE=null,ev.DEFAULT_MAPPING=300,ev.DEFAULT_ANISOTROPY=1;class e_{constructor(e=0,t=0,n=0,i=1){e_.prototype.isVector4=!0,this.x=e,this.y=t,this.z=n,this.w=i}get width(){return this.z}set width(e){this.z=e}get height(){return this.w}set height(e){this.w=e}set(e,t,n,i){return this.x=e,this.y=t,this.z=n,this.w=i,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this.w=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setW(e){return this.w=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;case 3:this.w=t;break;default:throw Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this.w=void 0!==e.w?e.w:1,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this.w+=e.w,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this.w+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this.w=e.w+t.w,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this.w+=e.w*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this.w-=e.w,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this.w-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this.w=e.w-t.w,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this.w*=e.w,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this.w*=e,this}applyMatrix4(e){let t=this.x,n=this.y,i=this.z,r=this.w,a=e.elements;return this.x=a[0]*t+a[4]*n+a[8]*i+a[12]*r,this.y=a[1]*t+a[5]*n+a[9]*i+a[13]*r,this.z=a[2]*t+a[6]*n+a[10]*i+a[14]*r,this.w=a[3]*t+a[7]*n+a[11]*i+a[15]*r,this}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this.w/=e.w,this}divideScalar(e){return this.multiplyScalar(1/e)}setAxisAngleFromQuaternion(e){this.w=2*Math.acos(e.w);let t=Math.sqrt(1-e.w*e.w);return t<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=e.x/t,this.y=e.y/t,this.z=e.z/t),this}setAxisAngleFromRotationMatrix(e){let t,n,i,r,a=e.elements,s=a[0],o=a[4],l=a[8],u=a[1],c=a[5],h=a[9],d=a[2],p=a[6],f=a[10];if(.01>Math.abs(o-u)&&.01>Math.abs(l-d)&&.01>Math.abs(h-p)){if(.1>Math.abs(o+u)&&.1>Math.abs(l+d)&&.1>Math.abs(h+p)&&.1>Math.abs(s+c+f-3))return this.set(1,0,0,0),this;t=Math.PI;let e=(s+1)/2,a=(c+1)/2,m=(f+1)/2,g=(o+u)/4,v=(l+d)/4,_=(h+p)/4;return e>a&&e>m?e<.01?(n=0,i=.707106781,r=.707106781):(i=g/(n=Math.sqrt(e)),r=v/n):a>m?a<.01?(n=.707106781,i=0,r=.707106781):(n=g/(i=Math.sqrt(a)),r=_/i):m<.01?(n=.707106781,i=.707106781,r=0):(n=v/(r=Math.sqrt(m)),i=_/r),this.set(n,i,r,t),this}let m=Math.sqrt((p-h)*(p-h)+(l-d)*(l-d)+(u-o)*(u-o));return .001>Math.abs(m)&&(m=1),this.x=(p-h)/m,this.y=(l-d)/m,this.z=(u-o)/m,this.w=Math.acos((s+c+f-1)/2),this}setFromMatrixPosition(e){let t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this.w=t[15],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this.w=Math.min(this.w,e.w),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this.w=Math.max(this.w,e.w),this}clamp(e,t){return this.x=V(this.x,e.x,t.x),this.y=V(this.y,e.y,t.y),this.z=V(this.z,e.z,t.z),this.w=V(this.w,e.w,t.w),this}clampScalar(e,t){return this.x=V(this.x,e,t),this.y=V(this.y,e,t),this.z=V(this.z,e,t),this.w=V(this.w,e,t),this}clampLength(e,t){let n=this.length();return this.divideScalar(n||1).multiplyScalar(V(n,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this.w=Math.trunc(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z+this.w*e.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this.w+=(e.w-this.w)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this.z=e.z+(t.z-e.z)*n,this.w=e.w+(t.w-e.w)*n,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z&&e.w===this.w}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this.w=e[t+3],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e[t+3]=this.w,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this.z=e.getZ(t),this.w=e.getW(t),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}}class ey extends O{constructor(e=1,t=1,n={}){super(),this.isRenderTarget=!0,this.width=e,this.height=t,this.depth=1,this.scissor=new e_(0,0,e,t),this.scissorTest=!1,this.viewport=new e_(0,0,e,t);const i=new ev({width:e,height:t,depth:1},(n=Object.assign({generateMipmaps:!1,internalFormat:null,minFilter:1006,depthBuffer:!0,stencilBuffer:!1,resolveDepthBuffer:!0,resolveStencilBuffer:!0,depthTexture:null,samples:0,count:1},n)).mapping,n.wrapS,n.wrapT,n.magFilter,n.minFilter,n.format,n.type,n.anisotropy,n.colorSpace);i.flipY=!1,i.generateMipmaps=n.generateMipmaps,i.internalFormat=n.internalFormat,this.textures=[];const r=n.count;for(let e=0;e=0?1:-1,i=1-t*t;if(i>Number.EPSILON){let r=Math.sqrt(i),a=Math.atan2(r,t*n);e=Math.sin(e*a)/r,s=Math.sin(s*a)/r}let r=s*n;if(o=o*e+h*r,l=l*e+d*r,u=u*e+p*r,c=c*e+f*r,e===1-s){let e=1/Math.sqrt(o*o+l*l+u*u+c*c);o*=e,l*=e,u*=e,c*=e}}e[t]=o,e[t+1]=l,e[t+2]=u,e[t+3]=c}static multiplyQuaternionsFlat(e,t,n,i,r,a){let s=n[i],o=n[i+1],l=n[i+2],u=n[i+3],c=r[a],h=r[a+1],d=r[a+2],p=r[a+3];return e[t]=s*p+u*c+o*d-l*h,e[t+1]=o*p+u*h+l*c-s*d,e[t+2]=l*p+u*d+s*h-o*c,e[t+3]=u*p-s*c-o*h-l*d,e}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get w(){return this._w}set w(e){this._w=e,this._onChangeCallback()}set(e,t,n,i){return this._x=e,this._y=t,this._z=n,this._w=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(e){return this._x=e.x,this._y=e.y,this._z=e.z,this._w=e.w,this._onChangeCallback(),this}setFromEuler(e,t=!0){let n=e._x,i=e._y,r=e._z,a=e._order,s=Math.cos,o=Math.sin,l=s(n/2),u=s(i/2),c=s(r/2),h=o(n/2),d=o(i/2),p=o(r/2);switch(a){case"XYZ":this._x=h*u*c+l*d*p,this._y=l*d*c-h*u*p,this._z=l*u*p+h*d*c,this._w=l*u*c-h*d*p;break;case"YXZ":this._x=h*u*c+l*d*p,this._y=l*d*c-h*u*p,this._z=l*u*p-h*d*c,this._w=l*u*c+h*d*p;break;case"ZXY":this._x=h*u*c-l*d*p,this._y=l*d*c+h*u*p,this._z=l*u*p+h*d*c,this._w=l*u*c-h*d*p;break;case"ZYX":this._x=h*u*c-l*d*p,this._y=l*d*c+h*u*p,this._z=l*u*p-h*d*c,this._w=l*u*c+h*d*p;break;case"YZX":this._x=h*u*c+l*d*p,this._y=l*d*c+h*u*p,this._z=l*u*p-h*d*c,this._w=l*u*c-h*d*p;break;case"XZY":this._x=h*u*c-l*d*p,this._y=l*d*c-h*u*p,this._z=l*u*p+h*d*c,this._w=l*u*c+h*d*p;break;default:console.warn("THREE.Quaternion: .setFromEuler() encountered an unknown order: "+a)}return!0===t&&this._onChangeCallback(),this}setFromAxisAngle(e,t){let n=t/2,i=Math.sin(n);return this._x=e.x*i,this._y=e.y*i,this._z=e.z*i,this._w=Math.cos(n),this._onChangeCallback(),this}setFromRotationMatrix(e){let t=e.elements,n=t[0],i=t[4],r=t[8],a=t[1],s=t[5],o=t[9],l=t[2],u=t[6],c=t[10],h=n+s+c;if(h>0){let e=.5/Math.sqrt(h+1);this._w=.25/e,this._x=(u-o)*e,this._y=(r-l)*e,this._z=(a-i)*e}else if(n>s&&n>c){let e=2*Math.sqrt(1+n-s-c);this._w=(u-o)/e,this._x=.25*e,this._y=(i+a)/e,this._z=(r+l)/e}else if(s>c){let e=2*Math.sqrt(1+s-n-c);this._w=(r-l)/e,this._x=(i+a)/e,this._y=.25*e,this._z=(o+u)/e}else{let e=2*Math.sqrt(1+c-n-s);this._w=(a-i)/e,this._x=(r+l)/e,this._y=(o+u)/e,this._z=.25*e}return this._onChangeCallback(),this}setFromUnitVectors(e,t){let n=e.dot(t)+1;return nMath.abs(e.z)?(this._x=-e.y,this._y=e.x,this._z=0):(this._x=0,this._y=-e.z,this._z=e.y)):(this._x=e.y*t.z-e.z*t.y,this._y=e.z*t.x-e.x*t.z,this._z=e.x*t.y-e.y*t.x),this._w=n,this.normalize()}angleTo(e){return 2*Math.acos(Math.abs(V(this.dot(e),-1,1)))}rotateTowards(e,t){let n=this.angleTo(e);if(0===n)return this;let i=Math.min(1,t/n);return this.slerp(e,i),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(e){return this._x*e._x+this._y*e._y+this._z*e._z+this._w*e._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let e=this.length();return 0===e?(this._x=0,this._y=0,this._z=0,this._w=1):(e=1/e,this._x=this._x*e,this._y=this._y*e,this._z=this._z*e,this._w=this._w*e),this._onChangeCallback(),this}multiply(e){return this.multiplyQuaternions(this,e)}premultiply(e){return this.multiplyQuaternions(e,this)}multiplyQuaternions(e,t){let n=e._x,i=e._y,r=e._z,a=e._w,s=t._x,o=t._y,l=t._z,u=t._w;return this._x=n*u+a*s+i*l-r*o,this._y=i*u+a*o+r*s-n*l,this._z=r*u+a*l+n*o-i*s,this._w=a*u-n*s-i*o-r*l,this._onChangeCallback(),this}slerp(e,t){if(0===t)return this;if(1===t)return this.copy(e);let n=this._x,i=this._y,r=this._z,a=this._w,s=a*e._w+n*e._x+i*e._y+r*e._z;if(s<0?(this._w=-e._w,this._x=-e._x,this._y=-e._y,this._z=-e._z,s=-s):this.copy(e),s>=1)return this._w=a,this._x=n,this._y=i,this._z=r,this;let o=1-s*s;if(o<=Number.EPSILON){let e=1-t;return this._w=e*a+t*this._w,this._x=e*n+t*this._x,this._y=e*i+t*this._y,this._z=e*r+t*this._z,this.normalize(),this}let l=Math.sqrt(o),u=Math.atan2(l,s),c=Math.sin((1-t)*u)/l,h=Math.sin(t*u)/l;return this._w=a*c+this._w*h,this._x=n*c+this._x*h,this._y=i*c+this._y*h,this._z=r*c+this._z*h,this._onChangeCallback(),this}slerpQuaternions(e,t,n){return this.copy(e).slerp(t,n)}random(){let e=2*Math.PI*Math.random(),t=2*Math.PI*Math.random(),n=Math.random(),i=Math.sqrt(1-n),r=Math.sqrt(n);return this.set(i*Math.sin(e),i*Math.cos(e),r*Math.sin(t),r*Math.cos(t))}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._w===this._w}fromArray(e,t=0){return this._x=e[t],this._y=e[t+1],this._z=e[t+2],this._w=e[t+3],this._onChangeCallback(),this}toArray(e=[],t=0){return e[t]=this._x,e[t+1]=this._y,e[t+2]=this._z,e[t+3]=this._w,e}fromBufferAttribute(e,t){return this._x=e.getX(t),this._y=e.getY(t),this._z=e.getZ(t),this._w=e.getW(t),this._onChangeCallback(),this}toJSON(){return this.toArray()}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}}class eE{constructor(e=0,t=0,n=0){eE.prototype.isVector3=!0,this.x=e,this.y=t,this.z=n}set(e,t,n){return void 0===n&&(n=this.z),this.x=e,this.y=t,this.z=n,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;default:throw Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this}multiplyVectors(e,t){return this.x=e.x*t.x,this.y=e.y*t.y,this.z=e.z*t.z,this}applyEuler(e){return this.applyQuaternion(eC.setFromEuler(e))}applyAxisAngle(e,t){return this.applyQuaternion(eC.setFromAxisAngle(e,t))}applyMatrix3(e){let t=this.x,n=this.y,i=this.z,r=e.elements;return this.x=r[0]*t+r[3]*n+r[6]*i,this.y=r[1]*t+r[4]*n+r[7]*i,this.z=r[2]*t+r[5]*n+r[8]*i,this}applyNormalMatrix(e){return this.applyMatrix3(e).normalize()}applyMatrix4(e){let t=this.x,n=this.y,i=this.z,r=e.elements,a=1/(r[3]*t+r[7]*n+r[11]*i+r[15]);return this.x=(r[0]*t+r[4]*n+r[8]*i+r[12])*a,this.y=(r[1]*t+r[5]*n+r[9]*i+r[13])*a,this.z=(r[2]*t+r[6]*n+r[10]*i+r[14])*a,this}applyQuaternion(e){let t=this.x,n=this.y,i=this.z,r=e.x,a=e.y,s=e.z,o=e.w,l=2*(a*i-s*n),u=2*(s*t-r*i),c=2*(r*n-a*t);return this.x=t+o*l+a*c-s*u,this.y=n+o*u+s*l-r*c,this.z=i+o*c+r*u-a*l,this}project(e){return this.applyMatrix4(e.matrixWorldInverse).applyMatrix4(e.projectionMatrix)}unproject(e){return this.applyMatrix4(e.projectionMatrixInverse).applyMatrix4(e.matrixWorld)}transformDirection(e){let t=this.x,n=this.y,i=this.z,r=e.elements;return this.x=r[0]*t+r[4]*n+r[8]*i,this.y=r[1]*t+r[5]*n+r[9]*i,this.z=r[2]*t+r[6]*n+r[10]*i,this.normalize()}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this}divideScalar(e){return this.multiplyScalar(1/e)}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this}clamp(e,t){return this.x=V(this.x,e.x,t.x),this.y=V(this.y,e.y,t.y),this.z=V(this.z,e.z,t.z),this}clampScalar(e,t){return this.x=V(this.x,e,t),this.y=V(this.y,e,t),this.z=V(this.z,e,t),this}clampLength(e,t){let n=this.length();return this.divideScalar(n||1).multiplyScalar(V(n,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this.z=e.z+(t.z-e.z)*n,this}cross(e){return this.crossVectors(this,e)}crossVectors(e,t){let n=e.x,i=e.y,r=e.z,a=t.x,s=t.y,o=t.z;return this.x=i*o-r*s,this.y=r*a-n*o,this.z=n*s-i*a,this}projectOnVector(e){let t=e.lengthSq();if(0===t)return this.set(0,0,0);let n=e.dot(this)/t;return this.copy(e).multiplyScalar(n)}projectOnPlane(e){return eA.copy(this).projectOnVector(e),this.sub(eA)}reflect(e){return this.sub(eA.copy(e).multiplyScalar(2*this.dot(e)))}angleTo(e){let t=Math.sqrt(this.lengthSq()*e.lengthSq());return 0===t?Math.PI/2:Math.acos(V(this.dot(e)/t,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let t=this.x-e.x,n=this.y-e.y,i=this.z-e.z;return t*t+n*n+i*i}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)+Math.abs(this.z-e.z)}setFromSpherical(e){return this.setFromSphericalCoords(e.radius,e.phi,e.theta)}setFromSphericalCoords(e,t,n){let i=Math.sin(t)*e;return this.x=i*Math.sin(n),this.y=Math.cos(t)*e,this.z=i*Math.cos(n),this}setFromCylindrical(e){return this.setFromCylindricalCoords(e.radius,e.theta,e.y)}setFromCylindricalCoords(e,t,n){return this.x=e*Math.sin(t),this.y=n,this.z=e*Math.cos(t),this}setFromMatrixPosition(e){let t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this}setFromMatrixScale(e){let t=this.setFromMatrixColumn(e,0).length(),n=this.setFromMatrixColumn(e,1).length(),i=this.setFromMatrixColumn(e,2).length();return this.x=t,this.y=n,this.z=i,this}setFromMatrixColumn(e,t){return this.fromArray(e.elements,4*t)}setFromMatrix3Column(e,t){return this.fromArray(e.elements,3*t)}setFromEuler(e){return this.x=e._x,this.y=e._y,this.z=e._z,this}setFromColor(e){return this.x=e.r,this.y=e.g,this.z=e.b,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this.z=e.getZ(t),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){let e=Math.random()*Math.PI*2,t=2*Math.random()-1,n=Math.sqrt(1-t*t);return this.x=n*Math.cos(e),this.y=t,this.z=n*Math.sin(e),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}}let eA=new eE,eC=new ew;class eR{constructor(e=new eE(Infinity,Infinity,Infinity),t=new eE(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=e,this.max=t}set(e,t){return this.min.copy(e),this.max.copy(t),this}setFromArray(e){this.makeEmpty();for(let t=0,n=e.length;t=this.min.x&&e.x<=this.max.x&&e.y>=this.min.y&&e.y<=this.max.y&&e.z>=this.min.z&&e.z<=this.max.z}containsBox(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y&&this.min.z<=e.min.z&&e.max.z<=this.max.z}getParameter(e,t){return t.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y),(e.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(e){return e.max.x>=this.min.x&&e.min.x<=this.max.x&&e.max.y>=this.min.y&&e.min.y<=this.max.y&&e.max.z>=this.min.z&&e.min.z<=this.max.z}intersectsSphere(e){return this.clampPoint(e.center,eI),eI.distanceToSquared(e.center)<=e.radius*e.radius}intersectsPlane(e){let t,n;return e.normal.x>0?(t=e.normal.x*this.min.x,n=e.normal.x*this.max.x):(t=e.normal.x*this.max.x,n=e.normal.x*this.min.x),e.normal.y>0?(t+=e.normal.y*this.min.y,n+=e.normal.y*this.max.y):(t+=e.normal.y*this.max.y,n+=e.normal.y*this.min.y),e.normal.z>0?(t+=e.normal.z*this.min.z,n+=e.normal.z*this.max.z):(t+=e.normal.z*this.max.z,n+=e.normal.z*this.min.z),t<=-e.constant&&n>=-e.constant}intersectsTriangle(e){if(this.isEmpty())return!1;this.getCenter(eB),ek.subVectors(this.max,eB),eN.subVectors(e.a,eB),eU.subVectors(e.b,eB),eD.subVectors(e.c,eB),eO.subVectors(eU,eN),eF.subVectors(eD,eU),ez.subVectors(eN,eD);let t=[0,-eO.z,eO.y,0,-eF.z,eF.y,0,-ez.z,ez.y,eO.z,0,-eO.x,eF.z,0,-eF.x,ez.z,0,-ez.x,-eO.y,eO.x,0,-eF.y,eF.x,0,-ez.y,ez.x,0];return!!eG(t,eN,eU,eD,ek)&&!!eG(t=[1,0,0,0,1,0,0,0,1],eN,eU,eD,ek)&&(eH.crossVectors(eO,eF),eG(t=[eH.x,eH.y,eH.z],eN,eU,eD,ek))}clampPoint(e,t){return t.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return this.clampPoint(e,eI).distanceTo(e)}getBoundingSphere(e){return this.isEmpty()?e.makeEmpty():(this.getCenter(e.center),e.radius=.5*this.getSize(eI).length()),e}intersect(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this}union(e){return this.min.min(e.min),this.max.max(e.max),this}applyMatrix4(e){return this.isEmpty()||(eP[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(e),eP[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(e),eP[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(e),eP[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(e),eP[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(e),eP[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(e),eP[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(e),eP[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(e),this.setFromPoints(eP)),this}translate(e){return this.min.add(e),this.max.add(e),this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}}let eP=[new eE,new eE,new eE,new eE,new eE,new eE,new eE,new eE],eI=new eE,eL=new eR,eN=new eE,eU=new eE,eD=new eE,eO=new eE,eF=new eE,ez=new eE,eB=new eE,ek=new eE,eH=new eE,eV=new eE;function eG(e,t,n,i,r){for(let a=0,s=e.length-3;a<=s;a+=3){eV.fromArray(e,a);let s=r.x*Math.abs(eV.x)+r.y*Math.abs(eV.y)+r.z*Math.abs(eV.z),o=t.dot(eV),l=n.dot(eV),u=i.dot(eV);if(Math.max(-Math.max(o,l,u),Math.min(o,l,u))>s)return!1}return!0}let eW=new eR,ej=new eE,eX=new eE;class eq{constructor(e=new eE,t=-1){this.isSphere=!0,this.center=e,this.radius=t}set(e,t){return this.center.copy(e),this.radius=t,this}setFromPoints(e,t){let n=this.center;void 0!==t?n.copy(t):eW.setFromPoints(e).getCenter(n);let i=0;for(let t=0,r=e.length;tthis.radius*this.radius&&(t.sub(this.center).normalize(),t.multiplyScalar(this.radius).add(this.center)),t}getBoundingBox(e){return this.isEmpty()?e.makeEmpty():(e.set(this.center,this.center),e.expandByScalar(this.radius)),e}applyMatrix4(e){return this.center.applyMatrix4(e),this.radius=this.radius*e.getMaxScaleOnAxis(),this}translate(e){return this.center.add(e),this}expandByPoint(e){if(this.isEmpty())return this.center.copy(e),this.radius=0,this;ej.subVectors(e,this.center);let t=ej.lengthSq();if(t>this.radius*this.radius){let e=Math.sqrt(t),n=(e-this.radius)*.5;this.center.addScaledVector(ej,n/e),this.radius+=n}return this}union(e){return e.isEmpty()||(this.isEmpty()?this.copy(e):!0===this.center.equals(e.center)?this.radius=Math.max(this.radius,e.radius):(eX.subVectors(e.center,this.center).setLength(e.radius),this.expandByPoint(ej.copy(e.center).add(eX)),this.expandByPoint(ej.copy(e.center).sub(eX)))),this}equals(e){return e.center.equals(this.center)&&e.radius===this.radius}clone(){return new this.constructor().copy(this)}}let eY=new eE,eZ=new eE,eJ=new eE,eK=new eE,e$=new eE,eQ=new eE,e0=new eE;class e1{constructor(e=new eE,t=new eE(0,0,-1)){this.origin=e,this.direction=t}set(e,t){return this.origin.copy(e),this.direction.copy(t),this}copy(e){return this.origin.copy(e.origin),this.direction.copy(e.direction),this}at(e,t){return t.copy(this.origin).addScaledVector(this.direction,e)}lookAt(e){return this.direction.copy(e).sub(this.origin).normalize(),this}recast(e){return this.origin.copy(this.at(e,eY)),this}closestPointToPoint(e,t){t.subVectors(e,this.origin);let n=t.dot(this.direction);return n<0?t.copy(this.origin):t.copy(this.origin).addScaledVector(this.direction,n)}distanceToPoint(e){return Math.sqrt(this.distanceSqToPoint(e))}distanceSqToPoint(e){let t=eY.subVectors(e,this.origin).dot(this.direction);return t<0?this.origin.distanceToSquared(e):(eY.copy(this.origin).addScaledVector(this.direction,t),eY.distanceToSquared(e))}distanceSqToSegment(e,t,n,i){let r,a,s,o;eZ.copy(e).add(t).multiplyScalar(.5),eJ.copy(t).sub(e).normalize(),eK.copy(this.origin).sub(eZ);let l=.5*e.distanceTo(t),u=-this.direction.dot(eJ),c=eK.dot(this.direction),h=-eK.dot(eJ),d=eK.lengthSq(),p=Math.abs(1-u*u);if(p>0)if(r=u*h-c,a=u*c-h,o=l*p,r>=0)if(a>=-o)if(a<=o){let e=1/p;r*=e,a*=e,s=r*(r+u*a+2*c)+a*(u*r+a+2*h)+d}else s=-(r=Math.max(0,-(u*(a=l)+c)))*r+a*(a+2*h)+d;else s=-(r=Math.max(0,-(u*(a=-l)+c)))*r+a*(a+2*h)+d;else a<=-o?(a=(r=Math.max(0,-(-u*l+c)))>0?-l:Math.min(Math.max(-l,-h),l),s=-r*r+a*(a+2*h)+d):a<=o?(r=0,s=(a=Math.min(Math.max(-l,-h),l))*(a+2*h)+d):(a=(r=Math.max(0,-(u*l+c)))>0?l:Math.min(Math.max(-l,-h),l),s=-r*r+a*(a+2*h)+d);else a=u>0?-l:l,s=-(r=Math.max(0,-(u*a+c)))*r+a*(a+2*h)+d;return n&&n.copy(this.origin).addScaledVector(this.direction,r),i&&i.copy(eZ).addScaledVector(eJ,a),s}intersectSphere(e,t){eY.subVectors(e.center,this.origin);let n=eY.dot(this.direction),i=eY.dot(eY)-n*n,r=e.radius*e.radius;if(i>r)return null;let a=Math.sqrt(r-i),s=n-a,o=n+a;return o<0?null:s<0?this.at(o,t):this.at(s,t)}intersectsSphere(e){return this.distanceSqToPoint(e.center)<=e.radius*e.radius}distanceToPlane(e){let t=e.normal.dot(this.direction);if(0===t)return 0===e.distanceToPoint(this.origin)?0:null;let n=-(this.origin.dot(e.normal)+e.constant)/t;return n>=0?n:null}intersectPlane(e,t){let n=this.distanceToPlane(e);return null===n?null:this.at(n,t)}intersectsPlane(e){let t=e.distanceToPoint(this.origin);return!!(0===t||e.normal.dot(this.direction)*t<0)}intersectBox(e,t){let n,i,r,a,s,o,l=1/this.direction.x,u=1/this.direction.y,c=1/this.direction.z,h=this.origin;return(l>=0?(n=(e.min.x-h.x)*l,i=(e.max.x-h.x)*l):(n=(e.max.x-h.x)*l,i=(e.min.x-h.x)*l),u>=0?(r=(e.min.y-h.y)*u,a=(e.max.y-h.y)*u):(r=(e.max.y-h.y)*u,a=(e.min.y-h.y)*u),n>a||r>i||((r>n||isNaN(n))&&(n=r),(a=0?(s=(e.min.z-h.z)*c,o=(e.max.z-h.z)*c):(s=(e.max.z-h.z)*c,o=(e.min.z-h.z)*c),n>o||s>i||((s>n||n!=n)&&(n=s),(o=0?n:i,t)}intersectsBox(e){return null!==this.intersectBox(e,eY)}intersectTriangle(e,t,n,i,r){let a;e$.subVectors(t,e),eQ.subVectors(n,e),e0.crossVectors(e$,eQ);let s=this.direction.dot(e0);if(s>0){if(i)return null;a=1}else{if(!(s<0))return null;a=-1,s=-s}eK.subVectors(this.origin,e);let o=a*this.direction.dot(eQ.crossVectors(eK,eQ));if(o<0)return null;let l=a*this.direction.dot(e$.cross(eK));if(l<0||o+l>s)return null;let u=-a*eK.dot(e0);return u<0?null:this.at(u/s,r)}applyMatrix4(e){return this.origin.applyMatrix4(e),this.direction.transformDirection(e),this}equals(e){return e.origin.equals(this.origin)&&e.direction.equals(this.direction)}clone(){return new this.constructor().copy(this)}}class e2{constructor(e,t,n,i,r,a,s,o,l,u,c,h,d,p,f,m){e2.prototype.isMatrix4=!0,this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],void 0!==e&&this.set(e,t,n,i,r,a,s,o,l,u,c,h,d,p,f,m)}set(e,t,n,i,r,a,s,o,l,u,c,h,d,p,f,m){let g=this.elements;return g[0]=e,g[4]=t,g[8]=n,g[12]=i,g[1]=r,g[5]=a,g[9]=s,g[13]=o,g[2]=l,g[6]=u,g[10]=c,g[14]=h,g[3]=d,g[7]=p,g[11]=f,g[15]=m,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return new e2().fromArray(this.elements)}copy(e){let t=this.elements,n=e.elements;return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t[8]=n[8],t[9]=n[9],t[10]=n[10],t[11]=n[11],t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15],this}copyPosition(e){let t=this.elements,n=e.elements;return t[12]=n[12],t[13]=n[13],t[14]=n[14],this}setFromMatrix3(e){let t=e.elements;return this.set(t[0],t[3],t[6],0,t[1],t[4],t[7],0,t[2],t[5],t[8],0,0,0,0,1),this}extractBasis(e,t,n){return e.setFromMatrixColumn(this,0),t.setFromMatrixColumn(this,1),n.setFromMatrixColumn(this,2),this}makeBasis(e,t,n){return this.set(e.x,t.x,n.x,0,e.y,t.y,n.y,0,e.z,t.z,n.z,0,0,0,0,1),this}extractRotation(e){let t=this.elements,n=e.elements,i=1/e3.setFromMatrixColumn(e,0).length(),r=1/e3.setFromMatrixColumn(e,1).length(),a=1/e3.setFromMatrixColumn(e,2).length();return t[0]=n[0]*i,t[1]=n[1]*i,t[2]=n[2]*i,t[3]=0,t[4]=n[4]*r,t[5]=n[5]*r,t[6]=n[6]*r,t[7]=0,t[8]=n[8]*a,t[9]=n[9]*a,t[10]=n[10]*a,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,this}makeRotationFromEuler(e){let t=this.elements,n=e.x,i=e.y,r=e.z,a=Math.cos(n),s=Math.sin(n),o=Math.cos(i),l=Math.sin(i),u=Math.cos(r),c=Math.sin(r);if("XYZ"===e.order){let e=a*u,n=a*c,i=s*u,r=s*c;t[0]=o*u,t[4]=-o*c,t[8]=l,t[1]=n+i*l,t[5]=e-r*l,t[9]=-s*o,t[2]=r-e*l,t[6]=i+n*l,t[10]=a*o}else if("YXZ"===e.order){let e=o*u,n=o*c,i=l*u,r=l*c;t[0]=e+r*s,t[4]=i*s-n,t[8]=a*l,t[1]=a*c,t[5]=a*u,t[9]=-s,t[2]=n*s-i,t[6]=r+e*s,t[10]=a*o}else if("ZXY"===e.order){let e=o*u,n=o*c,i=l*u,r=l*c;t[0]=e-r*s,t[4]=-a*c,t[8]=i+n*s,t[1]=n+i*s,t[5]=a*u,t[9]=r-e*s,t[2]=-a*l,t[6]=s,t[10]=a*o}else if("ZYX"===e.order){let e=a*u,n=a*c,i=s*u,r=s*c;t[0]=o*u,t[4]=i*l-n,t[8]=e*l+r,t[1]=o*c,t[5]=r*l+e,t[9]=n*l-i,t[2]=-l,t[6]=s*o,t[10]=a*o}else if("YZX"===e.order){let e=a*o,n=a*l,i=s*o,r=s*l;t[0]=o*u,t[4]=r-e*c,t[8]=i*c+n,t[1]=c,t[5]=a*u,t[9]=-s*u,t[2]=-l*u,t[6]=n*c+i,t[10]=e-r*c}else if("XZY"===e.order){let e=a*o,n=a*l,i=s*o,r=s*l;t[0]=o*u,t[4]=-c,t[8]=l*u,t[1]=e*c+r,t[5]=a*u,t[9]=n*c-i,t[2]=i*c-n,t[6]=s*u,t[10]=r*c+e}return t[3]=0,t[7]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,this}makeRotationFromQuaternion(e){return this.compose(e5,e,e6)}lookAt(e,t,n){let i=this.elements;return e7.subVectors(e,t),0===e7.lengthSq()&&(e7.z=1),e7.normalize(),e8.crossVectors(n,e7),0===e8.lengthSq()&&(1===Math.abs(n.z)?e7.x+=1e-4:e7.z+=1e-4,e7.normalize(),e8.crossVectors(n,e7)),e8.normalize(),e9.crossVectors(e7,e8),i[0]=e8.x,i[4]=e9.x,i[8]=e7.x,i[1]=e8.y,i[5]=e9.y,i[9]=e7.y,i[2]=e8.z,i[6]=e9.z,i[10]=e7.z,this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){let n=e.elements,i=t.elements,r=this.elements,a=n[0],s=n[4],o=n[8],l=n[12],u=n[1],c=n[5],h=n[9],d=n[13],p=n[2],f=n[6],m=n[10],g=n[14],v=n[3],_=n[7],y=n[11],x=n[15],b=i[0],S=i[4],M=i[8],T=i[12],w=i[1],E=i[5],A=i[9],C=i[13],R=i[2],P=i[6],I=i[10],L=i[14],N=i[3],U=i[7],D=i[11],O=i[15];return r[0]=a*b+s*w+o*R+l*N,r[4]=a*S+s*E+o*P+l*U,r[8]=a*M+s*A+o*I+l*D,r[12]=a*T+s*C+o*L+l*O,r[1]=u*b+c*w+h*R+d*N,r[5]=u*S+c*E+h*P+d*U,r[9]=u*M+c*A+h*I+d*D,r[13]=u*T+c*C+h*L+d*O,r[2]=p*b+f*w+m*R+g*N,r[6]=p*S+f*E+m*P+g*U,r[10]=p*M+f*A+m*I+g*D,r[14]=p*T+f*C+m*L+g*O,r[3]=v*b+_*w+y*R+x*N,r[7]=v*S+_*E+y*P+x*U,r[11]=v*M+_*A+y*I+x*D,r[15]=v*T+_*C+y*L+x*O,this}multiplyScalar(e){let t=this.elements;return t[0]*=e,t[4]*=e,t[8]*=e,t[12]*=e,t[1]*=e,t[5]*=e,t[9]*=e,t[13]*=e,t[2]*=e,t[6]*=e,t[10]*=e,t[14]*=e,t[3]*=e,t[7]*=e,t[11]*=e,t[15]*=e,this}determinant(){let e=this.elements,t=e[0],n=e[4],i=e[8],r=e[12],a=e[1],s=e[5],o=e[9],l=e[13],u=e[2],c=e[6],h=e[10],d=e[14];return e[3]*(r*o*c-i*l*c-r*s*h+n*l*h+i*s*d-n*o*d)+e[7]*(t*o*d-t*l*h+r*a*h-i*a*d+i*l*u-r*o*u)+e[11]*(t*l*c-t*s*d-r*a*c+n*a*d+r*s*u-n*l*u)+e[15]*(-i*s*u-t*o*c+t*s*h+i*a*c-n*a*h+n*o*u)}transpose(){let e,t=this.elements;return e=t[1],t[1]=t[4],t[4]=e,e=t[2],t[2]=t[8],t[8]=e,e=t[6],t[6]=t[9],t[9]=e,e=t[3],t[3]=t[12],t[12]=e,e=t[7],t[7]=t[13],t[13]=e,e=t[11],t[11]=t[14],t[14]=e,this}setPosition(e,t,n){let i=this.elements;return e.isVector3?(i[12]=e.x,i[13]=e.y,i[14]=e.z):(i[12]=e,i[13]=t,i[14]=n),this}invert(){let e=this.elements,t=e[0],n=e[1],i=e[2],r=e[3],a=e[4],s=e[5],o=e[6],l=e[7],u=e[8],c=e[9],h=e[10],d=e[11],p=e[12],f=e[13],m=e[14],g=e[15],v=c*m*l-f*h*l+f*o*d-s*m*d-c*o*g+s*h*g,_=p*h*l-u*m*l-p*o*d+a*m*d+u*o*g-a*h*g,y=u*f*l-p*c*l+p*s*d-a*f*d-u*s*g+a*c*g,x=p*c*o-u*f*o-p*s*h+a*f*h+u*s*m-a*c*m,b=t*v+n*_+i*y+r*x;if(0===b)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);let S=1/b;return e[0]=v*S,e[1]=(f*h*r-c*m*r-f*i*d+n*m*d+c*i*g-n*h*g)*S,e[2]=(s*m*r-f*o*r+f*i*l-n*m*l-s*i*g+n*o*g)*S,e[3]=(c*o*r-s*h*r-c*i*l+n*h*l+s*i*d-n*o*d)*S,e[4]=_*S,e[5]=(u*m*r-p*h*r+p*i*d-t*m*d-u*i*g+t*h*g)*S,e[6]=(p*o*r-a*m*r-p*i*l+t*m*l+a*i*g-t*o*g)*S,e[7]=(a*h*r-u*o*r+u*i*l-t*h*l-a*i*d+t*o*d)*S,e[8]=y*S,e[9]=(p*c*r-u*f*r-p*n*d+t*f*d+u*n*g-t*c*g)*S,e[10]=(a*f*r-p*s*r+p*n*l-t*f*l-a*n*g+t*s*g)*S,e[11]=(u*s*r-a*c*r-u*n*l+t*c*l+a*n*d-t*s*d)*S,e[12]=x*S,e[13]=(u*f*i-p*c*i+p*n*h-t*f*h-u*n*m+t*c*m)*S,e[14]=(p*s*i-a*f*i-p*n*o+t*f*o+a*n*m-t*s*m)*S,e[15]=(a*c*i-u*s*i+u*n*o-t*c*o-a*n*h+t*s*h)*S,this}scale(e){let t=this.elements,n=e.x,i=e.y,r=e.z;return t[0]*=n,t[4]*=i,t[8]*=r,t[1]*=n,t[5]*=i,t[9]*=r,t[2]*=n,t[6]*=i,t[10]*=r,t[3]*=n,t[7]*=i,t[11]*=r,this}getMaxScaleOnAxis(){let e=this.elements;return Math.sqrt(Math.max(e[0]*e[0]+e[1]*e[1]+e[2]*e[2],e[4]*e[4]+e[5]*e[5]+e[6]*e[6],e[8]*e[8]+e[9]*e[9]+e[10]*e[10]))}makeTranslation(e,t,n){return e.isVector3?this.set(1,0,0,e.x,0,1,0,e.y,0,0,1,e.z,0,0,0,1):this.set(1,0,0,e,0,1,0,t,0,0,1,n,0,0,0,1),this}makeRotationX(e){let t=Math.cos(e),n=Math.sin(e);return this.set(1,0,0,0,0,t,-n,0,0,n,t,0,0,0,0,1),this}makeRotationY(e){let t=Math.cos(e),n=Math.sin(e);return this.set(t,0,n,0,0,1,0,0,-n,0,t,0,0,0,0,1),this}makeRotationZ(e){let t=Math.cos(e),n=Math.sin(e);return this.set(t,-n,0,0,n,t,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(e,t){let n=Math.cos(t),i=Math.sin(t),r=1-n,a=e.x,s=e.y,o=e.z,l=r*a,u=r*s;return this.set(l*a+n,l*s-i*o,l*o+i*s,0,l*s+i*o,u*s+n,u*o-i*a,0,l*o-i*s,u*o+i*a,r*o*o+n,0,0,0,0,1),this}makeScale(e,t,n){return this.set(e,0,0,0,0,t,0,0,0,0,n,0,0,0,0,1),this}makeShear(e,t,n,i,r,a){return this.set(1,n,r,0,e,1,a,0,t,i,1,0,0,0,0,1),this}compose(e,t,n){let i=this.elements,r=t._x,a=t._y,s=t._z,o=t._w,l=r+r,u=a+a,c=s+s,h=r*l,d=r*u,p=r*c,f=a*u,m=a*c,g=s*c,v=o*l,_=o*u,y=o*c,x=n.x,b=n.y,S=n.z;return i[0]=(1-(f+g))*x,i[1]=(d+y)*x,i[2]=(p-_)*x,i[3]=0,i[4]=(d-y)*b,i[5]=(1-(h+g))*b,i[6]=(m+v)*b,i[7]=0,i[8]=(p+_)*S,i[9]=(m-v)*S,i[10]=(1-(h+f))*S,i[11]=0,i[12]=e.x,i[13]=e.y,i[14]=e.z,i[15]=1,this}decompose(e,t,n){let i=this.elements,r=e3.set(i[0],i[1],i[2]).length(),a=e3.set(i[4],i[5],i[6]).length(),s=e3.set(i[8],i[9],i[10]).length();0>this.determinant()&&(r=-r),e.x=i[12],e.y=i[13],e.z=i[14],e4.copy(this);let o=1/r,l=1/a,u=1/s;return e4.elements[0]*=o,e4.elements[1]*=o,e4.elements[2]*=o,e4.elements[4]*=l,e4.elements[5]*=l,e4.elements[6]*=l,e4.elements[8]*=u,e4.elements[9]*=u,e4.elements[10]*=u,t.setFromRotationMatrix(e4),n.x=r,n.y=a,n.z=s,this}makePerspective(e,t,n,i,r,a,s=2e3){let o,l,u=this.elements;if(2e3===s)o=-(a+r)/(a-r),l=-2*a*r/(a-r);else if(2001===s)o=-a/(a-r),l=-a*r/(a-r);else throw Error("THREE.Matrix4.makePerspective(): Invalid coordinate system: "+s);return u[0]=2*r/(t-e),u[4]=0,u[8]=(t+e)/(t-e),u[12]=0,u[1]=0,u[5]=2*r/(n-i),u[9]=(n+i)/(n-i),u[13]=0,u[2]=0,u[6]=0,u[10]=o,u[14]=l,u[3]=0,u[7]=0,u[11]=-1,u[15]=0,this}makeOrthographic(e,t,n,i,r,a,s=2e3){let o,l,u=this.elements,c=1/(t-e),h=1/(n-i),d=1/(a-r);if(2e3===s)o=(a+r)*d,l=-2*d;else if(2001===s)o=r*d,l=-1*d;else throw Error("THREE.Matrix4.makeOrthographic(): Invalid coordinate system: "+s);return u[0]=2*c,u[4]=0,u[8]=0,u[12]=-((t+e)*c),u[1]=0,u[5]=2*h,u[9]=0,u[13]=-((n+i)*h),u[2]=0,u[6]=0,u[10]=l,u[14]=-o,u[3]=0,u[7]=0,u[11]=0,u[15]=1,this}equals(e){let t=this.elements,n=e.elements;for(let e=0;e<16;e++)if(t[e]!==n[e])return!1;return!0}fromArray(e,t=0){for(let n=0;n<16;n++)this.elements[n]=e[n+t];return this}toArray(e=[],t=0){let n=this.elements;return e[t]=n[0],e[t+1]=n[1],e[t+2]=n[2],e[t+3]=n[3],e[t+4]=n[4],e[t+5]=n[5],e[t+6]=n[6],e[t+7]=n[7],e[t+8]=n[8],e[t+9]=n[9],e[t+10]=n[10],e[t+11]=n[11],e[t+12]=n[12],e[t+13]=n[13],e[t+14]=n[14],e[t+15]=n[15],e}}let e3=new eE,e4=new e2,e5=new eE(0,0,0),e6=new eE(1,1,1),e8=new eE,e9=new eE,e7=new eE,te=new e2,tt=new ew;class tn{constructor(e=0,t=0,n=0,i=tn.DEFAULT_ORDER){this.isEuler=!0,this._x=e,this._y=t,this._z=n,this._order=i}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get order(){return this._order}set order(e){this._order=e,this._onChangeCallback()}set(e,t,n,i=this._order){return this._x=e,this._y=t,this._z=n,this._order=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(e){return this._x=e._x,this._y=e._y,this._z=e._z,this._order=e._order,this._onChangeCallback(),this}setFromRotationMatrix(e,t=this._order,n=!0){let i=e.elements,r=i[0],a=i[4],s=i[8],o=i[1],l=i[5],u=i[9],c=i[2],h=i[6],d=i[10];switch(t){case"XYZ":this._y=Math.asin(V(s,-1,1)),.9999999>Math.abs(s)?(this._x=Math.atan2(-u,d),this._z=Math.atan2(-a,r)):(this._x=Math.atan2(h,l),this._z=0);break;case"YXZ":this._x=Math.asin(-V(u,-1,1)),.9999999>Math.abs(u)?(this._y=Math.atan2(s,d),this._z=Math.atan2(o,l)):(this._y=Math.atan2(-c,r),this._z=0);break;case"ZXY":this._x=Math.asin(V(h,-1,1)),.9999999>Math.abs(h)?(this._y=Math.atan2(-c,d),this._z=Math.atan2(-a,l)):(this._y=0,this._z=Math.atan2(o,r));break;case"ZYX":this._y=Math.asin(-V(c,-1,1)),.9999999>Math.abs(c)?(this._x=Math.atan2(h,d),this._z=Math.atan2(o,r)):(this._x=0,this._z=Math.atan2(-a,l));break;case"YZX":this._z=Math.asin(V(o,-1,1)),.9999999>Math.abs(o)?(this._x=Math.atan2(-u,l),this._y=Math.atan2(-c,r)):(this._x=0,this._y=Math.atan2(s,d));break;case"XZY":this._z=Math.asin(-V(a,-1,1)),.9999999>Math.abs(a)?(this._x=Math.atan2(h,l),this._y=Math.atan2(s,r)):(this._x=Math.atan2(-u,d),this._y=0);break;default:console.warn("THREE.Euler: .setFromRotationMatrix() encountered an unknown order: "+t)}return this._order=t,!0===n&&this._onChangeCallback(),this}setFromQuaternion(e,t,n){return te.makeRotationFromQuaternion(e),this.setFromRotationMatrix(te,t,n)}setFromVector3(e,t=this._order){return this.set(e.x,e.y,e.z,t)}reorder(e){return tt.setFromEuler(this),this.setFromQuaternion(tt,e)}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._order===this._order}fromArray(e){return this._x=e[0],this._y=e[1],this._z=e[2],void 0!==e[3]&&(this._order=e[3]),this._onChangeCallback(),this}toArray(e=[],t=0){return e[t]=this._x,e[t+1]=this._y,e[t+2]=this._z,e[t+3]=this._order,e}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._order}}tn.DEFAULT_ORDER="XYZ";class ti{constructor(){this.mask=1}set(e){this.mask=1<>>0}enable(e){this.mask|=1<1){for(let e=0;e1){for(let e=0;e0&&(i.userData=this.userData),i.layers=this.layers.mask,i.matrix=this.matrix.toArray(),i.up=this.up.toArray(),!1===this.matrixAutoUpdate&&(i.matrixAutoUpdate=!1),this.isInstancedMesh&&(i.type="InstancedMesh",i.count=this.count,i.instanceMatrix=this.instanceMatrix.toJSON(),null!==this.instanceColor&&(i.instanceColor=this.instanceColor.toJSON())),this.isBatchedMesh&&(i.type="BatchedMesh",i.perObjectFrustumCulled=this.perObjectFrustumCulled,i.sortObjects=this.sortObjects,i.drawRanges=this._drawRanges,i.reservedRanges=this._reservedRanges,i.visibility=this._visibility,i.active=this._active,i.bounds=this._bounds.map(e=>({boxInitialized:e.boxInitialized,boxMin:e.box.min.toArray(),boxMax:e.box.max.toArray(),sphereInitialized:e.sphereInitialized,sphereRadius:e.sphere.radius,sphereCenter:e.sphere.center.toArray()})),i.maxInstanceCount=this._maxInstanceCount,i.maxVertexCount=this._maxVertexCount,i.maxIndexCount=this._maxIndexCount,i.geometryInitialized=this._geometryInitialized,i.geometryCount=this._geometryCount,i.matricesTexture=this._matricesTexture.toJSON(e),null!==this._colorsTexture&&(i.colorsTexture=this._colorsTexture.toJSON(e)),null!==this.boundingSphere&&(i.boundingSphere={center:i.boundingSphere.center.toArray(),radius:i.boundingSphere.radius}),null!==this.boundingBox&&(i.boundingBox={min:i.boundingBox.min.toArray(),max:i.boundingBox.max.toArray()})),this.isScene)this.background&&(this.background.isColor?i.background=this.background.toJSON():this.background.isTexture&&(i.background=this.background.toJSON(e).uuid)),this.environment&&this.environment.isTexture&&!0!==this.environment.isRenderTargetTexture&&(i.environment=this.environment.toJSON(e).uuid);else if(this.isMesh||this.isLine||this.isPoints){i.geometry=r(e.geometries,this.geometry);let t=this.geometry.parameters;if(void 0!==t&&void 0!==t.shapes){let n=t.shapes;if(Array.isArray(n))for(let t=0,i=n.length;t0){i.children=[];for(let t=0;t0){i.animations=[];for(let t=0;t0&&(n.geometries=t),i.length>0&&(n.materials=i),r.length>0&&(n.textures=r),s.length>0&&(n.images=s),o.length>0&&(n.shapes=o),l.length>0&&(n.skeletons=l),u.length>0&&(n.animations=u),c.length>0&&(n.nodes=c)}return n.object=i,n;function a(e){let t=[];for(let n in e){let i=e[n];delete i.metadata,t.push(i)}return t}}clone(e){return new this.constructor().copy(this,e)}copy(e,t=!0){if(this.name=e.name,this.up.copy(e.up),this.position.copy(e.position),this.rotation.order=e.rotation.order,this.quaternion.copy(e.quaternion),this.scale.copy(e.scale),this.matrix.copy(e.matrix),this.matrixWorld.copy(e.matrixWorld),this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrixWorldAutoUpdate=e.matrixWorldAutoUpdate,this.matrixWorldNeedsUpdate=e.matrixWorldNeedsUpdate,this.layers.mask=e.layers.mask,this.visible=e.visible,this.castShadow=e.castShadow,this.receiveShadow=e.receiveShadow,this.frustumCulled=e.frustumCulled,this.renderOrder=e.renderOrder,this.animations=e.animations.slice(),this.userData=JSON.parse(JSON.stringify(e.userData)),!0===t)for(let t=0;t0?i.multiplyScalar(1/Math.sqrt(r)):i.set(0,0,0)}static getBarycoord(e,t,n,i,r){tx.subVectors(i,t),tb.subVectors(n,t),tS.subVectors(e,t);let a=tx.dot(tx),s=tx.dot(tb),o=tx.dot(tS),l=tb.dot(tb),u=tb.dot(tS),c=a*l-s*s;if(0===c)return r.set(0,0,0),null;let h=1/c,d=(l*o-s*u)*h,p=(a*u-s*o)*h;return r.set(1-d-p,p,d)}static containsPoint(e,t,n,i){return null!==this.getBarycoord(e,t,n,i,tM)&&tM.x>=0&&tM.y>=0&&tM.x+tM.y<=1}static getInterpolation(e,t,n,i,r,a,s,o){return null===this.getBarycoord(e,t,n,i,tM)?(o.x=0,o.y=0,"z"in o&&(o.z=0),"w"in o&&(o.w=0),null):(o.setScalar(0),o.addScaledVector(r,tM.x),o.addScaledVector(a,tM.y),o.addScaledVector(s,tM.z),o)}static getInterpolatedAttribute(e,t,n,i,r,a){return tP.setScalar(0),tI.setScalar(0),tL.setScalar(0),tP.fromBufferAttribute(e,t),tI.fromBufferAttribute(e,n),tL.fromBufferAttribute(e,i),a.setScalar(0),a.addScaledVector(tP,r.x),a.addScaledVector(tI,r.y),a.addScaledVector(tL,r.z),a}static isFrontFacing(e,t,n,i){return tx.subVectors(n,t),tb.subVectors(e,t),0>tx.cross(tb).dot(i)}set(e,t,n){return this.a.copy(e),this.b.copy(t),this.c.copy(n),this}setFromPointsAndIndices(e,t,n,i){return this.a.copy(e[t]),this.b.copy(e[n]),this.c.copy(e[i]),this}setFromAttributeAndIndices(e,t,n,i){return this.a.fromBufferAttribute(e,t),this.b.fromBufferAttribute(e,n),this.c.fromBufferAttribute(e,i),this}clone(){return new this.constructor().copy(this)}copy(e){return this.a.copy(e.a),this.b.copy(e.b),this.c.copy(e.c),this}getArea(){return tx.subVectors(this.c,this.b),tb.subVectors(this.a,this.b),.5*tx.cross(tb).length()}getMidpoint(e){return e.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(e){return tN.getNormal(this.a,this.b,this.c,e)}getPlane(e){return e.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(e,t){return tN.getBarycoord(e,this.a,this.b,this.c,t)}getInterpolation(e,t,n,i,r){return tN.getInterpolation(e,this.a,this.b,this.c,t,n,i,r)}containsPoint(e){return tN.containsPoint(e,this.a,this.b,this.c)}isFrontFacing(e){return tN.isFrontFacing(this.a,this.b,this.c,e)}intersectsBox(e){return e.intersectsTriangle(this)}closestPointToPoint(e,t){let n,i,r=this.a,a=this.b,s=this.c;tT.subVectors(a,r),tw.subVectors(s,r),tA.subVectors(e,r);let o=tT.dot(tA),l=tw.dot(tA);if(o<=0&&l<=0)return t.copy(r);tC.subVectors(e,a);let u=tT.dot(tC),c=tw.dot(tC);if(u>=0&&c<=u)return t.copy(a);let h=o*c-u*l;if(h<=0&&o>=0&&u<=0)return n=o/(o-u),t.copy(r).addScaledVector(tT,n);tR.subVectors(e,s);let d=tT.dot(tR),p=tw.dot(tR);if(p>=0&&d<=p)return t.copy(s);let f=d*l-o*p;if(f<=0&&l>=0&&p<=0)return i=l/(l-p),t.copy(r).addScaledVector(tw,i);let m=u*p-d*c;if(m<=0&&c-u>=0&&d-p>=0)return tE.subVectors(s,a),i=(c-u)/(c-u+(d-p)),t.copy(a).addScaledVector(tE,i);let g=1/(m+f+h);return n=f*g,i=h*g,t.copy(r).addScaledVector(tT,n).addScaledVector(tw,i)}equals(e){return e.a.equals(this.a)&&e.b.equals(this.b)&&e.c.equals(this.c)}}let tU={aliceblue:0xf0f8ff,antiquewhite:0xfaebd7,aqua:65535,aquamarine:8388564,azure:0xf0ffff,beige:0xf5f5dc,bisque:0xffe4c4,black:0,blanchedalmond:0xffebcd,blue:255,blueviolet:9055202,brown:0xa52a2a,burlywood:0xdeb887,cadetblue:6266528,chartreuse:8388352,chocolate:0xd2691e,coral:0xff7f50,cornflowerblue:6591981,cornsilk:0xfff8dc,crimson:0xdc143c,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:0xb8860b,darkgray:0xa9a9a9,darkgreen:25600,darkgrey:0xa9a9a9,darkkhaki:0xbdb76b,darkmagenta:9109643,darkolivegreen:5597999,darkorange:0xff8c00,darkorchid:0x9932cc,darkred:9109504,darksalmon:0xe9967a,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:0xff1493,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:0xb22222,floralwhite:0xfffaf0,forestgreen:2263842,fuchsia:0xff00ff,gainsboro:0xdcdcdc,ghostwhite:0xf8f8ff,gold:0xffd700,goldenrod:0xdaa520,gray:8421504,green:32768,greenyellow:0xadff2f,grey:8421504,honeydew:0xf0fff0,hotpink:0xff69b4,indianred:0xcd5c5c,indigo:4915330,ivory:0xfffff0,khaki:0xf0e68c,lavender:0xe6e6fa,lavenderblush:0xfff0f5,lawngreen:8190976,lemonchiffon:0xfffacd,lightblue:0xadd8e6,lightcoral:0xf08080,lightcyan:0xe0ffff,lightgoldenrodyellow:0xfafad2,lightgray:0xd3d3d3,lightgreen:9498256,lightgrey:0xd3d3d3,lightpink:0xffb6c1,lightsalmon:0xffa07a,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:0xb0c4de,lightyellow:0xffffe0,lime:65280,limegreen:3329330,linen:0xfaf0e6,magenta:0xff00ff,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:0xba55d3,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:0xc71585,midnightblue:1644912,mintcream:0xf5fffa,mistyrose:0xffe4e1,moccasin:0xffe4b5,navajowhite:0xffdead,navy:128,oldlace:0xfdf5e6,olive:8421376,olivedrab:7048739,orange:0xffa500,orangered:0xff4500,orchid:0xda70d6,palegoldenrod:0xeee8aa,palegreen:0x98fb98,paleturquoise:0xafeeee,palevioletred:0xdb7093,papayawhip:0xffefd5,peachpuff:0xffdab9,peru:0xcd853f,pink:0xffc0cb,plum:0xdda0dd,powderblue:0xb0e0e6,purple:8388736,rebeccapurple:6697881,red:0xff0000,rosybrown:0xbc8f8f,royalblue:4286945,saddlebrown:9127187,salmon:0xfa8072,sandybrown:0xf4a460,seagreen:3050327,seashell:0xfff5ee,sienna:0xa0522d,silver:0xc0c0c0,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:0xfffafa,springgreen:65407,steelblue:4620980,tan:0xd2b48c,teal:32896,thistle:0xd8bfd8,tomato:0xff6347,turquoise:4251856,violet:0xee82ee,wheat:0xf5deb3,white:0xffffff,whitesmoke:0xf5f5f5,yellow:0xffff00,yellowgreen:0x9acd32},tD={h:0,s:0,l:0},tO={h:0,s:0,l:0};function tF(e,t,n){return(n<0&&(n+=1),n>1&&(n-=1),n<1/6)?e+(t-e)*6*n:n<.5?t:n<2/3?e+(t-e)*6*(2/3-n):e}class tz{constructor(e,t,n){return this.isColor=!0,this.r=1,this.g=1,this.b=1,this.set(e,t,n)}set(e,t,n){return void 0===t&&void 0===n?e&&e.isColor?this.copy(e):"number"==typeof e?this.setHex(e):"string"==typeof e&&this.setStyle(e):this.setRGB(e,t,n),this}setScalar(e){return this.r=e,this.g=e,this.b=e,this}setHex(e,t=I){return e=Math.floor(e),this.r=(e>>16&255)/255,this.g=(e>>8&255)/255,this.b=(255&e)/255,eu.toWorkingColorSpace(this,t),this}setRGB(e,t,n,i=eu.workingColorSpace){return this.r=e,this.g=t,this.b=n,eu.toWorkingColorSpace(this,i),this}setHSL(e,t,n,i=eu.workingColorSpace){if(e=G(e,1),t=V(t,0,1),n=V(n,0,1),0===t)this.r=this.g=this.b=n;else{let i=n<=.5?n*(1+t):n+t-n*t,r=2*n-i;this.r=tF(r,i,e+1/3),this.g=tF(r,i,e),this.b=tF(r,i,e-1/3)}return eu.toWorkingColorSpace(this,i),this}setStyle(e,t=I){let n;function i(t){void 0!==t&&1>parseFloat(t)&&console.warn("THREE.Color: Alpha component of "+e+" will be ignored.")}if(n=/^(\w+)\(([^\)]*)\)/.exec(e)){let r,a=n[1],s=n[2];switch(a){case"rgb":case"rgba":if(r=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(s))return i(r[4]),this.setRGB(Math.min(255,parseInt(r[1],10))/255,Math.min(255,parseInt(r[2],10))/255,Math.min(255,parseInt(r[3],10))/255,t);if(r=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(s))return i(r[4]),this.setRGB(Math.min(100,parseInt(r[1],10))/100,Math.min(100,parseInt(r[2],10))/100,Math.min(100,parseInt(r[3],10))/100,t);break;case"hsl":case"hsla":if(r=/^\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\%\s*,\s*(\d*\.?\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(s))return i(r[4]),this.setHSL(parseFloat(r[1])/360,parseFloat(r[2])/100,parseFloat(r[3])/100,t);break;default:console.warn("THREE.Color: Unknown color model "+e)}}else if(n=/^\#([A-Fa-f\d]+)$/.exec(e)){let i=n[1],r=i.length;if(3===r)return this.setRGB(parseInt(i.charAt(0),16)/15,parseInt(i.charAt(1),16)/15,parseInt(i.charAt(2),16)/15,t);if(6===r)return this.setHex(parseInt(i,16),t);console.warn("THREE.Color: Invalid hex color "+e)}else if(e&&e.length>0)return this.setColorName(e,t);return this}setColorName(e,t=I){let n=tU[e.toLowerCase()];return void 0!==n?this.setHex(n,t):console.warn("THREE.Color: Unknown color "+e),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(e){return this.r=e.r,this.g=e.g,this.b=e.b,this}copySRGBToLinear(e){return this.r=ec(e.r),this.g=ec(e.g),this.b=ec(e.b),this}copyLinearToSRGB(e){return this.r=eh(e.r),this.g=eh(e.g),this.b=eh(e.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(e=I){return eu.fromWorkingColorSpace(tB.copy(this),e),65536*Math.round(V(255*tB.r,0,255))+256*Math.round(V(255*tB.g,0,255))+Math.round(V(255*tB.b,0,255))}getHexString(e=I){return("000000"+this.getHex(e).toString(16)).slice(-6)}getHSL(e,t=eu.workingColorSpace){let n,i;eu.fromWorkingColorSpace(tB.copy(this),t);let r=tB.r,a=tB.g,s=tB.b,o=Math.max(r,a,s),l=Math.min(r,a,s),u=(l+o)/2;if(l===o)n=0,i=0;else{let e=o-l;switch(i=u<=.5?e/(o+l):e/(2-o-l),o){case r:n=(a-s)/e+6*(a0!=e>0&&this.version++,this._alphaTest=e}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(e){if(void 0!==e)for(let t in e){let n=e[t];if(void 0===n){console.warn(`THREE.Material: parameter '${t}' has value of undefined.`);continue}let i=this[t];if(void 0===i){console.warn(`THREE.Material: '${t}' is not a property of THREE.${this.type}.`);continue}i&&i.isColor?i.set(n):i&&i.isVector3&&n&&n.isVector3?i.copy(n):this[t]=n}}toJSON(e){let t=void 0===e||"string"==typeof e;t&&(e={textures:{},images:{}});let n={metadata:{version:4.6,type:"Material",generator:"Material.toJSON"}};function i(e){let t=[];for(let n in e){let i=e[n];delete i.metadata,t.push(i)}return t}if(n.uuid=this.uuid,n.type=this.type,""!==this.name&&(n.name=this.name),this.color&&this.color.isColor&&(n.color=this.color.getHex()),void 0!==this.roughness&&(n.roughness=this.roughness),void 0!==this.metalness&&(n.metalness=this.metalness),void 0!==this.sheen&&(n.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(n.sheenColor=this.sheenColor.getHex()),void 0!==this.sheenRoughness&&(n.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(n.emissive=this.emissive.getHex()),void 0!==this.emissiveIntensity&&1!==this.emissiveIntensity&&(n.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(n.specular=this.specular.getHex()),void 0!==this.specularIntensity&&(n.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(n.specularColor=this.specularColor.getHex()),void 0!==this.shininess&&(n.shininess=this.shininess),void 0!==this.clearcoat&&(n.clearcoat=this.clearcoat),void 0!==this.clearcoatRoughness&&(n.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(n.clearcoatMap=this.clearcoatMap.toJSON(e).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(n.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(e).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(n.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(e).uuid,n.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),void 0!==this.dispersion&&(n.dispersion=this.dispersion),void 0!==this.iridescence&&(n.iridescence=this.iridescence),void 0!==this.iridescenceIOR&&(n.iridescenceIOR=this.iridescenceIOR),void 0!==this.iridescenceThicknessRange&&(n.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(n.iridescenceMap=this.iridescenceMap.toJSON(e).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(n.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(e).uuid),void 0!==this.anisotropy&&(n.anisotropy=this.anisotropy),void 0!==this.anisotropyRotation&&(n.anisotropyRotation=this.anisotropyRotation),this.anisotropyMap&&this.anisotropyMap.isTexture&&(n.anisotropyMap=this.anisotropyMap.toJSON(e).uuid),this.map&&this.map.isTexture&&(n.map=this.map.toJSON(e).uuid),this.matcap&&this.matcap.isTexture&&(n.matcap=this.matcap.toJSON(e).uuid),this.alphaMap&&this.alphaMap.isTexture&&(n.alphaMap=this.alphaMap.toJSON(e).uuid),this.lightMap&&this.lightMap.isTexture&&(n.lightMap=this.lightMap.toJSON(e).uuid,n.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(n.aoMap=this.aoMap.toJSON(e).uuid,n.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(n.bumpMap=this.bumpMap.toJSON(e).uuid,n.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(n.normalMap=this.normalMap.toJSON(e).uuid,n.normalMapType=this.normalMapType,n.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(n.displacementMap=this.displacementMap.toJSON(e).uuid,n.displacementScale=this.displacementScale,n.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(n.roughnessMap=this.roughnessMap.toJSON(e).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(n.metalnessMap=this.metalnessMap.toJSON(e).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(n.emissiveMap=this.emissiveMap.toJSON(e).uuid),this.specularMap&&this.specularMap.isTexture&&(n.specularMap=this.specularMap.toJSON(e).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(n.specularIntensityMap=this.specularIntensityMap.toJSON(e).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(n.specularColorMap=this.specularColorMap.toJSON(e).uuid),this.envMap&&this.envMap.isTexture&&(n.envMap=this.envMap.toJSON(e).uuid,void 0!==this.combine&&(n.combine=this.combine)),void 0!==this.envMapRotation&&(n.envMapRotation=this.envMapRotation.toArray()),void 0!==this.envMapIntensity&&(n.envMapIntensity=this.envMapIntensity),void 0!==this.reflectivity&&(n.reflectivity=this.reflectivity),void 0!==this.refractionRatio&&(n.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(n.gradientMap=this.gradientMap.toJSON(e).uuid),void 0!==this.transmission&&(n.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(n.transmissionMap=this.transmissionMap.toJSON(e).uuid),void 0!==this.thickness&&(n.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(n.thicknessMap=this.thicknessMap.toJSON(e).uuid),void 0!==this.attenuationDistance&&this.attenuationDistance!==1/0&&(n.attenuationDistance=this.attenuationDistance),void 0!==this.attenuationColor&&(n.attenuationColor=this.attenuationColor.getHex()),void 0!==this.size&&(n.size=this.size),null!==this.shadowSide&&(n.shadowSide=this.shadowSide),void 0!==this.sizeAttenuation&&(n.sizeAttenuation=this.sizeAttenuation),1!==this.blending&&(n.blending=this.blending),0!==this.side&&(n.side=this.side),!0===this.vertexColors&&(n.vertexColors=!0),this.opacity<1&&(n.opacity=this.opacity),!0===this.transparent&&(n.transparent=!0),204!==this.blendSrc&&(n.blendSrc=this.blendSrc),205!==this.blendDst&&(n.blendDst=this.blendDst),100!==this.blendEquation&&(n.blendEquation=this.blendEquation),null!==this.blendSrcAlpha&&(n.blendSrcAlpha=this.blendSrcAlpha),null!==this.blendDstAlpha&&(n.blendDstAlpha=this.blendDstAlpha),null!==this.blendEquationAlpha&&(n.blendEquationAlpha=this.blendEquationAlpha),this.blendColor&&this.blendColor.isColor&&(n.blendColor=this.blendColor.getHex()),0!==this.blendAlpha&&(n.blendAlpha=this.blendAlpha),3!==this.depthFunc&&(n.depthFunc=this.depthFunc),!1===this.depthTest&&(n.depthTest=this.depthTest),!1===this.depthWrite&&(n.depthWrite=this.depthWrite),!1===this.colorWrite&&(n.colorWrite=this.colorWrite),255!==this.stencilWriteMask&&(n.stencilWriteMask=this.stencilWriteMask),519!==this.stencilFunc&&(n.stencilFunc=this.stencilFunc),0!==this.stencilRef&&(n.stencilRef=this.stencilRef),255!==this.stencilFuncMask&&(n.stencilFuncMask=this.stencilFuncMask),7680!==this.stencilFail&&(n.stencilFail=this.stencilFail),7680!==this.stencilZFail&&(n.stencilZFail=this.stencilZFail),7680!==this.stencilZPass&&(n.stencilZPass=this.stencilZPass),!0===this.stencilWrite&&(n.stencilWrite=this.stencilWrite),void 0!==this.rotation&&0!==this.rotation&&(n.rotation=this.rotation),!0===this.polygonOffset&&(n.polygonOffset=!0),0!==this.polygonOffsetFactor&&(n.polygonOffsetFactor=this.polygonOffsetFactor),0!==this.polygonOffsetUnits&&(n.polygonOffsetUnits=this.polygonOffsetUnits),void 0!==this.linewidth&&1!==this.linewidth&&(n.linewidth=this.linewidth),void 0!==this.dashSize&&(n.dashSize=this.dashSize),void 0!==this.gapSize&&(n.gapSize=this.gapSize),void 0!==this.scale&&(n.scale=this.scale),!0===this.dithering&&(n.dithering=!0),this.alphaTest>0&&(n.alphaTest=this.alphaTest),!0===this.alphaHash&&(n.alphaHash=!0),!0===this.alphaToCoverage&&(n.alphaToCoverage=!0),!0===this.premultipliedAlpha&&(n.premultipliedAlpha=!0),!0===this.forceSinglePass&&(n.forceSinglePass=!0),!0===this.wireframe&&(n.wireframe=!0),this.wireframeLinewidth>1&&(n.wireframeLinewidth=this.wireframeLinewidth),"round"!==this.wireframeLinecap&&(n.wireframeLinecap=this.wireframeLinecap),"round"!==this.wireframeLinejoin&&(n.wireframeLinejoin=this.wireframeLinejoin),!0===this.flatShading&&(n.flatShading=!0),!1===this.visible&&(n.visible=!1),!1===this.toneMapped&&(n.toneMapped=!1),!1===this.fog&&(n.fog=!1),Object.keys(this.userData).length>0&&(n.userData=this.userData),t){let t=i(e.textures),r=i(e.images);t.length>0&&(n.textures=t),r.length>0&&(n.images=r)}return n}clone(){return new this.constructor().copy(this)}copy(e){this.name=e.name,this.blending=e.blending,this.side=e.side,this.vertexColors=e.vertexColors,this.opacity=e.opacity,this.transparent=e.transparent,this.blendSrc=e.blendSrc,this.blendDst=e.blendDst,this.blendEquation=e.blendEquation,this.blendSrcAlpha=e.blendSrcAlpha,this.blendDstAlpha=e.blendDstAlpha,this.blendEquationAlpha=e.blendEquationAlpha,this.blendColor.copy(e.blendColor),this.blendAlpha=e.blendAlpha,this.depthFunc=e.depthFunc,this.depthTest=e.depthTest,this.depthWrite=e.depthWrite,this.stencilWriteMask=e.stencilWriteMask,this.stencilFunc=e.stencilFunc,this.stencilRef=e.stencilRef,this.stencilFuncMask=e.stencilFuncMask,this.stencilFail=e.stencilFail,this.stencilZFail=e.stencilZFail,this.stencilZPass=e.stencilZPass,this.stencilWrite=e.stencilWrite;let t=e.clippingPlanes,n=null;if(null!==t){let e=t.length;n=Array(e);for(let i=0;i!==e;++i)n[i]=t[i].clone()}return this.clippingPlanes=n,this.clipIntersection=e.clipIntersection,this.clipShadows=e.clipShadows,this.shadowSide=e.shadowSide,this.colorWrite=e.colorWrite,this.precision=e.precision,this.polygonOffset=e.polygonOffset,this.polygonOffsetFactor=e.polygonOffsetFactor,this.polygonOffsetUnits=e.polygonOffsetUnits,this.dithering=e.dithering,this.alphaTest=e.alphaTest,this.alphaHash=e.alphaHash,this.alphaToCoverage=e.alphaToCoverage,this.premultipliedAlpha=e.premultipliedAlpha,this.forceSinglePass=e.forceSinglePass,this.visible=e.visible,this.toneMapped=e.toneMapped,this.userData=JSON.parse(JSON.stringify(e.userData)),this}dispose(){this.dispatchEvent({type:"dispose"})}set needsUpdate(e){!0===e&&this.version++}onBuild(){console.warn("Material: onBuild() has been removed.")}}class tV extends tH{constructor(e){super(),this.isMeshBasicMaterial=!0,this.type="MeshBasicMaterial",this.color=new tz(0xffffff),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new tn,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.fog=e.fog,this}}let tG=function(){let e=new ArrayBuffer(4),t=new Float32Array(e),n=new Uint32Array(e),i=new Uint32Array(512),r=new Uint32Array(512);for(let e=0;e<256;++e){let t=e-127;t<-27?(i[e]=0,i[256|e]=32768,r[e]=24,r[256|e]=24):t<-14?(i[e]=1024>>-t-14,i[256|e]=1024>>-t-14|32768,r[e]=-t-1,r[256|e]=-t-1):t<=15?(i[e]=t+15<<10,i[256|e]=t+15<<10|32768,r[e]=13,r[256|e]=13):t<128?(i[e]=31744,i[256|e]=64512,r[e]=24,r[256|e]=24):(i[e]=31744,i[256|e]=64512,r[e]=13,r[256|e]=13)}let a=new Uint32Array(2048),s=new Uint32Array(64),o=new Uint32Array(64);for(let e=1;e<1024;++e){let t=e<<13,n=0;for(;(8388608&t)==0;)t<<=1,n-=8388608;t&=-8388609,n+=0x38800000,a[e]=t|n}for(let e=1024;e<2048;++e)a[e]=0x38000000+(e-1024<<13);for(let e=1;e<31;++e)s[e]=e<<23;s[31]=0x47800000,s[32]=0x80000000;for(let e=33;e<63;++e)s[e]=0x80000000+(e-32<<23);s[63]=0xc7800000;for(let e=1;e<64;++e)32!==e&&(o[e]=1024);return{floatView:t,uint32View:n,baseTable:i,shiftTable:r,mantissaTable:a,exponentTable:s,offsetTable:o}}();function tW(e){Math.abs(e)>65504&&console.warn("THREE.DataUtils.toHalfFloat(): Value out of range."),e=V(e,-65504,65504),tG.floatView[0]=e;let t=tG.uint32View[0],n=t>>23&511;return tG.baseTable[n]+((8388607&t)>>tG.shiftTable[n])}function tj(e){let t=e>>10;return tG.uint32View[0]=tG.mantissaTable[tG.offsetTable[t]+(1023&e)]+tG.exponentTable[t],tG.floatView[0]}let tX={toHalfFloat:tW,fromHalfFloat:tj},tq=new eE,tY=new Y;class tZ{constructor(e,t,n=!1){if(Array.isArray(e))throw TypeError("THREE.BufferAttribute: array should be a Typed Array.");this.isBufferAttribute=!0,this.name="",this.array=e,this.itemSize=t,this.count=void 0!==e?e.length/t:0,this.normalized=n,this.usage=35044,this.updateRanges=[],this.gpuType=1015,this.version=0}onUploadCallback(){}set needsUpdate(e){!0===e&&this.version++}setUsage(e){return this.usage=e,this}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}copy(e){return this.name=e.name,this.array=new e.array.constructor(e.array),this.itemSize=e.itemSize,this.count=e.count,this.normalized=e.normalized,this.usage=e.usage,this.gpuType=e.gpuType,this}copyAt(e,t,n){e*=this.itemSize,n*=t.itemSize;for(let i=0,r=this.itemSize;it.count&&console.warn("THREE.BufferGeometry: Buffer size too small for points data. Use .dispose() and create a new geometry."),t.needsUpdate=!0}return this}computeBoundingBox(){null===this.boundingBox&&(this.boundingBox=new eR);let e=this.attributes.position,t=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){console.error("THREE.BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box.",this),this.boundingBox.set(new eE(-1/0,-1/0,-1/0),new eE(Infinity,Infinity,Infinity));return}if(void 0!==e){if(this.boundingBox.setFromBufferAttribute(e),t)for(let e=0,n=t.length;e0&&(e.userData=this.userData),void 0!==this.parameters){let t=this.parameters;for(let n in t)void 0!==t[n]&&(e[n]=t[n]);return e}e.data={attributes:{}};let t=this.index;null!==t&&(e.data.index={type:t.array.constructor.name,array:Array.prototype.slice.call(t.array)});let n=this.attributes;for(let t in n){let i=n[t];e.data.attributes[t]=i.toJSON(e.data)}let i={},r=!1;for(let t in this.morphAttributes){let n=this.morphAttributes[t],a=[];for(let t=0,i=n.length;t0&&(i[t]=a,r=!0)}r&&(e.data.morphAttributes=i,e.data.morphTargetsRelative=this.morphTargetsRelative);let a=this.groups;a.length>0&&(e.data.groups=JSON.parse(JSON.stringify(a)));let s=this.boundingSphere;return null!==s&&(e.data.boundingSphere={center:s.center.toArray(),radius:s.radius}),e}clone(){return new this.constructor().copy(this)}copy(e){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;let t={};this.name=e.name;let n=e.index;null!==n&&this.setIndex(n.clone(t));let i=e.attributes;for(let e in i){let n=i[e];this.setAttribute(e,n.clone(t))}let r=e.morphAttributes;for(let e in r){let n=[],i=r[e];for(let e=0,r=i.length;e0){let n=e[t[0]];if(void 0!==n){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;e(e.far-e.near)**2)||(ni.copy(r).invert(),nr.copy(e.ray).applyMatrix4(ni),(null===n.boundingBox||!1!==nr.intersectsBox(n.boundingBox))&&this._computeIntersections(e,t,nr)))}_computeIntersections(e,t,n){let i,r=this.geometry,a=this.material,s=r.index,o=r.attributes.position,l=r.attributes.uv,u=r.attributes.uv1,c=r.attributes.normal,h=r.groups,d=r.drawRange;if(null!==s)if(Array.isArray(a))for(let r=0,o=h.length;rn.far?null:{distance:l,point:np.clone(),object:e}}(e,t,n,i,no,nl,nu,nd);if(c){let e=new eE;tN.getBarycoord(nd,no,nl,nu,e),r&&(c.uv=tN.getInterpolatedAttribute(r,o,l,u,e,new Y)),a&&(c.uv1=tN.getInterpolatedAttribute(a,o,l,u,e,new Y)),s&&(c.normal=tN.getInterpolatedAttribute(s,o,l,u,e,new eE),c.normal.dot(i.direction)>0&&c.normal.multiplyScalar(-1));let t={a:o,b:l,c:u,normal:new eE,materialIndex:0};tN.getNormal(no,nl,nu,t.normal),c.face=t,c.barycoord=e}return c}class ng extends nn{constructor(e=1,t=1,n=1,i=1,r=1,a=1){super(),this.type="BoxGeometry",this.parameters={width:e,height:t,depth:n,widthSegments:i,heightSegments:r,depthSegments:a};const s=this;i=Math.floor(i),r=Math.floor(r);const o=[],l=[],u=[],c=[];let h=0,d=0;function p(e,t,n,i,r,a,p,f,m,g,v){let _=a/m,y=p/g,x=a/2,b=p/2,S=f/2,M=m+1,T=g+1,w=0,E=0,A=new eE;for(let a=0;a0?1:-1,u.push(A.x,A.y,A.z),c.push(o/m),c.push(1-a/g),w+=1}}for(let e=0;e0&&(t.defines=this.defines),t.vertexShader=this.vertexShader,t.fragmentShader=this.fragmentShader,t.lights=this.lights,t.clipping=this.clipping;let n={};for(let e in this.extensions)!0===this.extensions[e]&&(n[e]=!0);return Object.keys(n).length>0&&(t.extensions=n),t}}class nS extends ty{constructor(){super(),this.isCamera=!0,this.type="Camera",this.matrixWorldInverse=new e2,this.projectionMatrix=new e2,this.projectionMatrixInverse=new e2,this.coordinateSystem=2e3}copy(e,t){return super.copy(e,t),this.matrixWorldInverse.copy(e.matrixWorldInverse),this.projectionMatrix.copy(e.projectionMatrix),this.projectionMatrixInverse.copy(e.projectionMatrixInverse),this.coordinateSystem=e.coordinateSystem,this}getWorldDirection(e){return super.getWorldDirection(e).negate()}updateMatrixWorld(e){super.updateMatrixWorld(e),this.matrixWorldInverse.copy(this.matrixWorld).invert()}updateWorldMatrix(e,t){super.updateWorldMatrix(e,t),this.matrixWorldInverse.copy(this.matrixWorld).invert()}clone(){return new this.constructor().copy(this)}}let nM=new eE,nT=new Y,nw=new Y;class nE extends nS{constructor(e=50,t=1,n=.1,i=2e3){super(),this.isPerspectiveCamera=!0,this.type="PerspectiveCamera",this.fov=e,this.zoom=1,this.near=n,this.far=i,this.focus=10,this.aspect=t,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}copy(e,t){return super.copy(e,t),this.fov=e.fov,this.zoom=e.zoom,this.near=e.near,this.far=e.far,this.focus=e.focus,this.aspect=e.aspect,this.view=null===e.view?null:Object.assign({},e.view),this.filmGauge=e.filmGauge,this.filmOffset=e.filmOffset,this}setFocalLength(e){let t=.5*this.getFilmHeight()/e;this.fov=2*k*Math.atan(t),this.updateProjectionMatrix()}getFocalLength(){let e=Math.tan(.5*B*this.fov);return .5*this.getFilmHeight()/e}getEffectiveFOV(){return 2*k*Math.atan(Math.tan(.5*B*this.fov)/this.zoom)}getFilmWidth(){return this.filmGauge*Math.min(this.aspect,1)}getFilmHeight(){return this.filmGauge/Math.max(this.aspect,1)}getViewBounds(e,t,n){nM.set(-1,-1,.5).applyMatrix4(this.projectionMatrixInverse),t.set(nM.x,nM.y).multiplyScalar(-e/nM.z),nM.set(1,1,.5).applyMatrix4(this.projectionMatrixInverse),n.set(nM.x,nM.y).multiplyScalar(-e/nM.z)}getViewSize(e,t){return this.getViewBounds(e,nT,nw),t.subVectors(nw,nT)}setViewOffset(e,t,n,i,r,a){this.aspect=e/t,null===this.view&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=e,this.view.fullHeight=t,this.view.offsetX=n,this.view.offsetY=i,this.view.width=r,this.view.height=a,this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){let e=this.near,t=e*Math.tan(.5*B*this.fov)/this.zoom,n=2*t,i=this.aspect*n,r=-.5*i,a=this.view;if(null!==this.view&&this.view.enabled){let e=a.fullWidth,s=a.fullHeight;r+=a.offsetX*i/e,t-=a.offsetY*n/s,i*=a.width/e,n*=a.height/s}let s=this.filmOffset;0!==s&&(r+=e*s/this.getFilmWidth()),this.projectionMatrix.makePerspective(r,r+i,t,t-n,e,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(e){let t=super.toJSON(e);return t.object.fov=this.fov,t.object.zoom=this.zoom,t.object.near=this.near,t.object.far=this.far,t.object.focus=this.focus,t.object.aspect=this.aspect,null!==this.view&&(t.object.view=Object.assign({},this.view)),t.object.filmGauge=this.filmGauge,t.object.filmOffset=this.filmOffset,t}}class nA extends ty{constructor(e,t,n){super(),this.type="CubeCamera",this.renderTarget=n,this.coordinateSystem=null,this.activeMipmapLevel=0;const i=new nE(-90,1,e,t);i.layers=this.layers,this.add(i);const r=new nE(-90,1,e,t);r.layers=this.layers,this.add(r);const a=new nE(-90,1,e,t);a.layers=this.layers,this.add(a);const s=new nE(-90,1,e,t);s.layers=this.layers,this.add(s);const o=new nE(-90,1,e,t);o.layers=this.layers,this.add(o);const l=new nE(-90,1,e,t);l.layers=this.layers,this.add(l)}updateCoordinateSystem(){let e=this.coordinateSystem,t=this.children.concat(),[n,i,r,a,s,o]=t;for(let e of t)this.remove(e);if(2e3===e)n.up.set(0,1,0),n.lookAt(1,0,0),i.up.set(0,1,0),i.lookAt(-1,0,0),r.up.set(0,0,-1),r.lookAt(0,1,0),a.up.set(0,0,1),a.lookAt(0,-1,0),s.up.set(0,1,0),s.lookAt(0,0,1),o.up.set(0,1,0),o.lookAt(0,0,-1);else if(2001===e)n.up.set(0,-1,0),n.lookAt(-1,0,0),i.up.set(0,-1,0),i.lookAt(1,0,0),r.up.set(0,0,1),r.lookAt(0,1,0),a.up.set(0,0,-1),a.lookAt(0,-1,0),s.up.set(0,-1,0),s.lookAt(0,0,1),o.up.set(0,-1,0),o.lookAt(0,0,-1);else throw Error("THREE.CubeCamera.updateCoordinateSystem(): Invalid coordinate system: "+e);for(let e of t)this.add(e),e.updateMatrixWorld()}update(e,t){null===this.parent&&this.updateMatrixWorld();let{renderTarget:n,activeMipmapLevel:i}=this;this.coordinateSystem!==e.coordinateSystem&&(this.coordinateSystem=e.coordinateSystem,this.updateCoordinateSystem());let[r,a,s,o,l,u]=this.children,c=e.getRenderTarget(),h=e.getActiveCubeFace(),d=e.getActiveMipmapLevel(),p=e.xr.enabled;e.xr.enabled=!1;let f=n.texture.generateMipmaps;n.texture.generateMipmaps=!1,e.setRenderTarget(n,0,i),e.render(t,r),e.setRenderTarget(n,1,i),e.render(t,a),e.setRenderTarget(n,2,i),e.render(t,s),e.setRenderTarget(n,3,i),e.render(t,o),e.setRenderTarget(n,4,i),e.render(t,l),n.texture.generateMipmaps=f,e.setRenderTarget(n,5,i),e.render(t,u),e.setRenderTarget(c,h,d),e.xr.enabled=p,n.texture.needsPMREMUpdate=!0}}class nC extends ev{constructor(e,t,n,i,r,a,s,o,l,u){super(e=void 0!==e?e:[],t=void 0!==t?t:301,n,i,r,a,s,o,l,u),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(e){this.image=e}}class nR extends ex{constructor(e=1,t={}){super(e,e,t),this.isWebGLCubeRenderTarget=!0;const n={width:e,height:e,depth:1};this.texture=new nC([n,n,n,n,n,n],t.mapping,t.wrapS,t.wrapT,t.magFilter,t.minFilter,t.format,t.type,t.anisotropy,t.colorSpace),this.texture.isRenderTargetTexture=!0,this.texture.generateMipmaps=void 0!==t.generateMipmaps&&t.generateMipmaps,this.texture.minFilter=void 0!==t.minFilter?t.minFilter:1006}fromEquirectangularTexture(e,t){this.texture.type=t.type,this.texture.colorSpace=t.colorSpace,this.texture.generateMipmaps=t.generateMipmaps,this.texture.minFilter=t.minFilter,this.texture.magFilter=t.magFilter;let n={uniforms:{tEquirect:{value:null}},vertexShader:` + + varying vec3 vWorldDirection; + + vec3 transformDirection( in vec3 dir, in mat4 matrix ) { + + return normalize( ( matrix * vec4( dir, 0.0 ) ).xyz ); + + } + + void main() { + + vWorldDirection = transformDirection( position, modelMatrix ); + + #include + #include + + } + `,fragmentShader:` + + uniform sampler2D tEquirect; + + varying vec3 vWorldDirection; + + #include + + void main() { + + vec3 direction = normalize( vWorldDirection ); + + vec2 sampleUV = equirectUv( direction ); + + gl_FragColor = texture2D( tEquirect, sampleUV ); + + } + `},i=new ng(5,5,5),r=new nb({name:"CubemapFromEquirect",uniforms:nv(n.uniforms),vertexShader:n.vertexShader,fragmentShader:n.fragmentShader,side:1,blending:0});r.uniforms.tEquirect.value=t;let a=new nf(i,r),s=t.minFilter;return 1008===t.minFilter&&(t.minFilter=1006),new nA(1,10,this).update(e,a),t.minFilter=s,a.geometry.dispose(),a.material.dispose(),this}clear(e,t,n,i){let r=e.getRenderTarget();for(let r=0;r<6;r++)e.setRenderTarget(this,r),e.clear(t,n,i);e.setRenderTarget(r)}}class nP{constructor(e,t=25e-5){this.isFogExp2=!0,this.name="",this.color=new tz(e),this.density=t}clone(){return new nP(this.color,this.density)}toJSON(){return{type:"FogExp2",name:this.name,color:this.color.getHex(),density:this.density}}}class nI{constructor(e,t=1,n=1e3){this.isFog=!0,this.name="",this.color=new tz(e),this.near=t,this.far=n}clone(){return new nI(this.color,this.near,this.far)}toJSON(){return{type:"Fog",name:this.name,color:this.color.getHex(),near:this.near,far:this.far}}}class nL extends ty{constructor(){super(),this.isScene=!0,this.type="Scene",this.background=null,this.environment=null,this.fog=null,this.backgroundBlurriness=0,this.backgroundIntensity=1,this.backgroundRotation=new tn,this.environmentIntensity=1,this.environmentRotation=new tn,this.overrideMaterial=null,"u">typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}copy(e,t){return super.copy(e,t),null!==e.background&&(this.background=e.background.clone()),null!==e.environment&&(this.environment=e.environment.clone()),null!==e.fog&&(this.fog=e.fog.clone()),this.backgroundBlurriness=e.backgroundBlurriness,this.backgroundIntensity=e.backgroundIntensity,this.backgroundRotation.copy(e.backgroundRotation),this.environmentIntensity=e.environmentIntensity,this.environmentRotation.copy(e.environmentRotation),null!==e.overrideMaterial&&(this.overrideMaterial=e.overrideMaterial.clone()),this.matrixAutoUpdate=e.matrixAutoUpdate,this}toJSON(e){let t=super.toJSON(e);return null!==this.fog&&(t.object.fog=this.fog.toJSON()),this.backgroundBlurriness>0&&(t.object.backgroundBlurriness=this.backgroundBlurriness),1!==this.backgroundIntensity&&(t.object.backgroundIntensity=this.backgroundIntensity),t.object.backgroundRotation=this.backgroundRotation.toArray(),1!==this.environmentIntensity&&(t.object.environmentIntensity=this.environmentIntensity),t.object.environmentRotation=this.environmentRotation.toArray(),t}}class nN{constructor(e,t){this.isInterleavedBuffer=!0,this.array=e,this.stride=t,this.count=void 0!==e?e.length/t:0,this.usage=35044,this.updateRanges=[],this.version=0,this.uuid=H()}onUploadCallback(){}set needsUpdate(e){!0===e&&this.version++}setUsage(e){return this.usage=e,this}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}copy(e){return this.array=new e.array.constructor(e.array),this.count=e.count,this.stride=e.stride,this.usage=e.usage,this}copyAt(e,t,n){e*=this.stride,n*=t.stride;for(let i=0,r=this.stride;ie.far||t.push({distance:o,point:nF.clone(),uv:tN.getInterpolation(nF,nG,nW,nj,nX,nq,nY,new Y),face:null,object:this})}copy(e,t){return super.copy(e,t),void 0!==e.center&&this.center.copy(e.center),this.material=e.material,this}}function nJ(e,t,n,i,r,a){nk.subVectors(e,n).addScalar(.5).multiply(i),void 0!==r?(nH.x=a*nk.x-r*nk.y,nH.y=r*nk.x+a*nk.y):nH.copy(nk),e.copy(t),e.x+=nH.x,e.y+=nH.y,e.applyMatrix4(nV)}let nK=new eE,n$=new eE;class nQ extends ty{constructor(){super(),this._currentLevel=0,this.type="LOD",Object.defineProperties(this,{levels:{enumerable:!0,value:[]},isLOD:{value:!0}}),this.autoUpdate=!0}copy(e){super.copy(e,!1);let t=e.levels;for(let e=0,n=t.length;e0){let n,i;for(n=1,i=t.length;n0){nK.setFromMatrixPosition(this.matrixWorld);let n=e.ray.origin.distanceTo(nK);this.getObjectForDistance(n).raycast(e,t)}}update(e){let t=this.levels;if(t.length>1){let n,i;nK.setFromMatrixPosition(e.matrixWorld),n$.setFromMatrixPosition(this.matrixWorld);let r=nK.distanceTo(n$)/e.zoom;for(n=1,t[0].object.visible=!0,i=t.length;n=e)t[n-1].object.visible=!1,t[n].object.visible=!0;else break}for(this._currentLevel=n-1;n1?null:t.copy(e.start).addScaledVector(n,r)}intersectsLine(e){let t=this.distanceToPoint(e.start),n=this.distanceToPoint(e.end);return t<0&&n>0||n<0&&t>0}intersectsBox(e){return e.intersectsPlane(this)}intersectsSphere(e){return e.intersectsPlane(this)}coplanarPoint(e){return e.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(e,t){let n=t||i_.getNormalMatrix(e),i=this.coplanarPoint(ig).applyMatrix4(e),r=this.normal.applyMatrix3(n).normalize();return this.constant=-i.dot(r),this}translate(e){return this.constant-=e.dot(this.normal),this}equals(e){return e.normal.equals(this.normal)&&e.constant===this.constant}clone(){return new this.constructor().copy(this)}}let ix=new eq,ib=new eE;class iS{constructor(e=new iy,t=new iy,n=new iy,i=new iy,r=new iy,a=new iy){this.planes=[e,t,n,i,r,a]}set(e,t,n,i,r,a){let s=this.planes;return s[0].copy(e),s[1].copy(t),s[2].copy(n),s[3].copy(i),s[4].copy(r),s[5].copy(a),this}copy(e){let t=this.planes;for(let n=0;n<6;n++)t[n].copy(e.planes[n]);return this}setFromProjectionMatrix(e,t=2e3){let n=this.planes,i=e.elements,r=i[0],a=i[1],s=i[2],o=i[3],l=i[4],u=i[5],c=i[6],h=i[7],d=i[8],p=i[9],f=i[10],m=i[11],g=i[12],v=i[13],_=i[14],y=i[15];if(n[0].setComponents(o-r,h-l,m-d,y-g).normalize(),n[1].setComponents(o+r,h+l,m+d,y+g).normalize(),n[2].setComponents(o+a,h+u,m+p,y+v).normalize(),n[3].setComponents(o-a,h-u,m-p,y-v).normalize(),n[4].setComponents(o-s,h-c,m-f,y-_).normalize(),2e3===t)n[5].setComponents(o+s,h+c,m+f,y+_).normalize();else if(2001===t)n[5].setComponents(s,c,f,_).normalize();else throw Error("THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: "+t);return this}intersectsObject(e){if(void 0!==e.boundingSphere)null===e.boundingSphere&&e.computeBoundingSphere(),ix.copy(e.boundingSphere).applyMatrix4(e.matrixWorld);else{let t=e.geometry;null===t.boundingSphere&&t.computeBoundingSphere(),ix.copy(t.boundingSphere).applyMatrix4(e.matrixWorld)}return this.intersectsSphere(ix)}intersectsSprite(e){return ix.center.set(0,0,0),ix.radius=.7071067811865476,ix.applyMatrix4(e.matrixWorld),this.intersectsSphere(ix)}intersectsSphere(e){let t=this.planes,n=e.center,i=-e.radius;for(let e=0;e<6;e++)if(t[e].distanceToPoint(n)0?e.max.x:e.min.x,ib.y=i.normal.y>0?e.max.y:e.min.y,ib.z=i.normal.z>0?e.max.z:e.min.z,0>i.distanceToPoint(ib))return!1}return!0}containsPoint(e){let t=this.planes;for(let n=0;n<6;n++)if(0>t[n].distanceToPoint(e))return!1;return!0}clone(){return new this.constructor().copy(this)}}function iM(e,t){return e-t}function iT(e,t){return e.z-t.z}function iw(e,t){return t.z-e.z}let iE=new e2,iA=new tz(1,1,1),iC=new iS,iR=new eR,iP=new eq,iI=new eE,iL=new eE,iN=new eE,iU=new class{constructor(){this.index=0,this.pool=[],this.list=[]}push(e,t,n,i){let r=this.pool,a=this.list;this.index>=r.length&&r.push({start:-1,count:-1,z:-1,index:-1});let s=r[this.index];a.push(s),this.index++,s.start=e,s.count=t,s.z=n,s.index=i}reset(){this.list.length=0,this.index=0}},iD=new nf,iO=[];function iF(e,t){if(e.constructor!==t.constructor){let n=Math.min(e.length,t.length);for(let i=0;i65535?new Uint32Array(i):new Uint16Array(i);t.setIndex(new tZ(e,1))}this._geometryInitialized=!0}}_validateGeometry(e){let t=this.geometry;if(!!e.getIndex()!=!!t.getIndex())throw Error('THREE.BatchedMesh: All geometries must consistently have "index".');for(let n in t.attributes){if(!e.hasAttribute(n))throw Error(`THREE.BatchedMesh: Added geometry missing "${n}". All geometries must have consistent attributes.`);let i=e.getAttribute(n),r=t.getAttribute(n);if(i.itemSize!==r.itemSize||i.normalized!==r.normalized)throw Error("THREE.BatchedMesh: All attributes must have a consistent itemSize and normalized value.")}}validateInstanceId(e){let t=this._instanceInfo;if(e<0||e>=t.length||!1===t[e].active)throw Error(`THREE.BatchedMesh: Invalid instanceId ${e}. Instance is either out of range or has been deleted.`)}validateGeometryId(e){let t=this._geometryInfo;if(e<0||e>=t.length||!1===t[e].active)throw Error(`THREE.BatchedMesh: Invalid geometryId ${e}. Geometry is either out of range or has been deleted.`)}setCustomSort(e){return this.customSort=e,this}computeBoundingBox(){null===this.boundingBox&&(this.boundingBox=new eR);let e=this.boundingBox,t=this._instanceInfo;e.makeEmpty();for(let n=0,i=t.length;n=this.maxInstanceCount&&0===this._availableInstanceIds.length)throw Error("THREE.BatchedMesh: Maximum item count reached.");let t={visible:!0,active:!0,geometryIndex:e},n=null;this._availableInstanceIds.length>0?(this._availableInstanceIds.sort(iM),n=this._availableInstanceIds.shift(),this._instanceInfo[n]=t):(n=this._instanceInfo.length,this._instanceInfo.push(t));let i=this._matricesTexture;iE.identity().toArray(i.image.data,16*n),i.needsUpdate=!0;let r=this._colorsTexture;return r&&(iA.toArray(r.image.data,4*n),r.needsUpdate=!0),this._visibilityChanged=!0,n}addGeometry(e,t=-1,n=-1){let i;this._initializeGeometry(e),this._validateGeometry(e);let r={vertexStart:-1,vertexCount:-1,reservedVertexCount:-1,indexStart:-1,indexCount:-1,reservedIndexCount:-1,start:-1,count:-1,boundingBox:null,boundingSphere:null,active:!0},a=this._geometryInfo;r.vertexStart=this._nextVertexStart,r.reservedVertexCount=-1===t?e.getAttribute("position").count:t;let s=e.getIndex();if(null!==s&&(r.indexStart=this._nextIndexStart,r.reservedIndexCount=-1===n?s.count:n),-1!==r.indexStart&&r.indexStart+r.reservedIndexCount>this._maxIndexCount||r.vertexStart+r.reservedVertexCount>this._maxVertexCount)throw Error("THREE.BatchedMesh: Reserved space request exceeds the maximum buffer size.");return this._availableGeometryIds.length>0?(this._availableGeometryIds.sort(iM),a[i=this._availableGeometryIds.shift()]=r):(i=this._geometryCount,this._geometryCount++,a.push(r)),this.setGeometryAt(i,e),this._nextIndexStart=r.indexStart+r.reservedIndexCount,this._nextVertexStart=r.vertexStart+r.reservedVertexCount,i}setGeometryAt(e,t){if(e>=this._geometryCount)throw Error("THREE.BatchedMesh: Maximum geometry count reached.");this._validateGeometry(t);let n=this.geometry,i=null!==n.getIndex(),r=n.getIndex(),a=t.getIndex(),s=this._geometryInfo[e];if(i&&a.count>s.reservedIndexCount||t.attributes.position.count>s.reservedVertexCount)throw Error("THREE.BatchedMesh: Reserved space not large enough for provided geometry.");let o=s.vertexStart,l=s.reservedVertexCount;for(let e in s.vertexCount=t.getAttribute("position").count,n.attributes){let i=t.getAttribute(e),r=n.getAttribute(e);!function(e,t,n=0){let i=t.itemSize;if(e.isInterleavedBufferAttribute||e.array.constructor!==t.array.constructor){let r=e.count;for(let a=0;a=t.length||!1===t[e].active)return this;let n=this._instanceInfo;for(let t=0,i=n.length;tt).sort((e,t)=>n[e].vertexStart-n[t].vertexStart),r=this.geometry;for(let a=0,s=n.length;a=this._geometryCount)return null;let n=this.geometry,i=this._geometryInfo[e];if(null===i.boundingBox){let e=new eR,t=n.index,r=n.attributes.position;for(let n=i.start,a=i.start+i.count;n=this._geometryCount)return null;let n=this.geometry,i=this._geometryInfo[e];if(null===i.boundingSphere){let t=new eq;this.getBoundingBoxAt(e,iR),iR.getCenter(t.center);let r=n.index,a=n.attributes.position,s=0;for(let e=i.start,n=i.start+i.count;ee.active);if(Math.max(...n.map(e=>e.vertexStart+e.reservedVertexCount))>e)throw Error(`BatchedMesh: Geometry vertex values are being used outside the range ${t}. Cannot shrink further.`);if(this.geometry.index&&Math.max(...n.map(e=>e.indexStart+e.reservedIndexCount))>t)throw Error(`BatchedMesh: Geometry index values are being used outside the range ${t}. Cannot shrink further.`);let i=this.geometry;i.dispose(),this._maxVertexCount=e,this._maxIndexCount=t,this._geometryInitialized&&(this._geometryInitialized=!1,this.geometry=new nn,this._initializeGeometry(i));let r=this.geometry;for(let e in i.index&&iF(i.index.array,r.index.array),i.attributes)iF(i.attributes[e].array,r.attributes[e].array)}raycast(e,t){let n=this._instanceInfo,i=this._geometryInfo,r=this.matrixWorld,a=this.geometry;iD.material=this.material,iD.geometry.index=a.index,iD.geometry.attributes=a.attributes,null===iD.geometry.boundingBox&&(iD.geometry.boundingBox=new eR),null===iD.geometry.boundingSphere&&(iD.geometry.boundingSphere=new eq);for(let a=0,s=n.length;a({...e,boundingBox:null!==e.boundingBox?e.boundingBox.clone():null,boundingSphere:null!==e.boundingSphere?e.boundingSphere.clone():null})),this._instanceInfo=e._instanceInfo.map(e=>({...e})),this._maxInstanceCount=e._maxInstanceCount,this._maxVertexCount=e._maxVertexCount,this._maxIndexCount=e._maxIndexCount,this._geometryInitialized=e._geometryInitialized,this._geometryCount=e._geometryCount,this._multiDrawCounts=e._multiDrawCounts.slice(),this._multiDrawStarts=e._multiDrawStarts.slice(),this._matricesTexture=e._matricesTexture.clone(),this._matricesTexture.image.data=this._matricesTexture.image.data.slice(),null!==this._colorsTexture&&(this._colorsTexture=e._colorsTexture.clone(),this._colorsTexture.image.data=this._colorsTexture.image.data.slice()),this}dispose(){return this.geometry.dispose(),this._matricesTexture.dispose(),this._matricesTexture=null,this._indirectTexture.dispose(),this._indirectTexture=null,null!==this._colorsTexture&&(this._colorsTexture.dispose(),this._colorsTexture=null),this}onBeforeRender(e,t,n,i,r){if(!this._visibilityChanged&&!this.perObjectFrustumCulled&&!this.sortObjects)return;let a=i.getIndex(),s=null===a?1:a.array.BYTES_PER_ELEMENT,o=this._instanceInfo,l=this._multiDrawStarts,u=this._multiDrawCounts,c=this._geometryInfo,h=this.perObjectFrustumCulled,d=this._indirectTexture,p=d.image.data;h&&(iE.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse).multiply(this.matrixWorld),iC.setFromProjectionMatrix(iE,e.coordinateSystem));let f=0;if(this.sortObjects){iE.copy(this.matrixWorld).invert(),iI.setFromMatrixPosition(n.matrixWorld).applyMatrix4(iE),iL.set(0,0,-1).transformDirection(n.matrixWorld).transformDirection(iE);for(let e=0,t=o.length;e0){let n=e[t[0]];if(void 0!==n){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;ei)return;ij.applyMatrix4(e.matrixWorld);let o=t.ray.origin.distanceTo(ij);if(!(ot.far))return{distance:o,point:iX.clone().applyMatrix4(e.matrixWorld),index:r,face:null,faceIndex:null,barycoord:null,object:e}}let iZ=new eE,iJ=new eE;class iK extends iq{constructor(e,t){super(e,t),this.isLineSegments=!0,this.type="LineSegments"}computeLineDistances(){let e=this.geometry;if(null===e.index){let t=e.attributes.position,n=[];for(let e=0,i=t.count;e0){let n=e[t[0]];if(void 0!==n){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;er.far)return;a.push({distance:l,distanceToRay:Math.sqrt(o),point:n,index:t,face:null,faceIndex:null,barycoord:null,object:s})}}class i6 extends ty{constructor(){super(),this.isGroup=!0,this.type="Group"}}class i8 extends ev{constructor(e,t,n,i,r,a,s,o,l){super(e,t,n,i,r,a,s,o,l),this.isVideoTexture=!0,this.minFilter=void 0!==a?a:1006,this.magFilter=void 0!==r?r:1006,this.generateMipmaps=!1;const u=this;"requestVideoFrameCallback"in e&&e.requestVideoFrameCallback(function t(){u.needsUpdate=!0,e.requestVideoFrameCallback(t)})}clone(){return new this.constructor(this.image).copy(this)}update(){let e=this.image;!1=="requestVideoFrameCallback"in e&&e.readyState>=e.HAVE_CURRENT_DATA&&(this.needsUpdate=!0)}}class i9 extends ev{constructor(e,t){super({width:e,height:t}),this.isFramebufferTexture=!0,this.magFilter=1003,this.minFilter=1003,this.generateMipmaps=!1,this.needsUpdate=!0}}class i7 extends ev{constructor(e,t,n,i,r,a,s,o,l,u,c,h){super(null,a,s,o,l,u,i,r,c,h),this.isCompressedTexture=!0,this.image={width:t,height:n},this.mipmaps=e,this.flipY=!1,this.generateMipmaps=!1}}class re extends i7{constructor(e,t,n,i,r,a){super(e,t,n,r,a),this.isCompressedArrayTexture=!0,this.image.depth=i,this.wrapR=1001,this.layerUpdates=new Set}addLayerUpdate(e){this.layerUpdates.add(e)}clearLayerUpdates(){this.layerUpdates.clear()}}class rt extends i7{constructor(e,t,n){super(void 0,e[0].width,e[0].height,t,n,301),this.isCompressedCubeTexture=!0,this.isCubeTexture=!0,this.image=e}}class rn extends ev{constructor(e,t,n,i,r,a,s,o,l){super(e,t,n,i,r,a,s,o,l),this.isCanvasTexture=!0,this.needsUpdate=!0}}class ri extends ev{constructor(e,t,n,i,r,a,s,o,l,u=1026){if(1026!==u&&1027!==u)throw Error("DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat");void 0===n&&1026===u&&(n=1014),void 0===n&&1027===u&&(n=1020),super(null,i,r,a,s,o,u,n,l),this.isDepthTexture=!0,this.image={width:e,height:t},this.magFilter=void 0!==s?s:1003,this.minFilter=void 0!==o?o:1003,this.flipY=!1,this.generateMipmaps=!1,this.compareFunction=null}copy(e){return super.copy(e),this.compareFunction=e.compareFunction,this}toJSON(e){let t=super.toJSON(e);return null!==this.compareFunction&&(t.compareFunction=this.compareFunction),t}}class rr{constructor(){this.type="Curve",this.arcLengthDivisions=200}getPoint(){return console.warn("THREE.Curve: .getPoint() not implemented."),null}getPointAt(e,t){let n=this.getUtoTmapping(e);return this.getPoint(n,t)}getPoints(e=5){let t=[];for(let n=0;n<=e;n++)t.push(this.getPoint(n/e));return t}getSpacedPoints(e=5){let t=[];for(let n=0;n<=e;n++)t.push(this.getPointAt(n/e));return t}getLength(){let e=this.getLengths();return e[e.length-1]}getLengths(e=this.arcLengthDivisions){if(this.cacheArcLengths&&this.cacheArcLengths.length===e+1&&!this.needsUpdate)return this.cacheArcLengths;this.needsUpdate=!1;let t=[],n,i=this.getPoint(0),r=0;t.push(0);for(let a=1;a<=e;a++)t.push(r+=(n=this.getPoint(a/e)).distanceTo(i)),i=n;return this.cacheArcLengths=t,t}updateArcLengths(){this.needsUpdate=!0,this.getLengths()}getUtoTmapping(e,t){let n,i=this.getLengths(),r=0,a=i.length;n=t||e*i[a-1];let s=0,o=a-1,l;for(;s<=o;)if((l=i[r=Math.floor(s+(o-s)/2)]-n)<0)s=r+1;else if(l>0)o=r-1;else{o=r;break}if(i[r=o]===n)return r/(a-1);let u=i[r],c=i[r+1];return(r+(n-u)/(c-u))/(a-1)}getTangent(e,t){let n=e-1e-4,i=e+1e-4;n<0&&(n=0),i>1&&(i=1);let r=this.getPoint(n),a=this.getPoint(i),s=t||(r.isVector2?new Y:new eE);return s.copy(a).sub(r).normalize(),s}getTangentAt(e,t){let n=this.getUtoTmapping(e);return this.getTangent(n,t)}computeFrenetFrames(e,t){let n=new eE,i=[],r=[],a=[],s=new eE,o=new e2;for(let t=0;t<=e;t++){let n=t/e;i[t]=this.getTangentAt(n,new eE)}r[0]=new eE,a[0]=new eE;let l=Number.MAX_VALUE,u=Math.abs(i[0].x),c=Math.abs(i[0].y),h=Math.abs(i[0].z);u<=l&&(l=u,n.set(1,0,0)),c<=l&&(l=c,n.set(0,1,0)),h<=l&&n.set(0,0,1),s.crossVectors(i[0],n).normalize(),r[0].crossVectors(i[0],s),a[0].crossVectors(i[0],r[0]);for(let t=1;t<=e;t++){if(r[t]=r[t-1].clone(),a[t]=a[t-1].clone(),s.crossVectors(i[t-1],i[t]),s.length()>Number.EPSILON){s.normalize();let e=Math.acos(V(i[t-1].dot(i[t]),-1,1));r[t].applyMatrix4(o.makeRotationAxis(s,e))}a[t].crossVectors(i[t],r[t])}if(!0===t){let t=Math.acos(V(r[0].dot(r[e]),-1,1));t/=e,i[0].dot(s.crossVectors(r[0],r[e]))>0&&(t=-t);for(let n=1;n<=e;n++)r[n].applyMatrix4(o.makeRotationAxis(i[n],t*n)),a[n].crossVectors(i[n],r[n])}return{tangents:i,normals:r,binormals:a}}clone(){return new this.constructor().copy(this)}copy(e){return this.arcLengthDivisions=e.arcLengthDivisions,this}toJSON(){let e={metadata:{version:4.6,type:"Curve",generator:"Curve.toJSON"}};return e.arcLengthDivisions=this.arcLengthDivisions,e.type=this.type,e}fromJSON(e){return this.arcLengthDivisions=e.arcLengthDivisions,this}}class ra extends rr{constructor(e=0,t=0,n=1,i=1,r=0,a=2*Math.PI,s=!1,o=0){super(),this.isEllipseCurve=!0,this.type="EllipseCurve",this.aX=e,this.aY=t,this.xRadius=n,this.yRadius=i,this.aStartAngle=r,this.aEndAngle=a,this.aClockwise=s,this.aRotation=o}getPoint(e,t=new Y){let n=2*Math.PI,i=this.aEndAngle-this.aStartAngle,r=Math.abs(i)n;)i-=n;i0?0:(Math.floor(Math.abs(o)/a)+1)*a:0===l&&o===a-1&&(o=a-2,l=1),this.closed||o>0?n=r[(o-1)%a]:(rl.subVectors(r[0],r[1]).add(r[0]),n=rl);let u=r[o%a],c=r[(o+1)%a];if(this.closed||o+2n.length-2?n.length-1:r+1],u=n[r>n.length-3?n.length-1:r+2];return t.set(rp(a,s.x,o.x,l.x,u.x),rp(a,s.y,o.y,l.y,u.y)),t}copy(e){super.copy(e),this.points=[];for(let t=0,n=e.points.length;t=n){let e=i[r]-n,a=this.curves[r],s=a.getLength(),o=0===s?0:1-e/s;return a.getPointAt(o,t)}r++}return null}getLength(){let e=this.getCurveLengths();return e[e.length-1]}updateArcLengths(){this.needsUpdate=!0,this.cacheLengths=null,this.getCurveLengths()}getCurveLengths(){if(this.cacheLengths&&this.cacheLengths.length===this.curves.length)return this.cacheLengths;let e=[],t=0;for(let n=0,i=this.curves.length;n1&&!n[n.length-1].equals(n[0])&&n.push(n[0]),n}copy(e){super.copy(e),this.curves=[];for(let t=0,n=e.curves.length;t0){let e=l.getPoint(0);e.equals(this.currentPoint)||this.lineTo(e.x,e.y)}this.curves.push(l);let u=l.getPoint(1);return this.currentPoint.copy(u),this}copy(e){return super.copy(e),this.currentPoint.copy(e.currentPoint),this}toJSON(){let e=super.toJSON();return e.currentPoint=this.currentPoint.toArray(),e}fromJSON(e){return super.fromJSON(e),this.currentPoint.fromArray(e.currentPoint),this}}class rE extends nn{constructor(e=[new Y(0,-.5),new Y(.5,0),new Y(0,.5)],t=12,n=0,i=2*Math.PI){super(),this.type="LatheGeometry",this.parameters={points:e,segments:t,phiStart:n,phiLength:i},t=Math.floor(t),i=V(i,0,2*Math.PI);const r=[],a=[],s=[],o=[],l=[],u=1/t,c=new eE,h=new Y,d=new eE,p=new eE,f=new eE;let m=0,g=0;for(let t=0;t<=e.length-1;t++)switch(t){case 0:m=e[t+1].x-e[t].x,d.x=+(g=e[t+1].y-e[t].y),d.y=-m,d.z=0*g,f.copy(d),d.normalize(),o.push(d.x,d.y,d.z);break;case e.length-1:o.push(f.x,f.y,f.z);break;default:m=e[t+1].x-e[t].x,d.x=+(g=e[t+1].y-e[t].y),d.y=-m,d.z=0*g,p.copy(d),d.x+=f.x,d.y+=f.y,d.z+=f.z,d.normalize(),o.push(d.x,d.y,d.z),f.copy(p)}for(let r=0;r<=t;r++){const d=n+r*u*i,p=Math.sin(d),f=Math.cos(d);for(let n=0;n<=e.length-1;n++){c.x=e[n].x*p,c.y=e[n].y,c.z=e[n].x*f,a.push(c.x,c.y,c.z),h.x=r/t,h.y=n/(e.length-1),s.push(h.x,h.y);const i=o[3*n+0]*p,u=o[3*n+1],d=o[3*n+0]*f;l.push(i,u,d)}}for(let n=0;n0||0!==i)&&(u.push(a,s,l),_+=3),(t>0||i!==r-1)&&(u.push(s,o,l),_+=3)}l.addGroup(g,_,0),g+=_})(),!1===a&&(e>0&&v(!0),t>0&&v(!1)),this.setIndex(u),this.setAttribute("position",new t4(c,3)),this.setAttribute("normal",new t4(h,3)),this.setAttribute("uv",new t4(d,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new rR(e.radiusTop,e.radiusBottom,e.height,e.radialSegments,e.heightSegments,e.openEnded,e.thetaStart,e.thetaLength)}}class rP extends rR{constructor(e=1,t=1,n=32,i=1,r=!1,a=0,s=2*Math.PI){super(0,e,t,n,i,r,a,s),this.type="ConeGeometry",this.parameters={radius:e,height:t,radialSegments:n,heightSegments:i,openEnded:r,thetaStart:a,thetaLength:s}}static fromJSON(e){return new rP(e.radius,e.height,e.radialSegments,e.heightSegments,e.openEnded,e.thetaStart,e.thetaLength)}}class rI extends nn{constructor(e=[],t=[],n=1,i=0){super(),this.type="PolyhedronGeometry",this.parameters={vertices:e,indices:t,radius:n,detail:i};const r=[],a=[];function s(e){r.push(e.x,e.y,e.z)}function o(t,n){let i=3*t;n.x=e[i+0],n.y=e[i+1],n.z=e[i+2]}function l(e,t,n,i){i<0&&1===e.x&&(a[t]=e.x-1),0===n.x&&0===n.z&&(a[t]=i/2/Math.PI+.5)}function u(e){return Math.atan2(e.z,-e.x)}(function(e){let n=new eE,i=new eE,r=new eE;for(let a=0;a.9&&s<.1&&(t<.2&&(a[e+0]+=1),n<.2&&(a[e+2]+=1),i<.2&&(a[e+4]+=1))}}()}(),this.setAttribute("position",new t4(r,3)),this.setAttribute("normal",new t4(r.slice(),3)),this.setAttribute("uv",new t4(a,2)),0===i?this.computeVertexNormals():this.normalizeNormals()}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new rI(e.vertices,e.indices,e.radius,e.details)}}class rL extends rI{constructor(e=1,t=0){const n=(1+Math.sqrt(5))/2,i=1/n;super([-1,-1,-1,-1,-1,1,-1,1,-1,-1,1,1,1,-1,-1,1,-1,1,1,1,-1,1,1,1,0,-i,-n,0,-i,n,0,i,-n,0,i,n,-i,-n,0,-i,n,0,i,-n,0,i,n,0,-n,0,-i,n,0,-i,-n,0,i,n,0,i],[3,11,7,3,7,15,3,15,13,7,19,17,7,17,6,7,6,15,17,4,8,17,8,10,17,10,6,8,0,16,8,16,2,8,2,10,0,12,1,0,1,18,0,18,16,6,10,2,6,2,13,6,13,15,2,16,18,2,18,3,2,3,13,18,1,9,18,9,11,18,11,3,4,14,12,4,12,0,4,0,8,11,9,5,11,5,19,11,19,7,19,5,14,19,14,4,19,4,17,1,12,14,1,14,5,1,5,9],e,t),this.type="DodecahedronGeometry",this.parameters={radius:e,detail:t}}static fromJSON(e){return new rL(e.radius,e.detail)}}let rN=new eE,rU=new eE,rD=new eE,rO=new tN;class rF extends nn{constructor(e=null,t=1){if(super(),this.type="EdgesGeometry",this.parameters={geometry:e,thresholdAngle:t},null!==e){const n=Math.cos(B*t),i=e.getIndex(),r=e.getAttribute("position"),a=i?i.count:r.count,s=[0,0,0],o=["a","b","c"],l=[,,,],u={},c=[];for(let e=0;e=n.next.y&&n.next.y!==n.y){let e=n.x+(s-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(e<=a&&e>i&&(i=e,r=n.x=n.x&&n.x>=l&&a!==n.x&&rW(sr.x||n.x===r.x&&(d=r,p=n,0>rj(d.prev,d,p.prev)&&0>rj(p.next,d,d.next))))&&(r=n,c=h)),n=n.next}while(n!==o)return r}(e,t);if(!n)return t;let i=rK(n,e);return rH(i,i.next),rH(n,n.next)}(u[r],n);return n}(e,t,d,n)),e.length>80*n){i=a=e[0],r=s=e[1];for(let t=n;ta&&(a=o),l>s&&(s=l);u=0!==(u=Math.max(a-i,s-r))?32767/u:0}return function e(t,n,i,r,a,s,o){if(!t)return;!o&&s&&function(e,t,n,i){let r=e;do 0===r.z&&(r.z=rG(r.x,r.y,t,n,i)),r.prevZ=r.prev,r.nextZ=r.next,r=r.next;while(r!==e)r.prevZ.nextZ=null,r.prevZ=null,function(e){let t,n,i,r,a,s,o,l,u=1;do{for(n=e,e=null,a=null,s=0;n;){for(s++,i=n,o=0,t=0;t0||l>0&&i;)0!==o&&(0===l||!i||n.z<=i.z)?(r=n,n=n.nextZ,o--):(r=i,i=i.nextZ,l--),a?a.nextZ=r:e=r,r.prevZ=a,a=r;n=i}a.nextZ=null,u*=2}while(s>1)}(r)}(t,r,a,s);let l=t,u,c;for(;t.prev!==t.next;){if(u=t.prev,c=t.next,s?function(e,t,n,i){let r=e.prev,a=e.next;if(rj(r,e,a)>=0)return!1;let s=r.x,o=e.x,l=a.x,u=r.y,c=e.y,h=a.y,d=so?s>l?s:l:o>l?o:l,m=u>c?u>h?u:h:c>h?c:h,g=rG(d,p,t,n,i),v=rG(f,m,t,n,i),_=e.prevZ,y=e.nextZ;for(;_&&_.z>=g&&y&&y.z<=v;){if(_.x>=d&&_.x<=f&&_.y>=p&&_.y<=m&&_!==r&&_!==a&&rW(s,u,o,c,l,h,_.x,_.y)&&rj(_.prev,_,_.next)>=0||(_=_.prevZ,y.x>=d&&y.x<=f&&y.y>=p&&y.y<=m&&y!==r&&y!==a&&rW(s,u,o,c,l,h,y.x,y.y)&&rj(y.prev,y,y.next)>=0))return!1;y=y.nextZ}for(;_&&_.z>=g;){if(_.x>=d&&_.x<=f&&_.y>=p&&_.y<=m&&_!==r&&_!==a&&rW(s,u,o,c,l,h,_.x,_.y)&&rj(_.prev,_,_.next)>=0)return!1;_=_.prevZ}for(;y&&y.z<=v;){if(y.x>=d&&y.x<=f&&y.y>=p&&y.y<=m&&y!==r&&y!==a&&rW(s,u,o,c,l,h,y.x,y.y)&&rj(y.prev,y,y.next)>=0)return!1;y=y.nextZ}return!0}(t,r,a,s):function(e){let t=e.prev,n=e.next;if(rj(t,e,n)>=0)return!1;let i=t.x,r=e.x,a=n.x,s=t.y,o=e.y,l=n.y,u=ir?i>a?i:a:r>a?r:a,d=s>o?s>l?s:l:o>l?o:l,p=n.next;for(;p!==t;){if(p.x>=u&&p.x<=h&&p.y>=c&&p.y<=d&&rW(i,s,r,o,a,l,p.x,p.y)&&rj(p.prev,p,p.next)>=0)return!1;p=p.next}return!0}(t)){n.push(u.i/i|0),n.push(t.i/i|0),n.push(c.i/i|0),rQ(t),t=c.next,l=c.next;continue}if((t=c)===l){o?1===o?e(t=function(e,t,n){let i=e;do{let r=i.prev,a=i.next.next;!rX(r,a)&&rq(r,i,i.next,a)&&rJ(r,a)&&rJ(a,r)&&(t.push(r.i/n|0),t.push(i.i/n|0),t.push(a.i/n|0),rQ(i),rQ(i.next),i=e=a),i=i.next}while(i!==e)return rH(i)}(rH(t),n,i),n,i,r,a,s,2):2===o&&function(t,n,i,r,a,s){let o=t;do{let t=o.next.next;for(;t!==o.prev;){var l,u;if(o.i!==t.i&&(l=o,u=t,l.next.i!==u.i&&l.prev.i!==u.i&&!function(e,t){let n=e;do{if(n.i!==e.i&&n.next.i!==e.i&&n.i!==t.i&&n.next.i!==t.i&&rq(n,n.next,e,t))return!0;n=n.next}while(n!==e)return!1}(l,u)&&(rJ(l,u)&&rJ(u,l)&&function(e,t){let n=e,i=!1,r=(e.x+t.x)/2,a=(e.y+t.y)/2;do n.y>a!=n.next.y>a&&n.next.y!==n.y&&r<(n.next.x-n.x)*(a-n.y)/(n.next.y-n.y)+n.x&&(i=!i),n=n.next;while(n!==e)return i}(l,u)&&(rj(l.prev,l,u.prev)||rj(l,u.prev,u))||rX(l,u)&&rj(l.prev,l,l.next)>0&&rj(u.prev,u,u.next)>0))){let l=rK(o,t);o=rH(o,o.next),l=rH(l,l.next),e(o,n,i,r,a,s,0),e(l,n,i,r,a,s,0);return}t=t.next}o=o.next}while(o!==t)}(t,n,i,r,a,s):e(rH(t),n,i,r,a,s,1);break}}}(d,p,n,i,r,u,0),p};function rk(e,t,n,i,r){let a,s;if(r===function(e,t,n,i){let r=0;for(let a=t,s=n-i;a0)for(a=t;a=t;a-=i)s=r$(a,e[a],e[a+1],s);return s&&rX(s,s.next)&&(rQ(s),s=s.next),s}function rH(e,t){if(!e)return e;t||(t=e);let n=e,i;do if(i=!1,!n.steiner&&(rX(n,n.next)||0===rj(n.prev,n,n.next))){if(rQ(n),(n=t=n.prev)===n.next)break;i=!0}else n=n.next;while(i||n!==t)return t}function rV(e,t){return e.x-t.x}function rG(e,t,n,i,r){return(e=((e=((e=((e=((e=(e-n)*r|0)|e<<8)&0xff00ff)|e<<4)&0xf0f0f0f)|e<<2)&0x33333333)|e<<1)&0x55555555)|(t=((t=((t=((t=((t=(t-i)*r|0)|t<<8)&0xff00ff)|t<<4)&0xf0f0f0f)|t<<2)&0x33333333)|t<<1)&0x55555555)<<1}function rW(e,t,n,i,r,a,s,o){return(r-s)*(t-o)>=(e-s)*(a-o)&&(e-s)*(i-o)>=(n-s)*(t-o)&&(n-s)*(a-o)>=(r-s)*(i-o)}function rj(e,t,n){return(t.y-e.y)*(n.x-t.x)-(t.x-e.x)*(n.y-t.y)}function rX(e,t){return e.x===t.x&&e.y===t.y}function rq(e,t,n,i){let r=rZ(rj(e,t,n)),a=rZ(rj(e,t,i)),s=rZ(rj(n,i,e)),o=rZ(rj(n,i,t));return!!(r!==a&&s!==o||0===r&&rY(e,n,t)||0===a&&rY(e,i,t)||0===s&&rY(n,e,i)||0===o&&rY(n,t,i))}function rY(e,t,n){return t.x<=Math.max(e.x,n.x)&&t.x>=Math.min(e.x,n.x)&&t.y<=Math.max(e.y,n.y)&&t.y>=Math.min(e.y,n.y)}function rZ(e){return e>0?1:e<0?-1:0}function rJ(e,t){return 0>rj(e.prev,e,e.next)?rj(e,t,e.next)>=0&&rj(e,e.prev,t)>=0:0>rj(e,t,e.prev)||0>rj(e,e.next,t)}function rK(e,t){let n=new r0(e.i,e.x,e.y),i=new r0(t.i,t.x,t.y),r=e.next,a=t.prev;return e.next=t,t.prev=e,n.next=r,r.prev=n,i.next=n,n.prev=i,a.next=i,i.prev=a,i}function r$(e,t,n,i){let r=new r0(e,t,n);return i?(r.next=i.next,r.prev=i,i.next.prev=r,i.next=r):(r.prev=r,r.next=r),r}function rQ(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function r0(e,t,n){this.i=e,this.x=t,this.y=n,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}class r1{static area(e){let t=e.length,n=0;for(let i=t-1,r=0;rr1.area(e)}static triangulateShape(e,t){let n=[],i=[],r=[];r2(e),r3(n,e);let a=e.length;t.forEach(r2);for(let e=0;e2&&e[t-1].equals(e[0])&&e.pop()}function r3(e,t){for(let n=0;nNumber.EPSILON){let h=Math.sqrt(c),d=Math.sqrt(l*l+u*u),p=t.x-o/h,f=t.y+s/h,m=((n.x-u/d-p)*u-(n.y+l/d-f)*l)/(s*u-o*l),g=(i=p+s*m-e.x)*i+(r=f+o*m-e.y)*r;if(g<=2)return new Y(i,r);a=Math.sqrt(g/2)}else{let e=!1;s>Number.EPSILON?l>Number.EPSILON&&(e=!0):s<-Number.EPSILON?l<-Number.EPSILON&&(e=!0):Math.sign(o)===Math.sign(u)&&(e=!0),e?(i=-o,r=s,a=Math.sqrt(c)):(i=s,r=o,a=Math.sqrt(c/2))}return new Y(i/a,r/a)}let I=[];for(let e=0,t=E.length,n=t-1,i=e+1;e=0;e--){let t=e/v,n=f*Math.cos(t*Math.PI/2),i=m*Math.sin(t*Math.PI/2)+g;for(let e=0,t=E.length;e=0;){let a=r,s=r-1;s<0&&(s=e.length-1);for(let e=0,r=h+2*v;e0)&&d.push(t,r,l),(e!==n-1||o0!=e>0&&this.version++,this._anisotropy=e}get clearcoat(){return this._clearcoat}set clearcoat(e){this._clearcoat>0!=e>0&&this.version++,this._clearcoat=e}get iridescence(){return this._iridescence}set iridescence(e){this._iridescence>0!=e>0&&this.version++,this._iridescence=e}get dispersion(){return this._dispersion}set dispersion(e){this._dispersion>0!=e>0&&this.version++,this._dispersion=e}get sheen(){return this._sheen}set sheen(e){this._sheen>0!=e>0&&this.version++,this._sheen=e}get transmission(){return this._transmission}set transmission(e){this._transmission>0!=e>0&&this.version++,this._transmission=e}copy(e){return super.copy(e),this.defines={STANDARD:"",PHYSICAL:""},this.anisotropy=e.anisotropy,this.anisotropyRotation=e.anisotropyRotation,this.anisotropyMap=e.anisotropyMap,this.clearcoat=e.clearcoat,this.clearcoatMap=e.clearcoatMap,this.clearcoatRoughness=e.clearcoatRoughness,this.clearcoatRoughnessMap=e.clearcoatRoughnessMap,this.clearcoatNormalMap=e.clearcoatNormalMap,this.clearcoatNormalScale.copy(e.clearcoatNormalScale),this.dispersion=e.dispersion,this.ior=e.ior,this.iridescence=e.iridescence,this.iridescenceMap=e.iridescenceMap,this.iridescenceIOR=e.iridescenceIOR,this.iridescenceThicknessRange=[...e.iridescenceThicknessRange],this.iridescenceThicknessMap=e.iridescenceThicknessMap,this.sheen=e.sheen,this.sheenColor.copy(e.sheenColor),this.sheenColorMap=e.sheenColorMap,this.sheenRoughness=e.sheenRoughness,this.sheenRoughnessMap=e.sheenRoughnessMap,this.transmission=e.transmission,this.transmissionMap=e.transmissionMap,this.thickness=e.thickness,this.thicknessMap=e.thicknessMap,this.attenuationDistance=e.attenuationDistance,this.attenuationColor.copy(e.attenuationColor),this.specularIntensity=e.specularIntensity,this.specularIntensityMap=e.specularIntensityMap,this.specularColor.copy(e.specularColor),this.specularColorMap=e.specularColorMap,this}}class ap extends tH{constructor(e){super(),this.isMeshPhongMaterial=!0,this.type="MeshPhongMaterial",this.color=new tz(0xffffff),this.specular=new tz(1118481),this.shininess=30,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new tz(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new Y(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new tn,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.specular.copy(e.specular),this.shininess=e.shininess,this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.flatShading=e.flatShading,this.fog=e.fog,this}}class af extends tH{constructor(e){super(),this.isMeshToonMaterial=!0,this.defines={TOON:""},this.type="MeshToonMaterial",this.color=new tz(0xffffff),this.map=null,this.gradientMap=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new tz(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new Y(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.gradientMap=e.gradientMap,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.alphaMap=e.alphaMap,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.fog=e.fog,this}}class am extends tH{constructor(e){super(),this.isMeshNormalMaterial=!0,this.type="MeshNormalMaterial",this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new Y(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.flatShading=!1,this.setValues(e)}copy(e){return super.copy(e),this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.flatShading=e.flatShading,this}}class ag extends tH{constructor(e){super(),this.isMeshLambertMaterial=!0,this.type="MeshLambertMaterial",this.color=new tz(0xffffff),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new tz(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new Y(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new tn,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.flatShading=e.flatShading,this.fog=e.fog,this}}class av extends tH{constructor(e){super(),this.isMeshDepthMaterial=!0,this.type="MeshDepthMaterial",this.depthPacking=3200,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.setValues(e)}copy(e){return super.copy(e),this.depthPacking=e.depthPacking,this.map=e.map,this.alphaMap=e.alphaMap,this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this}}class a_ extends tH{constructor(e){super(),this.isMeshDistanceMaterial=!0,this.type="MeshDistanceMaterial",this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.setValues(e)}copy(e){return super.copy(e),this.map=e.map,this.alphaMap=e.alphaMap,this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this}}class ay extends tH{constructor(e){super(),this.isMeshMatcapMaterial=!0,this.defines={MATCAP:""},this.type="MeshMatcapMaterial",this.color=new tz(0xffffff),this.matcap=null,this.map=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new Y(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.defines={MATCAP:""},this.color.copy(e.color),this.matcap=e.matcap,this.map=e.map,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.alphaMap=e.alphaMap,this.flatShading=e.flatShading,this.fog=e.fog,this}}class ax extends iB{constructor(e){super(),this.isLineDashedMaterial=!0,this.type="LineDashedMaterial",this.scale=1,this.dashSize=3,this.gapSize=1,this.setValues(e)}copy(e){return super.copy(e),this.scale=e.scale,this.dashSize=e.dashSize,this.gapSize=e.gapSize,this}}function ab(e,t,n){return e&&(n||e.constructor!==t)?"number"==typeof t.BYTES_PER_ELEMENT?new t(e):Array.prototype.slice.call(e):e}function aS(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function aM(e){let t=e.length,n=Array(t);for(let e=0;e!==t;++e)n[e]=e;return n.sort(function(t,n){return e[t]-e[n]}),n}function aT(e,t,n){let i=e.length,r=new e.constructor(i);for(let a=0,s=0;s!==i;++a){let i=n[a]*t;for(let n=0;n!==t;++n)r[s++]=e[i+n]}return r}function aw(e,t,n,i){let r=1,a=e[0];for(;void 0!==a&&void 0===a[i];)a=e[r++];if(void 0===a)return;let s=a[i];if(void 0!==s)if(Array.isArray(s))do void 0!==(s=a[i])&&(t.push(a.time),n.push.apply(n,s)),a=e[r++];while(void 0!==a)else if(void 0!==s.toArray)do void 0!==(s=a[i])&&(t.push(a.time),s.toArray(n,n.length)),a=e[r++];while(void 0!==a)else do void 0!==(s=a[i])&&(t.push(a.time),n.push(s)),a=e[r++];while(void 0!==a)}let aE={convertArray:ab,isTypedArray:aS,getKeyframeOrder:aM,sortedArray:aT,flattenJSON:aw,subclip:function(e,t,n,i,r=30){let a=e.clone();a.name=t;let s=[];for(let e=0;e=i)){l.push(t.times[e]);for(let n=0;na.tracks[e].times[0]&&(o=a.tracks[e].times[0]);for(let e=0;e=r.times[d]){let e=d*u+l,t=e+u-l;i=r.values.slice(e,t)}else{let e=r.createInterpolant(),t=l,n=u-l;e.evaluate(a),i=e.resultBuffer.slice(t,n)}"quaternion"===s&&new ew().fromArray(i).normalize().conjugate().toArray(i);let p=o.times.length;for(let e=0;e=r)){let s=t[1];e=(r=t[--n-1]))break i}a=n,n=0;break r}break n}for(;n>>1;et;)--a;if(++a,0!==r||a!==i){r>=a&&(r=(a=Math.max(a,1))-1);let e=this.getValueSize();this.times=n.slice(r,a),this.values=this.values.slice(r*e,a*e)}return this}validate(){let e=!0,t=this.getValueSize();t-Math.floor(t)!=0&&(console.error("THREE.KeyframeTrack: Invalid value size in track.",this),e=!1);let n=this.times,i=this.values,r=n.length;0===r&&(console.error("THREE.KeyframeTrack: Track is empty.",this),e=!1);let a=null;for(let t=0;t!==r;t++){let i=n[t];if("number"==typeof i&&isNaN(i)){console.error("THREE.KeyframeTrack: Time is not a valid number.",this,t,i),e=!1;break}if(null!==a&&a>i){console.error("THREE.KeyframeTrack: Out of order keys.",this,t,i,a),e=!1;break}a=i}if(void 0!==i&&aS(i))for(let t=0,n=i.length;t!==n;++t){let n=i[t];if(isNaN(n)){console.error("THREE.KeyframeTrack: Value is not a valid number.",this,t,n),e=!1;break}}return e}optimize(){let e=this.times.slice(),t=this.values.slice(),n=this.getValueSize(),i=2302===this.getInterpolation(),r=e.length-1,a=1;for(let s=1;s0){e[a]=e[r];for(let e=r*n,i=a*n,s=0;s!==n;++s)t[i+s]=t[e+s];++a}return a!==e.length?(this.times=e.slice(0,a),this.values=t.slice(0,a*n)):(this.times=e,this.values=t),this}clone(){let e=this.times.slice(),t=this.values.slice(),n=new this.constructor(this.name,e,t);return n.createInterpolant=this.createInterpolant,n}}aI.prototype.TimeBufferType=Float32Array,aI.prototype.ValueBufferType=Float32Array,aI.prototype.DefaultInterpolation=2301;class aL extends aI{constructor(e,t,n){super(e,t,n)}}aL.prototype.ValueTypeName="bool",aL.prototype.ValueBufferType=Array,aL.prototype.DefaultInterpolation=2300,aL.prototype.InterpolantFactoryMethodLinear=void 0,aL.prototype.InterpolantFactoryMethodSmooth=void 0;class aN extends aI{}aN.prototype.ValueTypeName="color";class aU extends aI{}aU.prototype.ValueTypeName="number";class aD extends aA{constructor(e,t,n,i){super(e,t,n,i)}interpolate_(e,t,n,i){let r=this.resultBuffer,a=this.sampleValues,s=this.valueSize,o=(n-t)/(i-t),l=e*s;for(let e=l+s;l!==e;l+=4)ew.slerpFlat(r,0,a,l-s,a,l,o);return r}}class aO extends aI{InterpolantFactoryMethodLinear(e){return new aD(this.times,this.values,this.getValueSize(),e)}}aO.prototype.ValueTypeName="quaternion",aO.prototype.InterpolantFactoryMethodSmooth=void 0;class aF extends aI{constructor(e,t,n){super(e,t,n)}}aF.prototype.ValueTypeName="string",aF.prototype.ValueBufferType=Array,aF.prototype.DefaultInterpolation=2300,aF.prototype.InterpolantFactoryMethodLinear=void 0,aF.prototype.InterpolantFactoryMethodSmooth=void 0;class az extends aI{}az.prototype.ValueTypeName="vector";class aB{constructor(e="",t=-1,n=[],i=2500){this.name=e,this.tracks=n,this.duration=t,this.blendMode=i,this.uuid=H(),this.duration<0&&this.resetDuration()}static parse(e){let t=[],n=e.tracks,i=1/(e.fps||1);for(let e=0,r=n.length;e!==r;++e)t.push((function(e){if(void 0===e.type)throw Error("THREE.KeyframeTrack: track type undefined, can not parse");let t=function(e){switch(e.toLowerCase()){case"scalar":case"double":case"float":case"number":case"integer":return aU;case"vector":case"vector2":case"vector3":case"vector4":return az;case"color":return aN;case"quaternion":return aO;case"bool":case"boolean":return aL;case"string":return aF}throw Error("THREE.KeyframeTrack: Unsupported typeName: "+e)}(e.type);if(void 0===e.times){let t=[],n=[];aw(e.keys,t,n,"value"),e.times=t,e.values=n}return void 0!==t.parse?t.parse(e):new t(e.name,e.times,e.values,e.interpolation)})(n[e]).scale(i));let r=new this(e.name,e.duration,t,e.blendMode);return r.uuid=e.uuid,r}static toJSON(e){let t=[],n=e.tracks,i={name:e.name,duration:e.duration,tracks:t,uuid:e.uuid,blendMode:e.blendMode};for(let e=0,i=n.length;e!==i;++e)t.push(aI.toJSON(n[e]));return i}static CreateFromMorphTargetSequence(e,t,n,i){let r=t.length,a=[];for(let e=0;e1){let e=a[1],t=i[e];t||(i[e]=t=[]),t.push(n)}}let a=[];for(let e in i)a.push(this.CreateFromMorphTargetSequence(e,i[e],t,n));return a}static parseAnimation(e,t){if(!e)return console.error("THREE.AnimationClip: No animation in JSONLoader data."),null;let n=function(e,t,n,i,r){if(0!==n.length){let a=[],s=[];aw(n,a,s,i),0!==a.length&&r.push(new e(t,a,s))}},i=[],r=e.name||"default",a=e.fps||30,s=e.blendMode,o=e.length||-1,l=e.hierarchy||[];for(let e=0;e{t&&t(r),this.manager.itemEnd(e)},0),r;if(void 0!==aW[e])return void aW[e].push({onLoad:t,onProgress:n,onError:i});aW[e]=[],aW[e].push({onLoad:t,onProgress:n,onError:i});let a=new Request(e,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?"include":"same-origin"}),s=this.mimeType,o=this.responseType;fetch(a).then(t=>{if(200===t.status||0===t.status){if(0===t.status&&console.warn("THREE.FileLoader: HTTP Status 0 received."),"u"{if(i)e.close();else{let i=new ProgressEvent("progress",{lengthComputable:s,loaded:o+=r.byteLength,total:a});for(let e=0,t=n.length;e{e.error(t)})}()}}))}throw new aj(`fetch for "${t.url}" responded with ${t.status}: ${t.statusText}`,t)}).then(e=>{switch(o){case"arraybuffer":return e.arrayBuffer();case"blob":return e.blob();case"document":return e.text().then(e=>new DOMParser().parseFromString(e,s));case"json":return e.json();default:if(void 0===s)return e.text();{let t=/charset="?([^;"\s]*)"?/i.exec(s),n=new TextDecoder(t&&t[1]?t[1].toLowerCase():void 0);return e.arrayBuffer().then(e=>n.decode(e))}}}).then(t=>{ak.add(e,t);let n=aW[e];delete aW[e];for(let e=0,i=n.length;e{let n=aW[e];if(void 0===n)throw this.manager.itemError(e),t;delete aW[e];for(let e=0,i=n.length;e{this.manager.itemEnd(e)}),this.manager.itemStart(e)}setResponseType(e){return this.responseType=e,this}setMimeType(e){return this.mimeType=e,this}}class aq extends aG{constructor(e){super(e)}load(e,t,n,i){let r=this,a=new aX(this.manager);a.setPath(this.path),a.setRequestHeader(this.requestHeader),a.setWithCredentials(this.withCredentials),a.load(e,function(n){try{t(r.parse(JSON.parse(n)))}catch(t){i?i(t):console.error(t),r.manager.itemError(e)}},n,i)}parse(e){let t=[];for(let n=0;n0:i.vertexColors=e.vertexColors),void 0!==e.uniforms)for(let t in e.uniforms){let r=e.uniforms[t];switch(i.uniforms[t]={},r.type){case"t":i.uniforms[t].value=n(r.value);break;case"c":i.uniforms[t].value=new tz().setHex(r.value);break;case"v2":i.uniforms[t].value=new Y().fromArray(r.value);break;case"v3":i.uniforms[t].value=new eE().fromArray(r.value);break;case"v4":i.uniforms[t].value=new e_().fromArray(r.value);break;case"m3":i.uniforms[t].value=new Z().fromArray(r.value);break;case"m4":i.uniforms[t].value=new e2().fromArray(r.value);break;default:i.uniforms[t].value=r.value}}if(void 0!==e.defines&&(i.defines=e.defines),void 0!==e.vertexShader&&(i.vertexShader=e.vertexShader),void 0!==e.fragmentShader&&(i.fragmentShader=e.fragmentShader),void 0!==e.glslVersion&&(i.glslVersion=e.glslVersion),void 0!==e.extensions)for(let t in e.extensions)i.extensions[t]=e.extensions[t];if(void 0!==e.lights&&(i.lights=e.lights),void 0!==e.clipping&&(i.clipping=e.clipping),void 0!==e.size&&(i.size=e.size),void 0!==e.sizeAttenuation&&(i.sizeAttenuation=e.sizeAttenuation),void 0!==e.map&&(i.map=n(e.map)),void 0!==e.matcap&&(i.matcap=n(e.matcap)),void 0!==e.alphaMap&&(i.alphaMap=n(e.alphaMap)),void 0!==e.bumpMap&&(i.bumpMap=n(e.bumpMap)),void 0!==e.bumpScale&&(i.bumpScale=e.bumpScale),void 0!==e.normalMap&&(i.normalMap=n(e.normalMap)),void 0!==e.normalMapType&&(i.normalMapType=e.normalMapType),void 0!==e.normalScale){let t=e.normalScale;!1===Array.isArray(t)&&(t=[t,t]),i.normalScale=new Y().fromArray(t)}return void 0!==e.displacementMap&&(i.displacementMap=n(e.displacementMap)),void 0!==e.displacementScale&&(i.displacementScale=e.displacementScale),void 0!==e.displacementBias&&(i.displacementBias=e.displacementBias),void 0!==e.roughnessMap&&(i.roughnessMap=n(e.roughnessMap)),void 0!==e.metalnessMap&&(i.metalnessMap=n(e.metalnessMap)),void 0!==e.emissiveMap&&(i.emissiveMap=n(e.emissiveMap)),void 0!==e.emissiveIntensity&&(i.emissiveIntensity=e.emissiveIntensity),void 0!==e.specularMap&&(i.specularMap=n(e.specularMap)),void 0!==e.specularIntensityMap&&(i.specularIntensityMap=n(e.specularIntensityMap)),void 0!==e.specularColorMap&&(i.specularColorMap=n(e.specularColorMap)),void 0!==e.envMap&&(i.envMap=n(e.envMap)),void 0!==e.envMapRotation&&i.envMapRotation.fromArray(e.envMapRotation),void 0!==e.envMapIntensity&&(i.envMapIntensity=e.envMapIntensity),void 0!==e.reflectivity&&(i.reflectivity=e.reflectivity),void 0!==e.refractionRatio&&(i.refractionRatio=e.refractionRatio),void 0!==e.lightMap&&(i.lightMap=n(e.lightMap)),void 0!==e.lightMapIntensity&&(i.lightMapIntensity=e.lightMapIntensity),void 0!==e.aoMap&&(i.aoMap=n(e.aoMap)),void 0!==e.aoMapIntensity&&(i.aoMapIntensity=e.aoMapIntensity),void 0!==e.gradientMap&&(i.gradientMap=n(e.gradientMap)),void 0!==e.clearcoatMap&&(i.clearcoatMap=n(e.clearcoatMap)),void 0!==e.clearcoatRoughnessMap&&(i.clearcoatRoughnessMap=n(e.clearcoatRoughnessMap)),void 0!==e.clearcoatNormalMap&&(i.clearcoatNormalMap=n(e.clearcoatNormalMap)),void 0!==e.clearcoatNormalScale&&(i.clearcoatNormalScale=new Y().fromArray(e.clearcoatNormalScale)),void 0!==e.iridescenceMap&&(i.iridescenceMap=n(e.iridescenceMap)),void 0!==e.iridescenceThicknessMap&&(i.iridescenceThicknessMap=n(e.iridescenceThicknessMap)),void 0!==e.transmissionMap&&(i.transmissionMap=n(e.transmissionMap)),void 0!==e.thicknessMap&&(i.thicknessMap=n(e.thicknessMap)),void 0!==e.anisotropyMap&&(i.anisotropyMap=n(e.anisotropyMap)),void 0!==e.sheenColorMap&&(i.sheenColorMap=n(e.sheenColorMap)),void 0!==e.sheenRoughnessMap&&(i.sheenRoughnessMap=n(e.sheenRoughnessMap)),i}setTextures(e){return this.textures=e,this}createMaterialFromType(e){return su.createMaterialFromType(e)}static createMaterialFromType(e){return new({ShadowMaterial:au,SpriteMaterial:nO,RawShaderMaterial:ac,ShaderMaterial:nb,PointsMaterial:iQ,MeshPhysicalMaterial:ad,MeshStandardMaterial:ah,MeshPhongMaterial:ap,MeshToonMaterial:af,MeshNormalMaterial:am,MeshLambertMaterial:ag,MeshDepthMaterial:av,MeshDistanceMaterial:a_,MeshBasicMaterial:tV,MeshMatcapMaterial:ay,LineDashedMaterial:ax,LineBasicMaterial:iB,Material:tH})[e]}}class sc{static decodeText(e){if(console.warn("THREE.LoaderUtils: decodeText() has been deprecated with r165 and will be removed with r175. Use TextDecoder instead."),"u">typeof TextDecoder)return new TextDecoder().decode(e);let t="";for(let n=0,i=e.length;n0){(n=new aZ(new aH(t))).setCrossOrigin(this.crossOrigin);for(let t=0,n=e.length;t0){(t=new aZ(this.manager)).setCrossOrigin(this.crossOrigin);for(let t=0,n=e.length;t{let t=new eR;t.min.fromArray(e.boxMin),t.max.fromArray(e.boxMax);let n=new eq;return n.radius=e.sphereRadius,n.center.fromArray(e.sphereCenter),{boxInitialized:e.boxInitialized,box:t,sphereInitialized:e.sphereInitialized,sphere:n}}),a._maxInstanceCount=e.maxInstanceCount,a._maxVertexCount=e.maxVertexCount,a._maxIndexCount=e.maxIndexCount,a._geometryInitialized=e.geometryInitialized,a._geometryCount=e.geometryCount,a._matricesTexture=c(e.matricesTexture.uuid),void 0!==e.colorsTexture&&(a._colorsTexture=c(e.colorsTexture.uuid));break;case"LOD":a=new nQ;break;case"Line":a=new iq(l(e.geometry),u(e.material));break;case"LineLoop":a=new i$(l(e.geometry),u(e.material));break;case"LineSegments":a=new iK(l(e.geometry),u(e.material));break;case"PointCloud":case"Points":a=new i4(l(e.geometry),u(e.material));break;case"Sprite":a=new nZ(u(e.material));break;case"Group":a=new i6;break;case"Bone":a=new ie;break;default:a=new ty}if(a.uuid=e.uuid,void 0!==e.name&&(a.name=e.name),void 0!==e.matrix?(a.matrix.fromArray(e.matrix),void 0!==e.matrixAutoUpdate&&(a.matrixAutoUpdate=e.matrixAutoUpdate),a.matrixAutoUpdate&&a.matrix.decompose(a.position,a.quaternion,a.scale)):(void 0!==e.position&&a.position.fromArray(e.position),void 0!==e.rotation&&a.rotation.fromArray(e.rotation),void 0!==e.quaternion&&a.quaternion.fromArray(e.quaternion),void 0!==e.scale&&a.scale.fromArray(e.scale)),void 0!==e.up&&a.up.fromArray(e.up),void 0!==e.castShadow&&(a.castShadow=e.castShadow),void 0!==e.receiveShadow&&(a.receiveShadow=e.receiveShadow),e.shadow&&(void 0!==e.shadow.intensity&&(a.shadow.intensity=e.shadow.intensity),void 0!==e.shadow.bias&&(a.shadow.bias=e.shadow.bias),void 0!==e.shadow.normalBias&&(a.shadow.normalBias=e.shadow.normalBias),void 0!==e.shadow.radius&&(a.shadow.radius=e.shadow.radius),void 0!==e.shadow.mapSize&&a.shadow.mapSize.fromArray(e.shadow.mapSize),void 0!==e.shadow.camera&&(a.shadow.camera=this.parseObject(e.shadow.camera))),void 0!==e.visible&&(a.visible=e.visible),void 0!==e.frustumCulled&&(a.frustumCulled=e.frustumCulled),void 0!==e.renderOrder&&(a.renderOrder=e.renderOrder),void 0!==e.userData&&(a.userData=e.userData),void 0!==e.layers&&(a.layers.mask=e.layers),void 0!==e.children){let s=e.children;for(let e=0;e{t&&t(n),r.manager.itemEnd(e)}).catch(e=>{i&&i(e)}):(setTimeout(function(){t&&t(a),r.manager.itemEnd(e)},0),a);let s={};s.credentials="anonymous"===this.crossOrigin?"same-origin":"include",s.headers=this.requestHeader;let o=fetch(e,s).then(function(e){return e.blob()}).then(function(e){return createImageBitmap(e,Object.assign(r.options,{colorSpaceConversion:"none"}))}).then(function(n){return ak.add(e,n),t&&t(n),r.manager.itemEnd(e),n}).catch(function(t){i&&i(t),ak.remove(e),r.manager.itemError(e),r.manager.itemEnd(e)});ak.add(e,o),r.manager.itemStart(e)}}class s_{static getContext(){return void 0===i&&(i=new(window.AudioContext||window.webkitAudioContext)),i}static setContext(e){i=e}}class sy extends aG{constructor(e){super(e)}load(e,t,n,i){let r=this,a=new aX(this.manager);function s(t){i?i(t):console.error(t),r.manager.itemError(e)}a.setResponseType("arraybuffer"),a.setPath(this.path),a.setRequestHeader(this.requestHeader),a.setWithCredentials(this.withCredentials),a.load(e,function(e){try{let n=e.slice(0);s_.getContext().decodeAudioData(n,function(e){t(e)}).catch(s)}catch(e){s(e)}},n,i)}}let sx=new e2,sb=new e2,sS=new e2;class sM{constructor(){this.type="StereoCamera",this.aspect=1,this.eyeSep=.064,this.cameraL=new nE,this.cameraL.layers.enable(1),this.cameraL.matrixAutoUpdate=!1,this.cameraR=new nE,this.cameraR.layers.enable(2),this.cameraR.matrixAutoUpdate=!1,this._cache={focus:null,fov:null,aspect:null,near:null,far:null,zoom:null,eyeSep:null}}update(e){let t=this._cache;if(t.focus!==e.focus||t.fov!==e.fov||t.aspect!==e.aspect*this.aspect||t.near!==e.near||t.far!==e.far||t.zoom!==e.zoom||t.eyeSep!==this.eyeSep){let n,i;t.focus=e.focus,t.fov=e.fov,t.aspect=e.aspect*this.aspect,t.near=e.near,t.far=e.far,t.zoom=e.zoom,t.eyeSep=this.eyeSep,sS.copy(e.projectionMatrix);let r=t.eyeSep/2,a=r*t.near/t.focus,s=t.near*Math.tan(B*t.fov*.5)/t.zoom;sb.elements[12]=-r,sx.elements[12]=r,n=-s*t.aspect+a,i=s*t.aspect+a,sS.elements[0]=2*t.near/(i-n),sS.elements[8]=(i+n)/(i-n),this.cameraL.projectionMatrix.copy(sS),n=-s*t.aspect-a,i=s*t.aspect-a,sS.elements[0]=2*t.near/(i-n),sS.elements[8]=(i+n)/(i-n),this.cameraR.projectionMatrix.copy(sS)}this.cameraL.matrixWorld.copy(e.matrixWorld).multiply(sb),this.cameraR.matrixWorld.copy(e.matrixWorld).multiply(sx)}}class sT extends nE{constructor(e=[]){super(),this.isArrayCamera=!0,this.cameras=e}}class sw{constructor(e=!0){this.autoStart=e,this.startTime=0,this.oldTime=0,this.elapsedTime=0,this.running=!1}start(){this.startTime=sE(),this.oldTime=this.startTime,this.elapsedTime=0,this.running=!0}stop(){this.getElapsedTime(),this.running=!1,this.autoStart=!1}getElapsedTime(){return this.getDelta(),this.elapsedTime}getDelta(){let e=0;if(this.autoStart&&!this.running)return this.start(),0;if(this.running){let t=sE();e=(t-this.oldTime)/1e3,this.oldTime=t,this.elapsedTime+=e}return e}}function sE(){return performance.now()}let sA=new eE,sC=new ew,sR=new eE,sP=new eE;class sI extends ty{constructor(){super(),this.type="AudioListener",this.context=s_.getContext(),this.gain=this.context.createGain(),this.gain.connect(this.context.destination),this.filter=null,this.timeDelta=0,this._clock=new sw}getInput(){return this.gain}removeFilter(){return null!==this.filter&&(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination),this.gain.connect(this.context.destination),this.filter=null),this}getFilter(){return this.filter}setFilter(e){return null!==this.filter?(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination)):this.gain.disconnect(this.context.destination),this.filter=e,this.gain.connect(this.filter),this.filter.connect(this.context.destination),this}getMasterVolume(){return this.gain.gain.value}setMasterVolume(e){return this.gain.gain.setTargetAtTime(e,this.context.currentTime,.01),this}updateMatrixWorld(e){super.updateMatrixWorld(e);let t=this.context.listener,n=this.up;if(this.timeDelta=this._clock.getDelta(),this.matrixWorld.decompose(sA,sC,sR),sP.set(0,0,-1).applyQuaternion(sC),t.positionX){let e=this.context.currentTime+this.timeDelta;t.positionX.linearRampToValueAtTime(sA.x,e),t.positionY.linearRampToValueAtTime(sA.y,e),t.positionZ.linearRampToValueAtTime(sA.z,e),t.forwardX.linearRampToValueAtTime(sP.x,e),t.forwardY.linearRampToValueAtTime(sP.y,e),t.forwardZ.linearRampToValueAtTime(sP.z,e),t.upX.linearRampToValueAtTime(n.x,e),t.upY.linearRampToValueAtTime(n.y,e),t.upZ.linearRampToValueAtTime(n.z,e)}else t.setPosition(sA.x,sA.y,sA.z),t.setOrientation(sP.x,sP.y,sP.z,n.x,n.y,n.z)}}class sL extends ty{constructor(e){super(),this.type="Audio",this.listener=e,this.context=e.context,this.gain=this.context.createGain(),this.gain.connect(e.getInput()),this.autoplay=!1,this.buffer=null,this.detune=0,this.loop=!1,this.loopStart=0,this.loopEnd=0,this.offset=0,this.duration=void 0,this.playbackRate=1,this.isPlaying=!1,this.hasPlaybackControl=!0,this.source=null,this.sourceType="empty",this._startedAt=0,this._progress=0,this._connected=!1,this.filters=[]}getOutput(){return this.gain}setNodeSource(e){return this.hasPlaybackControl=!1,this.sourceType="audioNode",this.source=e,this.connect(),this}setMediaElementSource(e){return this.hasPlaybackControl=!1,this.sourceType="mediaNode",this.source=this.context.createMediaElementSource(e),this.connect(),this}setMediaStreamSource(e){return this.hasPlaybackControl=!1,this.sourceType="mediaStreamNode",this.source=this.context.createMediaStreamSource(e),this.connect(),this}setBuffer(e){return this.buffer=e,this.sourceType="buffer",this.autoplay&&this.play(),this}play(e=0){if(!0===this.isPlaying)return void console.warn("THREE.Audio: Audio is already playing.");if(!1===this.hasPlaybackControl)return void console.warn("THREE.Audio: this Audio has no playback control.");this._startedAt=this.context.currentTime+e;let t=this.context.createBufferSource();return t.buffer=this.buffer,t.loop=this.loop,t.loopStart=this.loopStart,t.loopEnd=this.loopEnd,t.onended=this.onEnded.bind(this),t.start(this._startedAt,this._progress+this.offset,this.duration),this.isPlaying=!0,this.source=t,this.setDetune(this.detune),this.setPlaybackRate(this.playbackRate),this.connect()}pause(){return!1===this.hasPlaybackControl?void console.warn("THREE.Audio: this Audio has no playback control."):(!0===this.isPlaying&&(this._progress+=Math.max(this.context.currentTime-this._startedAt,0)*this.playbackRate,!0===this.loop&&(this._progress=this._progress%(this.duration||this.buffer.duration)),this.source.stop(),this.source.onended=null,this.isPlaying=!1),this)}stop(e=0){return!1===this.hasPlaybackControl?void console.warn("THREE.Audio: this Audio has no playback control."):(this._progress=0,null!==this.source&&(this.source.stop(this.context.currentTime+e),this.source.onended=null),this.isPlaying=!1,this)}connect(){if(this.filters.length>0){this.source.connect(this.filters[0]);for(let e=1,t=this.filters.length;e0){this.source.disconnect(this.filters[0]);for(let e=1,t=this.filters.length;e0&&this._mixBufferRegionAdditive(n,i,this._addIndex*t,1,t);for(let e=t,r=t+t;e!==r;++e)if(n[e]!==n[e+t]){s.setValue(n,i);break}}saveOriginalState(){let e=this.binding,t=this.buffer,n=this.valueSize,i=n*this._origIndex;e.getValue(t,i);for(let e=n;e!==i;++e)t[e]=t[i+e%n];this._setIdentity(),this.cumulativeWeight=0,this.cumulativeWeightAdditive=0}restoreOriginalState(){let e=3*this.valueSize;this.binding.setValue(this.buffer,e)}_setAdditiveIdentityNumeric(){let e=this._addIndex*this.valueSize,t=e+this.valueSize;for(let n=e;n=.5)for(let i=0;i!==r;++i)e[t+i]=e[n+i]}_slerp(e,t,n,i){ew.slerpFlat(e,t,e,t,e,n,i)}_slerpAdditive(e,t,n,i,r){let a=this._workIndex*r;ew.multiplyQuaternionsFlat(e,a,e,t,e,n),ew.slerpFlat(e,t,e,t,e,a,i)}_lerp(e,t,n,i,r){let a=1-i;for(let s=0;s!==r;++s){let r=t+s;e[r]=e[r]*a+e[n+s]*i}}_lerpAdditive(e,t,n,i,r){for(let a=0;a!==r;++a){let r=t+a;e[r]=e[r]+e[n+a]*i}}}let sk="\\[\\]\\.:\\/",sH=RegExp("["+sk+"]","g"),sV="[^"+sk+"]",sG="[^"+sk.replace("\\.","")+"]",sW=RegExp("^"+/((?:WC+[\/:])*)/.source.replace("WC",sV)+/(WCOD+)?/.source.replace("WCOD",sG)+/(?:\.(WC+)(?:\[(.+)\])?)?/.source.replace("WC",sV)+/\.(WC+)(?:\[(.+)\])?/.source.replace("WC",sV)+"$"),sj=["material","materials","bones","map"];class sX{constructor(e,t,n){this.path=t,this.parsedPath=n||sX.parseTrackName(t),this.node=sX.findNode(e,this.parsedPath.nodeName),this.rootNode=e,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(e,t,n){return e&&e.isAnimationObjectGroup?new sX.Composite(e,t,n):new sX(e,t,n)}static sanitizeNodeName(e){return e.replace(/\s/g,"_").replace(sH,"")}static parseTrackName(e){let t=sW.exec(e);if(null===t)throw Error("PropertyBinding: Cannot parse trackName: "+e);let n={nodeName:t[2],objectName:t[3],objectIndex:t[4],propertyName:t[5],propertyIndex:t[6]},i=n.nodeName&&n.nodeName.lastIndexOf(".");if(void 0!==i&&-1!==i){let e=n.nodeName.substring(i+1);-1!==sj.indexOf(e)&&(n.nodeName=n.nodeName.substring(0,i),n.objectName=e)}if(null===n.propertyName||0===n.propertyName.length)throw Error("PropertyBinding: can not parse propertyName from trackName: "+e);return n}static findNode(e,t){if(void 0===t||""===t||"."===t||-1===t||t===e.name||t===e.uuid)return e;if(e.skeleton){let n=e.skeleton.getBoneByName(t);if(void 0!==n)return n}if(e.children){let n=function(e){for(let i=0;i=r){let a=r++,u=e[a];t[u.uuid]=l,e[l]=u,t[o]=a,e[a]=s;for(let e=0;e!==i;++e){let t=n[e],i=t[a],r=t[l];t[l]=i,t[a]=r}}}this.nCachedObjects_=r}uncache(){let e=this._objects,t=this._indicesByUUID,n=this._bindings,i=n.length,r=this.nCachedObjects_,a=e.length;for(let s=0,o=arguments.length;s!==o;++s){let o=arguments[s],l=o.uuid,u=t[l];if(void 0!==u)if(delete t[l],u0&&(t[s.uuid]=u),e[u]=s,e.pop();for(let e=0;e!==i;++e){let t=n[e];t[u]=t[r],t.pop()}}}this.nCachedObjects_=r}subscribe_(e,t){let n=this._bindingsIndicesByPath,i=n[e],r=this._bindings;if(void 0!==i)return r[i];let a=this._paths,s=this._parsedPaths,o=this._objects,l=o.length,u=this.nCachedObjects_,c=Array(l);i=r.length,n[e]=i,a.push(e),s.push(t),r.push(c);for(let n=u,i=o.length;n!==i;++n){let i=o[n];c[n]=new sX(i,e,t)}return c}unsubscribe_(e){let t=this._bindingsIndicesByPath,n=t[e];if(void 0!==n){let i=this._paths,r=this._parsedPaths,a=this._bindings,s=a.length-1,o=a[s];t[e[s]]=n,a[n]=o,a.pop(),r[n]=r[s],r.pop(),i[n]=i[s],i.pop()}}}class sY{constructor(e,t,n=null,i=t.blendMode){this._mixer=e,this._clip=t,this._localRoot=n,this.blendMode=i;const r=t.tracks,a=r.length,s=Array(a),o={endingStart:2400,endingEnd:2400};for(let e=0;e!==a;++e){const t=r[e].createInterpolant(null);s[e]=t,t.settings=o}this._interpolantSettings=o,this._interpolants=s,this._propertyBindings=Array(a),this._cacheIndex=null,this._byClipCacheIndex=null,this._timeScaleInterpolant=null,this._weightInterpolant=null,this.loop=2201,this._loopCount=-1,this._startTime=null,this.time=0,this.timeScale=1,this._effectiveTimeScale=1,this.weight=1,this._effectiveWeight=1,this.repetitions=1/0,this.paused=!1,this.enabled=!0,this.clampWhenFinished=!1,this.zeroSlopeAtStart=!0,this.zeroSlopeAtEnd=!0}play(){return this._mixer._activateAction(this),this}stop(){return this._mixer._deactivateAction(this),this.reset()}reset(){return this.paused=!1,this.enabled=!0,this.time=0,this._loopCount=-1,this._startTime=null,this.stopFading().stopWarping()}isRunning(){return this.enabled&&!this.paused&&0!==this.timeScale&&null===this._startTime&&this._mixer._isActiveAction(this)}isScheduled(){return this._mixer._isActiveAction(this)}startAt(e){return this._startTime=e,this}setLoop(e,t){return this.loop=e,this.repetitions=t,this}setEffectiveWeight(e){return this.weight=e,this._effectiveWeight=this.enabled?e:0,this.stopFading()}getEffectiveWeight(){return this._effectiveWeight}fadeIn(e){return this._scheduleFading(e,0,1)}fadeOut(e){return this._scheduleFading(e,1,0)}crossFadeFrom(e,t,n){if(e.fadeOut(t),this.fadeIn(t),n){let n=this._clip.duration,i=e._clip.duration;e.warp(1,i/n,t),this.warp(n/i,1,t)}return this}crossFadeTo(e,t,n){return e.crossFadeFrom(this,t,n)}stopFading(){let e=this._weightInterpolant;return null!==e&&(this._weightInterpolant=null,this._mixer._takeBackControlInterpolant(e)),this}setEffectiveTimeScale(e){return this.timeScale=e,this._effectiveTimeScale=this.paused?0:e,this.stopWarping()}getEffectiveTimeScale(){return this._effectiveTimeScale}setDuration(e){return this.timeScale=this._clip.duration/e,this.stopWarping()}syncWith(e){return this.time=e.time,this.timeScale=e.timeScale,this.stopWarping()}halt(e){return this.warp(this._effectiveTimeScale,0,e)}warp(e,t,n){let i=this._mixer,r=i.time,a=this.timeScale,s=this._timeScaleInterpolant;null===s&&(s=i._lendControlInterpolant(),this._timeScaleInterpolant=s);let o=s.parameterPositions,l=s.sampleValues;return o[0]=r,o[1]=r+n,l[0]=e/a,l[1]=t/a,this}stopWarping(){let e=this._timeScaleInterpolant;return null!==e&&(this._timeScaleInterpolant=null,this._mixer._takeBackControlInterpolant(e)),this}getMixer(){return this._mixer}getClip(){return this._clip}getRoot(){return this._localRoot||this._mixer._root}_update(e,t,n,i){if(!this.enabled)return void this._updateWeight(e);let r=this._startTime;if(null!==r){let i=(e-r)*n;i<0||0===n?t=0:(this._startTime=null,t=n*i)}t*=this._updateTimeScale(e);let a=this._updateTime(t),s=this._updateWeight(e);if(s>0){let e=this._interpolants,t=this._propertyBindings;if(2501===this.blendMode)for(let n=0,i=e.length;n!==i;++n)e[n].evaluate(a),t[n].accumulateAdditive(s);else for(let n=0,r=e.length;n!==r;++n)e[n].evaluate(a),t[n].accumulate(i,s)}}_updateWeight(e){let t=0;if(this.enabled){t=this.weight;let n=this._weightInterpolant;if(null!==n){let i=n.evaluate(e)[0];t*=i,e>n.parameterPositions[1]&&(this.stopFading(),0===i&&(this.enabled=!1))}}return this._effectiveWeight=t,t}_updateTimeScale(e){let t=0;if(!this.paused){t=this.timeScale;let n=this._timeScaleInterpolant;null!==n&&(t*=n.evaluate(e)[0],e>n.parameterPositions[1]&&(this.stopWarping(),0===t?this.paused=!0:this.timeScale=t))}return this._effectiveTimeScale=t,t}_updateTime(e){let t=this._clip.duration,n=this.loop,i=this.time+e,r=this._loopCount,a=2202===n;if(0===e)return -1===r?i:a&&(1&r)==1?t-i:i;if(2200===n){-1===r&&(this._loopCount=0,this._setEndings(!0,!0,!1));s:{if(i>=t)i=t;else if(i<0)i=0;else{this.time=i;break s}this.clampWhenFinished?this.paused=!0:this.enabled=!1,this.time=i,this._mixer.dispatchEvent({type:"finished",action:this,direction:e<0?-1:1})}}else{if(-1===r&&(e>=0?(r=0,this._setEndings(!0,0===this.repetitions,a)):this._setEndings(0===this.repetitions,!0,a)),i>=t||i<0){let n=Math.floor(i/t);i-=t*n,r+=Math.abs(n);let s=this.repetitions-r;if(s<=0)this.clampWhenFinished?this.paused=!0:this.enabled=!1,i=e>0?t:0,this.time=i,this._mixer.dispatchEvent({type:"finished",action:this,direction:e>0?1:-1});else{if(1===s){let t=e<0;this._setEndings(t,!t,a)}else this._setEndings(!1,!1,a);this._loopCount=r,this.time=i,this._mixer.dispatchEvent({type:"loop",action:this,loopDelta:n})}}else this.time=i;if(a&&(1&r)==1)return t-i}return i}_setEndings(e,t,n){let i=this._interpolantSettings;n?(i.endingStart=2401,i.endingEnd=2401):(e?i.endingStart=this.zeroSlopeAtStart?2401:2400:i.endingStart=2402,t?i.endingEnd=this.zeroSlopeAtEnd?2401:2400:i.endingEnd=2402)}_scheduleFading(e,t,n){let i=this._mixer,r=i.time,a=this._weightInterpolant;null===a&&(a=i._lendControlInterpolant(),this._weightInterpolant=a);let s=a.parameterPositions,o=a.sampleValues;return s[0]=r,o[0]=t,s[1]=r+e,o[1]=n,this}}let sZ=new Float32Array(1);class sJ extends O{constructor(e){super(),this._root=e,this._initMemoryManager(),this._accuIndex=0,this.time=0,this.timeScale=1}_bindAction(e,t){let n=e._localRoot||this._root,i=e._clip.tracks,r=i.length,a=e._propertyBindings,s=e._interpolants,o=n.uuid,l=this._bindingsByRootAndName,u=l[o];void 0===u&&(u={},l[o]=u);for(let e=0;e!==r;++e){let r=i[e],l=r.name,c=u[l];if(void 0!==c)++c.referenceCount,a[e]=c;else{if(void 0!==(c=a[e])){null===c._cacheIndex&&(++c.referenceCount,this._addInactiveBinding(c,o,l));continue}let i=t&&t._propertyBindings[e].binding.parsedPath;c=new sB(sX.create(n,l,i),r.ValueTypeName,r.getValueSize()),++c.referenceCount,this._addInactiveBinding(c,o,l),a[e]=c}s[e].resultBuffer=c.buffer}}_activateAction(e){if(!this._isActiveAction(e)){if(null===e._cacheIndex){let t=(e._localRoot||this._root).uuid,n=e._clip.uuid,i=this._actionsByClip[n];this._bindAction(e,i&&i.knownActions[0]),this._addInactiveAction(e,n,t)}let t=e._propertyBindings;for(let e=0,n=t.length;e!==n;++e){let n=t[e];0==n.useCount++&&(this._lendBinding(n),n.saveOriginalState())}this._lendAction(e)}}_deactivateAction(e){if(this._isActiveAction(e)){let t=e._propertyBindings;for(let e=0,n=t.length;e!==n;++e){let n=t[e];0==--n.useCount&&(n.restoreOriginalState(),this._takeBackBinding(n))}this._takeBackAction(e)}}_initMemoryManager(){this._actions=[],this._nActiveActions=0,this._actionsByClip={},this._bindings=[],this._nActiveBindings=0,this._bindingsByRootAndName={},this._controlInterpolants=[],this._nActiveControlInterpolants=0;let e=this;this.stats={actions:{get total(){return e._actions.length},get inUse(){return e._nActiveActions}},bindings:{get total(){return e._bindings.length},get inUse(){return e._nActiveBindings}},controlInterpolants:{get total(){return e._controlInterpolants.length},get inUse(){return e._nActiveControlInterpolants}}}}_isActiveAction(e){let t=e._cacheIndex;return null!==t&&t=0;--n)e[n].stop();return this}update(e){e*=this.timeScale;let t=this._actions,n=this._nActiveActions,i=this.time+=e,r=Math.sign(e),a=this._accuIndex^=1;for(let s=0;s!==n;++s)t[s]._update(i,e,r,a);let s=this._bindings,o=this._nActiveBindings;for(let e=0;e!==o;++e)s[e].apply(a);return this}setTime(e){this.time=0;for(let e=0;e=this.min.x&&e.x<=this.max.x&&e.y>=this.min.y&&e.y<=this.max.y}containsBox(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y}getParameter(e,t){return t.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y))}intersectsBox(e){return e.max.x>=this.min.x&&e.min.x<=this.max.x&&e.max.y>=this.min.y&&e.min.y<=this.max.y}clampPoint(e,t){return t.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return this.clampPoint(e,s7).distanceTo(e)}intersect(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this}union(e){return this.min.min(e.min),this.max.max(e.max),this}translate(e){return this.min.add(e),this.max.add(e),this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}}let ot=new eE,on=new eE;class oi{constructor(e=new eE,t=new eE){this.start=e,this.end=t}set(e,t){return this.start.copy(e),this.end.copy(t),this}copy(e){return this.start.copy(e.start),this.end.copy(e.end),this}getCenter(e){return e.addVectors(this.start,this.end).multiplyScalar(.5)}delta(e){return e.subVectors(this.end,this.start)}distanceSq(){return this.start.distanceToSquared(this.end)}distance(){return this.start.distanceTo(this.end)}at(e,t){return this.delta(t).multiplyScalar(e).add(this.start)}closestPointToPointParameter(e,t){ot.subVectors(e,this.start),on.subVectors(this.end,this.start);let n=on.dot(on),i=on.dot(ot)/n;return t&&(i=V(i,0,1)),i}closestPointToPoint(e,t,n){let i=this.closestPointToPointParameter(e,t);return this.delta(n).multiplyScalar(i).add(this.start)}applyMatrix4(e){return this.start.applyMatrix4(e),this.end.applyMatrix4(e),this}equals(e){return e.start.equals(this.start)&&e.end.equals(this.end)}clone(){return new this.constructor().copy(this)}}let or=new eE;class oa extends ty{constructor(e,t){super(),this.light=e,this.matrixAutoUpdate=!1,this.color=t,this.type="SpotLightHelper";const n=new nn,i=[0,0,0,0,0,1,0,0,0,1,0,1,0,0,0,-1,0,1,0,0,0,0,1,1,0,0,0,0,-1,1];for(let e=0,t=1;e<32;e++,t++){const n=e/32*Math.PI*2,r=t/32*Math.PI*2;i.push(Math.cos(n),Math.sin(n),1,Math.cos(r),Math.sin(r),1)}n.setAttribute("position",new t4(i,3));const r=new iB({fog:!1,toneMapped:!1});this.cone=new iK(n,r),this.add(this.cone),this.update()}dispose(){this.cone.geometry.dispose(),this.cone.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.light.target.updateWorldMatrix(!0,!1),this.parent?(this.parent.updateWorldMatrix(!0),this.matrix.copy(this.parent.matrixWorld).invert().multiply(this.light.matrixWorld)):this.matrix.copy(this.light.matrixWorld),this.matrixWorld.copy(this.light.matrixWorld);let e=this.light.distance?this.light.distance:1e3,t=e*Math.tan(this.light.angle);this.cone.scale.set(t,t,e),or.setFromMatrixPosition(this.light.target.matrixWorld),this.cone.lookAt(or),void 0!==this.color?this.cone.material.color.set(this.color):this.cone.material.color.copy(this.light.color)}}let os=new eE,oo=new e2,ol=new e2;class ou extends iK{constructor(e){const t=function e(t){let n=[];!0===t.isBone&&n.push(t);for(let i=0;i1)for(let n=0;n.99999)this.quaternion.set(0,0,0,1);else if(e.y<-.99999)this.quaternion.set(1,0,0,0);else{oR.set(e.z,0,-e.x).normalize();let t=Math.acos(e.y);this.quaternion.setFromAxisAngle(oR,t)}}setLength(e,t=.2*e,n=.2*t){this.line.scale.set(1,Math.max(1e-4,e-t),1),this.line.updateMatrix(),this.cone.scale.set(n,t,n),this.cone.position.y=e,this.cone.updateMatrix()}setColor(e){this.line.material.color.set(e),this.cone.material.color.set(e)}copy(e){return super.copy(e,!1),this.line.copy(e.line),this.cone.copy(e.cone),this}dispose(){this.line.geometry.dispose(),this.line.material.dispose(),this.cone.geometry.dispose(),this.cone.material.dispose()}}class oI extends iK{constructor(e=1){const t=new nn;t.setAttribute("position",new t4([0,0,0,e,0,0,0,0,0,0,e,0,0,0,0,0,0,e],3)),t.setAttribute("color",new t4([1,0,0,1,.6,0,0,1,0,.6,1,0,0,0,1,0,.6,1],3)),super(t,new iB({vertexColors:!0,toneMapped:!1})),this.type="AxesHelper"}setColors(e,t,n){let i=new tz,r=this.geometry.attributes.color.array;return i.set(e),i.toArray(r,0),i.toArray(r,3),i.set(t),i.toArray(r,6),i.toArray(r,9),i.set(n),i.toArray(r,12),i.toArray(r,15),this.geometry.attributes.color.needsUpdate=!0,this}dispose(){this.geometry.dispose(),this.material.dispose()}}class oL{constructor(){this.type="ShapePath",this.color=new tz,this.subPaths=[],this.currentPath=null}moveTo(e,t){return this.currentPath=new rw,this.subPaths.push(this.currentPath),this.currentPath.moveTo(e,t),this}lineTo(e,t){return this.currentPath.lineTo(e,t),this}quadraticCurveTo(e,t,n,i){return this.currentPath.quadraticCurveTo(e,t,n,i),this}bezierCurveTo(e,t,n,i,r,a){return this.currentPath.bezierCurveTo(e,t,n,i,r,a),this}splineThru(e){return this.currentPath.splineThru(e),this}toShapes(e){let t,n,i,r,a,s=r1.isClockWise,o=this.subPaths;if(0===o.length)return[];let l=[];if(1===o.length)return n=o[0],(i=new rz).curves=n.curves,l.push(i),l;let u=!s(o[0].getPoints());u=e?!u:u;let c=[],h=[],d=[],p=0;h[0]=void 0,d[p]=[];for(let i=0,a=o.length;i1){let e=!1,t=0;for(let e=0,t=h.length;eNumber.EPSILON){if(l<0&&(n=t[a],o=-o,s=t[r],l=-l),e.ys.y)continue;if(e.y===n.y){if(e.x===n.x)return!0}else{let t=l*(e.x-n.x)-o*(e.y-n.y);if(0===t)return!0;if(t<0)continue;i=!i}}else{if(e.y!==n.y)continue;if(s.x<=e.x&&e.x<=n.x||n.x<=e.x&&e.x<=s.x)return!0}}return i})(a.p,h[i].p)&&(n!==i&&t++,s?(s=!1,c[i].push(a)):e=!0);s&&c[n].push(a)}}t>0&&!1===e&&(d=c)}for(let e=0,t=h.length;et?(e.repeat.x=1,e.repeat.y=n/t,e.offset.x=0,e.offset.y=(1-e.repeat.y)/2):(e.repeat.x=t/n,e.repeat.y=1,e.offset.x=(1-e.repeat.x)/2,e.offset.y=0),e},cover:function(e,t){let n=e.image&&e.image.width?e.image.width/e.image.height:1;return n>t?(e.repeat.x=t/n,e.repeat.y=1,e.offset.x=(1-e.repeat.x)/2,e.offset.y=0):(e.repeat.x=1,e.repeat.y=n/t,e.offset.x=0,e.offset.y=(1-e.repeat.y)/2),e},fill:function(e){return e.repeat.x=1,e.repeat.y=1,e.offset.x=0,e.offset.y=0,e},getByteLength:oU};class oO extends ex{constructor(e=1,t=1,n=1,i={}){console.warn('THREE.WebGLMultipleRenderTargets has been deprecated and will be removed in r172. Use THREE.WebGLRenderTarget and set the "count" parameter to enable MRT.'),super(e,t,{...i,count:n}),this.isWebGLMultipleRenderTargets=!0}get texture(){return this.textures}}function oF(){let e=null,t=!1,n=null,i=null;function r(t,a){n(t,a),i=e.requestAnimationFrame(r)}return{start:function(){!0===t||null!==n&&(i=e.requestAnimationFrame(r),t=!0)},stop:function(){e.cancelAnimationFrame(i),t=!1},setAnimationLoop:function(e){n=e},setContext:function(t){e=t}}}function oz(e){let t=new WeakMap;return{get:function(e){return e.isInterleavedBufferAttribute&&(e=e.data),t.get(e)},remove:function(n){n.isInterleavedBufferAttribute&&(n=n.data);let i=t.get(n);i&&(e.deleteBuffer(i.buffer),t.delete(n))},update:function(n,i){if(n.isInterleavedBufferAttribute&&(n=n.data),n.isGLBufferAttribute){let e=t.get(n);(!e||e.versione.start-t.start);let t=0;for(let e=1;etypeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("register",{detail:{revision:"171"}})),"u">typeof window&&(window.__THREE__?console.warn("WARNING: Multiple instances of Three.js being imported."):window.__THREE__="171"),e.s(["ACESFilmicToneMapping",0,4,"AddEquation",0,100,"AddOperation",0,2,"AdditiveAnimationBlendMode",0,2501,"AdditiveBlending",0,2,"AgXToneMapping",0,6,"AlphaFormat",0,1021,"AlwaysCompare",0,519,"AlwaysDepth",0,1,"AlwaysStencilFunc",0,519,"AmbientLight",0,sa,"AnimationAction",0,sY,"AnimationClip",0,aB,"AnimationLoader",0,aq,"AnimationMixer",0,sJ,"AnimationObjectGroup",0,sq,"AnimationUtils",0,aE,"ArcCurve",0,rs,"ArrayCamera",0,sT,"ArrowHelper",0,oP,"AttachedBindMode",0,R,"Audio",0,sL,"AudioAnalyser",0,sz,"AudioContext",0,s_,"AudioListener",0,sI,"AudioLoader",0,sy,"AxesHelper",0,oI,"BackSide",0,1,"BasicDepthPacking",0,3200,"BasicShadowMap",0,0,"BatchedMesh",0,iz,"Bone",0,ie,"BooleanKeyframeTrack",0,aL,"Box2",0,oe,"Box3",0,eR,"Box3Helper",0,oA,"BoxGeometry",0,ng,"BoxHelper",0,oE,"BufferAttribute",0,tZ,"BufferGeometry",0,nn,"BufferGeometryLoader",0,sd,"ByteType",0,1010,"Cache",0,ak,"Camera",0,nS,"CameraHelper",0,oM,"CanvasTexture",0,rn,"CapsuleGeometry",0,rA,"CatmullRomCurve3",0,rd,"CineonToneMapping",0,3,"CircleGeometry",0,rC,"ClampToEdgeWrapping",0,1001,"Clock",0,sw,"Color",0,tz,"ColorKeyframeTrack",0,aN,"ColorManagement",0,eu,"CompressedArrayTexture",0,re,"CompressedCubeTexture",0,rt,"CompressedTexture",0,i7,"CompressedTextureLoader",0,aY,"ConeGeometry",0,rP,"ConstantAlphaFactor",0,213,"ConstantColorFactor",0,211,"Controls",0,oN,"CubeCamera",0,nA,"CubeReflectionMapping",0,301,"CubeRefractionMapping",0,302,"CubeTexture",0,nC,"CubeTextureLoader",0,aJ,"CubeUVReflectionMapping",0,306,"CubicBezierCurve",0,rg,"CubicBezierCurve3",0,rv,"CubicInterpolant",0,aC,"CullFaceBack",0,1,"CullFaceFront",0,2,"CullFaceFrontBack",0,3,"CullFaceNone",0,0,"Curve",0,rr,"CurvePath",0,rT,"CustomBlending",0,5,"CustomToneMapping",0,5,"CylinderGeometry",0,rR,"Cylindrical",0,s8,"Data3DTexture",0,eM,"DataArrayTexture",0,eb,"DataTexture",0,it,"DataTextureLoader",0,aK,"DataUtils",0,tX,"DecrementStencilOp",0,7683,"DecrementWrapStencilOp",0,34056,"DefaultLoadingManager",0,aV,"DepthFormat",0,1026,"DepthStencilFormat",0,1027,"DepthTexture",0,ri,"DetachedBindMode",0,P,"DirectionalLight",0,sr,"DirectionalLightHelper",0,ox,"DiscreteInterpolant",0,aP,"DodecahedronGeometry",0,rL,"DoubleSide",0,2,"DstAlphaFactor",0,206,"DstColorFactor",0,208,"DynamicCopyUsage",0,35050,"DynamicDrawUsage",0,35048,"DynamicReadUsage",0,35049,"EdgesGeometry",0,rF,"EllipseCurve",0,ra,"EqualCompare",0,514,"EqualDepth",0,4,"EqualStencilFunc",0,514,"EquirectangularReflectionMapping",0,303,"EquirectangularRefractionMapping",0,304,"Euler",0,tn,"EventDispatcher",0,O,"ExtrudeGeometry",0,r4,"FileLoader",0,aX,"Float16BufferAttribute",0,t3,"Float32BufferAttribute",0,t4,"FloatType",0,1015,"Fog",0,nI,"FogExp2",0,nP,"FramebufferTexture",0,i9,"FrontSide",0,0,"Frustum",0,iS,"GLBufferAttribute",0,s1,"GLSL1",0,"100","GLSL3",0,D,"GreaterCompare",0,516,"GreaterDepth",0,6,"GreaterEqualCompare",0,518,"GreaterEqualDepth",0,5,"GreaterEqualStencilFunc",0,518,"GreaterStencilFunc",0,516,"GridHelper",0,om,"Group",0,i6,"HalfFloatType",0,1016,"HemisphereLight",0,a0,"HemisphereLightHelper",0,of,"IcosahedronGeometry",0,r6,"ImageBitmapLoader",0,sv,"ImageLoader",0,aZ,"ImageUtils",0,ed,"IncrementStencilOp",0,7682,"IncrementWrapStencilOp",0,34055,"InstancedBufferAttribute",0,is,"InstancedBufferGeometry",0,sh,"InstancedInterleavedBuffer",0,s0,"InstancedMesh",0,im,"Int16BufferAttribute",0,tQ,"Int32BufferAttribute",0,t1,"Int8BufferAttribute",0,tJ,"IntType",0,1013,"InterleavedBuffer",0,nN,"InterleavedBufferAttribute",0,nD,"Interpolant",0,aA,"InterpolateDiscrete",0,2300,"InterpolateLinear",0,2301,"InterpolateSmooth",0,2302,"InvertStencilOp",0,5386,"KeepStencilOp",0,7680,"KeyframeTrack",0,aI,"LOD",0,nQ,"LatheGeometry",0,rE,"Layers",0,ti,"LessCompare",0,513,"LessDepth",0,2,"LessEqualCompare",0,515,"LessEqualDepth",0,3,"LessEqualStencilFunc",0,515,"LessStencilFunc",0,513,"Light",0,aQ,"LightProbe",0,sl,"Line",0,iq,"Line3",0,oi,"LineBasicMaterial",0,iB,"LineCurve",0,r_,"LineCurve3",0,ry,"LineDashedMaterial",0,ax,"LineLoop",0,i$,"LineSegments",0,iK,"LinearFilter",0,1006,"LinearInterpolant",0,aR,"LinearMipMapLinearFilter",0,1008,"LinearMipMapNearestFilter",0,1007,"LinearMipmapLinearFilter",0,1008,"LinearMipmapNearestFilter",0,1007,"LinearSRGBColorSpace",0,L,"LinearToneMapping",0,1,"LinearTransfer",0,N,"Loader",0,aG,"LoaderUtils",0,sc,"LoadingManager",0,aH,"LoopOnce",0,2200,"LoopPingPong",0,2202,"LoopRepeat",0,2201,"LuminanceAlphaFormat",0,1025,"LuminanceFormat",0,1024,"MOUSE",0,A,"Material",0,tH,"MaterialLoader",0,su,"MathUtils",0,q,"Matrix2",0,s9,"Matrix3",0,Z,"Matrix4",0,e2,"MaxEquation",0,104,"Mesh",0,nf,"MeshBasicMaterial",0,tV,"MeshDepthMaterial",0,av,"MeshDistanceMaterial",0,a_,"MeshLambertMaterial",0,ag,"MeshMatcapMaterial",0,ay,"MeshNormalMaterial",0,am,"MeshPhongMaterial",0,ap,"MeshPhysicalMaterial",0,ad,"MeshStandardMaterial",0,ah,"MeshToonMaterial",0,af,"MinEquation",0,103,"MirroredRepeatWrapping",0,1002,"MixOperation",0,1,"MultiplyBlending",0,4,"MultiplyOperation",0,0,"NearestFilter",0,1003,"NearestMipMapLinearFilter",0,1005,"NearestMipMapNearestFilter",0,1004,"NearestMipmapLinearFilter",0,1005,"NearestMipmapNearestFilter",0,1004,"NeutralToneMapping",0,7,"NeverCompare",0,512,"NeverDepth",0,0,"NeverStencilFunc",0,512,"NoBlending",0,0,"NoColorSpace",0,"","NoToneMapping",0,0,"NormalAnimationBlendMode",0,2500,"NormalBlending",0,1,"NotEqualCompare",0,517,"NotEqualDepth",0,7,"NotEqualStencilFunc",0,517,"NumberKeyframeTrack",0,aU,"Object3D",0,ty,"ObjectLoader",0,sp,"ObjectSpaceNormalMap",0,1,"OctahedronGeometry",0,r8,"OneFactor",0,201,"OneMinusConstantAlphaFactor",0,214,"OneMinusConstantColorFactor",0,212,"OneMinusDstAlphaFactor",0,207,"OneMinusDstColorFactor",0,209,"OneMinusSrcAlphaFactor",0,205,"OneMinusSrcColorFactor",0,203,"OrthographicCamera",0,sn,"PCFShadowMap",0,1,"PCFSoftShadowMap",0,2,"Path",0,rw,"PerspectiveCamera",0,nE,"Plane",0,iy,"PlaneGeometry",0,r9,"PlaneHelper",0,oC,"PointLight",0,st,"PointLightHelper",0,oc,"Points",0,i4,"PointsMaterial",0,iQ,"PolarGridHelper",0,og,"PolyhedronGeometry",0,rI,"PositionalAudio",0,sF,"PropertyBinding",0,sX,"PropertyMixer",0,sB,"QuadraticBezierCurve",0,rx,"QuadraticBezierCurve3",0,rb,"Quaternion",0,ew,"QuaternionKeyframeTrack",0,aO,"QuaternionLinearInterpolant",0,aD,"RAD2DEG",0,k,"RED_GREEN_RGTC2_Format",0,36285,"RED_RGTC1_Format",0,36283,"REVISION",0,"171","RGBADepthPacking",0,3201,"RGBAFormat",0,1023,"RGBAIntegerFormat",0,1033,"RGBA_ASTC_10x10_Format",0,37819,"RGBA_ASTC_10x5_Format",0,37816,"RGBA_ASTC_10x6_Format",0,37817,"RGBA_ASTC_10x8_Format",0,37818,"RGBA_ASTC_12x10_Format",0,37820,"RGBA_ASTC_12x12_Format",0,37821,"RGBA_ASTC_4x4_Format",0,37808,"RGBA_ASTC_5x4_Format",0,37809,"RGBA_ASTC_5x5_Format",0,37810,"RGBA_ASTC_6x5_Format",0,37811,"RGBA_ASTC_6x6_Format",0,37812,"RGBA_ASTC_8x5_Format",0,37813,"RGBA_ASTC_8x6_Format",0,37814,"RGBA_ASTC_8x8_Format",0,37815,"RGBA_BPTC_Format",0,36492,"RGBA_ETC2_EAC_Format",0,37496,"RGBA_PVRTC_2BPPV1_Format",0,35843,"RGBA_PVRTC_4BPPV1_Format",0,35842,"RGBA_S3TC_DXT1_Format",0,33777,"RGBA_S3TC_DXT3_Format",0,33778,"RGBA_S3TC_DXT5_Format",0,33779,"RGBDepthPacking",0,3202,"RGBFormat",0,1022,"RGBIntegerFormat",0,1032,"RGB_BPTC_SIGNED_Format",0,36494,"RGB_BPTC_UNSIGNED_Format",0,36495,"RGB_ETC1_Format",0,36196,"RGB_ETC2_Format",0,37492,"RGB_PVRTC_2BPPV1_Format",0,35841,"RGB_PVRTC_4BPPV1_Format",0,35840,"RGB_S3TC_DXT1_Format",0,33776,"RGDepthPacking",0,3203,"RGFormat",0,1030,"RGIntegerFormat",0,1031,"RawShaderMaterial",0,ac,"Ray",0,e1,"Raycaster",0,s3,"RectAreaLight",0,ss,"RedFormat",0,1028,"RedIntegerFormat",0,1029,"ReinhardToneMapping",0,2,"RenderTarget",0,ey,"RepeatWrapping",0,1e3,"ReplaceStencilOp",0,7681,"ReverseSubtractEquation",0,102,"RingGeometry",0,r7,"SIGNED_RED_GREEN_RGTC2_Format",0,36286,"SIGNED_RED_RGTC1_Format",0,36284,"SRGBColorSpace",0,I,"SRGBTransfer",0,U,"Scene",0,nL,"ShaderMaterial",0,nb,"ShadowMaterial",0,au,"Shape",0,rz,"ShapeGeometry",0,ae,"ShapePath",0,oL,"ShapeUtils",0,r1,"ShortType",0,1011,"Skeleton",0,ia,"SkeletonHelper",0,ou,"SkinnedMesh",0,n7,"Source",0,ef,"Sphere",0,eq,"SphereGeometry",0,at,"Spherical",0,s6,"SphericalHarmonics3",0,so,"SplineCurve",0,rS,"SpotLight",0,a6,"SpotLightHelper",0,oa,"Sprite",0,nZ,"SpriteMaterial",0,nO,"SrcAlphaFactor",0,204,"SrcAlphaSaturateFactor",0,210,"SrcColorFactor",0,202,"StaticCopyUsage",0,35046,"StaticDrawUsage",0,35044,"StaticReadUsage",0,35045,"StereoCamera",0,sM,"StreamCopyUsage",0,35042,"StreamDrawUsage",0,35040,"StreamReadUsage",0,35041,"StringKeyframeTrack",0,aF,"SubtractEquation",0,101,"SubtractiveBlending",0,3,"TOUCH",0,C,"TangentSpaceNormalMap",0,0,"TetrahedronGeometry",0,an,"Texture",0,ev,"TextureLoader",0,a$,"TextureUtils",0,oD,"TorusGeometry",0,ai,"TorusKnotGeometry",0,ar,"Triangle",0,tN,"TriangleFanDrawMode",0,2,"TriangleStripDrawMode",0,1,"TrianglesDrawMode",0,0,"TubeGeometry",0,aa,"UVMapping",0,300,"Uint16BufferAttribute",0,t0,"Uint32BufferAttribute",0,t2,"Uint8BufferAttribute",0,tK,"Uint8ClampedBufferAttribute",0,t$,"Uniform",0,sK,"UniformsGroup",0,sQ,"UniformsUtils",0,nx,"UnsignedByteType",0,1009,"UnsignedInt248Type",0,1020,"UnsignedInt5999Type",0,35902,"UnsignedIntType",0,1014,"UnsignedShort4444Type",0,1017,"UnsignedShort5551Type",0,1018,"UnsignedShortType",0,1012,"VSMShadowMap",0,3,"Vector2",0,Y,"Vector3",0,eE,"Vector4",0,e_,"VectorKeyframeTrack",0,az,"VideoTexture",0,i8,"WebGL3DRenderTarget",0,eT,"WebGLArrayRenderTarget",0,eS,"WebGLCoordinateSystem",0,2e3,"WebGLCubeRenderTarget",0,nR,"WebGLMultipleRenderTargets",0,oO,"WebGLRenderTarget",0,ex,"WebGPUCoordinateSystem",0,2001,"WireframeGeometry",0,as,"WrapAroundEnding",0,2402,"ZeroCurvatureEnding",0,2400,"ZeroFactor",0,200,"ZeroSlopeEnding",0,2401,"ZeroStencilOp",0,0,"arrayNeedsUint32",0,K,"cloneUniforms",0,nv,"createCanvasElement",0,et,"createElementNS",0,ee,"getByteLength",0,oU,"getUnlitUniformColorSpace",0,ny,"mergeUniforms",0,n_,"probeAsync",0,er,"toNormalizedProjectionMatrix",0,ea,"toReversedProjectionMatrix",0,es,"warnOnce",0,ei],90072);let oB={alphahash_fragment:"#ifdef USE_ALPHAHASH\n if ( diffuseColor.a < getAlphaHashThreshold( vPosition ) ) discard;\n#endif",alphahash_pars_fragment:"#ifdef USE_ALPHAHASH\n const float ALPHA_HASH_SCALE = 0.05;\n float hash2D( vec2 value ) {\n return fract( 1.0e4 * sin( 17.0 * value.x + 0.1 * value.y ) * ( 0.1 + abs( sin( 13.0 * value.y + value.x ) ) ) );\n }\n float hash3D( vec3 value ) {\n return hash2D( vec2( hash2D( value.xy ), value.z ) );\n }\n float getAlphaHashThreshold( vec3 position ) {\n float maxDeriv = max(\n length( dFdx( position.xyz ) ),\n length( dFdy( position.xyz ) )\n );\n float pixScale = 1.0 / ( ALPHA_HASH_SCALE * maxDeriv );\n vec2 pixScales = vec2(\n exp2( floor( log2( pixScale ) ) ),\n exp2( ceil( log2( pixScale ) ) )\n );\n vec2 alpha = vec2(\n hash3D( floor( pixScales.x * position.xyz ) ),\n hash3D( floor( pixScales.y * position.xyz ) )\n );\n float lerpFactor = fract( log2( pixScale ) );\n float x = ( 1.0 - lerpFactor ) * alpha.x + lerpFactor * alpha.y;\n float a = min( lerpFactor, 1.0 - lerpFactor );\n vec3 cases = vec3(\n x * x / ( 2.0 * a * ( 1.0 - a ) ),\n ( x - 0.5 * a ) / ( 1.0 - a ),\n 1.0 - ( ( 1.0 - x ) * ( 1.0 - x ) / ( 2.0 * a * ( 1.0 - a ) ) )\n );\n float threshold = ( x < ( 1.0 - a ) )\n ? ( ( x < a ) ? cases.x : cases.y )\n : cases.z;\n return clamp( threshold , 1.0e-6, 1.0 );\n }\n#endif",alphamap_fragment:"#ifdef USE_ALPHAMAP\n diffuseColor.a *= texture2D( alphaMap, vAlphaMapUv ).g;\n#endif",alphamap_pars_fragment:"#ifdef USE_ALPHAMAP\n uniform sampler2D alphaMap;\n#endif",alphatest_fragment:"#ifdef USE_ALPHATEST\n #ifdef ALPHA_TO_COVERAGE\n diffuseColor.a = smoothstep( alphaTest, alphaTest + fwidth( diffuseColor.a ), diffuseColor.a );\n if ( diffuseColor.a == 0.0 ) discard;\n #else\n if ( diffuseColor.a < alphaTest ) discard;\n #endif\n#endif",alphatest_pars_fragment:"#ifdef USE_ALPHATEST\n uniform float alphaTest;\n#endif",aomap_fragment:"#ifdef USE_AOMAP\n float ambientOcclusion = ( texture2D( aoMap, vAoMapUv ).r - 1.0 ) * aoMapIntensity + 1.0;\n reflectedLight.indirectDiffuse *= ambientOcclusion;\n #if defined( USE_CLEARCOAT ) \n clearcoatSpecularIndirect *= ambientOcclusion;\n #endif\n #if defined( USE_SHEEN ) \n sheenSpecularIndirect *= ambientOcclusion;\n #endif\n #if defined( USE_ENVMAP ) && defined( STANDARD )\n float dotNV = saturate( dot( geometryNormal, geometryViewDir ) );\n reflectedLight.indirectSpecular *= computeSpecularOcclusion( dotNV, ambientOcclusion, material.roughness );\n #endif\n#endif",aomap_pars_fragment:"#ifdef USE_AOMAP\n uniform sampler2D aoMap;\n uniform float aoMapIntensity;\n#endif",batching_pars_vertex:"#ifdef USE_BATCHING\n #if ! defined( GL_ANGLE_multi_draw )\n #define gl_DrawID _gl_DrawID\n uniform int _gl_DrawID;\n #endif\n uniform highp sampler2D batchingTexture;\n uniform highp usampler2D batchingIdTexture;\n mat4 getBatchingMatrix( const in float i ) {\n int size = textureSize( batchingTexture, 0 ).x;\n int j = int( i ) * 4;\n int x = j % size;\n int y = j / size;\n vec4 v1 = texelFetch( batchingTexture, ivec2( x, y ), 0 );\n vec4 v2 = texelFetch( batchingTexture, ivec2( x + 1, y ), 0 );\n vec4 v3 = texelFetch( batchingTexture, ivec2( x + 2, y ), 0 );\n vec4 v4 = texelFetch( batchingTexture, ivec2( x + 3, y ), 0 );\n return mat4( v1, v2, v3, v4 );\n }\n float getIndirectIndex( const in int i ) {\n int size = textureSize( batchingIdTexture, 0 ).x;\n int x = i % size;\n int y = i / size;\n return float( texelFetch( batchingIdTexture, ivec2( x, y ), 0 ).r );\n }\n#endif\n#ifdef USE_BATCHING_COLOR\n uniform sampler2D batchingColorTexture;\n vec3 getBatchingColor( const in float i ) {\n int size = textureSize( batchingColorTexture, 0 ).x;\n int j = int( i );\n int x = j % size;\n int y = j / size;\n return texelFetch( batchingColorTexture, ivec2( x, y ), 0 ).rgb;\n }\n#endif",batching_vertex:"#ifdef USE_BATCHING\n mat4 batchingMatrix = getBatchingMatrix( getIndirectIndex( gl_DrawID ) );\n#endif",begin_vertex:"vec3 transformed = vec3( position );\n#ifdef USE_ALPHAHASH\n vPosition = vec3( position );\n#endif",beginnormal_vertex:"vec3 objectNormal = vec3( normal );\n#ifdef USE_TANGENT\n vec3 objectTangent = vec3( tangent.xyz );\n#endif",bsdfs:"float G_BlinnPhong_Implicit( ) {\n return 0.25;\n}\nfloat D_BlinnPhong( const in float shininess, const in float dotNH ) {\n return RECIPROCAL_PI * ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess );\n}\nvec3 BRDF_BlinnPhong( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in vec3 specularColor, const in float shininess ) {\n vec3 halfDir = normalize( lightDir + viewDir );\n float dotNH = saturate( dot( normal, halfDir ) );\n float dotVH = saturate( dot( viewDir, halfDir ) );\n vec3 F = F_Schlick( specularColor, 1.0, dotVH );\n float G = G_BlinnPhong_Implicit( );\n float D = D_BlinnPhong( shininess, dotNH );\n return F * ( G * D );\n} // validated",iridescence_fragment:"#ifdef USE_IRIDESCENCE\n const mat3 XYZ_TO_REC709 = mat3(\n 3.2404542, -0.9692660, 0.0556434,\n -1.5371385, 1.8760108, -0.2040259,\n -0.4985314, 0.0415560, 1.0572252\n );\n vec3 Fresnel0ToIor( vec3 fresnel0 ) {\n vec3 sqrtF0 = sqrt( fresnel0 );\n return ( vec3( 1.0 ) + sqrtF0 ) / ( vec3( 1.0 ) - sqrtF0 );\n }\n vec3 IorToFresnel0( vec3 transmittedIor, float incidentIor ) {\n return pow2( ( transmittedIor - vec3( incidentIor ) ) / ( transmittedIor + vec3( incidentIor ) ) );\n }\n float IorToFresnel0( float transmittedIor, float incidentIor ) {\n return pow2( ( transmittedIor - incidentIor ) / ( transmittedIor + incidentIor ));\n }\n vec3 evalSensitivity( float OPD, vec3 shift ) {\n float phase = 2.0 * PI * OPD * 1.0e-9;\n vec3 val = vec3( 5.4856e-13, 4.4201e-13, 5.2481e-13 );\n vec3 pos = vec3( 1.6810e+06, 1.7953e+06, 2.2084e+06 );\n vec3 var = vec3( 4.3278e+09, 9.3046e+09, 6.6121e+09 );\n vec3 xyz = val * sqrt( 2.0 * PI * var ) * cos( pos * phase + shift ) * exp( - pow2( phase ) * var );\n xyz.x += 9.7470e-14 * sqrt( 2.0 * PI * 4.5282e+09 ) * cos( 2.2399e+06 * phase + shift[ 0 ] ) * exp( - 4.5282e+09 * pow2( phase ) );\n xyz /= 1.0685e-7;\n vec3 rgb = XYZ_TO_REC709 * xyz;\n return rgb;\n }\n vec3 evalIridescence( float outsideIOR, float eta2, float cosTheta1, float thinFilmThickness, vec3 baseF0 ) {\n vec3 I;\n float iridescenceIOR = mix( outsideIOR, eta2, smoothstep( 0.0, 0.03, thinFilmThickness ) );\n float sinTheta2Sq = pow2( outsideIOR / iridescenceIOR ) * ( 1.0 - pow2( cosTheta1 ) );\n float cosTheta2Sq = 1.0 - sinTheta2Sq;\n if ( cosTheta2Sq < 0.0 ) {\n return vec3( 1.0 );\n }\n float cosTheta2 = sqrt( cosTheta2Sq );\n float R0 = IorToFresnel0( iridescenceIOR, outsideIOR );\n float R12 = F_Schlick( R0, 1.0, cosTheta1 );\n float T121 = 1.0 - R12;\n float phi12 = 0.0;\n if ( iridescenceIOR < outsideIOR ) phi12 = PI;\n float phi21 = PI - phi12;\n vec3 baseIOR = Fresnel0ToIor( clamp( baseF0, 0.0, 0.9999 ) ); vec3 R1 = IorToFresnel0( baseIOR, iridescenceIOR );\n vec3 R23 = F_Schlick( R1, 1.0, cosTheta2 );\n vec3 phi23 = vec3( 0.0 );\n if ( baseIOR[ 0 ] < iridescenceIOR ) phi23[ 0 ] = PI;\n if ( baseIOR[ 1 ] < iridescenceIOR ) phi23[ 1 ] = PI;\n if ( baseIOR[ 2 ] < iridescenceIOR ) phi23[ 2 ] = PI;\n float OPD = 2.0 * iridescenceIOR * thinFilmThickness * cosTheta2;\n vec3 phi = vec3( phi21 ) + phi23;\n vec3 R123 = clamp( R12 * R23, 1e-5, 0.9999 );\n vec3 r123 = sqrt( R123 );\n vec3 Rs = pow2( T121 ) * R23 / ( vec3( 1.0 ) - R123 );\n vec3 C0 = R12 + Rs;\n I = C0;\n vec3 Cm = Rs - T121;\n for ( int m = 1; m <= 2; ++ m ) {\n Cm *= r123;\n vec3 Sm = 2.0 * evalSensitivity( float( m ) * OPD, float( m ) * phi );\n I += Cm * Sm;\n }\n return max( I, vec3( 0.0 ) );\n }\n#endif",bumpmap_pars_fragment:"#ifdef USE_BUMPMAP\n uniform sampler2D bumpMap;\n uniform float bumpScale;\n vec2 dHdxy_fwd() {\n vec2 dSTdx = dFdx( vBumpMapUv );\n vec2 dSTdy = dFdy( vBumpMapUv );\n float Hll = bumpScale * texture2D( bumpMap, vBumpMapUv ).x;\n float dBx = bumpScale * texture2D( bumpMap, vBumpMapUv + dSTdx ).x - Hll;\n float dBy = bumpScale * texture2D( bumpMap, vBumpMapUv + dSTdy ).x - Hll;\n return vec2( dBx, dBy );\n }\n vec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy, float faceDirection ) {\n vec3 vSigmaX = normalize( dFdx( surf_pos.xyz ) );\n vec3 vSigmaY = normalize( dFdy( surf_pos.xyz ) );\n vec3 vN = surf_norm;\n vec3 R1 = cross( vSigmaY, vN );\n vec3 R2 = cross( vN, vSigmaX );\n float fDet = dot( vSigmaX, R1 ) * faceDirection;\n vec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 );\n return normalize( abs( fDet ) * surf_norm - vGrad );\n }\n#endif",clipping_planes_fragment:"#if NUM_CLIPPING_PLANES > 0\n vec4 plane;\n #ifdef ALPHA_TO_COVERAGE\n float distanceToPlane, distanceGradient;\n float clipOpacity = 1.0;\n #pragma unroll_loop_start\n for ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\n plane = clippingPlanes[ i ];\n distanceToPlane = - dot( vClipPosition, plane.xyz ) + plane.w;\n distanceGradient = fwidth( distanceToPlane ) / 2.0;\n clipOpacity *= smoothstep( - distanceGradient, distanceGradient, distanceToPlane );\n if ( clipOpacity == 0.0 ) discard;\n }\n #pragma unroll_loop_end\n #if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\n float unionClipOpacity = 1.0;\n #pragma unroll_loop_start\n for ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\n plane = clippingPlanes[ i ];\n distanceToPlane = - dot( vClipPosition, plane.xyz ) + plane.w;\n distanceGradient = fwidth( distanceToPlane ) / 2.0;\n unionClipOpacity *= 1.0 - smoothstep( - distanceGradient, distanceGradient, distanceToPlane );\n }\n #pragma unroll_loop_end\n clipOpacity *= 1.0 - unionClipOpacity;\n #endif\n diffuseColor.a *= clipOpacity;\n if ( diffuseColor.a == 0.0 ) discard;\n #else\n #pragma unroll_loop_start\n for ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\n plane = clippingPlanes[ i ];\n if ( dot( vClipPosition, plane.xyz ) > plane.w ) discard;\n }\n #pragma unroll_loop_end\n #if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\n bool clipped = true;\n #pragma unroll_loop_start\n for ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\n plane = clippingPlanes[ i ];\n clipped = ( dot( vClipPosition, plane.xyz ) > plane.w ) && clipped;\n }\n #pragma unroll_loop_end\n if ( clipped ) discard;\n #endif\n #endif\n#endif",clipping_planes_pars_fragment:"#if NUM_CLIPPING_PLANES > 0\n varying vec3 vClipPosition;\n uniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];\n#endif",clipping_planes_pars_vertex:"#if NUM_CLIPPING_PLANES > 0\n varying vec3 vClipPosition;\n#endif",clipping_planes_vertex:"#if NUM_CLIPPING_PLANES > 0\n vClipPosition = - mvPosition.xyz;\n#endif",color_fragment:"#if defined( USE_COLOR_ALPHA )\n diffuseColor *= vColor;\n#elif defined( USE_COLOR )\n diffuseColor.rgb *= vColor;\n#endif",color_pars_fragment:"#if defined( USE_COLOR_ALPHA )\n varying vec4 vColor;\n#elif defined( USE_COLOR )\n varying vec3 vColor;\n#endif",color_pars_vertex:"#if defined( USE_COLOR_ALPHA )\n varying vec4 vColor;\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) || defined( USE_BATCHING_COLOR )\n varying vec3 vColor;\n#endif",color_vertex:"#if defined( USE_COLOR_ALPHA )\n vColor = vec4( 1.0 );\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) || defined( USE_BATCHING_COLOR )\n vColor = vec3( 1.0 );\n#endif\n#ifdef USE_COLOR\n vColor *= color;\n#endif\n#ifdef USE_INSTANCING_COLOR\n vColor.xyz *= instanceColor.xyz;\n#endif\n#ifdef USE_BATCHING_COLOR\n vec3 batchingColor = getBatchingColor( getIndirectIndex( gl_DrawID ) );\n vColor.xyz *= batchingColor.xyz;\n#endif",common:"#define PI 3.141592653589793\n#define PI2 6.283185307179586\n#define PI_HALF 1.5707963267948966\n#define RECIPROCAL_PI 0.3183098861837907\n#define RECIPROCAL_PI2 0.15915494309189535\n#define EPSILON 1e-6\n#ifndef saturate\n#define saturate( a ) clamp( a, 0.0, 1.0 )\n#endif\n#define whiteComplement( a ) ( 1.0 - saturate( a ) )\nfloat pow2( const in float x ) { return x*x; }\nvec3 pow2( const in vec3 x ) { return x*x; }\nfloat pow3( const in float x ) { return x*x*x; }\nfloat pow4( const in float x ) { float x2 = x*x; return x2*x2; }\nfloat max3( const in vec3 v ) { return max( max( v.x, v.y ), v.z ); }\nfloat average( const in vec3 v ) { return dot( v, vec3( 0.3333333 ) ); }\nhighp float rand( const in vec2 uv ) {\n const highp float a = 12.9898, b = 78.233, c = 43758.5453;\n highp float dt = dot( uv.xy, vec2( a,b ) ), sn = mod( dt, PI );\n return fract( sin( sn ) * c );\n}\n#ifdef HIGH_PRECISION\n float precisionSafeLength( vec3 v ) { return length( v ); }\n#else\n float precisionSafeLength( vec3 v ) {\n float maxComponent = max3( abs( v ) );\n return length( v / maxComponent ) * maxComponent;\n }\n#endif\nstruct IncidentLight {\n vec3 color;\n vec3 direction;\n bool visible;\n};\nstruct ReflectedLight {\n vec3 directDiffuse;\n vec3 directSpecular;\n vec3 indirectDiffuse;\n vec3 indirectSpecular;\n};\n#ifdef USE_ALPHAHASH\n varying vec3 vPosition;\n#endif\nvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\n return normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\n}\nvec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) {\n return normalize( ( vec4( dir, 0.0 ) * matrix ).xyz );\n}\nmat3 transposeMat3( const in mat3 m ) {\n mat3 tmp;\n tmp[ 0 ] = vec3( m[ 0 ].x, m[ 1 ].x, m[ 2 ].x );\n tmp[ 1 ] = vec3( m[ 0 ].y, m[ 1 ].y, m[ 2 ].y );\n tmp[ 2 ] = vec3( m[ 0 ].z, m[ 1 ].z, m[ 2 ].z );\n return tmp;\n}\nbool isPerspectiveMatrix( mat4 m ) {\n return m[ 2 ][ 3 ] == - 1.0;\n}\nvec2 equirectUv( in vec3 dir ) {\n float u = atan( dir.z, dir.x ) * RECIPROCAL_PI2 + 0.5;\n float v = asin( clamp( dir.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\n return vec2( u, v );\n}\nvec3 BRDF_Lambert( const in vec3 diffuseColor ) {\n return RECIPROCAL_PI * diffuseColor;\n}\nvec3 F_Schlick( const in vec3 f0, const in float f90, const in float dotVH ) {\n float fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );\n return f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );\n}\nfloat F_Schlick( const in float f0, const in float f90, const in float dotVH ) {\n float fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );\n return f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );\n} // validated",cube_uv_reflection_fragment:"#ifdef ENVMAP_TYPE_CUBE_UV\n #define cubeUV_minMipLevel 4.0\n #define cubeUV_minTileSize 16.0\n float getFace( vec3 direction ) {\n vec3 absDirection = abs( direction );\n float face = - 1.0;\n if ( absDirection.x > absDirection.z ) {\n if ( absDirection.x > absDirection.y )\n face = direction.x > 0.0 ? 0.0 : 3.0;\n else\n face = direction.y > 0.0 ? 1.0 : 4.0;\n } else {\n if ( absDirection.z > absDirection.y )\n face = direction.z > 0.0 ? 2.0 : 5.0;\n else\n face = direction.y > 0.0 ? 1.0 : 4.0;\n }\n return face;\n }\n vec2 getUV( vec3 direction, float face ) {\n vec2 uv;\n if ( face == 0.0 ) {\n uv = vec2( direction.z, direction.y ) / abs( direction.x );\n } else if ( face == 1.0 ) {\n uv = vec2( - direction.x, - direction.z ) / abs( direction.y );\n } else if ( face == 2.0 ) {\n uv = vec2( - direction.x, direction.y ) / abs( direction.z );\n } else if ( face == 3.0 ) {\n uv = vec2( - direction.z, direction.y ) / abs( direction.x );\n } else if ( face == 4.0 ) {\n uv = vec2( - direction.x, direction.z ) / abs( direction.y );\n } else {\n uv = vec2( direction.x, direction.y ) / abs( direction.z );\n }\n return 0.5 * ( uv + 1.0 );\n }\n vec3 bilinearCubeUV( sampler2D envMap, vec3 direction, float mipInt ) {\n float face = getFace( direction );\n float filterInt = max( cubeUV_minMipLevel - mipInt, 0.0 );\n mipInt = max( mipInt, cubeUV_minMipLevel );\n float faceSize = exp2( mipInt );\n highp vec2 uv = getUV( direction, face ) * ( faceSize - 2.0 ) + 1.0;\n if ( face > 2.0 ) {\n uv.y += faceSize;\n face -= 3.0;\n }\n uv.x += face * faceSize;\n uv.x += filterInt * 3.0 * cubeUV_minTileSize;\n uv.y += 4.0 * ( exp2( CUBEUV_MAX_MIP ) - faceSize );\n uv.x *= CUBEUV_TEXEL_WIDTH;\n uv.y *= CUBEUV_TEXEL_HEIGHT;\n #ifdef texture2DGradEXT\n return texture2DGradEXT( envMap, uv, vec2( 0.0 ), vec2( 0.0 ) ).rgb;\n #else\n return texture2D( envMap, uv ).rgb;\n #endif\n }\n #define cubeUV_r0 1.0\n #define cubeUV_m0 - 2.0\n #define cubeUV_r1 0.8\n #define cubeUV_m1 - 1.0\n #define cubeUV_r4 0.4\n #define cubeUV_m4 2.0\n #define cubeUV_r5 0.305\n #define cubeUV_m5 3.0\n #define cubeUV_r6 0.21\n #define cubeUV_m6 4.0\n float roughnessToMip( float roughness ) {\n float mip = 0.0;\n if ( roughness >= cubeUV_r1 ) {\n mip = ( cubeUV_r0 - roughness ) * ( cubeUV_m1 - cubeUV_m0 ) / ( cubeUV_r0 - cubeUV_r1 ) + cubeUV_m0;\n } else if ( roughness >= cubeUV_r4 ) {\n mip = ( cubeUV_r1 - roughness ) * ( cubeUV_m4 - cubeUV_m1 ) / ( cubeUV_r1 - cubeUV_r4 ) + cubeUV_m1;\n } else if ( roughness >= cubeUV_r5 ) {\n mip = ( cubeUV_r4 - roughness ) * ( cubeUV_m5 - cubeUV_m4 ) / ( cubeUV_r4 - cubeUV_r5 ) + cubeUV_m4;\n } else if ( roughness >= cubeUV_r6 ) {\n mip = ( cubeUV_r5 - roughness ) * ( cubeUV_m6 - cubeUV_m5 ) / ( cubeUV_r5 - cubeUV_r6 ) + cubeUV_m5;\n } else {\n mip = - 2.0 * log2( 1.16 * roughness ); }\n return mip;\n }\n vec4 textureCubeUV( sampler2D envMap, vec3 sampleDir, float roughness ) {\n float mip = clamp( roughnessToMip( roughness ), cubeUV_m0, CUBEUV_MAX_MIP );\n float mipF = fract( mip );\n float mipInt = floor( mip );\n vec3 color0 = bilinearCubeUV( envMap, sampleDir, mipInt );\n if ( mipF == 0.0 ) {\n return vec4( color0, 1.0 );\n } else {\n vec3 color1 = bilinearCubeUV( envMap, sampleDir, mipInt + 1.0 );\n return vec4( mix( color0, color1, mipF ), 1.0 );\n }\n }\n#endif",defaultnormal_vertex:"vec3 transformedNormal = objectNormal;\n#ifdef USE_TANGENT\n vec3 transformedTangent = objectTangent;\n#endif\n#ifdef USE_BATCHING\n mat3 bm = mat3( batchingMatrix );\n transformedNormal /= vec3( dot( bm[ 0 ], bm[ 0 ] ), dot( bm[ 1 ], bm[ 1 ] ), dot( bm[ 2 ], bm[ 2 ] ) );\n transformedNormal = bm * transformedNormal;\n #ifdef USE_TANGENT\n transformedTangent = bm * transformedTangent;\n #endif\n#endif\n#ifdef USE_INSTANCING\n mat3 im = mat3( instanceMatrix );\n transformedNormal /= vec3( dot( im[ 0 ], im[ 0 ] ), dot( im[ 1 ], im[ 1 ] ), dot( im[ 2 ], im[ 2 ] ) );\n transformedNormal = im * transformedNormal;\n #ifdef USE_TANGENT\n transformedTangent = im * transformedTangent;\n #endif\n#endif\ntransformedNormal = normalMatrix * transformedNormal;\n#ifdef FLIP_SIDED\n transformedNormal = - transformedNormal;\n#endif\n#ifdef USE_TANGENT\n transformedTangent = ( modelViewMatrix * vec4( transformedTangent, 0.0 ) ).xyz;\n #ifdef FLIP_SIDED\n transformedTangent = - transformedTangent;\n #endif\n#endif",displacementmap_pars_vertex:"#ifdef USE_DISPLACEMENTMAP\n uniform sampler2D displacementMap;\n uniform float displacementScale;\n uniform float displacementBias;\n#endif",displacementmap_vertex:"#ifdef USE_DISPLACEMENTMAP\n transformed += normalize( objectNormal ) * ( texture2D( displacementMap, vDisplacementMapUv ).x * displacementScale + displacementBias );\n#endif",emissivemap_fragment:"#ifdef USE_EMISSIVEMAP\n vec4 emissiveColor = texture2D( emissiveMap, vEmissiveMapUv );\n #ifdef DECODE_VIDEO_TEXTURE_EMISSIVE\n emissiveColor = sRGBTransferEOTF( emissiveColor );\n #endif\n totalEmissiveRadiance *= emissiveColor.rgb;\n#endif",emissivemap_pars_fragment:"#ifdef USE_EMISSIVEMAP\n uniform sampler2D emissiveMap;\n#endif",colorspace_fragment:"gl_FragColor = linearToOutputTexel( gl_FragColor );",colorspace_pars_fragment:"vec4 LinearTransferOETF( in vec4 value ) {\n return value;\n}\nvec4 sRGBTransferEOTF( in vec4 value ) {\n return vec4( mix( pow( value.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), value.rgb * 0.0773993808, vec3( lessThanEqual( value.rgb, vec3( 0.04045 ) ) ) ), value.a );\n}\nvec4 sRGBTransferOETF( in vec4 value ) {\n return vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.a );\n}",envmap_fragment:"#ifdef USE_ENVMAP\n #ifdef ENV_WORLDPOS\n vec3 cameraToFrag;\n if ( isOrthographic ) {\n cameraToFrag = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\n } else {\n cameraToFrag = normalize( vWorldPosition - cameraPosition );\n }\n vec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n #ifdef ENVMAP_MODE_REFLECTION\n vec3 reflectVec = reflect( cameraToFrag, worldNormal );\n #else\n vec3 reflectVec = refract( cameraToFrag, worldNormal, refractionRatio );\n #endif\n #else\n vec3 reflectVec = vReflect;\n #endif\n #ifdef ENVMAP_TYPE_CUBE\n vec4 envColor = textureCube( envMap, envMapRotation * vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );\n #else\n vec4 envColor = vec4( 0.0 );\n #endif\n #ifdef ENVMAP_BLENDING_MULTIPLY\n outgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );\n #elif defined( ENVMAP_BLENDING_MIX )\n outgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );\n #elif defined( ENVMAP_BLENDING_ADD )\n outgoingLight += envColor.xyz * specularStrength * reflectivity;\n #endif\n#endif",envmap_common_pars_fragment:"#ifdef USE_ENVMAP\n uniform float envMapIntensity;\n uniform float flipEnvMap;\n uniform mat3 envMapRotation;\n #ifdef ENVMAP_TYPE_CUBE\n uniform samplerCube envMap;\n #else\n uniform sampler2D envMap;\n #endif\n \n#endif",envmap_pars_fragment:"#ifdef USE_ENVMAP\n uniform float reflectivity;\n #if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT )\n #define ENV_WORLDPOS\n #endif\n #ifdef ENV_WORLDPOS\n varying vec3 vWorldPosition;\n uniform float refractionRatio;\n #else\n varying vec3 vReflect;\n #endif\n#endif",envmap_pars_vertex:"#ifdef USE_ENVMAP\n #if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT )\n #define ENV_WORLDPOS\n #endif\n #ifdef ENV_WORLDPOS\n \n varying vec3 vWorldPosition;\n #else\n varying vec3 vReflect;\n uniform float refractionRatio;\n #endif\n#endif",envmap_physical_pars_fragment:"#ifdef USE_ENVMAP\n vec3 getIBLIrradiance( const in vec3 normal ) {\n #ifdef ENVMAP_TYPE_CUBE_UV\n vec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n vec4 envMapColor = textureCubeUV( envMap, envMapRotation * worldNormal, 1.0 );\n return PI * envMapColor.rgb * envMapIntensity;\n #else\n return vec3( 0.0 );\n #endif\n }\n vec3 getIBLRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness ) {\n #ifdef ENVMAP_TYPE_CUBE_UV\n vec3 reflectVec = reflect( - viewDir, normal );\n reflectVec = normalize( mix( reflectVec, normal, roughness * roughness) );\n reflectVec = inverseTransformDirection( reflectVec, viewMatrix );\n vec4 envMapColor = textureCubeUV( envMap, envMapRotation * reflectVec, roughness );\n return envMapColor.rgb * envMapIntensity;\n #else\n return vec3( 0.0 );\n #endif\n }\n #ifdef USE_ANISOTROPY\n vec3 getIBLAnisotropyRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness, const in vec3 bitangent, const in float anisotropy ) {\n #ifdef ENVMAP_TYPE_CUBE_UV\n vec3 bentNormal = cross( bitangent, viewDir );\n bentNormal = normalize( cross( bentNormal, bitangent ) );\n bentNormal = normalize( mix( bentNormal, normal, pow2( pow2( 1.0 - anisotropy * ( 1.0 - roughness ) ) ) ) );\n return getIBLRadiance( viewDir, bentNormal, roughness );\n #else\n return vec3( 0.0 );\n #endif\n }\n #endif\n#endif",envmap_vertex:"#ifdef USE_ENVMAP\n #ifdef ENV_WORLDPOS\n vWorldPosition = worldPosition.xyz;\n #else\n vec3 cameraToVertex;\n if ( isOrthographic ) {\n cameraToVertex = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\n } else {\n cameraToVertex = normalize( worldPosition.xyz - cameraPosition );\n }\n vec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\n #ifdef ENVMAP_MODE_REFLECTION\n vReflect = reflect( cameraToVertex, worldNormal );\n #else\n vReflect = refract( cameraToVertex, worldNormal, refractionRatio );\n #endif\n #endif\n#endif",fog_vertex:"#ifdef USE_FOG\n vFogDepth = - mvPosition.z;\n#endif",fog_pars_vertex:"#ifdef USE_FOG\n varying float vFogDepth;\n#endif",fog_fragment:"#ifdef USE_FOG\n #ifdef FOG_EXP2\n float fogFactor = 1.0 - exp( - fogDensity * fogDensity * vFogDepth * vFogDepth );\n #else\n float fogFactor = smoothstep( fogNear, fogFar, vFogDepth );\n #endif\n gl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor );\n#endif",fog_pars_fragment:"#ifdef USE_FOG\n uniform vec3 fogColor;\n varying float vFogDepth;\n #ifdef FOG_EXP2\n uniform float fogDensity;\n #else\n uniform float fogNear;\n uniform float fogFar;\n #endif\n#endif",gradientmap_pars_fragment:"#ifdef USE_GRADIENTMAP\n uniform sampler2D gradientMap;\n#endif\nvec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) {\n float dotNL = dot( normal, lightDirection );\n vec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 );\n #ifdef USE_GRADIENTMAP\n return vec3( texture2D( gradientMap, coord ).r );\n #else\n vec2 fw = fwidth( coord ) * 0.5;\n return mix( vec3( 0.7 ), vec3( 1.0 ), smoothstep( 0.7 - fw.x, 0.7 + fw.x, coord.x ) );\n #endif\n}",lightmap_pars_fragment:"#ifdef USE_LIGHTMAP\n uniform sampler2D lightMap;\n uniform float lightMapIntensity;\n#endif",lights_lambert_fragment:"LambertMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularStrength = specularStrength;",lights_lambert_pars_fragment:"varying vec3 vViewPosition;\nstruct LambertMaterial {\n vec3 diffuseColor;\n float specularStrength;\n};\nvoid RE_Direct_Lambert( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in LambertMaterial material, inout ReflectedLight reflectedLight ) {\n float dotNL = saturate( dot( geometryNormal, directLight.direction ) );\n vec3 irradiance = dotNL * directLight.color;\n reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Lambert( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in LambertMaterial material, inout ReflectedLight reflectedLight ) {\n reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\n#define RE_Direct RE_Direct_Lambert\n#define RE_IndirectDiffuse RE_IndirectDiffuse_Lambert",lights_pars_begin:"uniform bool receiveShadow;\nuniform vec3 ambientLightColor;\n#if defined( USE_LIGHT_PROBES )\n uniform vec3 lightProbe[ 9 ];\n#endif\nvec3 shGetIrradianceAt( in vec3 normal, in vec3 shCoefficients[ 9 ] ) {\n float x = normal.x, y = normal.y, z = normal.z;\n vec3 result = shCoefficients[ 0 ] * 0.886227;\n result += shCoefficients[ 1 ] * 2.0 * 0.511664 * y;\n result += shCoefficients[ 2 ] * 2.0 * 0.511664 * z;\n result += shCoefficients[ 3 ] * 2.0 * 0.511664 * x;\n result += shCoefficients[ 4 ] * 2.0 * 0.429043 * x * y;\n result += shCoefficients[ 5 ] * 2.0 * 0.429043 * y * z;\n result += shCoefficients[ 6 ] * ( 0.743125 * z * z - 0.247708 );\n result += shCoefficients[ 7 ] * 2.0 * 0.429043 * x * z;\n result += shCoefficients[ 8 ] * 0.429043 * ( x * x - y * y );\n return result;\n}\nvec3 getLightProbeIrradiance( const in vec3 lightProbe[ 9 ], const in vec3 normal ) {\n vec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n vec3 irradiance = shGetIrradianceAt( worldNormal, lightProbe );\n return irradiance;\n}\nvec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {\n vec3 irradiance = ambientLightColor;\n return irradiance;\n}\nfloat getDistanceAttenuation( const in float lightDistance, const in float cutoffDistance, const in float decayExponent ) {\n float distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 );\n if ( cutoffDistance > 0.0 ) {\n distanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) );\n }\n return distanceFalloff;\n}\nfloat getSpotAttenuation( const in float coneCosine, const in float penumbraCosine, const in float angleCosine ) {\n return smoothstep( coneCosine, penumbraCosine, angleCosine );\n}\n#if NUM_DIR_LIGHTS > 0\n struct DirectionalLight {\n vec3 direction;\n vec3 color;\n };\n uniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ];\n void getDirectionalLightInfo( const in DirectionalLight directionalLight, out IncidentLight light ) {\n light.color = directionalLight.color;\n light.direction = directionalLight.direction;\n light.visible = true;\n }\n#endif\n#if NUM_POINT_LIGHTS > 0\n struct PointLight {\n vec3 position;\n vec3 color;\n float distance;\n float decay;\n };\n uniform PointLight pointLights[ NUM_POINT_LIGHTS ];\n void getPointLightInfo( const in PointLight pointLight, const in vec3 geometryPosition, out IncidentLight light ) {\n vec3 lVector = pointLight.position - geometryPosition;\n light.direction = normalize( lVector );\n float lightDistance = length( lVector );\n light.color = pointLight.color;\n light.color *= getDistanceAttenuation( lightDistance, pointLight.distance, pointLight.decay );\n light.visible = ( light.color != vec3( 0.0 ) );\n }\n#endif\n#if NUM_SPOT_LIGHTS > 0\n struct SpotLight {\n vec3 position;\n vec3 direction;\n vec3 color;\n float distance;\n float decay;\n float coneCos;\n float penumbraCos;\n };\n uniform SpotLight spotLights[ NUM_SPOT_LIGHTS ];\n void getSpotLightInfo( const in SpotLight spotLight, const in vec3 geometryPosition, out IncidentLight light ) {\n vec3 lVector = spotLight.position - geometryPosition;\n light.direction = normalize( lVector );\n float angleCos = dot( light.direction, spotLight.direction );\n float spotAttenuation = getSpotAttenuation( spotLight.coneCos, spotLight.penumbraCos, angleCos );\n if ( spotAttenuation > 0.0 ) {\n float lightDistance = length( lVector );\n light.color = spotLight.color * spotAttenuation;\n light.color *= getDistanceAttenuation( lightDistance, spotLight.distance, spotLight.decay );\n light.visible = ( light.color != vec3( 0.0 ) );\n } else {\n light.color = vec3( 0.0 );\n light.visible = false;\n }\n }\n#endif\n#if NUM_RECT_AREA_LIGHTS > 0\n struct RectAreaLight {\n vec3 color;\n vec3 position;\n vec3 halfWidth;\n vec3 halfHeight;\n };\n uniform sampler2D ltc_1; uniform sampler2D ltc_2;\n uniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ];\n#endif\n#if NUM_HEMI_LIGHTS > 0\n struct HemisphereLight {\n vec3 direction;\n vec3 skyColor;\n vec3 groundColor;\n };\n uniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ];\n vec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in vec3 normal ) {\n float dotNL = dot( normal, hemiLight.direction );\n float hemiDiffuseWeight = 0.5 * dotNL + 0.5;\n vec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight );\n return irradiance;\n }\n#endif",lights_toon_fragment:"ToonMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;",lights_toon_pars_fragment:"varying vec3 vViewPosition;\nstruct ToonMaterial {\n vec3 diffuseColor;\n};\nvoid RE_Direct_Toon( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\n vec3 irradiance = getGradientIrradiance( geometryNormal, directLight.direction ) * directLight.color;\n reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\n reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\n#define RE_Direct RE_Direct_Toon\n#define RE_IndirectDiffuse RE_IndirectDiffuse_Toon",lights_phong_fragment:"BlinnPhongMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularColor = specular;\nmaterial.specularShininess = shininess;\nmaterial.specularStrength = specularStrength;",lights_phong_pars_fragment:"varying vec3 vViewPosition;\nstruct BlinnPhongMaterial {\n vec3 diffuseColor;\n vec3 specularColor;\n float specularShininess;\n float specularStrength;\n};\nvoid RE_Direct_BlinnPhong( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n float dotNL = saturate( dot( geometryNormal, directLight.direction ) );\n vec3 irradiance = dotNL * directLight.color;\n reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n reflectedLight.directSpecular += irradiance * BRDF_BlinnPhong( directLight.direction, geometryViewDir, geometryNormal, material.specularColor, material.specularShininess ) * material.specularStrength;\n}\nvoid RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\n#define RE_Direct RE_Direct_BlinnPhong\n#define RE_IndirectDiffuse RE_IndirectDiffuse_BlinnPhong",lights_physical_fragment:"PhysicalMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor );\nvec3 dxy = max( abs( dFdx( nonPerturbedNormal ) ), abs( dFdy( nonPerturbedNormal ) ) );\nfloat geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z );\nmaterial.roughness = max( roughnessFactor, 0.0525 );material.roughness += geometryRoughness;\nmaterial.roughness = min( material.roughness, 1.0 );\n#ifdef IOR\n material.ior = ior;\n #ifdef USE_SPECULAR\n float specularIntensityFactor = specularIntensity;\n vec3 specularColorFactor = specularColor;\n #ifdef USE_SPECULAR_COLORMAP\n specularColorFactor *= texture2D( specularColorMap, vSpecularColorMapUv ).rgb;\n #endif\n #ifdef USE_SPECULAR_INTENSITYMAP\n specularIntensityFactor *= texture2D( specularIntensityMap, vSpecularIntensityMapUv ).a;\n #endif\n material.specularF90 = mix( specularIntensityFactor, 1.0, metalnessFactor );\n #else\n float specularIntensityFactor = 1.0;\n vec3 specularColorFactor = vec3( 1.0 );\n material.specularF90 = 1.0;\n #endif\n material.specularColor = mix( min( pow2( ( material.ior - 1.0 ) / ( material.ior + 1.0 ) ) * specularColorFactor, vec3( 1.0 ) ) * specularIntensityFactor, diffuseColor.rgb, metalnessFactor );\n#else\n material.specularColor = mix( vec3( 0.04 ), diffuseColor.rgb, metalnessFactor );\n material.specularF90 = 1.0;\n#endif\n#ifdef USE_CLEARCOAT\n material.clearcoat = clearcoat;\n material.clearcoatRoughness = clearcoatRoughness;\n material.clearcoatF0 = vec3( 0.04 );\n material.clearcoatF90 = 1.0;\n #ifdef USE_CLEARCOATMAP\n material.clearcoat *= texture2D( clearcoatMap, vClearcoatMapUv ).x;\n #endif\n #ifdef USE_CLEARCOAT_ROUGHNESSMAP\n material.clearcoatRoughness *= texture2D( clearcoatRoughnessMap, vClearcoatRoughnessMapUv ).y;\n #endif\n material.clearcoat = saturate( material.clearcoat ); material.clearcoatRoughness = max( material.clearcoatRoughness, 0.0525 );\n material.clearcoatRoughness += geometryRoughness;\n material.clearcoatRoughness = min( material.clearcoatRoughness, 1.0 );\n#endif\n#ifdef USE_DISPERSION\n material.dispersion = dispersion;\n#endif\n#ifdef USE_IRIDESCENCE\n material.iridescence = iridescence;\n material.iridescenceIOR = iridescenceIOR;\n #ifdef USE_IRIDESCENCEMAP\n material.iridescence *= texture2D( iridescenceMap, vIridescenceMapUv ).r;\n #endif\n #ifdef USE_IRIDESCENCE_THICKNESSMAP\n material.iridescenceThickness = (iridescenceThicknessMaximum - iridescenceThicknessMinimum) * texture2D( iridescenceThicknessMap, vIridescenceThicknessMapUv ).g + iridescenceThicknessMinimum;\n #else\n material.iridescenceThickness = iridescenceThicknessMaximum;\n #endif\n#endif\n#ifdef USE_SHEEN\n material.sheenColor = sheenColor;\n #ifdef USE_SHEEN_COLORMAP\n material.sheenColor *= texture2D( sheenColorMap, vSheenColorMapUv ).rgb;\n #endif\n material.sheenRoughness = clamp( sheenRoughness, 0.07, 1.0 );\n #ifdef USE_SHEEN_ROUGHNESSMAP\n material.sheenRoughness *= texture2D( sheenRoughnessMap, vSheenRoughnessMapUv ).a;\n #endif\n#endif\n#ifdef USE_ANISOTROPY\n #ifdef USE_ANISOTROPYMAP\n mat2 anisotropyMat = mat2( anisotropyVector.x, anisotropyVector.y, - anisotropyVector.y, anisotropyVector.x );\n vec3 anisotropyPolar = texture2D( anisotropyMap, vAnisotropyMapUv ).rgb;\n vec2 anisotropyV = anisotropyMat * normalize( 2.0 * anisotropyPolar.rg - vec2( 1.0 ) ) * anisotropyPolar.b;\n #else\n vec2 anisotropyV = anisotropyVector;\n #endif\n material.anisotropy = length( anisotropyV );\n if( material.anisotropy == 0.0 ) {\n anisotropyV = vec2( 1.0, 0.0 );\n } else {\n anisotropyV /= material.anisotropy;\n material.anisotropy = saturate( material.anisotropy );\n }\n material.alphaT = mix( pow2( material.roughness ), 1.0, pow2( material.anisotropy ) );\n material.anisotropyT = tbn[ 0 ] * anisotropyV.x + tbn[ 1 ] * anisotropyV.y;\n material.anisotropyB = tbn[ 1 ] * anisotropyV.x - tbn[ 0 ] * anisotropyV.y;\n#endif",lights_physical_pars_fragment:"struct PhysicalMaterial {\n vec3 diffuseColor;\n float roughness;\n vec3 specularColor;\n float specularF90;\n float dispersion;\n #ifdef USE_CLEARCOAT\n float clearcoat;\n float clearcoatRoughness;\n vec3 clearcoatF0;\n float clearcoatF90;\n #endif\n #ifdef USE_IRIDESCENCE\n float iridescence;\n float iridescenceIOR;\n float iridescenceThickness;\n vec3 iridescenceFresnel;\n vec3 iridescenceF0;\n #endif\n #ifdef USE_SHEEN\n vec3 sheenColor;\n float sheenRoughness;\n #endif\n #ifdef IOR\n float ior;\n #endif\n #ifdef USE_TRANSMISSION\n float transmission;\n float transmissionAlpha;\n float thickness;\n float attenuationDistance;\n vec3 attenuationColor;\n #endif\n #ifdef USE_ANISOTROPY\n float anisotropy;\n float alphaT;\n vec3 anisotropyT;\n vec3 anisotropyB;\n #endif\n};\nvec3 clearcoatSpecularDirect = vec3( 0.0 );\nvec3 clearcoatSpecularIndirect = vec3( 0.0 );\nvec3 sheenSpecularDirect = vec3( 0.0 );\nvec3 sheenSpecularIndirect = vec3(0.0 );\nvec3 Schlick_to_F0( const in vec3 f, const in float f90, const in float dotVH ) {\n float x = clamp( 1.0 - dotVH, 0.0, 1.0 );\n float x2 = x * x;\n float x5 = clamp( x * x2 * x2, 0.0, 0.9999 );\n return ( f - vec3( f90 ) * x5 ) / ( 1.0 - x5 );\n}\nfloat V_GGX_SmithCorrelated( const in float alpha, const in float dotNL, const in float dotNV ) {\n float a2 = pow2( alpha );\n float gv = dotNL * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\n float gl = dotNV * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\n return 0.5 / max( gv + gl, EPSILON );\n}\nfloat D_GGX( const in float alpha, const in float dotNH ) {\n float a2 = pow2( alpha );\n float denom = pow2( dotNH ) * ( a2 - 1.0 ) + 1.0;\n return RECIPROCAL_PI * a2 / pow2( denom );\n}\n#ifdef USE_ANISOTROPY\n float V_GGX_SmithCorrelated_Anisotropic( const in float alphaT, const in float alphaB, const in float dotTV, const in float dotBV, const in float dotTL, const in float dotBL, const in float dotNV, const in float dotNL ) {\n float gv = dotNL * length( vec3( alphaT * dotTV, alphaB * dotBV, dotNV ) );\n float gl = dotNV * length( vec3( alphaT * dotTL, alphaB * dotBL, dotNL ) );\n float v = 0.5 / ( gv + gl );\n return saturate(v);\n }\n float D_GGX_Anisotropic( const in float alphaT, const in float alphaB, const in float dotNH, const in float dotTH, const in float dotBH ) {\n float a2 = alphaT * alphaB;\n highp vec3 v = vec3( alphaB * dotTH, alphaT * dotBH, a2 * dotNH );\n highp float v2 = dot( v, v );\n float w2 = a2 / v2;\n return RECIPROCAL_PI * a2 * pow2 ( w2 );\n }\n#endif\n#ifdef USE_CLEARCOAT\n vec3 BRDF_GGX_Clearcoat( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in PhysicalMaterial material) {\n vec3 f0 = material.clearcoatF0;\n float f90 = material.clearcoatF90;\n float roughness = material.clearcoatRoughness;\n float alpha = pow2( roughness );\n vec3 halfDir = normalize( lightDir + viewDir );\n float dotNL = saturate( dot( normal, lightDir ) );\n float dotNV = saturate( dot( normal, viewDir ) );\n float dotNH = saturate( dot( normal, halfDir ) );\n float dotVH = saturate( dot( viewDir, halfDir ) );\n vec3 F = F_Schlick( f0, f90, dotVH );\n float V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );\n float D = D_GGX( alpha, dotNH );\n return F * ( V * D );\n }\n#endif\nvec3 BRDF_GGX( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in PhysicalMaterial material ) {\n vec3 f0 = material.specularColor;\n float f90 = material.specularF90;\n float roughness = material.roughness;\n float alpha = pow2( roughness );\n vec3 halfDir = normalize( lightDir + viewDir );\n float dotNL = saturate( dot( normal, lightDir ) );\n float dotNV = saturate( dot( normal, viewDir ) );\n float dotNH = saturate( dot( normal, halfDir ) );\n float dotVH = saturate( dot( viewDir, halfDir ) );\n vec3 F = F_Schlick( f0, f90, dotVH );\n #ifdef USE_IRIDESCENCE\n F = mix( F, material.iridescenceFresnel, material.iridescence );\n #endif\n #ifdef USE_ANISOTROPY\n float dotTL = dot( material.anisotropyT, lightDir );\n float dotTV = dot( material.anisotropyT, viewDir );\n float dotTH = dot( material.anisotropyT, halfDir );\n float dotBL = dot( material.anisotropyB, lightDir );\n float dotBV = dot( material.anisotropyB, viewDir );\n float dotBH = dot( material.anisotropyB, halfDir );\n float V = V_GGX_SmithCorrelated_Anisotropic( material.alphaT, alpha, dotTV, dotBV, dotTL, dotBL, dotNV, dotNL );\n float D = D_GGX_Anisotropic( material.alphaT, alpha, dotNH, dotTH, dotBH );\n #else\n float V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );\n float D = D_GGX( alpha, dotNH );\n #endif\n return F * ( V * D );\n}\nvec2 LTC_Uv( const in vec3 N, const in vec3 V, const in float roughness ) {\n const float LUT_SIZE = 64.0;\n const float LUT_SCALE = ( LUT_SIZE - 1.0 ) / LUT_SIZE;\n const float LUT_BIAS = 0.5 / LUT_SIZE;\n float dotNV = saturate( dot( N, V ) );\n vec2 uv = vec2( roughness, sqrt( 1.0 - dotNV ) );\n uv = uv * LUT_SCALE + LUT_BIAS;\n return uv;\n}\nfloat LTC_ClippedSphereFormFactor( const in vec3 f ) {\n float l = length( f );\n return max( ( l * l + f.z ) / ( l + 1.0 ), 0.0 );\n}\nvec3 LTC_EdgeVectorFormFactor( const in vec3 v1, const in vec3 v2 ) {\n float x = dot( v1, v2 );\n float y = abs( x );\n float a = 0.8543985 + ( 0.4965155 + 0.0145206 * y ) * y;\n float b = 3.4175940 + ( 4.1616724 + y ) * y;\n float v = a / b;\n float theta_sintheta = ( x > 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v;\n return cross( v1, v2 ) * theta_sintheta;\n}\nvec3 LTC_Evaluate( const in vec3 N, const in vec3 V, const in vec3 P, const in mat3 mInv, const in vec3 rectCoords[ 4 ] ) {\n vec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ];\n vec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ];\n vec3 lightNormal = cross( v1, v2 );\n if( dot( lightNormal, P - rectCoords[ 0 ] ) < 0.0 ) return vec3( 0.0 );\n vec3 T1, T2;\n T1 = normalize( V - N * dot( V, N ) );\n T2 = - cross( N, T1 );\n mat3 mat = mInv * transposeMat3( mat3( T1, T2, N ) );\n vec3 coords[ 4 ];\n coords[ 0 ] = mat * ( rectCoords[ 0 ] - P );\n coords[ 1 ] = mat * ( rectCoords[ 1 ] - P );\n coords[ 2 ] = mat * ( rectCoords[ 2 ] - P );\n coords[ 3 ] = mat * ( rectCoords[ 3 ] - P );\n coords[ 0 ] = normalize( coords[ 0 ] );\n coords[ 1 ] = normalize( coords[ 1 ] );\n coords[ 2 ] = normalize( coords[ 2 ] );\n coords[ 3 ] = normalize( coords[ 3 ] );\n vec3 vectorFormFactor = vec3( 0.0 );\n vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 0 ], coords[ 1 ] );\n vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 1 ], coords[ 2 ] );\n vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 2 ], coords[ 3 ] );\n vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 3 ], coords[ 0 ] );\n float result = LTC_ClippedSphereFormFactor( vectorFormFactor );\n return vec3( result );\n}\n#if defined( USE_SHEEN )\nfloat D_Charlie( float roughness, float dotNH ) {\n float alpha = pow2( roughness );\n float invAlpha = 1.0 / alpha;\n float cos2h = dotNH * dotNH;\n float sin2h = max( 1.0 - cos2h, 0.0078125 );\n return ( 2.0 + invAlpha ) * pow( sin2h, invAlpha * 0.5 ) / ( 2.0 * PI );\n}\nfloat V_Neubelt( float dotNV, float dotNL ) {\n return saturate( 1.0 / ( 4.0 * ( dotNL + dotNV - dotNL * dotNV ) ) );\n}\nvec3 BRDF_Sheen( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, vec3 sheenColor, const in float sheenRoughness ) {\n vec3 halfDir = normalize( lightDir + viewDir );\n float dotNL = saturate( dot( normal, lightDir ) );\n float dotNV = saturate( dot( normal, viewDir ) );\n float dotNH = saturate( dot( normal, halfDir ) );\n float D = D_Charlie( sheenRoughness, dotNH );\n float V = V_Neubelt( dotNV, dotNL );\n return sheenColor * ( D * V );\n}\n#endif\nfloat IBLSheenBRDF( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {\n float dotNV = saturate( dot( normal, viewDir ) );\n float r2 = roughness * roughness;\n float a = roughness < 0.25 ? -339.2 * r2 + 161.4 * roughness - 25.9 : -8.48 * r2 + 14.3 * roughness - 9.95;\n float b = roughness < 0.25 ? 44.0 * r2 - 23.7 * roughness + 3.26 : 1.97 * r2 - 3.27 * roughness + 0.72;\n float DG = exp( a * dotNV + b ) + ( roughness < 0.25 ? 0.0 : 0.1 * ( roughness - 0.25 ) );\n return saturate( DG * RECIPROCAL_PI );\n}\nvec2 DFGApprox( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {\n float dotNV = saturate( dot( normal, viewDir ) );\n const vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 );\n const vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 );\n vec4 r = roughness * c0 + c1;\n float a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y;\n vec2 fab = vec2( - 1.04, 1.04 ) * a004 + r.zw;\n return fab;\n}\nvec3 EnvironmentBRDF( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness ) {\n vec2 fab = DFGApprox( normal, viewDir, roughness );\n return specularColor * fab.x + specularF90 * fab.y;\n}\n#ifdef USE_IRIDESCENCE\nvoid computeMultiscatteringIridescence( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float iridescence, const in vec3 iridescenceF0, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {\n#else\nvoid computeMultiscattering( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {\n#endif\n vec2 fab = DFGApprox( normal, viewDir, roughness );\n #ifdef USE_IRIDESCENCE\n vec3 Fr = mix( specularColor, iridescenceF0, iridescence );\n #else\n vec3 Fr = specularColor;\n #endif\n vec3 FssEss = Fr * fab.x + specularF90 * fab.y;\n float Ess = fab.x + fab.y;\n float Ems = 1.0 - Ess;\n vec3 Favg = Fr + ( 1.0 - Fr ) * 0.047619; vec3 Fms = FssEss * Favg / ( 1.0 - Ems * Favg );\n singleScatter += FssEss;\n multiScatter += Fms * Ems;\n}\n#if NUM_RECT_AREA_LIGHTS > 0\n void RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n vec3 normal = geometryNormal;\n vec3 viewDir = geometryViewDir;\n vec3 position = geometryPosition;\n vec3 lightPos = rectAreaLight.position;\n vec3 halfWidth = rectAreaLight.halfWidth;\n vec3 halfHeight = rectAreaLight.halfHeight;\n vec3 lightColor = rectAreaLight.color;\n float roughness = material.roughness;\n vec3 rectCoords[ 4 ];\n rectCoords[ 0 ] = lightPos + halfWidth - halfHeight; rectCoords[ 1 ] = lightPos - halfWidth - halfHeight;\n rectCoords[ 2 ] = lightPos - halfWidth + halfHeight;\n rectCoords[ 3 ] = lightPos + halfWidth + halfHeight;\n vec2 uv = LTC_Uv( normal, viewDir, roughness );\n vec4 t1 = texture2D( ltc_1, uv );\n vec4 t2 = texture2D( ltc_2, uv );\n mat3 mInv = mat3(\n vec3( t1.x, 0, t1.y ),\n vec3( 0, 1, 0 ),\n vec3( t1.z, 0, t1.w )\n );\n vec3 fresnel = ( material.specularColor * t2.x + ( vec3( 1.0 ) - material.specularColor ) * t2.y );\n reflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords );\n reflectedLight.directDiffuse += lightColor * material.diffuseColor * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords );\n }\n#endif\nvoid RE_Direct_Physical( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n float dotNL = saturate( dot( geometryNormal, directLight.direction ) );\n vec3 irradiance = dotNL * directLight.color;\n #ifdef USE_CLEARCOAT\n float dotNLcc = saturate( dot( geometryClearcoatNormal, directLight.direction ) );\n vec3 ccIrradiance = dotNLcc * directLight.color;\n clearcoatSpecularDirect += ccIrradiance * BRDF_GGX_Clearcoat( directLight.direction, geometryViewDir, geometryClearcoatNormal, material );\n #endif\n #ifdef USE_SHEEN\n sheenSpecularDirect += irradiance * BRDF_Sheen( directLight.direction, geometryViewDir, geometryNormal, material.sheenColor, material.sheenRoughness );\n #endif\n reflectedLight.directSpecular += irradiance * BRDF_GGX( directLight.direction, geometryViewDir, geometryNormal, material );\n reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearcoatRadiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) {\n #ifdef USE_CLEARCOAT\n clearcoatSpecularIndirect += clearcoatRadiance * EnvironmentBRDF( geometryClearcoatNormal, geometryViewDir, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );\n #endif\n #ifdef USE_SHEEN\n sheenSpecularIndirect += irradiance * material.sheenColor * IBLSheenBRDF( geometryNormal, geometryViewDir, material.sheenRoughness );\n #endif\n vec3 singleScattering = vec3( 0.0 );\n vec3 multiScattering = vec3( 0.0 );\n vec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI;\n #ifdef USE_IRIDESCENCE\n computeMultiscatteringIridescence( geometryNormal, geometryViewDir, material.specularColor, material.specularF90, material.iridescence, material.iridescenceFresnel, material.roughness, singleScattering, multiScattering );\n #else\n computeMultiscattering( geometryNormal, geometryViewDir, material.specularColor, material.specularF90, material.roughness, singleScattering, multiScattering );\n #endif\n vec3 totalScattering = singleScattering + multiScattering;\n vec3 diffuse = material.diffuseColor * ( 1.0 - max( max( totalScattering.r, totalScattering.g ), totalScattering.b ) );\n reflectedLight.indirectSpecular += radiance * singleScattering;\n reflectedLight.indirectSpecular += multiScattering * cosineWeightedIrradiance;\n reflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance;\n}\n#define RE_Direct RE_Direct_Physical\n#define RE_Direct_RectArea RE_Direct_RectArea_Physical\n#define RE_IndirectDiffuse RE_IndirectDiffuse_Physical\n#define RE_IndirectSpecular RE_IndirectSpecular_Physical\nfloat computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) {\n return saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion );\n}",lights_fragment_begin:"\nvec3 geometryPosition = - vViewPosition;\nvec3 geometryNormal = normal;\nvec3 geometryViewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition );\nvec3 geometryClearcoatNormal = vec3( 0.0 );\n#ifdef USE_CLEARCOAT\n geometryClearcoatNormal = clearcoatNormal;\n#endif\n#ifdef USE_IRIDESCENCE\n float dotNVi = saturate( dot( normal, geometryViewDir ) );\n if ( material.iridescenceThickness == 0.0 ) {\n material.iridescence = 0.0;\n } else {\n material.iridescence = saturate( material.iridescence );\n }\n if ( material.iridescence > 0.0 ) {\n material.iridescenceFresnel = evalIridescence( 1.0, material.iridescenceIOR, dotNVi, material.iridescenceThickness, material.specularColor );\n material.iridescenceF0 = Schlick_to_F0( material.iridescenceFresnel, 1.0, dotNVi );\n }\n#endif\nIncidentLight directLight;\n#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct )\n PointLight pointLight;\n #if defined( USE_SHADOWMAP ) && NUM_POINT_LIGHT_SHADOWS > 0\n PointLightShadow pointLightShadow;\n #endif\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\n pointLight = pointLights[ i ];\n getPointLightInfo( pointLight, geometryPosition, directLight );\n #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_POINT_LIGHT_SHADOWS )\n pointLightShadow = pointLightShadows[ i ];\n directLight.color *= ( directLight.visible && receiveShadow ) ? getPointShadow( pointShadowMap[ i ], pointLightShadow.shadowMapSize, pointLightShadow.shadowIntensity, pointLightShadow.shadowBias, pointLightShadow.shadowRadius, vPointShadowCoord[ i ], pointLightShadow.shadowCameraNear, pointLightShadow.shadowCameraFar ) : 1.0;\n #endif\n RE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n }\n #pragma unroll_loop_end\n#endif\n#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct )\n SpotLight spotLight;\n vec4 spotColor;\n vec3 spotLightCoord;\n bool inSpotLightMap;\n #if defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_SHADOWS > 0\n SpotLightShadow spotLightShadow;\n #endif\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\n spotLight = spotLights[ i ];\n getSpotLightInfo( spotLight, geometryPosition, directLight );\n #if ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS )\n #define SPOT_LIGHT_MAP_INDEX UNROLLED_LOOP_INDEX\n #elif ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\n #define SPOT_LIGHT_MAP_INDEX NUM_SPOT_LIGHT_MAPS\n #else\n #define SPOT_LIGHT_MAP_INDEX ( UNROLLED_LOOP_INDEX - NUM_SPOT_LIGHT_SHADOWS + NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS )\n #endif\n #if ( SPOT_LIGHT_MAP_INDEX < NUM_SPOT_LIGHT_MAPS )\n spotLightCoord = vSpotLightCoord[ i ].xyz / vSpotLightCoord[ i ].w;\n inSpotLightMap = all( lessThan( abs( spotLightCoord * 2. - 1. ), vec3( 1.0 ) ) );\n spotColor = texture2D( spotLightMap[ SPOT_LIGHT_MAP_INDEX ], spotLightCoord.xy );\n directLight.color = inSpotLightMap ? directLight.color * spotColor.rgb : directLight.color;\n #endif\n #undef SPOT_LIGHT_MAP_INDEX\n #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\n spotLightShadow = spotLightShadows[ i ];\n directLight.color *= ( directLight.visible && receiveShadow ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowIntensity, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotLightCoord[ i ] ) : 1.0;\n #endif\n RE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n }\n #pragma unroll_loop_end\n#endif\n#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct )\n DirectionalLight directionalLight;\n #if defined( USE_SHADOWMAP ) && NUM_DIR_LIGHT_SHADOWS > 0\n DirectionalLightShadow directionalLightShadow;\n #endif\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\n directionalLight = directionalLights[ i ];\n getDirectionalLightInfo( directionalLight, directLight );\n #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_DIR_LIGHT_SHADOWS )\n directionalLightShadow = directionalLightShadows[ i ];\n directLight.color *= ( directLight.visible && receiveShadow ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowIntensity, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n #endif\n RE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n }\n #pragma unroll_loop_end\n#endif\n#if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea )\n RectAreaLight rectAreaLight;\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) {\n rectAreaLight = rectAreaLights[ i ];\n RE_Direct_RectArea( rectAreaLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n }\n #pragma unroll_loop_end\n#endif\n#if defined( RE_IndirectDiffuse )\n vec3 iblIrradiance = vec3( 0.0 );\n vec3 irradiance = getAmbientLightIrradiance( ambientLightColor );\n #if defined( USE_LIGHT_PROBES )\n irradiance += getLightProbeIrradiance( lightProbe, geometryNormal );\n #endif\n #if ( NUM_HEMI_LIGHTS > 0 )\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\n irradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometryNormal );\n }\n #pragma unroll_loop_end\n #endif\n#endif\n#if defined( RE_IndirectSpecular )\n vec3 radiance = vec3( 0.0 );\n vec3 clearcoatRadiance = vec3( 0.0 );\n#endif",lights_fragment_maps:"#if defined( RE_IndirectDiffuse )\n #ifdef USE_LIGHTMAP\n vec4 lightMapTexel = texture2D( lightMap, vLightMapUv );\n vec3 lightMapIrradiance = lightMapTexel.rgb * lightMapIntensity;\n irradiance += lightMapIrradiance;\n #endif\n #if defined( USE_ENVMAP ) && defined( STANDARD ) && defined( ENVMAP_TYPE_CUBE_UV )\n iblIrradiance += getIBLIrradiance( geometryNormal );\n #endif\n#endif\n#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular )\n #ifdef USE_ANISOTROPY\n radiance += getIBLAnisotropyRadiance( geometryViewDir, geometryNormal, material.roughness, material.anisotropyB, material.anisotropy );\n #else\n radiance += getIBLRadiance( geometryViewDir, geometryNormal, material.roughness );\n #endif\n #ifdef USE_CLEARCOAT\n clearcoatRadiance += getIBLRadiance( geometryViewDir, geometryClearcoatNormal, material.clearcoatRoughness );\n #endif\n#endif",lights_fragment_end:"#if defined( RE_IndirectDiffuse )\n RE_IndirectDiffuse( irradiance, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n#endif\n#if defined( RE_IndirectSpecular )\n RE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n#endif",logdepthbuf_fragment:"#if defined( USE_LOGDEPTHBUF )\n gl_FragDepth = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5;\n#endif",logdepthbuf_pars_fragment:"#if defined( USE_LOGDEPTHBUF )\n uniform float logDepthBufFC;\n varying float vFragDepth;\n varying float vIsPerspective;\n#endif",logdepthbuf_pars_vertex:"#ifdef USE_LOGDEPTHBUF\n varying float vFragDepth;\n varying float vIsPerspective;\n#endif",logdepthbuf_vertex:"#ifdef USE_LOGDEPTHBUF\n vFragDepth = 1.0 + gl_Position.w;\n vIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) );\n#endif",map_fragment:"#ifdef USE_MAP\n vec4 sampledDiffuseColor = texture2D( map, vMapUv );\n #ifdef DECODE_VIDEO_TEXTURE\n sampledDiffuseColor = sRGBTransferEOTF( sampledDiffuseColor );\n #endif\n diffuseColor *= sampledDiffuseColor;\n#endif",map_pars_fragment:"#ifdef USE_MAP\n uniform sampler2D map;\n#endif",map_particle_fragment:"#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n #if defined( USE_POINTS_UV )\n vec2 uv = vUv;\n #else\n vec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy;\n #endif\n#endif\n#ifdef USE_MAP\n diffuseColor *= texture2D( map, uv );\n#endif\n#ifdef USE_ALPHAMAP\n diffuseColor.a *= texture2D( alphaMap, uv ).g;\n#endif",map_particle_pars_fragment:"#if defined( USE_POINTS_UV )\n varying vec2 vUv;\n#else\n #if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n uniform mat3 uvTransform;\n #endif\n#endif\n#ifdef USE_MAP\n uniform sampler2D map;\n#endif\n#ifdef USE_ALPHAMAP\n uniform sampler2D alphaMap;\n#endif",metalnessmap_fragment:"float metalnessFactor = metalness;\n#ifdef USE_METALNESSMAP\n vec4 texelMetalness = texture2D( metalnessMap, vMetalnessMapUv );\n metalnessFactor *= texelMetalness.b;\n#endif",metalnessmap_pars_fragment:"#ifdef USE_METALNESSMAP\n uniform sampler2D metalnessMap;\n#endif",morphinstance_vertex:"#ifdef USE_INSTANCING_MORPH\n float morphTargetInfluences[ MORPHTARGETS_COUNT ];\n float morphTargetBaseInfluence = texelFetch( morphTexture, ivec2( 0, gl_InstanceID ), 0 ).r;\n for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n morphTargetInfluences[i] = texelFetch( morphTexture, ivec2( i + 1, gl_InstanceID ), 0 ).r;\n }\n#endif",morphcolor_vertex:"#if defined( USE_MORPHCOLORS )\n vColor *= morphTargetBaseInfluence;\n for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n #if defined( USE_COLOR_ALPHA )\n if ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ) * morphTargetInfluences[ i ];\n #elif defined( USE_COLOR )\n if ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ).rgb * morphTargetInfluences[ i ];\n #endif\n }\n#endif",morphnormal_vertex:"#ifdef USE_MORPHNORMALS\n objectNormal *= morphTargetBaseInfluence;\n for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n if ( morphTargetInfluences[ i ] != 0.0 ) objectNormal += getMorph( gl_VertexID, i, 1 ).xyz * morphTargetInfluences[ i ];\n }\n#endif",morphtarget_pars_vertex:"#ifdef USE_MORPHTARGETS\n #ifndef USE_INSTANCING_MORPH\n uniform float morphTargetBaseInfluence;\n uniform float morphTargetInfluences[ MORPHTARGETS_COUNT ];\n #endif\n uniform sampler2DArray morphTargetsTexture;\n uniform ivec2 morphTargetsTextureSize;\n vec4 getMorph( const in int vertexIndex, const in int morphTargetIndex, const in int offset ) {\n int texelIndex = vertexIndex * MORPHTARGETS_TEXTURE_STRIDE + offset;\n int y = texelIndex / morphTargetsTextureSize.x;\n int x = texelIndex - y * morphTargetsTextureSize.x;\n ivec3 morphUV = ivec3( x, y, morphTargetIndex );\n return texelFetch( morphTargetsTexture, morphUV, 0 );\n }\n#endif",morphtarget_vertex:"#ifdef USE_MORPHTARGETS\n transformed *= morphTargetBaseInfluence;\n for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n if ( morphTargetInfluences[ i ] != 0.0 ) transformed += getMorph( gl_VertexID, i, 0 ).xyz * morphTargetInfluences[ i ];\n }\n#endif",normal_fragment_begin:"float faceDirection = gl_FrontFacing ? 1.0 : - 1.0;\n#ifdef FLAT_SHADED\n vec3 fdx = dFdx( vViewPosition );\n vec3 fdy = dFdy( vViewPosition );\n vec3 normal = normalize( cross( fdx, fdy ) );\n#else\n vec3 normal = normalize( vNormal );\n #ifdef DOUBLE_SIDED\n normal *= faceDirection;\n #endif\n#endif\n#if defined( USE_NORMALMAP_TANGENTSPACE ) || defined( USE_CLEARCOAT_NORMALMAP ) || defined( USE_ANISOTROPY )\n #ifdef USE_TANGENT\n mat3 tbn = mat3( normalize( vTangent ), normalize( vBitangent ), normal );\n #else\n mat3 tbn = getTangentFrame( - vViewPosition, normal,\n #if defined( USE_NORMALMAP )\n vNormalMapUv\n #elif defined( USE_CLEARCOAT_NORMALMAP )\n vClearcoatNormalMapUv\n #else\n vUv\n #endif\n );\n #endif\n #if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED )\n tbn[0] *= faceDirection;\n tbn[1] *= faceDirection;\n #endif\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n #ifdef USE_TANGENT\n mat3 tbn2 = mat3( normalize( vTangent ), normalize( vBitangent ), normal );\n #else\n mat3 tbn2 = getTangentFrame( - vViewPosition, normal, vClearcoatNormalMapUv );\n #endif\n #if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED )\n tbn2[0] *= faceDirection;\n tbn2[1] *= faceDirection;\n #endif\n#endif\nvec3 nonPerturbedNormal = normal;",normal_fragment_maps:"#ifdef USE_NORMALMAP_OBJECTSPACE\n normal = texture2D( normalMap, vNormalMapUv ).xyz * 2.0 - 1.0;\n #ifdef FLIP_SIDED\n normal = - normal;\n #endif\n #ifdef DOUBLE_SIDED\n normal = normal * faceDirection;\n #endif\n normal = normalize( normalMatrix * normal );\n#elif defined( USE_NORMALMAP_TANGENTSPACE )\n vec3 mapN = texture2D( normalMap, vNormalMapUv ).xyz * 2.0 - 1.0;\n mapN.xy *= normalScale;\n normal = normalize( tbn * mapN );\n#elif defined( USE_BUMPMAP )\n normal = perturbNormalArb( - vViewPosition, normal, dHdxy_fwd(), faceDirection );\n#endif",normal_pars_fragment:"#ifndef FLAT_SHADED\n varying vec3 vNormal;\n #ifdef USE_TANGENT\n varying vec3 vTangent;\n varying vec3 vBitangent;\n #endif\n#endif",normal_pars_vertex:"#ifndef FLAT_SHADED\n varying vec3 vNormal;\n #ifdef USE_TANGENT\n varying vec3 vTangent;\n varying vec3 vBitangent;\n #endif\n#endif",normal_vertex:"#ifndef FLAT_SHADED\n vNormal = normalize( transformedNormal );\n #ifdef USE_TANGENT\n vTangent = normalize( transformedTangent );\n vBitangent = normalize( cross( vNormal, vTangent ) * tangent.w );\n #endif\n#endif",normalmap_pars_fragment:"#ifdef USE_NORMALMAP\n uniform sampler2D normalMap;\n uniform vec2 normalScale;\n#endif\n#ifdef USE_NORMALMAP_OBJECTSPACE\n uniform mat3 normalMatrix;\n#endif\n#if ! defined ( USE_TANGENT ) && ( defined ( USE_NORMALMAP_TANGENTSPACE ) || defined ( USE_CLEARCOAT_NORMALMAP ) || defined( USE_ANISOTROPY ) )\n mat3 getTangentFrame( vec3 eye_pos, vec3 surf_norm, vec2 uv ) {\n vec3 q0 = dFdx( eye_pos.xyz );\n vec3 q1 = dFdy( eye_pos.xyz );\n vec2 st0 = dFdx( uv.st );\n vec2 st1 = dFdy( uv.st );\n vec3 N = surf_norm;\n vec3 q1perp = cross( q1, N );\n vec3 q0perp = cross( N, q0 );\n vec3 T = q1perp * st0.x + q0perp * st1.x;\n vec3 B = q1perp * st0.y + q0perp * st1.y;\n float det = max( dot( T, T ), dot( B, B ) );\n float scale = ( det == 0.0 ) ? 0.0 : inversesqrt( det );\n return mat3( T * scale, B * scale, N );\n }\n#endif",clearcoat_normal_fragment_begin:"#ifdef USE_CLEARCOAT\n vec3 clearcoatNormal = nonPerturbedNormal;\n#endif",clearcoat_normal_fragment_maps:"#ifdef USE_CLEARCOAT_NORMALMAP\n vec3 clearcoatMapN = texture2D( clearcoatNormalMap, vClearcoatNormalMapUv ).xyz * 2.0 - 1.0;\n clearcoatMapN.xy *= clearcoatNormalScale;\n clearcoatNormal = normalize( tbn2 * clearcoatMapN );\n#endif",clearcoat_pars_fragment:"#ifdef USE_CLEARCOATMAP\n uniform sampler2D clearcoatMap;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n uniform sampler2D clearcoatNormalMap;\n uniform vec2 clearcoatNormalScale;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n uniform sampler2D clearcoatRoughnessMap;\n#endif",iridescence_pars_fragment:"#ifdef USE_IRIDESCENCEMAP\n uniform sampler2D iridescenceMap;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n uniform sampler2D iridescenceThicknessMap;\n#endif",opaque_fragment:"#ifdef OPAQUE\ndiffuseColor.a = 1.0;\n#endif\n#ifdef USE_TRANSMISSION\ndiffuseColor.a *= material.transmissionAlpha;\n#endif\ngl_FragColor = vec4( outgoingLight, diffuseColor.a );",packing:"vec3 packNormalToRGB( const in vec3 normal ) {\n return normalize( normal ) * 0.5 + 0.5;\n}\nvec3 unpackRGBToNormal( const in vec3 rgb ) {\n return 2.0 * rgb.xyz - 1.0;\n}\nconst float PackUpscale = 256. / 255.;const float UnpackDownscale = 255. / 256.;const float ShiftRight8 = 1. / 256.;\nconst float Inv255 = 1. / 255.;\nconst vec4 PackFactors = vec4( 1.0, 256.0, 256.0 * 256.0, 256.0 * 256.0 * 256.0 );\nconst vec2 UnpackFactors2 = vec2( UnpackDownscale, 1.0 / PackFactors.g );\nconst vec3 UnpackFactors3 = vec3( UnpackDownscale / PackFactors.rg, 1.0 / PackFactors.b );\nconst vec4 UnpackFactors4 = vec4( UnpackDownscale / PackFactors.rgb, 1.0 / PackFactors.a );\nvec4 packDepthToRGBA( const in float v ) {\n if( v <= 0.0 )\n return vec4( 0., 0., 0., 0. );\n if( v >= 1.0 )\n return vec4( 1., 1., 1., 1. );\n float vuf;\n float af = modf( v * PackFactors.a, vuf );\n float bf = modf( vuf * ShiftRight8, vuf );\n float gf = modf( vuf * ShiftRight8, vuf );\n return vec4( vuf * Inv255, gf * PackUpscale, bf * PackUpscale, af );\n}\nvec3 packDepthToRGB( const in float v ) {\n if( v <= 0.0 )\n return vec3( 0., 0., 0. );\n if( v >= 1.0 )\n return vec3( 1., 1., 1. );\n float vuf;\n float bf = modf( v * PackFactors.b, vuf );\n float gf = modf( vuf * ShiftRight8, vuf );\n return vec3( vuf * Inv255, gf * PackUpscale, bf );\n}\nvec2 packDepthToRG( const in float v ) {\n if( v <= 0.0 )\n return vec2( 0., 0. );\n if( v >= 1.0 )\n return vec2( 1., 1. );\n float vuf;\n float gf = modf( v * 256., vuf );\n return vec2( vuf * Inv255, gf );\n}\nfloat unpackRGBAToDepth( const in vec4 v ) {\n return dot( v, UnpackFactors4 );\n}\nfloat unpackRGBToDepth( const in vec3 v ) {\n return dot( v, UnpackFactors3 );\n}\nfloat unpackRGToDepth( const in vec2 v ) {\n return v.r * UnpackFactors2.r + v.g * UnpackFactors2.g;\n}\nvec4 pack2HalfToRGBA( const in vec2 v ) {\n vec4 r = vec4( v.x, fract( v.x * 255.0 ), v.y, fract( v.y * 255.0 ) );\n return vec4( r.x - r.y / 255.0, r.y, r.z - r.w / 255.0, r.w );\n}\nvec2 unpackRGBATo2Half( const in vec4 v ) {\n return vec2( v.x + ( v.y / 255.0 ), v.z + ( v.w / 255.0 ) );\n}\nfloat viewZToOrthographicDepth( const in float viewZ, const in float near, const in float far ) {\n return ( viewZ + near ) / ( near - far );\n}\nfloat orthographicDepthToViewZ( const in float depth, const in float near, const in float far ) {\n return depth * ( near - far ) - near;\n}\nfloat viewZToPerspectiveDepth( const in float viewZ, const in float near, const in float far ) {\n return ( ( near + viewZ ) * far ) / ( ( far - near ) * viewZ );\n}\nfloat perspectiveDepthToViewZ( const in float depth, const in float near, const in float far ) {\n return ( near * far ) / ( ( far - near ) * depth - far );\n}",premultiplied_alpha_fragment:"#ifdef PREMULTIPLIED_ALPHA\n gl_FragColor.rgb *= gl_FragColor.a;\n#endif",project_vertex:"vec4 mvPosition = vec4( transformed, 1.0 );\n#ifdef USE_BATCHING\n mvPosition = batchingMatrix * mvPosition;\n#endif\n#ifdef USE_INSTANCING\n mvPosition = instanceMatrix * mvPosition;\n#endif\nmvPosition = modelViewMatrix * mvPosition;\ngl_Position = projectionMatrix * mvPosition;",dithering_fragment:"#ifdef DITHERING\n gl_FragColor.rgb = dithering( gl_FragColor.rgb );\n#endif",dithering_pars_fragment:"#ifdef DITHERING\n vec3 dithering( vec3 color ) {\n float grid_position = rand( gl_FragCoord.xy );\n vec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 );\n dither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position );\n return color + dither_shift_RGB;\n }\n#endif",roughnessmap_fragment:"float roughnessFactor = roughness;\n#ifdef USE_ROUGHNESSMAP\n vec4 texelRoughness = texture2D( roughnessMap, vRoughnessMapUv );\n roughnessFactor *= texelRoughness.g;\n#endif",roughnessmap_pars_fragment:"#ifdef USE_ROUGHNESSMAP\n uniform sampler2D roughnessMap;\n#endif",shadowmap_pars_fragment:"#if NUM_SPOT_LIGHT_COORDS > 0\n varying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ];\n#endif\n#if NUM_SPOT_LIGHT_MAPS > 0\n uniform sampler2D spotLightMap[ NUM_SPOT_LIGHT_MAPS ];\n#endif\n#ifdef USE_SHADOWMAP\n #if NUM_DIR_LIGHT_SHADOWS > 0\n uniform sampler2D directionalShadowMap[ NUM_DIR_LIGHT_SHADOWS ];\n varying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\n struct DirectionalLightShadow {\n float shadowIntensity;\n float shadowBias;\n float shadowNormalBias;\n float shadowRadius;\n vec2 shadowMapSize;\n };\n uniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\n #endif\n #if NUM_SPOT_LIGHT_SHADOWS > 0\n uniform sampler2D spotShadowMap[ NUM_SPOT_LIGHT_SHADOWS ];\n struct SpotLightShadow {\n float shadowIntensity;\n float shadowBias;\n float shadowNormalBias;\n float shadowRadius;\n vec2 shadowMapSize;\n };\n uniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\n #endif\n #if NUM_POINT_LIGHT_SHADOWS > 0\n uniform sampler2D pointShadowMap[ NUM_POINT_LIGHT_SHADOWS ];\n varying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\n struct PointLightShadow {\n float shadowIntensity;\n float shadowBias;\n float shadowNormalBias;\n float shadowRadius;\n vec2 shadowMapSize;\n float shadowCameraNear;\n float shadowCameraFar;\n };\n uniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\n #endif\n float texture2DCompare( sampler2D depths, vec2 uv, float compare ) {\n return step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) );\n }\n vec2 texture2DDistribution( sampler2D shadow, vec2 uv ) {\n return unpackRGBATo2Half( texture2D( shadow, uv ) );\n }\n float VSMShadow (sampler2D shadow, vec2 uv, float compare ){\n float occlusion = 1.0;\n vec2 distribution = texture2DDistribution( shadow, uv );\n float hard_shadow = step( compare , distribution.x );\n if (hard_shadow != 1.0 ) {\n float distance = compare - distribution.x ;\n float variance = max( 0.00000, distribution.y * distribution.y );\n float softness_probability = variance / (variance + distance * distance ); softness_probability = clamp( ( softness_probability - 0.3 ) / ( 0.95 - 0.3 ), 0.0, 1.0 ); occlusion = clamp( max( hard_shadow, softness_probability ), 0.0, 1.0 );\n }\n return occlusion;\n }\n float getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowIntensity, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\n float shadow = 1.0;\n shadowCoord.xyz /= shadowCoord.w;\n shadowCoord.z += shadowBias;\n bool inFrustum = shadowCoord.x >= 0.0 && shadowCoord.x <= 1.0 && shadowCoord.y >= 0.0 && shadowCoord.y <= 1.0;\n bool frustumTest = inFrustum && shadowCoord.z <= 1.0;\n if ( frustumTest ) {\n #if defined( SHADOWMAP_TYPE_PCF )\n vec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n float dx0 = - texelSize.x * shadowRadius;\n float dy0 = - texelSize.y * shadowRadius;\n float dx1 = + texelSize.x * shadowRadius;\n float dy1 = + texelSize.y * shadowRadius;\n float dx2 = dx0 / 2.0;\n float dy2 = dy0 / 2.0;\n float dx3 = dx1 / 2.0;\n float dy3 = dy1 / 2.0;\n shadow = (\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy2 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy2 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy2 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, 0.0 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, 0.0 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy3 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy3 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy3 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z )\n ) * ( 1.0 / 17.0 );\n #elif defined( SHADOWMAP_TYPE_PCF_SOFT )\n vec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n float dx = texelSize.x;\n float dy = texelSize.y;\n vec2 uv = shadowCoord.xy;\n vec2 f = fract( uv * shadowMapSize + 0.5 );\n uv -= f * texelSize;\n shadow = (\n texture2DCompare( shadowMap, uv, shadowCoord.z ) +\n texture2DCompare( shadowMap, uv + vec2( dx, 0.0 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, uv + vec2( 0.0, dy ), shadowCoord.z ) +\n texture2DCompare( shadowMap, uv + texelSize, shadowCoord.z ) +\n mix( texture2DCompare( shadowMap, uv + vec2( -dx, 0.0 ), shadowCoord.z ),\n texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 0.0 ), shadowCoord.z ),\n f.x ) +\n mix( texture2DCompare( shadowMap, uv + vec2( -dx, dy ), shadowCoord.z ),\n texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, dy ), shadowCoord.z ),\n f.x ) +\n mix( texture2DCompare( shadowMap, uv + vec2( 0.0, -dy ), shadowCoord.z ),\n texture2DCompare( shadowMap, uv + vec2( 0.0, 2.0 * dy ), shadowCoord.z ),\n f.y ) +\n mix( texture2DCompare( shadowMap, uv + vec2( dx, -dy ), shadowCoord.z ),\n texture2DCompare( shadowMap, uv + vec2( dx, 2.0 * dy ), shadowCoord.z ),\n f.y ) +\n mix( mix( texture2DCompare( shadowMap, uv + vec2( -dx, -dy ), shadowCoord.z ),\n texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, -dy ), shadowCoord.z ),\n f.x ),\n mix( texture2DCompare( shadowMap, uv + vec2( -dx, 2.0 * dy ), shadowCoord.z ),\n texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 2.0 * dy ), shadowCoord.z ),\n f.x ),\n f.y )\n ) * ( 1.0 / 9.0 );\n #elif defined( SHADOWMAP_TYPE_VSM )\n shadow = VSMShadow( shadowMap, shadowCoord.xy, shadowCoord.z );\n #else\n shadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z );\n #endif\n }\n return mix( 1.0, shadow, shadowIntensity );\n }\n vec2 cubeToUV( vec3 v, float texelSizeY ) {\n vec3 absV = abs( v );\n float scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) );\n absV *= scaleToCube;\n v *= scaleToCube * ( 1.0 - 2.0 * texelSizeY );\n vec2 planar = v.xy;\n float almostATexel = 1.5 * texelSizeY;\n float almostOne = 1.0 - almostATexel;\n if ( absV.z >= almostOne ) {\n if ( v.z > 0.0 )\n planar.x = 4.0 - v.x;\n } else if ( absV.x >= almostOne ) {\n float signX = sign( v.x );\n planar.x = v.z * signX + 2.0 * signX;\n } else if ( absV.y >= almostOne ) {\n float signY = sign( v.y );\n planar.x = v.x + 2.0 * signY + 2.0;\n planar.y = v.z * signY - 2.0;\n }\n return vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 );\n }\n float getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowIntensity, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) {\n float shadow = 1.0;\n vec3 lightToPosition = shadowCoord.xyz;\n \n float lightToPositionLength = length( lightToPosition );\n if ( lightToPositionLength - shadowCameraFar <= 0.0 && lightToPositionLength - shadowCameraNear >= 0.0 ) {\n float dp = ( lightToPositionLength - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear ); dp += shadowBias;\n vec3 bd3D = normalize( lightToPosition );\n vec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) );\n #if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT ) || defined( SHADOWMAP_TYPE_VSM )\n vec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y;\n shadow = (\n texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyy, texelSize.y ), dp ) +\n texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyy, texelSize.y ), dp ) +\n texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyx, texelSize.y ), dp ) +\n texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyx, texelSize.y ), dp ) +\n texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ) +\n texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxy, texelSize.y ), dp ) +\n texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxy, texelSize.y ), dp ) +\n texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxx, texelSize.y ), dp ) +\n texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxx, texelSize.y ), dp )\n ) * ( 1.0 / 9.0 );\n #else\n shadow = texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp );\n #endif\n }\n return mix( 1.0, shadow, shadowIntensity );\n }\n#endif",shadowmap_pars_vertex:"#if NUM_SPOT_LIGHT_COORDS > 0\n uniform mat4 spotLightMatrix[ NUM_SPOT_LIGHT_COORDS ];\n varying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ];\n#endif\n#ifdef USE_SHADOWMAP\n #if NUM_DIR_LIGHT_SHADOWS > 0\n uniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHT_SHADOWS ];\n varying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\n struct DirectionalLightShadow {\n float shadowIntensity;\n float shadowBias;\n float shadowNormalBias;\n float shadowRadius;\n vec2 shadowMapSize;\n };\n uniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\n #endif\n #if NUM_SPOT_LIGHT_SHADOWS > 0\n struct SpotLightShadow {\n float shadowIntensity;\n float shadowBias;\n float shadowNormalBias;\n float shadowRadius;\n vec2 shadowMapSize;\n };\n uniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\n #endif\n #if NUM_POINT_LIGHT_SHADOWS > 0\n uniform mat4 pointShadowMatrix[ NUM_POINT_LIGHT_SHADOWS ];\n varying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\n struct PointLightShadow {\n float shadowIntensity;\n float shadowBias;\n float shadowNormalBias;\n float shadowRadius;\n vec2 shadowMapSize;\n float shadowCameraNear;\n float shadowCameraFar;\n };\n uniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\n #endif\n#endif",shadowmap_vertex:"#if ( defined( USE_SHADOWMAP ) && ( NUM_DIR_LIGHT_SHADOWS > 0 || NUM_POINT_LIGHT_SHADOWS > 0 ) ) || ( NUM_SPOT_LIGHT_COORDS > 0 )\n vec3 shadowWorldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\n vec4 shadowWorldPosition;\n#endif\n#if defined( USE_SHADOWMAP )\n #if NUM_DIR_LIGHT_SHADOWS > 0\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\n shadowWorldPosition = worldPosition + vec4( shadowWorldNormal * directionalLightShadows[ i ].shadowNormalBias, 0 );\n vDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * shadowWorldPosition;\n }\n #pragma unroll_loop_end\n #endif\n #if NUM_POINT_LIGHT_SHADOWS > 0\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\n shadowWorldPosition = worldPosition + vec4( shadowWorldNormal * pointLightShadows[ i ].shadowNormalBias, 0 );\n vPointShadowCoord[ i ] = pointShadowMatrix[ i ] * shadowWorldPosition;\n }\n #pragma unroll_loop_end\n #endif\n#endif\n#if NUM_SPOT_LIGHT_COORDS > 0\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_SPOT_LIGHT_COORDS; i ++ ) {\n shadowWorldPosition = worldPosition;\n #if ( defined( USE_SHADOWMAP ) && UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\n shadowWorldPosition.xyz += shadowWorldNormal * spotLightShadows[ i ].shadowNormalBias;\n #endif\n vSpotLightCoord[ i ] = spotLightMatrix[ i ] * shadowWorldPosition;\n }\n #pragma unroll_loop_end\n#endif",shadowmask_pars_fragment:"float getShadowMask() {\n float shadow = 1.0;\n #ifdef USE_SHADOWMAP\n #if NUM_DIR_LIGHT_SHADOWS > 0\n DirectionalLightShadow directionalLight;\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\n directionalLight = directionalLightShadows[ i ];\n shadow *= receiveShadow ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowIntensity, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n }\n #pragma unroll_loop_end\n #endif\n #if NUM_SPOT_LIGHT_SHADOWS > 0\n SpotLightShadow spotLight;\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\n spotLight = spotLightShadows[ i ];\n shadow *= receiveShadow ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowIntensity, spotLight.shadowBias, spotLight.shadowRadius, vSpotLightCoord[ i ] ) : 1.0;\n }\n #pragma unroll_loop_end\n #endif\n #if NUM_POINT_LIGHT_SHADOWS > 0\n PointLightShadow pointLight;\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\n pointLight = pointLightShadows[ i ];\n shadow *= receiveShadow ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowIntensity, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0;\n }\n #pragma unroll_loop_end\n #endif\n #endif\n return shadow;\n}",skinbase_vertex:"#ifdef USE_SKINNING\n mat4 boneMatX = getBoneMatrix( skinIndex.x );\n mat4 boneMatY = getBoneMatrix( skinIndex.y );\n mat4 boneMatZ = getBoneMatrix( skinIndex.z );\n mat4 boneMatW = getBoneMatrix( skinIndex.w );\n#endif",skinning_pars_vertex:"#ifdef USE_SKINNING\n uniform mat4 bindMatrix;\n uniform mat4 bindMatrixInverse;\n uniform highp sampler2D boneTexture;\n mat4 getBoneMatrix( const in float i ) {\n int size = textureSize( boneTexture, 0 ).x;\n int j = int( i ) * 4;\n int x = j % size;\n int y = j / size;\n vec4 v1 = texelFetch( boneTexture, ivec2( x, y ), 0 );\n vec4 v2 = texelFetch( boneTexture, ivec2( x + 1, y ), 0 );\n vec4 v3 = texelFetch( boneTexture, ivec2( x + 2, y ), 0 );\n vec4 v4 = texelFetch( boneTexture, ivec2( x + 3, y ), 0 );\n return mat4( v1, v2, v3, v4 );\n }\n#endif",skinning_vertex:"#ifdef USE_SKINNING\n vec4 skinVertex = bindMatrix * vec4( transformed, 1.0 );\n vec4 skinned = vec4( 0.0 );\n skinned += boneMatX * skinVertex * skinWeight.x;\n skinned += boneMatY * skinVertex * skinWeight.y;\n skinned += boneMatZ * skinVertex * skinWeight.z;\n skinned += boneMatW * skinVertex * skinWeight.w;\n transformed = ( bindMatrixInverse * skinned ).xyz;\n#endif",skinnormal_vertex:"#ifdef USE_SKINNING\n mat4 skinMatrix = mat4( 0.0 );\n skinMatrix += skinWeight.x * boneMatX;\n skinMatrix += skinWeight.y * boneMatY;\n skinMatrix += skinWeight.z * boneMatZ;\n skinMatrix += skinWeight.w * boneMatW;\n skinMatrix = bindMatrixInverse * skinMatrix * bindMatrix;\n objectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz;\n #ifdef USE_TANGENT\n objectTangent = vec4( skinMatrix * vec4( objectTangent, 0.0 ) ).xyz;\n #endif\n#endif",specularmap_fragment:"float specularStrength;\n#ifdef USE_SPECULARMAP\n vec4 texelSpecular = texture2D( specularMap, vSpecularMapUv );\n specularStrength = texelSpecular.r;\n#else\n specularStrength = 1.0;\n#endif",specularmap_pars_fragment:"#ifdef USE_SPECULARMAP\n uniform sampler2D specularMap;\n#endif",tonemapping_fragment:"#if defined( TONE_MAPPING )\n gl_FragColor.rgb = toneMapping( gl_FragColor.rgb );\n#endif",tonemapping_pars_fragment:"#ifndef saturate\n#define saturate( a ) clamp( a, 0.0, 1.0 )\n#endif\nuniform float toneMappingExposure;\nvec3 LinearToneMapping( vec3 color ) {\n return saturate( toneMappingExposure * color );\n}\nvec3 ReinhardToneMapping( vec3 color ) {\n color *= toneMappingExposure;\n return saturate( color / ( vec3( 1.0 ) + color ) );\n}\nvec3 CineonToneMapping( vec3 color ) {\n color *= toneMappingExposure;\n color = max( vec3( 0.0 ), color - 0.004 );\n return pow( ( color * ( 6.2 * color + 0.5 ) ) / ( color * ( 6.2 * color + 1.7 ) + 0.06 ), vec3( 2.2 ) );\n}\nvec3 RRTAndODTFit( vec3 v ) {\n vec3 a = v * ( v + 0.0245786 ) - 0.000090537;\n vec3 b = v * ( 0.983729 * v + 0.4329510 ) + 0.238081;\n return a / b;\n}\nvec3 ACESFilmicToneMapping( vec3 color ) {\n const mat3 ACESInputMat = mat3(\n vec3( 0.59719, 0.07600, 0.02840 ), vec3( 0.35458, 0.90834, 0.13383 ),\n vec3( 0.04823, 0.01566, 0.83777 )\n );\n const mat3 ACESOutputMat = mat3(\n vec3( 1.60475, -0.10208, -0.00327 ), vec3( -0.53108, 1.10813, -0.07276 ),\n vec3( -0.07367, -0.00605, 1.07602 )\n );\n color *= toneMappingExposure / 0.6;\n color = ACESInputMat * color;\n color = RRTAndODTFit( color );\n color = ACESOutputMat * color;\n return saturate( color );\n}\nconst mat3 LINEAR_REC2020_TO_LINEAR_SRGB = mat3(\n vec3( 1.6605, - 0.1246, - 0.0182 ),\n vec3( - 0.5876, 1.1329, - 0.1006 ),\n vec3( - 0.0728, - 0.0083, 1.1187 )\n);\nconst mat3 LINEAR_SRGB_TO_LINEAR_REC2020 = mat3(\n vec3( 0.6274, 0.0691, 0.0164 ),\n vec3( 0.3293, 0.9195, 0.0880 ),\n vec3( 0.0433, 0.0113, 0.8956 )\n);\nvec3 agxDefaultContrastApprox( vec3 x ) {\n vec3 x2 = x * x;\n vec3 x4 = x2 * x2;\n return + 15.5 * x4 * x2\n - 40.14 * x4 * x\n + 31.96 * x4\n - 6.868 * x2 * x\n + 0.4298 * x2\n + 0.1191 * x\n - 0.00232;\n}\nvec3 AgXToneMapping( vec3 color ) {\n const mat3 AgXInsetMatrix = mat3(\n vec3( 0.856627153315983, 0.137318972929847, 0.11189821299995 ),\n vec3( 0.0951212405381588, 0.761241990602591, 0.0767994186031903 ),\n vec3( 0.0482516061458583, 0.101439036467562, 0.811302368396859 )\n );\n const mat3 AgXOutsetMatrix = mat3(\n vec3( 1.1271005818144368, - 0.1413297634984383, - 0.14132976349843826 ),\n vec3( - 0.11060664309660323, 1.157823702216272, - 0.11060664309660294 ),\n vec3( - 0.016493938717834573, - 0.016493938717834257, 1.2519364065950405 )\n );\n const float AgxMinEv = - 12.47393; const float AgxMaxEv = 4.026069;\n color *= toneMappingExposure;\n color = LINEAR_SRGB_TO_LINEAR_REC2020 * color;\n color = AgXInsetMatrix * color;\n color = max( color, 1e-10 ); color = log2( color );\n color = ( color - AgxMinEv ) / ( AgxMaxEv - AgxMinEv );\n color = clamp( color, 0.0, 1.0 );\n color = agxDefaultContrastApprox( color );\n color = AgXOutsetMatrix * color;\n color = pow( max( vec3( 0.0 ), color ), vec3( 2.2 ) );\n color = LINEAR_REC2020_TO_LINEAR_SRGB * color;\n color = clamp( color, 0.0, 1.0 );\n return color;\n}\nvec3 NeutralToneMapping( vec3 color ) {\n const float StartCompression = 0.8 - 0.04;\n const float Desaturation = 0.15;\n color *= toneMappingExposure;\n float x = min( color.r, min( color.g, color.b ) );\n float offset = x < 0.08 ? x - 6.25 * x * x : 0.04;\n color -= offset;\n float peak = max( color.r, max( color.g, color.b ) );\n if ( peak < StartCompression ) return color;\n float d = 1. - StartCompression;\n float newPeak = 1. - d * d / ( peak + d - StartCompression );\n color *= newPeak / peak;\n float g = 1. - 1. / ( Desaturation * ( peak - newPeak ) + 1. );\n return mix( color, vec3( newPeak ), g );\n}\nvec3 CustomToneMapping( vec3 color ) { return color; }",transmission_fragment:"#ifdef USE_TRANSMISSION\n material.transmission = transmission;\n material.transmissionAlpha = 1.0;\n material.thickness = thickness;\n material.attenuationDistance = attenuationDistance;\n material.attenuationColor = attenuationColor;\n #ifdef USE_TRANSMISSIONMAP\n material.transmission *= texture2D( transmissionMap, vTransmissionMapUv ).r;\n #endif\n #ifdef USE_THICKNESSMAP\n material.thickness *= texture2D( thicknessMap, vThicknessMapUv ).g;\n #endif\n vec3 pos = vWorldPosition;\n vec3 v = normalize( cameraPosition - pos );\n vec3 n = inverseTransformDirection( normal, viewMatrix );\n vec4 transmitted = getIBLVolumeRefraction(\n n, v, material.roughness, material.diffuseColor, material.specularColor, material.specularF90,\n pos, modelMatrix, viewMatrix, projectionMatrix, material.dispersion, material.ior, material.thickness,\n material.attenuationColor, material.attenuationDistance );\n material.transmissionAlpha = mix( material.transmissionAlpha, transmitted.a, material.transmission );\n totalDiffuse = mix( totalDiffuse, transmitted.rgb, material.transmission );\n#endif",transmission_pars_fragment:"#ifdef USE_TRANSMISSION\n uniform float transmission;\n uniform float thickness;\n uniform float attenuationDistance;\n uniform vec3 attenuationColor;\n #ifdef USE_TRANSMISSIONMAP\n uniform sampler2D transmissionMap;\n #endif\n #ifdef USE_THICKNESSMAP\n uniform sampler2D thicknessMap;\n #endif\n uniform vec2 transmissionSamplerSize;\n uniform sampler2D transmissionSamplerMap;\n uniform mat4 modelMatrix;\n uniform mat4 projectionMatrix;\n varying vec3 vWorldPosition;\n float w0( float a ) {\n return ( 1.0 / 6.0 ) * ( a * ( a * ( - a + 3.0 ) - 3.0 ) + 1.0 );\n }\n float w1( float a ) {\n return ( 1.0 / 6.0 ) * ( a * a * ( 3.0 * a - 6.0 ) + 4.0 );\n }\n float w2( float a ){\n return ( 1.0 / 6.0 ) * ( a * ( a * ( - 3.0 * a + 3.0 ) + 3.0 ) + 1.0 );\n }\n float w3( float a ) {\n return ( 1.0 / 6.0 ) * ( a * a * a );\n }\n float g0( float a ) {\n return w0( a ) + w1( a );\n }\n float g1( float a ) {\n return w2( a ) + w3( a );\n }\n float h0( float a ) {\n return - 1.0 + w1( a ) / ( w0( a ) + w1( a ) );\n }\n float h1( float a ) {\n return 1.0 + w3( a ) / ( w2( a ) + w3( a ) );\n }\n vec4 bicubic( sampler2D tex, vec2 uv, vec4 texelSize, float lod ) {\n uv = uv * texelSize.zw + 0.5;\n vec2 iuv = floor( uv );\n vec2 fuv = fract( uv );\n float g0x = g0( fuv.x );\n float g1x = g1( fuv.x );\n float h0x = h0( fuv.x );\n float h1x = h1( fuv.x );\n float h0y = h0( fuv.y );\n float h1y = h1( fuv.y );\n vec2 p0 = ( vec2( iuv.x + h0x, iuv.y + h0y ) - 0.5 ) * texelSize.xy;\n vec2 p1 = ( vec2( iuv.x + h1x, iuv.y + h0y ) - 0.5 ) * texelSize.xy;\n vec2 p2 = ( vec2( iuv.x + h0x, iuv.y + h1y ) - 0.5 ) * texelSize.xy;\n vec2 p3 = ( vec2( iuv.x + h1x, iuv.y + h1y ) - 0.5 ) * texelSize.xy;\n return g0( fuv.y ) * ( g0x * textureLod( tex, p0, lod ) + g1x * textureLod( tex, p1, lod ) ) +\n g1( fuv.y ) * ( g0x * textureLod( tex, p2, lod ) + g1x * textureLod( tex, p3, lod ) );\n }\n vec4 textureBicubic( sampler2D sampler, vec2 uv, float lod ) {\n vec2 fLodSize = vec2( textureSize( sampler, int( lod ) ) );\n vec2 cLodSize = vec2( textureSize( sampler, int( lod + 1.0 ) ) );\n vec2 fLodSizeInv = 1.0 / fLodSize;\n vec2 cLodSizeInv = 1.0 / cLodSize;\n vec4 fSample = bicubic( sampler, uv, vec4( fLodSizeInv, fLodSize ), floor( lod ) );\n vec4 cSample = bicubic( sampler, uv, vec4( cLodSizeInv, cLodSize ), ceil( lod ) );\n return mix( fSample, cSample, fract( lod ) );\n }\n vec3 getVolumeTransmissionRay( const in vec3 n, const in vec3 v, const in float thickness, const in float ior, const in mat4 modelMatrix ) {\n vec3 refractionVector = refract( - v, normalize( n ), 1.0 / ior );\n vec3 modelScale;\n modelScale.x = length( vec3( modelMatrix[ 0 ].xyz ) );\n modelScale.y = length( vec3( modelMatrix[ 1 ].xyz ) );\n modelScale.z = length( vec3( modelMatrix[ 2 ].xyz ) );\n return normalize( refractionVector ) * thickness * modelScale;\n }\n float applyIorToRoughness( const in float roughness, const in float ior ) {\n return roughness * clamp( ior * 2.0 - 2.0, 0.0, 1.0 );\n }\n vec4 getTransmissionSample( const in vec2 fragCoord, const in float roughness, const in float ior ) {\n float lod = log2( transmissionSamplerSize.x ) * applyIorToRoughness( roughness, ior );\n return textureBicubic( transmissionSamplerMap, fragCoord.xy, lod );\n }\n vec3 volumeAttenuation( const in float transmissionDistance, const in vec3 attenuationColor, const in float attenuationDistance ) {\n if ( isinf( attenuationDistance ) ) {\n return vec3( 1.0 );\n } else {\n vec3 attenuationCoefficient = -log( attenuationColor ) / attenuationDistance;\n vec3 transmittance = exp( - attenuationCoefficient * transmissionDistance ); return transmittance;\n }\n }\n vec4 getIBLVolumeRefraction( const in vec3 n, const in vec3 v, const in float roughness, const in vec3 diffuseColor,\n const in vec3 specularColor, const in float specularF90, const in vec3 position, const in mat4 modelMatrix,\n const in mat4 viewMatrix, const in mat4 projMatrix, const in float dispersion, const in float ior, const in float thickness,\n const in vec3 attenuationColor, const in float attenuationDistance ) {\n vec4 transmittedLight;\n vec3 transmittance;\n #ifdef USE_DISPERSION\n float halfSpread = ( ior - 1.0 ) * 0.025 * dispersion;\n vec3 iors = vec3( ior - halfSpread, ior, ior + halfSpread );\n for ( int i = 0; i < 3; i ++ ) {\n vec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, iors[ i ], modelMatrix );\n vec3 refractedRayExit = position + transmissionRay;\n \n vec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 );\n vec2 refractionCoords = ndcPos.xy / ndcPos.w;\n refractionCoords += 1.0;\n refractionCoords /= 2.0;\n \n vec4 transmissionSample = getTransmissionSample( refractionCoords, roughness, iors[ i ] );\n transmittedLight[ i ] = transmissionSample[ i ];\n transmittedLight.a += transmissionSample.a;\n transmittance[ i ] = diffuseColor[ i ] * volumeAttenuation( length( transmissionRay ), attenuationColor, attenuationDistance )[ i ];\n }\n transmittedLight.a /= 3.0;\n \n #else\n \n vec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, ior, modelMatrix );\n vec3 refractedRayExit = position + transmissionRay;\n vec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 );\n vec2 refractionCoords = ndcPos.xy / ndcPos.w;\n refractionCoords += 1.0;\n refractionCoords /= 2.0;\n transmittedLight = getTransmissionSample( refractionCoords, roughness, ior );\n transmittance = diffuseColor * volumeAttenuation( length( transmissionRay ), attenuationColor, attenuationDistance );\n \n #endif\n vec3 attenuatedColor = transmittance * transmittedLight.rgb;\n vec3 F = EnvironmentBRDF( n, v, specularColor, specularF90, roughness );\n float transmittanceFactor = ( transmittance.r + transmittance.g + transmittance.b ) / 3.0;\n return vec4( ( 1.0 - F ) * attenuatedColor, 1.0 - ( 1.0 - transmittedLight.a ) * transmittanceFactor );\n }\n#endif",uv_pars_fragment:"#if defined( USE_UV ) || defined( USE_ANISOTROPY )\n varying vec2 vUv;\n#endif\n#ifdef USE_MAP\n varying vec2 vMapUv;\n#endif\n#ifdef USE_ALPHAMAP\n varying vec2 vAlphaMapUv;\n#endif\n#ifdef USE_LIGHTMAP\n varying vec2 vLightMapUv;\n#endif\n#ifdef USE_AOMAP\n varying vec2 vAoMapUv;\n#endif\n#ifdef USE_BUMPMAP\n varying vec2 vBumpMapUv;\n#endif\n#ifdef USE_NORMALMAP\n varying vec2 vNormalMapUv;\n#endif\n#ifdef USE_EMISSIVEMAP\n varying vec2 vEmissiveMapUv;\n#endif\n#ifdef USE_METALNESSMAP\n varying vec2 vMetalnessMapUv;\n#endif\n#ifdef USE_ROUGHNESSMAP\n varying vec2 vRoughnessMapUv;\n#endif\n#ifdef USE_ANISOTROPYMAP\n varying vec2 vAnisotropyMapUv;\n#endif\n#ifdef USE_CLEARCOATMAP\n varying vec2 vClearcoatMapUv;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n varying vec2 vClearcoatNormalMapUv;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n varying vec2 vClearcoatRoughnessMapUv;\n#endif\n#ifdef USE_IRIDESCENCEMAP\n varying vec2 vIridescenceMapUv;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n varying vec2 vIridescenceThicknessMapUv;\n#endif\n#ifdef USE_SHEEN_COLORMAP\n varying vec2 vSheenColorMapUv;\n#endif\n#ifdef USE_SHEEN_ROUGHNESSMAP\n varying vec2 vSheenRoughnessMapUv;\n#endif\n#ifdef USE_SPECULARMAP\n varying vec2 vSpecularMapUv;\n#endif\n#ifdef USE_SPECULAR_COLORMAP\n varying vec2 vSpecularColorMapUv;\n#endif\n#ifdef USE_SPECULAR_INTENSITYMAP\n varying vec2 vSpecularIntensityMapUv;\n#endif\n#ifdef USE_TRANSMISSIONMAP\n uniform mat3 transmissionMapTransform;\n varying vec2 vTransmissionMapUv;\n#endif\n#ifdef USE_THICKNESSMAP\n uniform mat3 thicknessMapTransform;\n varying vec2 vThicknessMapUv;\n#endif",uv_pars_vertex:"#if defined( USE_UV ) || defined( USE_ANISOTROPY )\n varying vec2 vUv;\n#endif\n#ifdef USE_MAP\n uniform mat3 mapTransform;\n varying vec2 vMapUv;\n#endif\n#ifdef USE_ALPHAMAP\n uniform mat3 alphaMapTransform;\n varying vec2 vAlphaMapUv;\n#endif\n#ifdef USE_LIGHTMAP\n uniform mat3 lightMapTransform;\n varying vec2 vLightMapUv;\n#endif\n#ifdef USE_AOMAP\n uniform mat3 aoMapTransform;\n varying vec2 vAoMapUv;\n#endif\n#ifdef USE_BUMPMAP\n uniform mat3 bumpMapTransform;\n varying vec2 vBumpMapUv;\n#endif\n#ifdef USE_NORMALMAP\n uniform mat3 normalMapTransform;\n varying vec2 vNormalMapUv;\n#endif\n#ifdef USE_DISPLACEMENTMAP\n uniform mat3 displacementMapTransform;\n varying vec2 vDisplacementMapUv;\n#endif\n#ifdef USE_EMISSIVEMAP\n uniform mat3 emissiveMapTransform;\n varying vec2 vEmissiveMapUv;\n#endif\n#ifdef USE_METALNESSMAP\n uniform mat3 metalnessMapTransform;\n varying vec2 vMetalnessMapUv;\n#endif\n#ifdef USE_ROUGHNESSMAP\n uniform mat3 roughnessMapTransform;\n varying vec2 vRoughnessMapUv;\n#endif\n#ifdef USE_ANISOTROPYMAP\n uniform mat3 anisotropyMapTransform;\n varying vec2 vAnisotropyMapUv;\n#endif\n#ifdef USE_CLEARCOATMAP\n uniform mat3 clearcoatMapTransform;\n varying vec2 vClearcoatMapUv;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n uniform mat3 clearcoatNormalMapTransform;\n varying vec2 vClearcoatNormalMapUv;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n uniform mat3 clearcoatRoughnessMapTransform;\n varying vec2 vClearcoatRoughnessMapUv;\n#endif\n#ifdef USE_SHEEN_COLORMAP\n uniform mat3 sheenColorMapTransform;\n varying vec2 vSheenColorMapUv;\n#endif\n#ifdef USE_SHEEN_ROUGHNESSMAP\n uniform mat3 sheenRoughnessMapTransform;\n varying vec2 vSheenRoughnessMapUv;\n#endif\n#ifdef USE_IRIDESCENCEMAP\n uniform mat3 iridescenceMapTransform;\n varying vec2 vIridescenceMapUv;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n uniform mat3 iridescenceThicknessMapTransform;\n varying vec2 vIridescenceThicknessMapUv;\n#endif\n#ifdef USE_SPECULARMAP\n uniform mat3 specularMapTransform;\n varying vec2 vSpecularMapUv;\n#endif\n#ifdef USE_SPECULAR_COLORMAP\n uniform mat3 specularColorMapTransform;\n varying vec2 vSpecularColorMapUv;\n#endif\n#ifdef USE_SPECULAR_INTENSITYMAP\n uniform mat3 specularIntensityMapTransform;\n varying vec2 vSpecularIntensityMapUv;\n#endif\n#ifdef USE_TRANSMISSIONMAP\n uniform mat3 transmissionMapTransform;\n varying vec2 vTransmissionMapUv;\n#endif\n#ifdef USE_THICKNESSMAP\n uniform mat3 thicknessMapTransform;\n varying vec2 vThicknessMapUv;\n#endif",uv_vertex:"#if defined( USE_UV ) || defined( USE_ANISOTROPY )\n vUv = vec3( uv, 1 ).xy;\n#endif\n#ifdef USE_MAP\n vMapUv = ( mapTransform * vec3( MAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_ALPHAMAP\n vAlphaMapUv = ( alphaMapTransform * vec3( ALPHAMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_LIGHTMAP\n vLightMapUv = ( lightMapTransform * vec3( LIGHTMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_AOMAP\n vAoMapUv = ( aoMapTransform * vec3( AOMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_BUMPMAP\n vBumpMapUv = ( bumpMapTransform * vec3( BUMPMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_NORMALMAP\n vNormalMapUv = ( normalMapTransform * vec3( NORMALMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_DISPLACEMENTMAP\n vDisplacementMapUv = ( displacementMapTransform * vec3( DISPLACEMENTMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_EMISSIVEMAP\n vEmissiveMapUv = ( emissiveMapTransform * vec3( EMISSIVEMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_METALNESSMAP\n vMetalnessMapUv = ( metalnessMapTransform * vec3( METALNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_ROUGHNESSMAP\n vRoughnessMapUv = ( roughnessMapTransform * vec3( ROUGHNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_ANISOTROPYMAP\n vAnisotropyMapUv = ( anisotropyMapTransform * vec3( ANISOTROPYMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_CLEARCOATMAP\n vClearcoatMapUv = ( clearcoatMapTransform * vec3( CLEARCOATMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n vClearcoatNormalMapUv = ( clearcoatNormalMapTransform * vec3( CLEARCOAT_NORMALMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n vClearcoatRoughnessMapUv = ( clearcoatRoughnessMapTransform * vec3( CLEARCOAT_ROUGHNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_IRIDESCENCEMAP\n vIridescenceMapUv = ( iridescenceMapTransform * vec3( IRIDESCENCEMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n vIridescenceThicknessMapUv = ( iridescenceThicknessMapTransform * vec3( IRIDESCENCE_THICKNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SHEEN_COLORMAP\n vSheenColorMapUv = ( sheenColorMapTransform * vec3( SHEEN_COLORMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SHEEN_ROUGHNESSMAP\n vSheenRoughnessMapUv = ( sheenRoughnessMapTransform * vec3( SHEEN_ROUGHNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SPECULARMAP\n vSpecularMapUv = ( specularMapTransform * vec3( SPECULARMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SPECULAR_COLORMAP\n vSpecularColorMapUv = ( specularColorMapTransform * vec3( SPECULAR_COLORMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SPECULAR_INTENSITYMAP\n vSpecularIntensityMapUv = ( specularIntensityMapTransform * vec3( SPECULAR_INTENSITYMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_TRANSMISSIONMAP\n vTransmissionMapUv = ( transmissionMapTransform * vec3( TRANSMISSIONMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_THICKNESSMAP\n vThicknessMapUv = ( thicknessMapTransform * vec3( THICKNESSMAP_UV, 1 ) ).xy;\n#endif",worldpos_vertex:"#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP ) || defined ( USE_TRANSMISSION ) || NUM_SPOT_LIGHT_COORDS > 0\n vec4 worldPosition = vec4( transformed, 1.0 );\n #ifdef USE_BATCHING\n worldPosition = batchingMatrix * worldPosition;\n #endif\n #ifdef USE_INSTANCING\n worldPosition = instanceMatrix * worldPosition;\n #endif\n worldPosition = modelMatrix * worldPosition;\n#endif",background_vert:"varying vec2 vUv;\nuniform mat3 uvTransform;\nvoid main() {\n vUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n gl_Position = vec4( position.xy, 1.0, 1.0 );\n}",background_frag:"uniform sampler2D t2D;\nuniform float backgroundIntensity;\nvarying vec2 vUv;\nvoid main() {\n vec4 texColor = texture2D( t2D, vUv );\n #ifdef DECODE_VIDEO_TEXTURE\n texColor = vec4( mix( pow( texColor.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), texColor.rgb * 0.0773993808, vec3( lessThanEqual( texColor.rgb, vec3( 0.04045 ) ) ) ), texColor.w );\n #endif\n texColor.rgb *= backgroundIntensity;\n gl_FragColor = texColor;\n #include \n #include \n}",backgroundCube_vert:"varying vec3 vWorldDirection;\n#include \nvoid main() {\n vWorldDirection = transformDirection( position, modelMatrix );\n #include \n #include \n gl_Position.z = gl_Position.w;\n}",backgroundCube_frag:"#ifdef ENVMAP_TYPE_CUBE\n uniform samplerCube envMap;\n#elif defined( ENVMAP_TYPE_CUBE_UV )\n uniform sampler2D envMap;\n#endif\nuniform float flipEnvMap;\nuniform float backgroundBlurriness;\nuniform float backgroundIntensity;\nuniform mat3 backgroundRotation;\nvarying vec3 vWorldDirection;\n#include \nvoid main() {\n #ifdef ENVMAP_TYPE_CUBE\n vec4 texColor = textureCube( envMap, backgroundRotation * vec3( flipEnvMap * vWorldDirection.x, vWorldDirection.yz ) );\n #elif defined( ENVMAP_TYPE_CUBE_UV )\n vec4 texColor = textureCubeUV( envMap, backgroundRotation * vWorldDirection, backgroundBlurriness );\n #else\n vec4 texColor = vec4( 0.0, 0.0, 0.0, 1.0 );\n #endif\n texColor.rgb *= backgroundIntensity;\n gl_FragColor = texColor;\n #include \n #include \n}",cube_vert:"varying vec3 vWorldDirection;\n#include \nvoid main() {\n vWorldDirection = transformDirection( position, modelMatrix );\n #include \n #include \n gl_Position.z = gl_Position.w;\n}",cube_frag:"uniform samplerCube tCube;\nuniform float tFlip;\nuniform float opacity;\nvarying vec3 vWorldDirection;\nvoid main() {\n vec4 texColor = textureCube( tCube, vec3( tFlip * vWorldDirection.x, vWorldDirection.yz ) );\n gl_FragColor = texColor;\n gl_FragColor.a *= opacity;\n #include \n #include \n}",depth_vert:"#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvarying vec2 vHighPrecisionZW;\nvoid main() {\n #include \n #include \n #include \n #include \n #ifdef USE_DISPLACEMENTMAP\n #include \n #include \n #include \n #endif\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vHighPrecisionZW = gl_Position.zw;\n}",depth_frag:"#if DEPTH_PACKING == 3200\n uniform float opacity;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvarying vec2 vHighPrecisionZW;\nvoid main() {\n vec4 diffuseColor = vec4( 1.0 );\n #include \n #if DEPTH_PACKING == 3200\n diffuseColor.a = opacity;\n #endif\n #include \n #include \n #include \n #include \n #include \n float fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5;\n #if DEPTH_PACKING == 3200\n gl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );\n #elif DEPTH_PACKING == 3201\n gl_FragColor = packDepthToRGBA( fragCoordZ );\n #elif DEPTH_PACKING == 3202\n gl_FragColor = vec4( packDepthToRGB( fragCoordZ ), 1.0 );\n #elif DEPTH_PACKING == 3203\n gl_FragColor = vec4( packDepthToRG( fragCoordZ ), 0.0, 1.0 );\n #endif\n}",distanceRGBA_vert:"#define DISTANCE\nvarying vec3 vWorldPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #ifdef USE_DISPLACEMENTMAP\n #include \n #include \n #include \n #endif\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vWorldPosition = worldPosition.xyz;\n}",distanceRGBA_frag:"#define DISTANCE\nuniform vec3 referencePosition;\nuniform float nearDistance;\nuniform float farDistance;\nvarying vec3 vWorldPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main () {\n vec4 diffuseColor = vec4( 1.0 );\n #include \n #include \n #include \n #include \n #include \n float dist = length( vWorldPosition - referencePosition );\n dist = ( dist - nearDistance ) / ( farDistance - nearDistance );\n dist = saturate( dist );\n gl_FragColor = packDepthToRGBA( dist );\n}",equirect_vert:"varying vec3 vWorldDirection;\n#include \nvoid main() {\n vWorldDirection = transformDirection( position, modelMatrix );\n #include \n #include \n}",equirect_frag:"uniform sampler2D tEquirect;\nvarying vec3 vWorldDirection;\n#include \nvoid main() {\n vec3 direction = normalize( vWorldDirection );\n vec2 sampleUV = equirectUv( direction );\n gl_FragColor = texture2D( tEquirect, sampleUV );\n #include \n #include \n}",linedashed_vert:"uniform float scale;\nattribute float lineDistance;\nvarying float vLineDistance;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vLineDistance = scale * lineDistance;\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n}",linedashed_frag:"uniform vec3 diffuse;\nuniform float opacity;\nuniform float dashSize;\nuniform float totalSize;\nvarying float vLineDistance;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n if ( mod( vLineDistance, totalSize ) > dashSize ) {\n discard;\n }\n vec3 outgoingLight = vec3( 0.0 );\n #include \n #include \n #include \n outgoingLight = diffuseColor.rgb;\n #include \n #include \n #include \n #include \n #include \n}",meshbasic_vert:"#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #include \n #if defined ( USE_ENVMAP ) || defined ( USE_SKINNING )\n #include \n #include \n #include \n #include \n #include \n #endif\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n}",meshbasic_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#ifndef FLAT_SHADED\n varying vec3 vNormal;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n #ifdef USE_LIGHTMAP\n vec4 lightMapTexel = texture2D( lightMap, vLightMapUv );\n reflectedLight.indirectDiffuse += lightMapTexel.rgb * lightMapIntensity * RECIPROCAL_PI;\n #else\n reflectedLight.indirectDiffuse += vec3( 1.0 );\n #endif\n #include \n reflectedLight.indirectDiffuse *= diffuseColor.rgb;\n vec3 outgoingLight = reflectedLight.indirectDiffuse;\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n}",meshlambert_vert:"#define LAMBERT\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vViewPosition = - mvPosition.xyz;\n #include \n #include \n #include \n #include \n}",meshlambert_frag:"#define LAMBERT\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n vec3 totalEmissiveRadiance = emissive;\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n}",meshmatcap_vert:"#define MATCAP\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vViewPosition = - mvPosition.xyz;\n}",meshmatcap_frag:"#define MATCAP\nuniform vec3 diffuse;\nuniform float opacity;\nuniform sampler2D matcap;\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vec3 viewDir = normalize( vViewPosition );\n vec3 x = normalize( vec3( viewDir.z, 0.0, - viewDir.x ) );\n vec3 y = cross( viewDir, x );\n vec2 uv = vec2( dot( x, normal ), dot( y, normal ) ) * 0.495 + 0.5;\n #ifdef USE_MATCAP\n vec4 matcapColor = texture2D( matcap, uv );\n #else\n vec4 matcapColor = vec4( vec3( mix( 0.2, 0.8, uv.y ) ), 1.0 );\n #endif\n vec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb;\n #include \n #include \n #include \n #include \n #include \n #include \n}",meshnormal_vert:"#define NORMAL\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\n varying vec3 vViewPosition;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\n vViewPosition = - mvPosition.xyz;\n#endif\n}",meshnormal_frag:"#define NORMAL\nuniform float opacity;\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\n varying vec3 vViewPosition;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( 0.0, 0.0, 0.0, opacity );\n #include \n #include \n #include \n #include \n gl_FragColor = vec4( packNormalToRGB( normal ), diffuseColor.a );\n #ifdef OPAQUE\n gl_FragColor.a = 1.0;\n #endif\n}",meshphong_vert:"#define PHONG\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vViewPosition = - mvPosition.xyz;\n #include \n #include \n #include \n #include \n}",meshphong_frag:"#define PHONG\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform vec3 specular;\nuniform float shininess;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n vec3 totalEmissiveRadiance = emissive;\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n}",meshphysical_vert:"#define STANDARD\nvarying vec3 vViewPosition;\n#ifdef USE_TRANSMISSION\n varying vec3 vWorldPosition;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vViewPosition = - mvPosition.xyz;\n #include \n #include \n #include \n#ifdef USE_TRANSMISSION\n vWorldPosition = worldPosition.xyz;\n#endif\n}",meshphysical_frag:"#define STANDARD\n#ifdef PHYSICAL\n #define IOR\n #define USE_SPECULAR\n#endif\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float roughness;\nuniform float metalness;\nuniform float opacity;\n#ifdef IOR\n uniform float ior;\n#endif\n#ifdef USE_SPECULAR\n uniform float specularIntensity;\n uniform vec3 specularColor;\n #ifdef USE_SPECULAR_COLORMAP\n uniform sampler2D specularColorMap;\n #endif\n #ifdef USE_SPECULAR_INTENSITYMAP\n uniform sampler2D specularIntensityMap;\n #endif\n#endif\n#ifdef USE_CLEARCOAT\n uniform float clearcoat;\n uniform float clearcoatRoughness;\n#endif\n#ifdef USE_DISPERSION\n uniform float dispersion;\n#endif\n#ifdef USE_IRIDESCENCE\n uniform float iridescence;\n uniform float iridescenceIOR;\n uniform float iridescenceThicknessMinimum;\n uniform float iridescenceThicknessMaximum;\n#endif\n#ifdef USE_SHEEN\n uniform vec3 sheenColor;\n uniform float sheenRoughness;\n #ifdef USE_SHEEN_COLORMAP\n uniform sampler2D sheenColorMap;\n #endif\n #ifdef USE_SHEEN_ROUGHNESSMAP\n uniform sampler2D sheenRoughnessMap;\n #endif\n#endif\n#ifdef USE_ANISOTROPY\n uniform vec2 anisotropyVector;\n #ifdef USE_ANISOTROPYMAP\n uniform sampler2D anisotropyMap;\n #endif\n#endif\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n vec3 totalEmissiveRadiance = emissive;\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vec3 totalDiffuse = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse;\n vec3 totalSpecular = reflectedLight.directSpecular + reflectedLight.indirectSpecular;\n #include \n vec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance;\n #ifdef USE_SHEEN\n float sheenEnergyComp = 1.0 - 0.157 * max3( material.sheenColor );\n outgoingLight = outgoingLight * sheenEnergyComp + sheenSpecularDirect + sheenSpecularIndirect;\n #endif\n #ifdef USE_CLEARCOAT\n float dotNVcc = saturate( dot( geometryClearcoatNormal, geometryViewDir ) );\n vec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc );\n outgoingLight = outgoingLight * ( 1.0 - material.clearcoat * Fcc ) + ( clearcoatSpecularDirect + clearcoatSpecularIndirect ) * material.clearcoat;\n #endif\n #include \n #include \n #include \n #include \n #include \n #include \n}",meshtoon_vert:"#define TOON\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vViewPosition = - mvPosition.xyz;\n #include \n #include \n #include \n}",meshtoon_frag:"#define TOON\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n vec3 totalEmissiveRadiance = emissive;\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\n #include \n #include \n #include \n #include \n #include \n #include \n}",points_vert:"uniform float size;\nuniform float scale;\n#include \n#include \n#include \n#include \n#include \n#include \n#ifdef USE_POINTS_UV\n varying vec2 vUv;\n uniform mat3 uvTransform;\n#endif\nvoid main() {\n #ifdef USE_POINTS_UV\n vUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n #endif\n #include \n #include \n #include \n #include \n #include \n #include \n gl_PointSize = size;\n #ifdef USE_SIZEATTENUATION\n bool isPerspective = isPerspectiveMatrix( projectionMatrix );\n if ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\n #endif\n #include \n #include \n #include \n #include \n}",points_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n vec3 outgoingLight = vec3( 0.0 );\n #include \n #include \n #include \n #include \n #include \n outgoingLight = diffuseColor.rgb;\n #include \n #include \n #include \n #include \n #include \n}",shadow_vert:"#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n}",shadow_frag:"uniform vec3 color;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n gl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) );\n #include \n #include \n #include \n}",sprite_vert:"uniform float rotation;\nuniform vec2 center;\n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n vec4 mvPosition = modelViewMatrix[ 3 ];\n vec2 scale = vec2( length( modelMatrix[ 0 ].xyz ), length( modelMatrix[ 1 ].xyz ) );\n #ifndef USE_SIZEATTENUATION\n bool isPerspective = isPerspectiveMatrix( projectionMatrix );\n if ( isPerspective ) scale *= - mvPosition.z;\n #endif\n vec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale;\n vec2 rotatedPosition;\n rotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y;\n rotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y;\n mvPosition.xy += rotatedPosition;\n gl_Position = projectionMatrix * mvPosition;\n #include \n #include \n #include \n}",sprite_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n vec3 outgoingLight = vec3( 0.0 );\n #include \n #include \n #include \n #include \n #include \n outgoingLight = diffuseColor.rgb;\n #include \n #include \n #include \n #include \n}"},ok={common:{diffuse:{value:new tz(0xffffff)},opacity:{value:1},map:{value:null},mapTransform:{value:new Z},alphaMap:{value:null},alphaMapTransform:{value:new Z},alphaTest:{value:0}},specularmap:{specularMap:{value:null},specularMapTransform:{value:new Z}},envmap:{envMap:{value:null},envMapRotation:{value:new Z},flipEnvMap:{value:-1},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1},aoMapTransform:{value:new Z}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1},lightMapTransform:{value:new Z}},bumpmap:{bumpMap:{value:null},bumpMapTransform:{value:new Z},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalMapTransform:{value:new Z},normalScale:{value:new Y(1,1)}},displacementmap:{displacementMap:{value:null},displacementMapTransform:{value:new Z},displacementScale:{value:1},displacementBias:{value:0}},emissivemap:{emissiveMap:{value:null},emissiveMapTransform:{value:new Z}},metalnessmap:{metalnessMap:{value:null},metalnessMapTransform:{value:new Z}},roughnessmap:{roughnessMap:{value:null},roughnessMapTransform:{value:new Z}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new tz(0xffffff)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMap:{value:[]},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},spotLightMap:{value:[]},spotShadowMap:{value:[]},spotLightMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},pointShadowMap:{value:[]},pointShadowMatrix:{value:[]},hemisphereLights:{value:[],properties:{direction:{},skyColor:{},groundColor:{}}},rectAreaLights:{value:[],properties:{color:{},position:{},width:{},height:{}}},ltc_1:{value:null},ltc_2:{value:null}},points:{diffuse:{value:new tz(0xffffff)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaMapTransform:{value:new Z},alphaTest:{value:0},uvTransform:{value:new Z}},sprite:{diffuse:{value:new tz(0xffffff)},opacity:{value:1},center:{value:new Y(.5,.5)},rotation:{value:0},map:{value:null},mapTransform:{value:new Z},alphaMap:{value:null},alphaMapTransform:{value:new Z},alphaTest:{value:0}}},oH={basic:{uniforms:n_([ok.common,ok.specularmap,ok.envmap,ok.aomap,ok.lightmap,ok.fog]),vertexShader:oB.meshbasic_vert,fragmentShader:oB.meshbasic_frag},lambert:{uniforms:n_([ok.common,ok.specularmap,ok.envmap,ok.aomap,ok.lightmap,ok.emissivemap,ok.bumpmap,ok.normalmap,ok.displacementmap,ok.fog,ok.lights,{emissive:{value:new tz(0)}}]),vertexShader:oB.meshlambert_vert,fragmentShader:oB.meshlambert_frag},phong:{uniforms:n_([ok.common,ok.specularmap,ok.envmap,ok.aomap,ok.lightmap,ok.emissivemap,ok.bumpmap,ok.normalmap,ok.displacementmap,ok.fog,ok.lights,{emissive:{value:new tz(0)},specular:{value:new tz(1118481)},shininess:{value:30}}]),vertexShader:oB.meshphong_vert,fragmentShader:oB.meshphong_frag},standard:{uniforms:n_([ok.common,ok.envmap,ok.aomap,ok.lightmap,ok.emissivemap,ok.bumpmap,ok.normalmap,ok.displacementmap,ok.roughnessmap,ok.metalnessmap,ok.fog,ok.lights,{emissive:{value:new tz(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:oB.meshphysical_vert,fragmentShader:oB.meshphysical_frag},toon:{uniforms:n_([ok.common,ok.aomap,ok.lightmap,ok.emissivemap,ok.bumpmap,ok.normalmap,ok.displacementmap,ok.gradientmap,ok.fog,ok.lights,{emissive:{value:new tz(0)}}]),vertexShader:oB.meshtoon_vert,fragmentShader:oB.meshtoon_frag},matcap:{uniforms:n_([ok.common,ok.bumpmap,ok.normalmap,ok.displacementmap,ok.fog,{matcap:{value:null}}]),vertexShader:oB.meshmatcap_vert,fragmentShader:oB.meshmatcap_frag},points:{uniforms:n_([ok.points,ok.fog]),vertexShader:oB.points_vert,fragmentShader:oB.points_frag},dashed:{uniforms:n_([ok.common,ok.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:oB.linedashed_vert,fragmentShader:oB.linedashed_frag},depth:{uniforms:n_([ok.common,ok.displacementmap]),vertexShader:oB.depth_vert,fragmentShader:oB.depth_frag},normal:{uniforms:n_([ok.common,ok.bumpmap,ok.normalmap,ok.displacementmap,{opacity:{value:1}}]),vertexShader:oB.meshnormal_vert,fragmentShader:oB.meshnormal_frag},sprite:{uniforms:n_([ok.sprite,ok.fog]),vertexShader:oB.sprite_vert,fragmentShader:oB.sprite_frag},background:{uniforms:{uvTransform:{value:new Z},t2D:{value:null},backgroundIntensity:{value:1}},vertexShader:oB.background_vert,fragmentShader:oB.background_frag},backgroundCube:{uniforms:{envMap:{value:null},flipEnvMap:{value:-1},backgroundBlurriness:{value:0},backgroundIntensity:{value:1},backgroundRotation:{value:new Z}},vertexShader:oB.backgroundCube_vert,fragmentShader:oB.backgroundCube_frag},cube:{uniforms:{tCube:{value:null},tFlip:{value:-1},opacity:{value:1}},vertexShader:oB.cube_vert,fragmentShader:oB.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:oB.equirect_vert,fragmentShader:oB.equirect_frag},distanceRGBA:{uniforms:n_([ok.common,ok.displacementmap,{referencePosition:{value:new eE},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:oB.distanceRGBA_vert,fragmentShader:oB.distanceRGBA_frag},shadow:{uniforms:n_([ok.lights,ok.fog,{color:{value:new tz(0)},opacity:{value:1}}]),vertexShader:oB.shadow_vert,fragmentShader:oB.shadow_frag}};oH.physical={uniforms:n_([oH.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatMapTransform:{value:new Z},clearcoatNormalMap:{value:null},clearcoatNormalMapTransform:{value:new Z},clearcoatNormalScale:{value:new Y(1,1)},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatRoughnessMapTransform:{value:new Z},dispersion:{value:0},iridescence:{value:0},iridescenceMap:{value:null},iridescenceMapTransform:{value:new Z},iridescenceIOR:{value:1.3},iridescenceThicknessMinimum:{value:100},iridescenceThicknessMaximum:{value:400},iridescenceThicknessMap:{value:null},iridescenceThicknessMapTransform:{value:new Z},sheen:{value:0},sheenColor:{value:new tz(0)},sheenColorMap:{value:null},sheenColorMapTransform:{value:new Z},sheenRoughness:{value:1},sheenRoughnessMap:{value:null},sheenRoughnessMapTransform:{value:new Z},transmission:{value:0},transmissionMap:{value:null},transmissionMapTransform:{value:new Z},transmissionSamplerSize:{value:new Y},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},thicknessMapTransform:{value:new Z},attenuationDistance:{value:0},attenuationColor:{value:new tz(0)},specularColor:{value:new tz(1,1,1)},specularColorMap:{value:null},specularColorMapTransform:{value:new Z},specularIntensity:{value:1},specularIntensityMap:{value:null},specularIntensityMapTransform:{value:new Z},anisotropyVector:{value:new Y},anisotropyMap:{value:null},anisotropyMapTransform:{value:new Z}}]),vertexShader:oB.meshphysical_vert,fragmentShader:oB.meshphysical_frag};let oV={r:0,b:0,g:0},oG=new tn,oW=new e2;function oj(e,t,n,i,r,a,s){let o,l,u=new tz(0),c=+(!0!==a),h=null,d=0,p=null;function f(e){let i=!0===e.isScene?e.background:null;return i&&i.isTexture&&(i=(e.backgroundBlurriness>0?n:t).get(i)),i}function m(t,n){t.getRGB(oV,ny(e)),i.buffers.color.setClear(oV.r,oV.g,oV.b,n,s)}return{getClearColor:function(){return u},setClearColor:function(e,t=1){u.set(e),m(u,c=t)},getClearAlpha:function(){return c},setClearAlpha:function(e){m(u,c=e)},render:function(t){let n=!1,r=f(t);null===r?m(u,c):r&&r.isColor&&(m(r,1),n=!0);let a=e.xr.getEnvironmentBlendMode();"additive"===a?i.buffers.color.setClear(0,0,0,1,s):"alpha-blend"===a&&i.buffers.color.setClear(0,0,0,0,s),(e.autoClear||n)&&(i.buffers.depth.setTest(!0),i.buffers.depth.setMask(!0),i.buffers.color.setMask(!0),e.clear(e.autoClearColor,e.autoClearDepth,e.autoClearStencil))},addToRenderList:function(t,n){let i=f(n);i&&(i.isCubeTexture||306===i.mapping)?(void 0===l&&((l=new nf(new ng(1,1,1),new nb({name:"BackgroundCubeMaterial",uniforms:nv(oH.backgroundCube.uniforms),vertexShader:oH.backgroundCube.vertexShader,fragmentShader:oH.backgroundCube.fragmentShader,side:1,depthTest:!1,depthWrite:!1,fog:!1}))).geometry.deleteAttribute("normal"),l.geometry.deleteAttribute("uv"),l.onBeforeRender=function(e,t,n){this.matrixWorld.copyPosition(n.matrixWorld)},Object.defineProperty(l.material,"envMap",{get:function(){return this.uniforms.envMap.value}}),r.update(l)),oG.copy(n.backgroundRotation),oG.x*=-1,oG.y*=-1,oG.z*=-1,i.isCubeTexture&&!1===i.isRenderTargetTexture&&(oG.y*=-1,oG.z*=-1),l.material.uniforms.envMap.value=i,l.material.uniforms.flipEnvMap.value=i.isCubeTexture&&!1===i.isRenderTargetTexture?-1:1,l.material.uniforms.backgroundBlurriness.value=n.backgroundBlurriness,l.material.uniforms.backgroundIntensity.value=n.backgroundIntensity,l.material.uniforms.backgroundRotation.value.setFromMatrix4(oW.makeRotationFromEuler(oG)),l.material.toneMapped=eu.getTransfer(i.colorSpace)!==U,(h!==i||d!==i.version||p!==e.toneMapping)&&(l.material.needsUpdate=!0,h=i,d=i.version,p=e.toneMapping),l.layers.enableAll(),t.unshift(l,l.geometry,l.material,0,0,null)):i&&i.isTexture&&(void 0===o&&((o=new nf(new r9(2,2),new nb({name:"BackgroundMaterial",uniforms:nv(oH.background.uniforms),vertexShader:oH.background.vertexShader,fragmentShader:oH.background.fragmentShader,side:0,depthTest:!1,depthWrite:!1,fog:!1}))).geometry.deleteAttribute("normal"),Object.defineProperty(o.material,"map",{get:function(){return this.uniforms.t2D.value}}),r.update(o)),o.material.uniforms.t2D.value=i,o.material.uniforms.backgroundIntensity.value=n.backgroundIntensity,o.material.toneMapped=eu.getTransfer(i.colorSpace)!==U,!0===i.matrixAutoUpdate&&i.updateMatrix(),o.material.uniforms.uvTransform.value.copy(i.matrix),(h!==i||d!==i.version||p!==e.toneMapping)&&(o.material.needsUpdate=!0,h=i,d=i.version,p=e.toneMapping),o.layers.enableAll(),t.unshift(o,o.geometry,o.material,0,0,null))},dispose:function(){void 0!==l&&(l.geometry.dispose(),l.material.dispose()),void 0!==o&&(o.geometry.dispose(),o.material.dispose())}}}function oX(e,t){let n=e.getParameter(e.MAX_VERTEX_ATTRIBS),i={},r=u(null),a=r,s=!1;function o(t){return e.bindVertexArray(t)}function l(t){return e.deleteVertexArray(t)}function u(e){let t=[],i=[],r=[];for(let e=0;e=0){let n=r[t],i=s[t];if(void 0===i&&("instanceMatrix"===t&&e.instanceMatrix&&(i=e.instanceMatrix),"instanceColor"===t&&e.instanceColor&&(i=e.instanceColor)),void 0===n||n.attribute!==i||i&&n.data!==i.data)return!0;o++}return a.attributesNum!==o||a.index!==i}(n,m,l,g))&&function(e,t,n,i){let r={},s=t.attributes,o=0,l=n.getAttributes();for(let t in l)if(l[t].location>=0){let n=s[t];void 0===n&&("instanceMatrix"===t&&e.instanceMatrix&&(n=e.instanceMatrix),"instanceColor"===t&&e.instanceColor&&(n=e.instanceColor));let i={};i.attribute=n,n&&n.data&&(i.data=n.data),r[t]=i,o++}a.attributes=r,a.attributesNum=o,a.index=i}(n,m,l,g),null!==g&&t.update(g,e.ELEMENT_ARRAY_BUFFER),(M||s)&&(s=!1,function(n,i,r,a){c();let s=a.attributes,o=r.getAttributes(),l=i.defaultAttributeValues;for(let i in o){let r=o[i];if(r.location>=0){let o=s[i];if(void 0===o&&("instanceMatrix"===i&&n.instanceMatrix&&(o=n.instanceMatrix),"instanceColor"===i&&n.instanceColor&&(o=n.instanceColor)),void 0!==o){let i=o.normalized,s=o.itemSize,l=t.get(o);if(void 0===l)continue;let u=l.buffer,c=l.type,p=l.bytesPerElement,m=c===e.INT||c===e.UNSIGNED_INT||1013===o.gpuType;if(o.isInterleavedBufferAttribute){let t=o.data,l=t.stride,g=o.offset;if(t.isInstancedInterleavedBuffer){for(let e=0;e0&&e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.HIGH_FLOAT).precision>0)return"highp";t="mediump"}return"mediump"===t&&e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.MEDIUM_FLOAT).precision>0&&e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.MEDIUM_FLOAT).precision>0?"mediump":"lowp"}let s=void 0!==n.precision?n.precision:"highp",o=a(s);o!==s&&(console.warn("THREE.WebGLRenderer:",s,"not supported, using",o,"instead."),s=o);let l=!0===n.logarithmicDepthBuffer,u=!0===n.reverseDepthBuffer&&t.has("EXT_clip_control"),c=e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS),h=e.getParameter(e.MAX_VERTEX_TEXTURE_IMAGE_UNITS);return{isWebGL2:!0,getMaxAnisotropy:function(){if(void 0!==r)return r;if(!0===t.has("EXT_texture_filter_anisotropic")){let n=t.get("EXT_texture_filter_anisotropic");r=e.getParameter(n.MAX_TEXTURE_MAX_ANISOTROPY_EXT)}else r=0;return r},getMaxPrecision:a,textureFormatReadable:function(t){return 1023===t||i.convert(t)===e.getParameter(e.IMPLEMENTATION_COLOR_READ_FORMAT)},textureTypeReadable:function(n){let r=1016===n&&(t.has("EXT_color_buffer_half_float")||t.has("EXT_color_buffer_float"));return 1009===n||i.convert(n)===e.getParameter(e.IMPLEMENTATION_COLOR_READ_TYPE)||1015===n||!!r},precision:s,logarithmicDepthBuffer:l,reverseDepthBuffer:u,maxTextures:c,maxVertexTextures:h,maxTextureSize:e.getParameter(e.MAX_TEXTURE_SIZE),maxCubemapSize:e.getParameter(e.MAX_CUBE_MAP_TEXTURE_SIZE),maxAttributes:e.getParameter(e.MAX_VERTEX_ATTRIBS),maxVertexUniforms:e.getParameter(e.MAX_VERTEX_UNIFORM_VECTORS),maxVaryings:e.getParameter(e.MAX_VARYING_VECTORS),maxFragmentUniforms:e.getParameter(e.MAX_FRAGMENT_UNIFORM_VECTORS),vertexTextures:h>0,maxSamples:e.getParameter(e.MAX_SAMPLES)}}function oZ(e){let t=this,n=null,i=0,r=!1,a=!1,s=new iy,o=new Z,l={value:null,needsUpdate:!1};function u(e,n,i,r){let a=null!==e?e.length:0,u=null;if(0!==a){if(u=l.value,!0!==r||null===u){let t=i+4*a,r=n.matrixWorldInverse;o.getNormalMatrix(r),(null===u||u.length0),t.numPlanes=i,t.numIntersection=0)}}function oJ(e){let t=new WeakMap;function n(e,t){return 303===t?e.mapping=301:304===t&&(e.mapping=302),e}function i(e){let n=e.target;n.removeEventListener("dispose",i);let r=t.get(n);void 0!==r&&(t.delete(n),r.dispose())}return{get:function(r){if(r&&r.isTexture){let a=r.mapping;if(303===a||304===a)if(t.has(r))return n(t.get(r).texture,r.mapping);else{let a=r.image;if(!a||!(a.height>0))return null;{let s=new nR(a.height);return s.fromEquirectangularTexture(e,r),t.set(r,s),r.addEventListener("dispose",i),n(s.texture,r.mapping)}}}return r},dispose:function(){t=new WeakMap}}}let oK=[.125,.215,.35,.446,.526,.582],o$=new sn,oQ=new tz,o0=null,o1=0,o2=0,o3=!1,o4=(1+Math.sqrt(5))/2,o5=1/o4,o6=[new eE(-o4,o5,0),new eE(o4,o5,0),new eE(-o5,0,o4),new eE(o5,0,o4),new eE(0,o4,-o5),new eE(0,o4,o5),new eE(-1,1,-1),new eE(1,1,-1),new eE(-1,1,1),new eE(1,1,1)];class o8{constructor(e){this._renderer=e,this._pingPongRenderTarget=null,this._lodMax=0,this._cubeSize=0,this._lodPlanes=[],this._sizeLods=[],this._sigmas=[],this._blurMaterial=null,this._cubemapMaterial=null,this._equirectMaterial=null,this._compileMaterial(this._blurMaterial)}fromScene(e,t=0,n=.1,i=100){o0=this._renderer.getRenderTarget(),o1=this._renderer.getActiveCubeFace(),o2=this._renderer.getActiveMipmapLevel(),o3=this._renderer.xr.enabled,this._renderer.xr.enabled=!1,this._setSize(256);let r=this._allocateTargets();return r.depthBuffer=!0,this._sceneToCubeUV(e,n,i,r),t>0&&this._blur(r,0,0,t),this._applyPMREM(r),this._cleanup(r),r}fromEquirectangular(e,t=null){return this._fromTexture(e,t)}fromCubemap(e,t=null){return this._fromTexture(e,t)}compileCubemapShader(){null===this._cubemapMaterial&&(this._cubemapMaterial=lt(),this._compileMaterial(this._cubemapMaterial))}compileEquirectangularShader(){null===this._equirectMaterial&&(this._equirectMaterial=le(),this._compileMaterial(this._equirectMaterial))}dispose(){this._dispose(),null!==this._cubemapMaterial&&this._cubemapMaterial.dispose(),null!==this._equirectMaterial&&this._equirectMaterial.dispose()}_setSize(e){this._lodMax=Math.floor(Math.log2(e)),this._cubeSize=Math.pow(2,this._lodMax)}_dispose(){null!==this._blurMaterial&&this._blurMaterial.dispose(),null!==this._pingPongRenderTarget&&this._pingPongRenderTarget.dispose();for(let e=0;ee-4?o=oK[s-e+4-1]:0===s&&(o=0),i.push(o);let l=1/(a-2),u=-l,c=1+l,h=[u,u,c,u,c,c,u,u,c,c,u,c],d=new Float32Array(108),p=new Float32Array(72),f=new Float32Array(36);for(let e=0;e<6;e++){let t=e%3*2/3-1,n=e>2?0:-1,i=[t,n,0,t+2/3,n,0,t+2/3,n+1,0,t,n,0,t+2/3,n+1,0,t,n+1,0];d.set(i,18*e),p.set(h,12*e);let r=[e,e,e,e,e,e];f.set(r,6*e)}let m=new nn;m.setAttribute("position",new tZ(d,3)),m.setAttribute("uv",new tZ(p,2)),m.setAttribute("faceIndex",new tZ(f,1)),t.push(m),r>4&&r--}return{lodPlanes:t,sizeLods:n,sigmas:i}}(i)),this._blurMaterial=(r=i,new nb({name:"SphericalGaussianBlur",defines:{n:20,CUBEUV_TEXEL_WIDTH:1/e,CUBEUV_TEXEL_HEIGHT:1/t,CUBEUV_MAX_MIP:`${r}.0`},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:new Float32Array(20)},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:new eE(0,1,0)}},vertexShader:ln(),fragmentShader:` + + precision mediump float; + precision mediump int; + + varying vec3 vOutputDirection; + + uniform sampler2D envMap; + uniform int samples; + uniform float weights[ n ]; + uniform bool latitudinal; + uniform float dTheta; + uniform float mipInt; + uniform vec3 poleAxis; + + #define ENVMAP_TYPE_CUBE_UV + #include + + vec3 getSample( float theta, vec3 axis ) { + + float cosTheta = cos( theta ); + // Rodrigues' axis-angle rotation + vec3 sampleDirection = vOutputDirection * cosTheta + + cross( axis, vOutputDirection ) * sin( theta ) + + axis * dot( axis, vOutputDirection ) * ( 1.0 - cosTheta ); + + return bilinearCubeUV( envMap, sampleDirection, mipInt ); + + } + + void main() { + + vec3 axis = latitudinal ? poleAxis : cross( poleAxis, vOutputDirection ); + + if ( all( equal( axis, vec3( 0.0 ) ) ) ) { + + axis = vec3( vOutputDirection.z, 0.0, - vOutputDirection.x ); + + } + + axis = normalize( axis ); + + gl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 ); + gl_FragColor.rgb += weights[ 0 ] * getSample( 0.0, axis ); + + for ( int i = 1; i < n; i++ ) { + + if ( i >= samples ) { + + break; + + } + + float theta = dTheta * float( i ); + gl_FragColor.rgb += weights[ i ] * getSample( -1.0 * theta, axis ); + gl_FragColor.rgb += weights[ i ] * getSample( theta, axis ); + + } + + } + `,blending:0,depthTest:!1,depthWrite:!1}))}return i}_compileMaterial(e){let t=new nf(this._lodPlanes[0],e);this._renderer.compile(t,o$)}_sceneToCubeUV(e,t,n,i){let r=new nE(90,1,t,n),a=[1,-1,1,1,1,1],s=[1,1,1,-1,-1,-1],o=this._renderer,l=o.autoClear,u=o.toneMapping;o.getClearColor(oQ),o.toneMapping=0,o.autoClear=!1;let c=new tV({name:"PMREM.Background",side:1,depthWrite:!1,depthTest:!1}),h=new nf(new ng,c),d=!1,p=e.background;p?p.isColor&&(c.color.copy(p),e.background=null,d=!0):(c.color.copy(oQ),d=!0);for(let t=0;t<6;t++){let n=t%3;0===n?(r.up.set(0,a[t],0),r.lookAt(s[t],0,0)):1===n?(r.up.set(0,0,a[t]),r.lookAt(0,s[t],0)):(r.up.set(0,a[t],0),r.lookAt(0,0,s[t]));let l=this._cubeSize;o7(i,n*l,t>2?l:0,l,l),o.setRenderTarget(i),d&&o.render(h,r),o.render(e,r)}h.geometry.dispose(),h.material.dispose(),o.toneMapping=u,o.autoClear=l,e.background=p}_textureToCubeUV(e,t){let n=this._renderer,i=301===e.mapping||302===e.mapping;i?(null===this._cubemapMaterial&&(this._cubemapMaterial=lt()),this._cubemapMaterial.uniforms.flipEnvMap.value=!1===e.isRenderTargetTexture?-1:1):null===this._equirectMaterial&&(this._equirectMaterial=le());let r=i?this._cubemapMaterial:this._equirectMaterial,a=new nf(this._lodPlanes[0],r);r.uniforms.envMap.value=e;let s=this._cubeSize;o7(t,0,0,3*s,2*s),n.setRenderTarget(t),n.render(a,o$)}_applyPMREM(e){let t=this._renderer,n=t.autoClear;t.autoClear=!1;let i=this._lodPlanes.length;for(let t=1;t20&&console.warn(`sigmaRadians, ${r}, is too large and will clip, as it requested ${f} samples when the maximum is set to 20`);let m=[],g=0;for(let e=0;e<20;++e){let t=e/p,n=Math.exp(-t*t/2);m.push(n),0===e?g+=n:ev-4?i-v+4:0),y,3*_,2*_),o.setRenderTarget(t),o.render(u,o$)}}function o9(e,t,n){let i=new ex(e,t,n);return i.texture.mapping=306,i.texture.name="PMREM.cubeUv",i.scissorTest=!0,i}function o7(e,t,n,i,r){e.viewport.set(t,n,i,r),e.scissor.set(t,n,i,r)}function le(){return new nb({name:"EquirectangularToCubeUV",uniforms:{envMap:{value:null}},vertexShader:ln(),fragmentShader:` + + precision mediump float; + precision mediump int; + + varying vec3 vOutputDirection; + + uniform sampler2D envMap; + + #include + + void main() { + + vec3 outputDirection = normalize( vOutputDirection ); + vec2 uv = equirectUv( outputDirection ); + + gl_FragColor = vec4( texture2D ( envMap, uv ).rgb, 1.0 ); + + } + `,blending:0,depthTest:!1,depthWrite:!1})}function lt(){return new nb({name:"CubemapToCubeUV",uniforms:{envMap:{value:null},flipEnvMap:{value:-1}},vertexShader:ln(),fragmentShader:` + + precision mediump float; + precision mediump int; + + uniform float flipEnvMap; + + varying vec3 vOutputDirection; + + uniform samplerCube envMap; + + void main() { + + gl_FragColor = textureCube( envMap, vec3( flipEnvMap * vOutputDirection.x, vOutputDirection.yz ) ); + + } + `,blending:0,depthTest:!1,depthWrite:!1})}function ln(){return` + + precision mediump float; + precision mediump int; + + attribute float faceIndex; + + varying vec3 vOutputDirection; + + // RH coordinate system; PMREM face-indexing convention + vec3 getDirection( vec2 uv, float face ) { + + uv = 2.0 * uv - 1.0; + + vec3 direction = vec3( uv, 1.0 ); + + if ( face == 0.0 ) { + + direction = direction.zyx; // ( 1, v, u ) pos x + + } else if ( face == 1.0 ) { + + direction = direction.xzy; + direction.xz *= -1.0; // ( -u, 1, -v ) pos y + + } else if ( face == 2.0 ) { + + direction.x *= -1.0; // ( -u, v, 1 ) pos z + + } else if ( face == 3.0 ) { + + direction = direction.zyx; + direction.xz *= -1.0; // ( -1, v, -u ) neg x + + } else if ( face == 4.0 ) { + + direction = direction.xzy; + direction.xy *= -1.0; // ( -u, -1, v ) neg y + + } else if ( face == 5.0 ) { + + direction.z *= -1.0; // ( u, v, -1 ) neg z + + } + + return direction; + + } + + void main() { + + vOutputDirection = getDirection( uv, faceIndex ); + gl_Position = vec4( position, 1.0 ); + + } + `}function li(e){let t=new WeakMap,n=null;function i(e){let n=e.target;n.removeEventListener("dispose",i);let r=t.get(n);void 0!==r&&(t.delete(n),r.dispose())}return{get:function(r){if(r&&r.isTexture){let a=r.mapping,s=303===a||304===a,o=301===a||302===a;if(s||o){let a=t.get(r),l=void 0!==a?a.texture.pmremVersion:0;if(r.isRenderTargetTexture&&r.pmremVersion!==l)return null===n&&(n=new o8(e)),(a=s?n.fromEquirectangular(r,a):n.fromCubemap(r,a)).texture.pmremVersion=r.pmremVersion,t.set(r,a),a.texture;{if(void 0!==a)return a.texture;let l=r.image;return s&&l&&l.height>0||o&&l&&function(e){let t=0;for(let n=0;n<6;n++)void 0!==e[n]&&t++;return 6===t}(l)?(null===n&&(n=new o8(e)),(a=s?n.fromEquirectangular(r):n.fromCubemap(r)).texture.pmremVersion=r.pmremVersion,t.set(r,a),r.addEventListener("dispose",i),a.texture):null}}}return r},dispose:function(){t=new WeakMap,null!==n&&(n.dispose(),n=null)}}}function lr(e){let t={};function n(n){let i;if(void 0!==t[n])return t[n];switch(n){case"WEBGL_depth_texture":i=e.getExtension("WEBGL_depth_texture")||e.getExtension("MOZ_WEBGL_depth_texture")||e.getExtension("WEBKIT_WEBGL_depth_texture");break;case"EXT_texture_filter_anisotropic":i=e.getExtension("EXT_texture_filter_anisotropic")||e.getExtension("MOZ_EXT_texture_filter_anisotropic")||e.getExtension("WEBKIT_EXT_texture_filter_anisotropic");break;case"WEBGL_compressed_texture_s3tc":i=e.getExtension("WEBGL_compressed_texture_s3tc")||e.getExtension("MOZ_WEBGL_compressed_texture_s3tc")||e.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc");break;case"WEBGL_compressed_texture_pvrtc":i=e.getExtension("WEBGL_compressed_texture_pvrtc")||e.getExtension("WEBKIT_WEBGL_compressed_texture_pvrtc");break;default:i=e.getExtension(n)}return t[n]=i,i}return{has:function(e){return null!==n(e)},init:function(){n("EXT_color_buffer_float"),n("WEBGL_clip_cull_distance"),n("OES_texture_float_linear"),n("EXT_color_buffer_half_float"),n("WEBGL_multisampled_render_to_texture"),n("WEBGL_render_shared_exponent")},get:function(e){let t=n(e);return null===t&&ei("THREE.WebGLRenderer: "+e+" extension not supported."),t}}}function la(e,t,n,i){let r={},a=new WeakMap;function s(e){let o=e.target;for(let e in null!==o.index&&t.remove(o.index),o.attributes)t.remove(o.attributes[e]);o.removeEventListener("dispose",s),delete r[o.id];let l=a.get(o);l&&(t.remove(l),a.delete(o)),i.releaseStatesOfGeometry(o),!0===o.isInstancedBufferGeometry&&delete o._maxInstanceCount,n.memory.geometries--}function o(e){let n=[],i=e.index,r=e.attributes.position,s=0;if(null!==i){let e=i.array;s=i.version;for(let t=0,i=e.length;tt.maxTextureSize&&(f=Math.ceil(p/t.maxTextureSize),p=t.maxTextureSize);let m=new Float32Array(p*f*4*c),g=new eb(m,p,f,c);g.type=1015,g.needsUpdate=!0;let v=4*d;for(let t=0;t0)return e;let r=t*n,a=lm[r];if(void 0===a&&(a=new Float32Array(r),lm[r]=a),0!==t){i.toArray(a,0);for(let i=1,r=0;i!==t;++i)r+=n,e[i].toArray(a,r)}return a}function lb(e,t){if(e.length!==t.length)return!1;for(let n=0,i=e.length;n":" "} ${r}: ${n[e]}`)}return i.join("\n")}(e.getShaderSource(t),i)}}let ul=new eE;function uu(e){return""!==e}function uc(e,t){let n=t.numSpotLightShadows+t.numSpotLightMaps-t.numSpotLightShadowsWithMaps;return e.replace(/NUM_DIR_LIGHTS/g,t.numDirLights).replace(/NUM_SPOT_LIGHTS/g,t.numSpotLights).replace(/NUM_SPOT_LIGHT_MAPS/g,t.numSpotLightMaps).replace(/NUM_SPOT_LIGHT_COORDS/g,n).replace(/NUM_RECT_AREA_LIGHTS/g,t.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,t.numPointLights).replace(/NUM_HEMI_LIGHTS/g,t.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g,t.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS/g,t.numSpotLightShadowsWithMaps).replace(/NUM_SPOT_LIGHT_SHADOWS/g,t.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,t.numPointLightShadows)}function uh(e,t){return e.replace(/NUM_CLIPPING_PLANES/g,t.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,t.numClippingPlanes-t.numClipIntersection)}let ud=/^[ \t]*#include +<([\w\d./]+)>/gm;function up(e){return e.replace(ud,um)}let uf=new Map;function um(e,t){let n=oB[t];if(void 0===n){let e=uf.get(t);if(void 0!==e)n=oB[e],console.warn('THREE.WebGLRenderer: Shader chunk "%s" has been deprecated. Use "%s" instead.',t,e);else throw Error("Can not resolve #include <"+t+">")}return up(n)}let ug=/#pragma unroll_loop_start\s+for\s*\(\s*int\s+i\s*=\s*(\d+)\s*;\s*i\s*<\s*(\d+)\s*;\s*i\s*\+\+\s*\)\s*{([\s\S]+?)}\s+#pragma unroll_loop_end/g;function uv(e){return e.replace(ug,u_)}function u_(e,t,n,i){let r="";for(let e=parseInt(t);e0&&(r+="\n"),(a=["#define SHADER_TYPE "+n.shaderType,"#define SHADER_NAME "+n.shaderName,x].filter(uu).join("\n")).length>0&&(a+="\n");else{let e,t,i,s;r=[uy(n),"#define SHADER_TYPE "+n.shaderType,"#define SHADER_NAME "+n.shaderName,x,n.extensionClipCullDistance?"#define USE_CLIP_DISTANCE":"",n.batching?"#define USE_BATCHING":"",n.batchingColor?"#define USE_BATCHING_COLOR":"",n.instancing?"#define USE_INSTANCING":"",n.instancingColor?"#define USE_INSTANCING_COLOR":"",n.instancingMorph?"#define USE_INSTANCING_MORPH":"",n.useFog&&n.fog?"#define USE_FOG":"",n.useFog&&n.fogExp2?"#define FOG_EXP2":"",n.map?"#define USE_MAP":"",n.envMap?"#define USE_ENVMAP":"",n.envMap?"#define "+g:"",n.lightMap?"#define USE_LIGHTMAP":"",n.aoMap?"#define USE_AOMAP":"",n.bumpMap?"#define USE_BUMPMAP":"",n.normalMap?"#define USE_NORMALMAP":"",n.normalMapObjectSpace?"#define USE_NORMALMAP_OBJECTSPACE":"",n.normalMapTangentSpace?"#define USE_NORMALMAP_TANGENTSPACE":"",n.displacementMap?"#define USE_DISPLACEMENTMAP":"",n.emissiveMap?"#define USE_EMISSIVEMAP":"",n.anisotropy?"#define USE_ANISOTROPY":"",n.anisotropyMap?"#define USE_ANISOTROPYMAP":"",n.clearcoatMap?"#define USE_CLEARCOATMAP":"",n.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",n.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",n.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",n.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",n.specularMap?"#define USE_SPECULARMAP":"",n.specularColorMap?"#define USE_SPECULAR_COLORMAP":"",n.specularIntensityMap?"#define USE_SPECULAR_INTENSITYMAP":"",n.roughnessMap?"#define USE_ROUGHNESSMAP":"",n.metalnessMap?"#define USE_METALNESSMAP":"",n.alphaMap?"#define USE_ALPHAMAP":"",n.alphaHash?"#define USE_ALPHAHASH":"",n.transmission?"#define USE_TRANSMISSION":"",n.transmissionMap?"#define USE_TRANSMISSIONMAP":"",n.thicknessMap?"#define USE_THICKNESSMAP":"",n.sheenColorMap?"#define USE_SHEEN_COLORMAP":"",n.sheenRoughnessMap?"#define USE_SHEEN_ROUGHNESSMAP":"",n.mapUv?"#define MAP_UV "+n.mapUv:"",n.alphaMapUv?"#define ALPHAMAP_UV "+n.alphaMapUv:"",n.lightMapUv?"#define LIGHTMAP_UV "+n.lightMapUv:"",n.aoMapUv?"#define AOMAP_UV "+n.aoMapUv:"",n.emissiveMapUv?"#define EMISSIVEMAP_UV "+n.emissiveMapUv:"",n.bumpMapUv?"#define BUMPMAP_UV "+n.bumpMapUv:"",n.normalMapUv?"#define NORMALMAP_UV "+n.normalMapUv:"",n.displacementMapUv?"#define DISPLACEMENTMAP_UV "+n.displacementMapUv:"",n.metalnessMapUv?"#define METALNESSMAP_UV "+n.metalnessMapUv:"",n.roughnessMapUv?"#define ROUGHNESSMAP_UV "+n.roughnessMapUv:"",n.anisotropyMapUv?"#define ANISOTROPYMAP_UV "+n.anisotropyMapUv:"",n.clearcoatMapUv?"#define CLEARCOATMAP_UV "+n.clearcoatMapUv:"",n.clearcoatNormalMapUv?"#define CLEARCOAT_NORMALMAP_UV "+n.clearcoatNormalMapUv:"",n.clearcoatRoughnessMapUv?"#define CLEARCOAT_ROUGHNESSMAP_UV "+n.clearcoatRoughnessMapUv:"",n.iridescenceMapUv?"#define IRIDESCENCEMAP_UV "+n.iridescenceMapUv:"",n.iridescenceThicknessMapUv?"#define IRIDESCENCE_THICKNESSMAP_UV "+n.iridescenceThicknessMapUv:"",n.sheenColorMapUv?"#define SHEEN_COLORMAP_UV "+n.sheenColorMapUv:"",n.sheenRoughnessMapUv?"#define SHEEN_ROUGHNESSMAP_UV "+n.sheenRoughnessMapUv:"",n.specularMapUv?"#define SPECULARMAP_UV "+n.specularMapUv:"",n.specularColorMapUv?"#define SPECULAR_COLORMAP_UV "+n.specularColorMapUv:"",n.specularIntensityMapUv?"#define SPECULAR_INTENSITYMAP_UV "+n.specularIntensityMapUv:"",n.transmissionMapUv?"#define TRANSMISSIONMAP_UV "+n.transmissionMapUv:"",n.thicknessMapUv?"#define THICKNESSMAP_UV "+n.thicknessMapUv:"",n.vertexTangents&&!1===n.flatShading?"#define USE_TANGENT":"",n.vertexColors?"#define USE_COLOR":"",n.vertexAlphas?"#define USE_COLOR_ALPHA":"",n.vertexUv1s?"#define USE_UV1":"",n.vertexUv2s?"#define USE_UV2":"",n.vertexUv3s?"#define USE_UV3":"",n.pointsUvs?"#define USE_POINTS_UV":"",n.flatShading?"#define FLAT_SHADED":"",n.skinning?"#define USE_SKINNING":"",n.morphTargets?"#define USE_MORPHTARGETS":"",n.morphNormals&&!1===n.flatShading?"#define USE_MORPHNORMALS":"",n.morphColors?"#define USE_MORPHCOLORS":"",n.morphTargetsCount>0?"#define MORPHTARGETS_TEXTURE_STRIDE "+n.morphTextureStride:"",n.morphTargetsCount>0?"#define MORPHTARGETS_COUNT "+n.morphTargetsCount:"",n.doubleSided?"#define DOUBLE_SIDED":"",n.flipSided?"#define FLIP_SIDED":"",n.shadowMapEnabled?"#define USE_SHADOWMAP":"",n.shadowMapEnabled?"#define "+f:"",n.sizeAttenuation?"#define USE_SIZEATTENUATION":"",n.numLightProbes>0?"#define USE_LIGHT_PROBES":"",n.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",n.reverseDepthBuffer?"#define USE_REVERSEDEPTHBUF":"","uniform mat4 modelMatrix;","uniform mat4 modelViewMatrix;","uniform mat4 projectionMatrix;","uniform mat4 viewMatrix;","uniform mat3 normalMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;","#ifdef USE_INSTANCING"," attribute mat4 instanceMatrix;","#endif","#ifdef USE_INSTANCING_COLOR"," attribute vec3 instanceColor;","#endif","#ifdef USE_INSTANCING_MORPH"," uniform sampler2D morphTexture;","#endif","attribute vec3 position;","attribute vec3 normal;","attribute vec2 uv;","#ifdef USE_UV1"," attribute vec2 uv1;","#endif","#ifdef USE_UV2"," attribute vec2 uv2;","#endif","#ifdef USE_UV3"," attribute vec2 uv3;","#endif","#ifdef USE_TANGENT"," attribute vec4 tangent;","#endif","#if defined( USE_COLOR_ALPHA )"," attribute vec4 color;","#elif defined( USE_COLOR )"," attribute vec3 color;","#endif","#ifdef USE_SKINNING"," attribute vec4 skinIndex;"," attribute vec4 skinWeight;","#endif","\n"].filter(uu).join("\n"),a=[uy(n),"#define SHADER_TYPE "+n.shaderType,"#define SHADER_NAME "+n.shaderName,x,n.useFog&&n.fog?"#define USE_FOG":"",n.useFog&&n.fogExp2?"#define FOG_EXP2":"",n.alphaToCoverage?"#define ALPHA_TO_COVERAGE":"",n.map?"#define USE_MAP":"",n.matcap?"#define USE_MATCAP":"",n.envMap?"#define USE_ENVMAP":"",n.envMap?"#define "+m:"",n.envMap?"#define "+g:"",n.envMap?"#define "+v:"",_?"#define CUBEUV_TEXEL_WIDTH "+_.texelWidth:"",_?"#define CUBEUV_TEXEL_HEIGHT "+_.texelHeight:"",_?"#define CUBEUV_MAX_MIP "+_.maxMip+".0":"",n.lightMap?"#define USE_LIGHTMAP":"",n.aoMap?"#define USE_AOMAP":"",n.bumpMap?"#define USE_BUMPMAP":"",n.normalMap?"#define USE_NORMALMAP":"",n.normalMapObjectSpace?"#define USE_NORMALMAP_OBJECTSPACE":"",n.normalMapTangentSpace?"#define USE_NORMALMAP_TANGENTSPACE":"",n.emissiveMap?"#define USE_EMISSIVEMAP":"",n.anisotropy?"#define USE_ANISOTROPY":"",n.anisotropyMap?"#define USE_ANISOTROPYMAP":"",n.clearcoat?"#define USE_CLEARCOAT":"",n.clearcoatMap?"#define USE_CLEARCOATMAP":"",n.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",n.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",n.dispersion?"#define USE_DISPERSION":"",n.iridescence?"#define USE_IRIDESCENCE":"",n.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",n.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",n.specularMap?"#define USE_SPECULARMAP":"",n.specularColorMap?"#define USE_SPECULAR_COLORMAP":"",n.specularIntensityMap?"#define USE_SPECULAR_INTENSITYMAP":"",n.roughnessMap?"#define USE_ROUGHNESSMAP":"",n.metalnessMap?"#define USE_METALNESSMAP":"",n.alphaMap?"#define USE_ALPHAMAP":"",n.alphaTest?"#define USE_ALPHATEST":"",n.alphaHash?"#define USE_ALPHAHASH":"",n.sheen?"#define USE_SHEEN":"",n.sheenColorMap?"#define USE_SHEEN_COLORMAP":"",n.sheenRoughnessMap?"#define USE_SHEEN_ROUGHNESSMAP":"",n.transmission?"#define USE_TRANSMISSION":"",n.transmissionMap?"#define USE_TRANSMISSIONMAP":"",n.thicknessMap?"#define USE_THICKNESSMAP":"",n.vertexTangents&&!1===n.flatShading?"#define USE_TANGENT":"",n.vertexColors||n.instancingColor||n.batchingColor?"#define USE_COLOR":"",n.vertexAlphas?"#define USE_COLOR_ALPHA":"",n.vertexUv1s?"#define USE_UV1":"",n.vertexUv2s?"#define USE_UV2":"",n.vertexUv3s?"#define USE_UV3":"",n.pointsUvs?"#define USE_POINTS_UV":"",n.gradientMap?"#define USE_GRADIENTMAP":"",n.flatShading?"#define FLAT_SHADED":"",n.doubleSided?"#define DOUBLE_SIDED":"",n.flipSided?"#define FLIP_SIDED":"",n.shadowMapEnabled?"#define USE_SHADOWMAP":"",n.shadowMapEnabled?"#define "+f:"",n.premultipliedAlpha?"#define PREMULTIPLIED_ALPHA":"",n.numLightProbes>0?"#define USE_LIGHT_PROBES":"",n.decodeVideoTexture?"#define DECODE_VIDEO_TEXTURE":"",n.decodeVideoTextureEmissive?"#define DECODE_VIDEO_TEXTURE_EMISSIVE":"",n.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",n.reverseDepthBuffer?"#define USE_REVERSEDEPTHBUF":"","uniform mat4 viewMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;",0!==n.toneMapping?"#define TONE_MAPPING":"",0!==n.toneMapping?oB.tonemapping_pars_fragment:"",0!==n.toneMapping?function(e,t){let n;switch(t){case 1:n="Linear";break;case 2:n="Reinhard";break;case 3:n="Cineon";break;case 4:n="ACESFilmic";break;case 6:n="AgX";break;case 7:n="Neutral";break;case 5:n="Custom";break;default:console.warn("THREE.WebGLProgram: Unsupported toneMapping:",t),n="Linear"}return"vec3 "+e+"( vec3 color ) { return "+n+"ToneMapping( color ); }"}("toneMapping",n.toneMapping):"",n.dithering?"#define DITHERING":"",n.opaque?"#define OPAQUE":"",oB.colorspace_pars_fragment,(e=function(e){eu._getMatrix(us,eu.workingColorSpace,e);let t=`mat3( ${us.elements.map(e=>e.toFixed(4))} )`;switch(eu.getTransfer(e)){case N:return[t,"LinearTransferOETF"];case U:return[t,"sRGBTransferOETF"];default:return console.warn("THREE.WebGLProgram: Unsupported color space: ",e),[t,"LinearTransferOETF"]}}(n.outputColorSpace),`vec4 linearToOutputTexel( vec4 value ) { + return ${e[1]}( vec4( value.rgb * ${e[0]}, value.a ) ); +}`),(eu.getLuminanceCoefficients(ul),t=ul.x.toFixed(4),i=ul.y.toFixed(4),s=ul.z.toFixed(4),`float luminance( const in vec3 rgb ) { + const vec3 weights = vec3( ${t}, ${i}, ${s} ); + return dot( weights, rgb ); +}`),n.useDepthPacking?"#define DEPTH_PACKING "+n.depthPacking:"","\n"].filter(uu).join("\n")}d=uh(d=uc(d=up(d),n),n),p=uh(p=uc(p=up(p),n),n),d=uv(d),p=uv(p),!0!==n.isRawShaderMaterial&&(S="#version 300 es\n",r=[y,"#define attribute in\n#define varying out\n#define texture2D texture"].join("\n")+"\n"+r,a=["#define varying in",n.glslVersion===D?"":"layout(location = 0) out highp vec4 pc_fragColor;",n.glslVersion===D?"":"#define gl_FragColor pc_fragColor","#define gl_FragDepthEXT gl_FragDepth\n#define texture2D texture\n#define textureCube texture\n#define texture2DProj textureProj\n#define texture2DLodEXT textureLod\n#define texture2DProjLodEXT textureProjLod\n#define textureCubeLodEXT textureLod\n#define texture2DGradEXT textureGrad\n#define texture2DProjGradEXT textureProjGrad\n#define textureCubeGradEXT textureGrad"].join("\n")+"\n"+a);let M=S+r+d,T=S+a+p,w=ur(c,c.VERTEX_SHADER,M),E=ur(c,c.FRAGMENT_SHADER,T);function A(t){if(e.debug.checkShaderErrors){let n=c.getProgramInfoLog(b).trim(),i=c.getShaderInfoLog(w).trim(),s=c.getShaderInfoLog(E).trim(),o=!0,l=!0;if(!1===c.getProgramParameter(b,c.LINK_STATUS))if(o=!1,"function"==typeof e.debug.onShaderError)e.debug.onShaderError(c,b,w,E);else{let e=uo(c,w,"vertex"),i=uo(c,E,"fragment");console.error("THREE.WebGLProgram: Shader Error "+c.getError()+" - VALIDATE_STATUS "+c.getProgramParameter(b,c.VALIDATE_STATUS)+"\n\nMaterial Name: "+t.name+"\nMaterial Type: "+t.type+"\n\nProgram Info Log: "+n+"\n"+e+"\n"+i)}else""!==n?console.warn("THREE.WebGLProgram: Program Info Log:",n):(""===i||""===s)&&(l=!1);l&&(t.diagnostics={runnable:o,programLog:n,vertexShader:{log:i,prefix:r},fragmentShader:{log:s,prefix:a}})}c.deleteShader(w),c.deleteShader(E),s=new ui(c,b),o=function(e,t){let n={},i=e.getProgramParameter(t,e.ACTIVE_ATTRIBUTES);for(let r=0;r0,Z=a.clearcoat>0,J=a.dispersion>0,K=a.iridescence>0,$=a.sheen>0,Q=a.transmission>0,ee=Y&&!!a.anisotropyMap,et=Z&&!!a.clearcoatMap,en=Z&&!!a.clearcoatNormalMap,ei=Z&&!!a.clearcoatRoughnessMap,er=K&&!!a.iridescenceMap,ea=K&&!!a.iridescenceThicknessMap,es=$&&!!a.sheenColorMap,eo=$&&!!a.sheenRoughnessMap,el=!!a.specularMap,ec=!!a.specularColorMap,eh=!!a.specularIntensityMap,ed=Q&&!!a.transmissionMap,ep=Q&&!!a.thicknessMap,ef=!!a.gradientMap,em=!!a.alphaMap,eg=a.alphaTest>0,ev=!!a.alphaHash,e_=!!a.extensions,ey=0;a.toneMapped&&(null===I||!0===I.isXRRenderTarget)&&(ey=e.toneMapping);let ex={shaderID:A,shaderType:a.type,shaderName:a.name,vertexShader:_,fragmentShader:y,defines:a.defines,customVertexShaderID:x,customFragmentShaderID:b,isRawShaderMaterial:!0===a.isRawShaderMaterial,glslVersion:a.glslVersion,precision:p,batching:O,batchingColor:O&&null!==v._colorsTexture,instancing:D,instancingColor:D&&null!==v.instanceColor,instancingMorph:D&&null!==v.morphTexture,supportsVertexTextures:d,outputColorSpace:null===I?e.outputColorSpace:!0===I.isXRRenderTarget?I.texture.colorSpace:L,alphaToCoverage:!!a.alphaToCoverage,map:F,matcap:z,envMap:B,envMapMode:B&&w.mapping,envMapCubeUVHeight:E,aoMap:k,lightMap:H,bumpMap:V,normalMap:G,displacementMap:d&&W,emissiveMap:j,normalMapObjectSpace:G&&1===a.normalMapType,normalMapTangentSpace:G&&0===a.normalMapType,metalnessMap:X,roughnessMap:q,anisotropy:Y,anisotropyMap:ee,clearcoat:Z,clearcoatMap:et,clearcoatNormalMap:en,clearcoatRoughnessMap:ei,dispersion:J,iridescence:K,iridescenceMap:er,iridescenceThicknessMap:ea,sheen:$,sheenColorMap:es,sheenRoughnessMap:eo,specularMap:el,specularColorMap:ec,specularIntensityMap:eh,transmission:Q,transmissionMap:ed,thicknessMap:ep,gradientMap:ef,opaque:!1===a.transparent&&1===a.blending&&!1===a.alphaToCoverage,alphaMap:em,alphaTest:eg,alphaHash:ev,combine:a.combine,mapUv:F&&m(a.map.channel),aoMapUv:k&&m(a.aoMap.channel),lightMapUv:H&&m(a.lightMap.channel),bumpMapUv:V&&m(a.bumpMap.channel),normalMapUv:G&&m(a.normalMap.channel),displacementMapUv:W&&m(a.displacementMap.channel),emissiveMapUv:j&&m(a.emissiveMap.channel),metalnessMapUv:X&&m(a.metalnessMap.channel),roughnessMapUv:q&&m(a.roughnessMap.channel),anisotropyMapUv:ee&&m(a.anisotropyMap.channel),clearcoatMapUv:et&&m(a.clearcoatMap.channel),clearcoatNormalMapUv:en&&m(a.clearcoatNormalMap.channel),clearcoatRoughnessMapUv:ei&&m(a.clearcoatRoughnessMap.channel),iridescenceMapUv:er&&m(a.iridescenceMap.channel),iridescenceThicknessMapUv:ea&&m(a.iridescenceThicknessMap.channel),sheenColorMapUv:es&&m(a.sheenColorMap.channel),sheenRoughnessMapUv:eo&&m(a.sheenRoughnessMap.channel),specularMapUv:el&&m(a.specularMap.channel),specularColorMapUv:ec&&m(a.specularColorMap.channel),specularIntensityMapUv:eh&&m(a.specularIntensityMap.channel),transmissionMapUv:ed&&m(a.transmissionMap.channel),thicknessMapUv:ep&&m(a.thicknessMap.channel),alphaMapUv:em&&m(a.alphaMap.channel),vertexTangents:!!M.attributes.tangent&&(G||Y),vertexColors:a.vertexColors,vertexAlphas:!0===a.vertexColors&&!!M.attributes.color&&4===M.attributes.color.itemSize,pointsUvs:!0===v.isPoints&&!!M.attributes.uv&&(F||em),fog:!!S,useFog:!0===a.fog,fogExp2:!!S&&S.isFogExp2,flatShading:!0===a.flatShading,sizeAttenuation:!0===a.sizeAttenuation,logarithmicDepthBuffer:h,reverseDepthBuffer:N,skinning:!0===v.isSkinnedMesh,morphTargets:void 0!==M.morphAttributes.position,morphNormals:void 0!==M.morphAttributes.normal,morphColors:void 0!==M.morphAttributes.color,morphTargetsCount:R,morphTextureStride:P,numDirLights:o.directional.length,numPointLights:o.point.length,numSpotLights:o.spot.length,numSpotLightMaps:o.spotLightMap.length,numRectAreaLights:o.rectArea.length,numHemiLights:o.hemi.length,numDirLightShadows:o.directionalShadowMap.length,numPointLightShadows:o.pointShadowMap.length,numSpotLightShadows:o.spotShadowMap.length,numSpotLightShadowsWithMaps:o.numSpotLightShadowsWithMaps,numLightProbes:o.numLightProbes,numClippingPlanes:s.numPlanes,numClipIntersection:s.numIntersection,dithering:a.dithering,shadowMapEnabled:e.shadowMap.enabled&&c.length>0,shadowMapType:e.shadowMap.type,toneMapping:ey,decodeVideoTexture:F&&!0===a.map.isVideoTexture&&eu.getTransfer(a.map.colorSpace)===U,decodeVideoTextureEmissive:j&&!0===a.emissiveMap.isVideoTexture&&eu.getTransfer(a.emissiveMap.colorSpace)===U,premultipliedAlpha:a.premultipliedAlpha,doubleSided:2===a.side,flipSided:1===a.side,useDepthPacking:a.depthPacking>=0,depthPacking:a.depthPacking||0,index0AttributeName:a.index0AttributeName,extensionClipCullDistance:e_&&!0===a.extensions.clipCullDistance&&i.has("WEBGL_clip_cull_distance"),extensionMultiDraw:(e_&&!0===a.extensions.multiDraw||O)&&i.has("WEBGL_multi_draw"),rendererExtensionParallelShaderCompile:i.has("KHR_parallel_shader_compile"),customProgramCacheKey:a.customProgramCacheKey()};return ex.vertexUv1s=u.has(1),ex.vertexUv2s=u.has(2),ex.vertexUv3s=u.has(3),u.clear(),ex},getProgramCacheKey:function(t){var n,i,r,a;let s=[];if(t.shaderID?s.push(t.shaderID):(s.push(t.customVertexShaderID),s.push(t.customFragmentShaderID)),void 0!==t.defines)for(let e in t.defines)s.push(e),s.push(t.defines[e]);return!1===t.isRawShaderMaterial&&(n=s,i=t,n.push(i.precision),n.push(i.outputColorSpace),n.push(i.envMapMode),n.push(i.envMapCubeUVHeight),n.push(i.mapUv),n.push(i.alphaMapUv),n.push(i.lightMapUv),n.push(i.aoMapUv),n.push(i.bumpMapUv),n.push(i.normalMapUv),n.push(i.displacementMapUv),n.push(i.emissiveMapUv),n.push(i.metalnessMapUv),n.push(i.roughnessMapUv),n.push(i.anisotropyMapUv),n.push(i.clearcoatMapUv),n.push(i.clearcoatNormalMapUv),n.push(i.clearcoatRoughnessMapUv),n.push(i.iridescenceMapUv),n.push(i.iridescenceThicknessMapUv),n.push(i.sheenColorMapUv),n.push(i.sheenRoughnessMapUv),n.push(i.specularMapUv),n.push(i.specularColorMapUv),n.push(i.specularIntensityMapUv),n.push(i.transmissionMapUv),n.push(i.thicknessMapUv),n.push(i.combine),n.push(i.fogExp2),n.push(i.sizeAttenuation),n.push(i.morphTargetsCount),n.push(i.morphAttributeCount),n.push(i.numDirLights),n.push(i.numPointLights),n.push(i.numSpotLights),n.push(i.numSpotLightMaps),n.push(i.numHemiLights),n.push(i.numRectAreaLights),n.push(i.numDirLightShadows),n.push(i.numPointLightShadows),n.push(i.numSpotLightShadows),n.push(i.numSpotLightShadowsWithMaps),n.push(i.numLightProbes),n.push(i.shadowMapType),n.push(i.toneMapping),n.push(i.numClippingPlanes),n.push(i.numClipIntersection),n.push(i.depthPacking),r=s,a=t,o.disableAll(),a.supportsVertexTextures&&o.enable(0),a.instancing&&o.enable(1),a.instancingColor&&o.enable(2),a.instancingMorph&&o.enable(3),a.matcap&&o.enable(4),a.envMap&&o.enable(5),a.normalMapObjectSpace&&o.enable(6),a.normalMapTangentSpace&&o.enable(7),a.clearcoat&&o.enable(8),a.iridescence&&o.enable(9),a.alphaTest&&o.enable(10),a.vertexColors&&o.enable(11),a.vertexAlphas&&o.enable(12),a.vertexUv1s&&o.enable(13),a.vertexUv2s&&o.enable(14),a.vertexUv3s&&o.enable(15),a.vertexTangents&&o.enable(16),a.anisotropy&&o.enable(17),a.alphaHash&&o.enable(18),a.batching&&o.enable(19),a.dispersion&&o.enable(20),a.batchingColor&&o.enable(21),r.push(o.mask),o.disableAll(),a.fog&&o.enable(0),a.useFog&&o.enable(1),a.flatShading&&o.enable(2),a.logarithmicDepthBuffer&&o.enable(3),a.reverseDepthBuffer&&o.enable(4),a.skinning&&o.enable(5),a.morphTargets&&o.enable(6),a.morphNormals&&o.enable(7),a.morphColors&&o.enable(8),a.premultipliedAlpha&&o.enable(9),a.shadowMapEnabled&&o.enable(10),a.doubleSided&&o.enable(11),a.flipSided&&o.enable(12),a.useDepthPacking&&o.enable(13),a.dithering&&o.enable(14),a.transmission&&o.enable(15),a.sheen&&o.enable(16),a.opaque&&o.enable(17),a.pointsUvs&&o.enable(18),a.decodeVideoTexture&&o.enable(19),a.decodeVideoTextureEmissive&&o.enable(20),a.alphaToCoverage&&o.enable(21),r.push(o.mask),s.push(e.outputColorSpace)),s.push(t.customProgramCacheKey),s.join()},getUniforms:function(e){let t,n=f[e.type];if(n){let e=oH[n];t=nx.clone(e.uniforms)}else t=e.uniforms;return t},acquireProgram:function(t,n){let i;for(let e=0,t=c.length;e0?i.push(c):!0===s.transparent?r.push(c):n.push(c)},unshift:function(e,t,s,o,l,u){let c=a(e,t,s,o,l,u);s.transmission>0?i.unshift(c):!0===s.transparent?r.unshift(c):n.unshift(c)},finish:function(){for(let n=t,i=e.length;n1&&n.sort(e||uE),i.length>1&&i.sort(t||uA),r.length>1&&r.sort(t||uA)}}}function uR(){let e=new WeakMap;return{get:function(t,n){let i,r=e.get(t);return void 0===r?(i=new uC,e.set(t,[i])):n>=r.length?(i=new uC,r.push(i)):i=r[n],i},dispose:function(){e=new WeakMap}}}function uP(){let e={};return{get:function(t){let n;if(void 0!==e[t.id])return e[t.id];switch(t.type){case"DirectionalLight":n={direction:new eE,color:new tz};break;case"SpotLight":n={position:new eE,direction:new eE,color:new tz,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case"PointLight":n={position:new eE,color:new tz,distance:0,decay:0};break;case"HemisphereLight":n={direction:new eE,skyColor:new tz,groundColor:new tz};break;case"RectAreaLight":n={color:new tz,position:new eE,halfWidth:new eE,halfHeight:new eE}}return e[t.id]=n,n}}}let uI=0;function uL(e,t){return 2*!!t.castShadow-2*!!e.castShadow+ +!!t.map-!!e.map}function uN(e){let t,n=new uP,i=(t={},{get:function(e){let n;if(void 0!==t[e.id])return t[e.id];switch(e.type){case"DirectionalLight":case"SpotLight":n={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Y};break;case"PointLight":n={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Y,shadowCameraNear:1,shadowCameraFar:1e3}}return t[e.id]=n,n}}),r={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1,numSpotMaps:-1,numLightProbes:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotLightMap:[],spotShadow:[],spotShadowMap:[],spotLightMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[],numSpotLightShadowsWithMaps:0,numLightProbes:0};for(let e=0;e<9;e++)r.probe.push(new eE);let a=new eE,s=new e2,o=new e2;return{setup:function(t){let a=0,s=0,o=0;for(let e=0;e<9;e++)r.probe[e].set(0,0,0);let l=0,u=0,c=0,h=0,d=0,p=0,f=0,m=0,g=0,v=0,_=0;t.sort(uL);for(let e=0,y=t.length;e0&&(!0===e.has("OES_texture_float_linear")?(r.rectAreaLTC1=ok.LTC_FLOAT_1,r.rectAreaLTC2=ok.LTC_FLOAT_2):(r.rectAreaLTC1=ok.LTC_HALF_1,r.rectAreaLTC2=ok.LTC_HALF_2)),r.ambient[0]=a,r.ambient[1]=s,r.ambient[2]=o;let y=r.hash;(y.directionalLength!==l||y.pointLength!==u||y.spotLength!==c||y.rectAreaLength!==h||y.hemiLength!==d||y.numDirectionalShadows!==p||y.numPointShadows!==f||y.numSpotShadows!==m||y.numSpotMaps!==g||y.numLightProbes!==_)&&(r.directional.length=l,r.spot.length=c,r.rectArea.length=h,r.point.length=u,r.hemi.length=d,r.directionalShadow.length=p,r.directionalShadowMap.length=p,r.pointShadow.length=f,r.pointShadowMap.length=f,r.spotShadow.length=m,r.spotShadowMap.length=m,r.directionalShadowMatrix.length=p,r.pointShadowMatrix.length=f,r.spotLightMatrix.length=m+g-v,r.spotLightMap.length=g,r.numSpotLightShadowsWithMaps=v,r.numLightProbes=_,y.directionalLength=l,y.pointLength=u,y.spotLength=c,y.rectAreaLength=h,y.hemiLength=d,y.numDirectionalShadows=p,y.numPointShadows=f,y.numSpotShadows=m,y.numSpotMaps=g,y.numLightProbes=_,r.version=uI++)},setupView:function(e,t){let n=0,i=0,l=0,u=0,c=0,h=t.matrixWorldInverse;for(let t=0,d=e.length;t=a.length?(r=new uU(e),a.push(r)):r=a[i],r},dispose:function(){t=new WeakMap}}}function uO(e,t,n){let i=new iS,r=new Y,a=new Y,s=new e_,o=new av({depthPacking:3201}),l=new a_,u={},c=n.maxTextureSize,h={0:1,1:0,2:2},d=new nb({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new Y},radius:{value:4}},vertexShader:"void main() {\n gl_Position = vec4( position, 1.0 );\n}",fragmentShader:"uniform sampler2D shadow_pass;\nuniform vec2 resolution;\nuniform float radius;\n#include \nvoid main() {\n const float samples = float( VSM_SAMPLES );\n float mean = 0.0;\n float squared_mean = 0.0;\n float uvStride = samples <= 1.0 ? 0.0 : 2.0 / ( samples - 1.0 );\n float uvStart = samples <= 1.0 ? 0.0 : - 1.0;\n for ( float i = 0.0; i < samples; i ++ ) {\n float uvOffset = uvStart + i * uvStride;\n #ifdef HORIZONTAL_PASS\n vec2 distribution = unpackRGBATo2Half( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( uvOffset, 0.0 ) * radius ) / resolution ) );\n mean += distribution.x;\n squared_mean += distribution.y * distribution.y + distribution.x * distribution.x;\n #else\n float depth = unpackRGBAToDepth( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( 0.0, uvOffset ) * radius ) / resolution ) );\n mean += depth;\n squared_mean += depth * depth;\n #endif\n }\n mean = mean / samples;\n squared_mean = squared_mean / samples;\n float std_dev = sqrt( squared_mean - mean * mean );\n gl_FragColor = pack2HalfToRGBA( vec2( mean, std_dev ) );\n}"}),p=d.clone();p.defines.HORIZONTAL_PASS=1;let f=new nn;f.setAttribute("position",new tZ(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));let m=new nf(f,d),g=this;this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=1;let v=this.type;function _(t,n,i,r){let a=null,s=!0===i.isPointLight?t.customDistanceMaterial:t.customDepthMaterial;if(void 0!==s)a=s;else if(a=!0===i.isPointLight?l:o,e.localClippingEnabled&&!0===n.clipShadows&&Array.isArray(n.clippingPlanes)&&0!==n.clippingPlanes.length||n.displacementMap&&0!==n.displacementScale||n.alphaMap&&n.alphaTest>0||n.map&&n.alphaTest>0){let e=a.uuid,t=n.uuid,i=u[e];void 0===i&&(i={},u[e]=i);let r=i[t];void 0===r&&(r=a.clone(),i[t]=r,n.addEventListener("dispose",y)),a=r}return a.visible=n.visible,a.wireframe=n.wireframe,3===r?a.side=null!==n.shadowSide?n.shadowSide:n.side:a.side=null!==n.shadowSide?n.shadowSide:h[n.side],a.alphaMap=n.alphaMap,a.alphaTest=n.alphaTest,a.map=n.map,a.clipShadows=n.clipShadows,a.clippingPlanes=n.clippingPlanes,a.clipIntersection=n.clipIntersection,a.displacementMap=n.displacementMap,a.displacementScale=n.displacementScale,a.displacementBias=n.displacementBias,a.wireframeLinewidth=n.wireframeLinewidth,a.linewidth=n.linewidth,!0===i.isPointLight&&!0===a.isMeshDistanceMaterial&&(e.properties.get(a).light=i),a}function y(e){for(let t in e.target.removeEventListener("dispose",y),u){let n=u[t],i=e.target.uuid;i in n&&(n[i].dispose(),delete n[i])}}this.render=function(n,o,l){if(!1===g.enabled||!1===g.autoUpdate&&!1===g.needsUpdate||0===n.length)return;let u=e.getRenderTarget(),h=e.getActiveCubeFace(),f=e.getActiveMipmapLevel(),y=e.state;y.setBlending(0),y.buffers.color.setClear(1,1,1,1),y.buffers.depth.setTest(!0),y.setScissorTest(!1);let x=3!==v&&3===this.type,b=3===v&&3!==this.type;for(let u=0,h=n.length;uc||r.y>c)&&(r.x>c&&(a.x=Math.floor(c/g.x),r.x=a.x*g.x,f.mapSize.x=a.x),r.y>c&&(a.y=Math.floor(c/g.y),r.y=a.y*g.y,f.mapSize.y=a.y)),null===f.map||!0===x||!0===b){let e=3!==this.type?{minFilter:1003,magFilter:1003}:{};null!==f.map&&f.map.dispose(),f.map=new ex(r.x,r.y,e),f.map.texture.name=h.name+".shadowMap",f.camera.updateProjectionMatrix()}e.setRenderTarget(f.map),e.clear();let v=f.getViewportCount();for(let n=0;n=1:-1!==P.indexOf("OpenGL ES")&&(R=parseFloat(/^OpenGL ES (\d)/.exec(P)[1])>=2);let I=null,L={},N=e.getParameter(e.SCISSOR_BOX),U=e.getParameter(e.VIEWPORT),D=new e_().fromArray(N),O=new e_().fromArray(U);function F(t,n,i,r){let a=new Uint8Array(4),s=e.createTexture();e.bindTexture(t,s),e.texParameteri(t,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(t,e.TEXTURE_MAG_FILTER,e.NEAREST);for(let s=0;stypeof navigator&&/OculusBrowser/g.test(navigator.userAgent),c=new Y,h=new WeakMap,d=new WeakMap,p=!1;try{p="u">typeof OffscreenCanvas&&null!==new OffscreenCanvas(1,1).getContext("2d")}catch(e){}function f(e,t){return p?new OffscreenCanvas(e,t):ee("canvas")}function m(e,t,n){let i=1,r=G(e);if((r.width>n||r.height>n)&&(i=n/Math.max(r.width,r.height)),i<1)if("u">typeof HTMLImageElement&&e instanceof HTMLImageElement||"u">typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement||"u">typeof ImageBitmap&&e instanceof ImageBitmap||"u">typeof VideoFrame&&e instanceof VideoFrame){let n=Math.floor(i*r.width),a=Math.floor(i*r.height);void 0===o&&(o=f(n,a));let s=t?f(n,a):o;return s.width=n,s.height=a,s.getContext("2d").drawImage(e,0,0,n,a),console.warn("THREE.WebGLRenderer: Texture has been resized from ("+r.width+"x"+r.height+") to ("+n+"x"+a+")."),s}else"data"in e&&console.warn("THREE.WebGLRenderer: Image in DataTexture is too big ("+r.width+"x"+r.height+").");return e}function g(e){return e.generateMipmaps}function v(t){e.generateMipmap(t)}function _(n,i,r,a,s=!1){if(null!==n){if(void 0!==e[n])return e[n];console.warn("THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '"+n+"'")}let o=i;if(i===e.RED&&(r===e.FLOAT&&(o=e.R32F),r===e.HALF_FLOAT&&(o=e.R16F),r===e.UNSIGNED_BYTE&&(o=e.R8)),i===e.RED_INTEGER&&(r===e.UNSIGNED_BYTE&&(o=e.R8UI),r===e.UNSIGNED_SHORT&&(o=e.R16UI),r===e.UNSIGNED_INT&&(o=e.R32UI),r===e.BYTE&&(o=e.R8I),r===e.SHORT&&(o=e.R16I),r===e.INT&&(o=e.R32I)),i===e.RG&&(r===e.FLOAT&&(o=e.RG32F),r===e.HALF_FLOAT&&(o=e.RG16F),r===e.UNSIGNED_BYTE&&(o=e.RG8)),i===e.RG_INTEGER&&(r===e.UNSIGNED_BYTE&&(o=e.RG8UI),r===e.UNSIGNED_SHORT&&(o=e.RG16UI),r===e.UNSIGNED_INT&&(o=e.RG32UI),r===e.BYTE&&(o=e.RG8I),r===e.SHORT&&(o=e.RG16I),r===e.INT&&(o=e.RG32I)),i===e.RGB_INTEGER&&(r===e.UNSIGNED_BYTE&&(o=e.RGB8UI),r===e.UNSIGNED_SHORT&&(o=e.RGB16UI),r===e.UNSIGNED_INT&&(o=e.RGB32UI),r===e.BYTE&&(o=e.RGB8I),r===e.SHORT&&(o=e.RGB16I),r===e.INT&&(o=e.RGB32I)),i===e.RGBA_INTEGER&&(r===e.UNSIGNED_BYTE&&(o=e.RGBA8UI),r===e.UNSIGNED_SHORT&&(o=e.RGBA16UI),r===e.UNSIGNED_INT&&(o=e.RGBA32UI),r===e.BYTE&&(o=e.RGBA8I),r===e.SHORT&&(o=e.RGBA16I),r===e.INT&&(o=e.RGBA32I)),i===e.RGB&&r===e.UNSIGNED_INT_5_9_9_9_REV&&(o=e.RGB9_E5),i===e.RGBA){let t=s?N:eu.getTransfer(a);r===e.FLOAT&&(o=e.RGBA32F),r===e.HALF_FLOAT&&(o=e.RGBA16F),r===e.UNSIGNED_BYTE&&(o=t===U?e.SRGB8_ALPHA8:e.RGBA8),r===e.UNSIGNED_SHORT_4_4_4_4&&(o=e.RGBA4),r===e.UNSIGNED_SHORT_5_5_5_1&&(o=e.RGB5_A1)}return(o===e.R16F||o===e.R32F||o===e.RG16F||o===e.RG32F||o===e.RGBA16F||o===e.RGBA32F)&&t.get("EXT_color_buffer_float"),o}function y(t,n){let i;return t?null===n||1014===n||1020===n?i=e.DEPTH24_STENCIL8:1015===n?i=e.DEPTH32F_STENCIL8:1012===n&&(i=e.DEPTH24_STENCIL8,console.warn("DepthTexture: 16 bit depth attachment is not supported with stencil. Using 24-bit attachment.")):null===n||1014===n||1020===n?i=e.DEPTH_COMPONENT24:1015===n?i=e.DEPTH_COMPONENT32F:1012===n&&(i=e.DEPTH_COMPONENT16),i}function x(e,t){return!0===g(e)||e.isFramebufferTexture&&1003!==e.minFilter&&1006!==e.minFilter?Math.log2(Math.max(t.width,t.height))+1:void 0!==e.mipmaps&&e.mipmaps.length>0?e.mipmaps.length:e.isCompressedTexture&&Array.isArray(e.image)?t.mipmaps.length:1}function b(e){let t=e.target;t.removeEventListener("dispose",b),function(e){let t=i.get(e);if(void 0===t.__webglInit)return;let n=e.source,r=d.get(n);if(r){let i=r[t.__cacheKey];i.usedTimes--,0===i.usedTimes&&M(e),0===Object.keys(r).length&&d.delete(n)}i.remove(e)}(t),t.isVideoTexture&&h.delete(t)}function S(t){let n=t.target;n.removeEventListener("dispose",S),function(t){let n=i.get(t);if(t.depthTexture&&(t.depthTexture.dispose(),i.remove(t.depthTexture)),t.isWebGLCubeRenderTarget)for(let t=0;t<6;t++){if(Array.isArray(n.__webglFramebuffer[t]))for(let i=0;i0&&l.__version!==t.version){let e=t.image;if(null===e)console.warn("THREE.WebGLRenderer: Texture marked for update but no image data found.");else{if(!1!==e.complete)return void I(l,t,r);console.warn("THREE.WebGLRenderer: Texture marked for update but image is incomplete")}}n.bindTexture(e.TEXTURE_2D,l.__webglTexture,e.TEXTURE0+r)}let E={1e3:e.REPEAT,1001:e.CLAMP_TO_EDGE,1002:e.MIRRORED_REPEAT},A={1003:e.NEAREST,1004:e.NEAREST_MIPMAP_NEAREST,1005:e.NEAREST_MIPMAP_LINEAR,1006:e.LINEAR,1007:e.LINEAR_MIPMAP_NEAREST,1008:e.LINEAR_MIPMAP_LINEAR},C={512:e.NEVER,519:e.ALWAYS,513:e.LESS,515:e.LEQUAL,514:e.EQUAL,518:e.GEQUAL,516:e.GREATER,517:e.NOTEQUAL};function R(n,a){if((1015===a.type&&!1===t.has("OES_texture_float_linear")&&(1006===a.magFilter||1007===a.magFilter||1005===a.magFilter||1008===a.magFilter||1006===a.minFilter||1007===a.minFilter||1005===a.minFilter||1008===a.minFilter)&&console.warn("THREE.WebGLRenderer: Unable to use linear filtering with floating point textures. OES_texture_float_linear not supported on this device."),e.texParameteri(n,e.TEXTURE_WRAP_S,E[a.wrapS]),e.texParameteri(n,e.TEXTURE_WRAP_T,E[a.wrapT]),(n===e.TEXTURE_3D||n===e.TEXTURE_2D_ARRAY)&&e.texParameteri(n,e.TEXTURE_WRAP_R,E[a.wrapR]),e.texParameteri(n,e.TEXTURE_MAG_FILTER,A[a.magFilter]),e.texParameteri(n,e.TEXTURE_MIN_FILTER,A[a.minFilter]),a.compareFunction&&(e.texParameteri(n,e.TEXTURE_COMPARE_MODE,e.COMPARE_REF_TO_TEXTURE),e.texParameteri(n,e.TEXTURE_COMPARE_FUNC,C[a.compareFunction])),!0===t.has("EXT_texture_filter_anisotropic"))&&1003!==a.magFilter&&(1005===a.minFilter||1008===a.minFilter)&&(1015!==a.type||!1!==t.has("OES_texture_float_linear"))&&(a.anisotropy>1||i.get(a).__currentAnisotropy)){let s=t.get("EXT_texture_filter_anisotropic");e.texParameterf(n,s.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(a.anisotropy,r.getMaxAnisotropy())),i.get(a).__currentAnisotropy=a.anisotropy}}function P(t,n){let i,r=!1;void 0===t.__webglInit&&(t.__webglInit=!0,n.addEventListener("dispose",b));let a=n.source,o=d.get(a);void 0===o&&(o={},d.set(a,o));let l=((i=[]).push(n.wrapS),i.push(n.wrapT),i.push(n.wrapR||0),i.push(n.magFilter),i.push(n.minFilter),i.push(n.anisotropy),i.push(n.internalFormat),i.push(n.format),i.push(n.type),i.push(n.generateMipmaps),i.push(n.premultiplyAlpha),i.push(n.flipY),i.push(n.unpackAlignment),i.push(n.colorSpace),i.join());if(l!==t.__cacheKey){void 0===o[l]&&(o[l]={texture:e.createTexture(),usedTimes:0},s.memory.textures++,r=!0),o[l].usedTimes++;let i=o[t.__cacheKey];void 0!==i&&(o[t.__cacheKey].usedTimes--,0===i.usedTimes&&M(n)),t.__cacheKey=l,t.__webglTexture=o[l].texture}return r}function I(t,s,o){let l=e.TEXTURE_2D;(s.isDataArrayTexture||s.isCompressedArrayTexture)&&(l=e.TEXTURE_2D_ARRAY),s.isData3DTexture&&(l=e.TEXTURE_3D);let u=P(t,s),c=s.source;n.bindTexture(l,t.__webglTexture,e.TEXTURE0+o);let h=i.get(c);if(c.version!==h.__version||!0===u){let t;n.activeTexture(e.TEXTURE0+o);let i=eu.getPrimaries(eu.workingColorSpace),d=""===s.colorSpace?null:eu.getPrimaries(s.colorSpace),p=""===s.colorSpace||i===d?e.NONE:e.BROWSER_DEFAULT_WEBGL;e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,s.flipY),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,s.premultiplyAlpha),e.pixelStorei(e.UNPACK_ALIGNMENT,s.unpackAlignment),e.pixelStorei(e.UNPACK_COLORSPACE_CONVERSION_WEBGL,p);let f=m(s.image,!1,r.maxTextureSize);f=V(s,f);let b=a.convert(s.format,s.colorSpace),S=a.convert(s.type),M=_(s.internalFormat,b,S,s.colorSpace,s.isVideoTexture);R(l,s);let T=s.mipmaps,w=!0!==s.isVideoTexture,E=void 0===h.__version||!0===u,A=c.dataReady,C=x(s,f);if(s.isDepthTexture)M=y(1027===s.format,s.type),E&&(w?n.texStorage2D(e.TEXTURE_2D,1,M,f.width,f.height):n.texImage2D(e.TEXTURE_2D,0,M,f.width,f.height,0,b,S,null));else if(s.isDataTexture)if(T.length>0){w&&E&&n.texStorage2D(e.TEXTURE_2D,C,M,T[0].width,T[0].height);for(let i=0,r=T.length;i0){let r=oU(t.width,t.height,s.format,s.type);for(let a of s.layerUpdates){let s=t.data.subarray(a*r/t.data.BYTES_PER_ELEMENT,(a+1)*r/t.data.BYTES_PER_ELEMENT);n.compressedTexSubImage3D(e.TEXTURE_2D_ARRAY,i,0,0,a,t.width,t.height,1,b,s)}s.clearLayerUpdates()}else n.compressedTexSubImage3D(e.TEXTURE_2D_ARRAY,i,0,0,0,t.width,t.height,f.depth,b,t.data)}else n.compressedTexImage3D(e.TEXTURE_2D_ARRAY,i,M,t.width,t.height,f.depth,0,t.data,0,0);else console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()");else w?A&&n.texSubImage3D(e.TEXTURE_2D_ARRAY,i,0,0,0,t.width,t.height,f.depth,b,S,t.data):n.texImage3D(e.TEXTURE_2D_ARRAY,i,M,t.width,t.height,f.depth,0,b,S,t.data)}else{w&&E&&n.texStorage2D(e.TEXTURE_2D,C,M,T[0].width,T[0].height);for(let i=0,r=T.length;i0){let t=oU(f.width,f.height,s.format,s.type);for(let i of s.layerUpdates){let r=f.data.subarray(i*t/f.data.BYTES_PER_ELEMENT,(i+1)*t/f.data.BYTES_PER_ELEMENT);n.texSubImage3D(e.TEXTURE_2D_ARRAY,0,0,0,i,f.width,f.height,1,b,S,r)}s.clearLayerUpdates()}else n.texSubImage3D(e.TEXTURE_2D_ARRAY,0,0,0,0,f.width,f.height,f.depth,b,S,f.data)}else n.texImage3D(e.TEXTURE_2D_ARRAY,0,M,f.width,f.height,f.depth,0,b,S,f.data);else if(s.isData3DTexture)w?(E&&n.texStorage3D(e.TEXTURE_3D,C,M,f.width,f.height,f.depth),A&&n.texSubImage3D(e.TEXTURE_3D,0,0,0,0,f.width,f.height,f.depth,b,S,f.data)):n.texImage3D(e.TEXTURE_3D,0,M,f.width,f.height,f.depth,0,b,S,f.data);else if(s.isFramebufferTexture){if(E)if(w)n.texStorage2D(e.TEXTURE_2D,C,M,f.width,f.height);else{let t=f.width,i=f.height;for(let r=0;r>=1,i>>=1}}else if(T.length>0){if(w&&E){let t=G(T[0]);n.texStorage2D(e.TEXTURE_2D,C,M,t.width,t.height)}for(let i=0,r=T.length;i>c),i=Math.max(1,r.height>>c);u===e.TEXTURE_3D||u===e.TEXTURE_2D_ARRAY?n.texImage3D(u,c,p,t,i,r.depth,0,h,d,null):n.texImage2D(u,c,p,t,i,0,h,d,null)}n.bindFramebuffer(e.FRAMEBUFFER,t),H(r)?l.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER,o,u,m.__webglTexture,0,k(r)):(u===e.TEXTURE_2D||u>=e.TEXTURE_CUBE_MAP_POSITIVE_X&&u<=e.TEXTURE_CUBE_MAP_NEGATIVE_Z)&&e.framebufferTexture2D(e.FRAMEBUFFER,o,u,m.__webglTexture,c),n.bindFramebuffer(e.FRAMEBUFFER,null)}function O(t,n,i){if(e.bindRenderbuffer(e.RENDERBUFFER,t),n.depthBuffer){let r=n.depthTexture,a=r&&r.isDepthTexture?r.type:null,s=y(n.stencilBuffer,a),o=n.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,u=k(n);H(n)?l.renderbufferStorageMultisampleEXT(e.RENDERBUFFER,u,s,n.width,n.height):i?e.renderbufferStorageMultisample(e.RENDERBUFFER,u,s,n.width,n.height):e.renderbufferStorage(e.RENDERBUFFER,s,n.width,n.height),e.framebufferRenderbuffer(e.FRAMEBUFFER,o,e.RENDERBUFFER,t)}else{let t=n.textures;for(let r=0;r{delete r.__boundDepthTexture,delete r.__depthDisposeCallback,e.removeEventListener("dispose",t)};e.addEventListener("dispose",t),r.__depthDisposeCallback=t}r.__boundDepthTexture=e}if(t.depthTexture&&!r.__autoAllocateDepthBuffer){if(a)throw Error("target.depthTexture not supported in Cube render targets");!function(t,r){if(r&&r.isWebGLCubeRenderTarget)throw Error("Depth Texture with cube render targets is not supported");if(n.bindFramebuffer(e.FRAMEBUFFER,t),!(r.depthTexture&&r.depthTexture.isDepthTexture))throw Error("renderTarget.depthTexture must be an instance of THREE.DepthTexture");let a=i.get(r.depthTexture);a.__renderTarget=r,a.__webglTexture&&r.depthTexture.image.width===r.width&&r.depthTexture.image.height===r.height||(r.depthTexture.image.width=r.width,r.depthTexture.image.height=r.height,r.depthTexture.needsUpdate=!0),w(r.depthTexture,0);let s=a.__webglTexture,o=k(r);if(1026===r.depthTexture.format)H(r)?l.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER,e.DEPTH_ATTACHMENT,e.TEXTURE_2D,s,0,o):e.framebufferTexture2D(e.FRAMEBUFFER,e.DEPTH_ATTACHMENT,e.TEXTURE_2D,s,0);else if(1027===r.depthTexture.format)H(r)?l.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER,e.DEPTH_STENCIL_ATTACHMENT,e.TEXTURE_2D,s,0,o):e.framebufferTexture2D(e.FRAMEBUFFER,e.DEPTH_STENCIL_ATTACHMENT,e.TEXTURE_2D,s,0);else throw Error("Unknown depthTexture format")}(r.__webglFramebuffer,t)}else if(a){r.__webglDepthbuffer=[];for(let i=0;i<6;i++)if(n.bindFramebuffer(e.FRAMEBUFFER,r.__webglFramebuffer[i]),void 0===r.__webglDepthbuffer[i])r.__webglDepthbuffer[i]=e.createRenderbuffer(),O(r.__webglDepthbuffer[i],t,!1);else{let n=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,a=r.__webglDepthbuffer[i];e.bindRenderbuffer(e.RENDERBUFFER,a),e.framebufferRenderbuffer(e.FRAMEBUFFER,n,e.RENDERBUFFER,a)}}else if(n.bindFramebuffer(e.FRAMEBUFFER,r.__webglFramebuffer),void 0===r.__webglDepthbuffer)r.__webglDepthbuffer=e.createRenderbuffer(),O(r.__webglDepthbuffer,t,!1);else{let n=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,i=r.__webglDepthbuffer;e.bindRenderbuffer(e.RENDERBUFFER,i),e.framebufferRenderbuffer(e.FRAMEBUFFER,n,e.RENDERBUFFER,i)}n.bindFramebuffer(e.FRAMEBUFFER,null)}let z=[],B=[];function k(e){return Math.min(r.maxSamples,e.samples)}function H(e){let n=i.get(e);return e.samples>0&&!0===t.has("WEBGL_multisampled_render_to_texture")&&!1!==n.__useRenderToTexture}function V(e,t){let n=e.colorSpace,i=e.format,r=e.type;return!0===e.isCompressedTexture||!0===e.isVideoTexture||n!==L&&""!==n&&(eu.getTransfer(n)===U?(1023!==i||1009!==r)&&console.warn("THREE.WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType."):console.error("THREE.WebGLTextures: Unsupported texture color space:",n)),t}function G(e){return"u">typeof HTMLImageElement&&e instanceof HTMLImageElement?(c.width=e.naturalWidth||e.width,c.height=e.naturalHeight||e.height):"u">typeof VideoFrame&&e instanceof VideoFrame?(c.width=e.displayWidth,c.height=e.displayHeight):(c.width=e.width,c.height=e.height),c}this.allocateTextureUnit=function(){let e=T;return e>=r.maxTextures&&console.warn("THREE.WebGLTextures: Trying to use "+e+" texture units while this GPU supports only "+r.maxTextures),T+=1,e},this.resetTextureUnits=function(){T=0},this.setTexture2D=w,this.setTexture2DArray=function(t,r){let a=i.get(t);t.version>0&&a.__version!==t.version?I(a,t,r):n.bindTexture(e.TEXTURE_2D_ARRAY,a.__webglTexture,e.TEXTURE0+r)},this.setTexture3D=function(t,r){let a=i.get(t);t.version>0&&a.__version!==t.version?I(a,t,r):n.bindTexture(e.TEXTURE_3D,a.__webglTexture,e.TEXTURE0+r)},this.setTextureCube=function(t,s){let o=i.get(t);t.version>0&&o.__version!==t.version?function(t,s,o){if(6!==s.image.length)return;let l=P(t,s),u=s.source;n.bindTexture(e.TEXTURE_CUBE_MAP,t.__webglTexture,e.TEXTURE0+o);let c=i.get(u);if(u.version!==c.__version||!0===l){let t;n.activeTexture(e.TEXTURE0+o);let i=eu.getPrimaries(eu.workingColorSpace),h=""===s.colorSpace?null:eu.getPrimaries(s.colorSpace),d=""===s.colorSpace||i===h?e.NONE:e.BROWSER_DEFAULT_WEBGL;e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,s.flipY),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,s.premultiplyAlpha),e.pixelStorei(e.UNPACK_ALIGNMENT,s.unpackAlignment),e.pixelStorei(e.UNPACK_COLORSPACE_CONVERSION_WEBGL,d);let p=s.isCompressedTexture||s.image[0].isCompressedTexture,f=s.image[0]&&s.image[0].isDataTexture,y=[];for(let e=0;e<6;e++)p||f?y[e]=f?s.image[e].image:s.image[e]:y[e]=m(s.image[e],!0,r.maxCubemapSize),y[e]=V(s,y[e]);let b=y[0],S=a.convert(s.format,s.colorSpace),M=a.convert(s.type),T=_(s.internalFormat,S,M,s.colorSpace),w=!0!==s.isVideoTexture,E=void 0===c.__version||!0===l,A=u.dataReady,C=x(s,b);if(R(e.TEXTURE_CUBE_MAP,s),p){w&&E&&n.texStorage2D(e.TEXTURE_CUBE_MAP,C,T,b.width,b.height);for(let i=0;i<6;i++){t=y[i].mipmaps;for(let r=0;r0&&C++;let i=G(y[0]);n.texStorage2D(e.TEXTURE_CUBE_MAP,C,T,i.width,i.height)}for(let i=0;i<6;i++)if(f){w?A&&n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+i,0,0,0,y[i].width,y[i].height,S,M,y[i].data):n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+i,0,T,y[i].width,y[i].height,0,S,M,y[i].data);for(let r=0;r1;if(!h&&(void 0===l.__webglTexture&&(l.__webglTexture=e.createTexture()),l.__version=r.version,s.memory.textures++),c){o.__webglFramebuffer=[];for(let t=0;t<6;t++)if(r.mipmaps&&r.mipmaps.length>0){o.__webglFramebuffer[t]=[];for(let n=0;n0){o.__webglFramebuffer=[];for(let t=0;t0&&!1===H(t)){o.__webglMultisampledFramebuffer=e.createFramebuffer(),o.__webglColorRenderbuffer=[],n.bindFramebuffer(e.FRAMEBUFFER,o.__webglMultisampledFramebuffer);for(let n=0;n0)for(let i=0;i0)for(let n=0;n0){if(!1===H(t)){let r=t.textures,a=t.width,s=t.height,o=e.COLOR_BUFFER_BIT,l=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,c=i.get(t),h=r.length>1;if(h)for(let t=0;t.025?(l.inputState.pinching=!1,this.dispatchEvent({type:"pinchend",handedness:e.handedness,target:this})):!l.inputState.pinching&&s<=.015&&(l.inputState.pinching=!0,this.dispatchEvent({type:"pinchstart",handedness:e.handedness,target:this}))}else null!==o&&e.gripSpace&&null!==(r=t.getPose(e.gripSpace,n))&&(o.matrix.fromArray(r.transform.matrix),o.matrix.decompose(o.position,o.rotation,o.scale),o.matrixWorldNeedsUpdate=!0,r.linearVelocity?(o.hasLinearVelocity=!0,o.linearVelocity.copy(r.linearVelocity)):o.hasLinearVelocity=!1,r.angularVelocity?(o.hasAngularVelocity=!0,o.angularVelocity.copy(r.angularVelocity)):o.hasAngularVelocity=!1);null!==s&&(null===(i=t.getPose(e.targetRaySpace,n))&&null!==r&&(i=r),null!==i&&(s.matrix.fromArray(i.transform.matrix),s.matrix.decompose(s.position,s.rotation,s.scale),s.matrixWorldNeedsUpdate=!0,i.linearVelocity?(s.hasLinearVelocity=!0,s.linearVelocity.copy(i.linearVelocity)):s.hasLinearVelocity=!1,i.angularVelocity?(s.hasAngularVelocity=!0,s.angularVelocity.copy(i.angularVelocity)):s.hasAngularVelocity=!1,this.dispatchEvent(uH)))}return null!==s&&(s.visible=null!==i),null!==o&&(o.visible=null!==r),null!==l&&(l.visible=null!==a),this}_getHandJoint(e,t){if(void 0===e.joints[t.jointName]){let n=new i6;n.matrixAutoUpdate=!1,n.visible=!1,e.joints[t.jointName]=n,e.add(n)}return e.joints[t.jointName]}}let uG=` +void main() { + + gl_Position = vec4( position, 1.0 ); + +}`,uW=` +uniform sampler2DArray depthColor; +uniform float depthWidth; +uniform float depthHeight; + +void main() { + + vec2 coord = vec2( gl_FragCoord.x / depthWidth, gl_FragCoord.y / depthHeight ); + + if ( coord.x >= 1.0 ) { + + gl_FragDepth = texture( depthColor, vec3( coord.x - 1.0, coord.y, 1 ) ).r; + + } else { + + gl_FragDepth = texture( depthColor, vec3( coord.x, coord.y, 0 ) ).r; + + } + +}`;class uj{constructor(){this.texture=null,this.mesh=null,this.depthNear=0,this.depthFar=0}init(e,t,n){if(null===this.texture){let i=new ev;e.properties.get(i).__webglTexture=t.texture,(t.depthNear!=n.depthNear||t.depthFar!=n.depthFar)&&(this.depthNear=t.depthNear,this.depthFar=t.depthFar),this.texture=i}}getMesh(e){if(null!==this.texture&&null===this.mesh){let t=e.cameras[0].viewport,n=new nb({vertexShader:uG,fragmentShader:uW,uniforms:{depthColor:{value:this.texture},depthWidth:{value:t.z},depthHeight:{value:t.w}}});this.mesh=new nf(new r9(20,20),n)}return this.mesh}reset(){this.texture=null,this.mesh=null}getDepthTexture(){return this.texture}}class uX extends O{constructor(e,t){super();const n=this;let i=null,r=1,a=null,s="local-floor",o=1,l=null,u=null,c=null,h=null,d=null,p=null;const f=new uj,m=t.getContextAttributes();let g=null,v=null;const _=[],y=[],x=new Y;let b=null;const S=new nE;S.viewport=new e_;const M=new nE;M.viewport=new e_;const T=[S,M],w=new sT;let E=null,A=null;function C(e){let t=y.indexOf(e.inputSource);if(-1===t)return;let n=_[t];void 0!==n&&(n.update(e.inputSource,e.frame,l||a),n.dispatchEvent({type:e.type,data:e.inputSource}))}function R(){i.removeEventListener("select",C),i.removeEventListener("selectstart",C),i.removeEventListener("selectend",C),i.removeEventListener("squeeze",C),i.removeEventListener("squeezestart",C),i.removeEventListener("squeezeend",C),i.removeEventListener("end",R),i.removeEventListener("inputsourceschange",P);for(let e=0;e<_.length;e++){let t=y[e];null!==t&&(y[e]=null,_[e].disconnect(t))}E=null,A=null,f.reset(),e.setRenderTarget(g),d=null,h=null,c=null,i=null,v=null,D.stop(),n.isPresenting=!1,e.setPixelRatio(b),e.setSize(x.width,x.height,!1),n.dispatchEvent({type:"sessionend"})}function P(e){for(let t=0;t=0&&(y[i]=null,_[i].disconnect(n))}for(let t=0;t=y.length){y.push(n),i=e;break}else if(null===y[e]){y[e]=n,i=e;break}if(-1===i)break}let r=_[i];r&&r.connect(n)}}this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(e){let t=_[e];return void 0===t&&(t=new uV,_[e]=t),t.getTargetRaySpace()},this.getControllerGrip=function(e){let t=_[e];return void 0===t&&(t=new uV,_[e]=t),t.getGripSpace()},this.getHand=function(e){let t=_[e];return void 0===t&&(t=new uV,_[e]=t),t.getHandSpace()},this.setFramebufferScaleFactor=function(e){r=e,!0===n.isPresenting&&console.warn("THREE.WebXRManager: Cannot change framebuffer scale while presenting.")},this.setReferenceSpaceType=function(e){s=e,!0===n.isPresenting&&console.warn("THREE.WebXRManager: Cannot change reference space type while presenting.")},this.getReferenceSpace=function(){return l||a},this.setReferenceSpace=function(e){l=e},this.getBaseLayer=function(){return null!==h?h:d},this.getBinding=function(){return c},this.getFrame=function(){return p},this.getSession=function(){return i},this.setSession=async function(u){if(null!==(i=u)){if(g=e.getRenderTarget(),i.addEventListener("select",C),i.addEventListener("selectstart",C),i.addEventListener("selectend",C),i.addEventListener("squeeze",C),i.addEventListener("squeezestart",C),i.addEventListener("squeezeend",C),i.addEventListener("end",R),i.addEventListener("inputsourceschange",P),!0!==m.xrCompatible&&await t.makeXRCompatible(),b=e.getPixelRatio(),e.getSize(x),void 0===i.renderState.layers){let n={antialias:m.antialias,alpha:!0,depth:m.depth,stencil:m.stencil,framebufferScaleFactor:r};d=new XRWebGLLayer(i,t,n),i.updateRenderState({baseLayer:d}),e.setPixelRatio(1),e.setSize(d.framebufferWidth,d.framebufferHeight,!1),v=new ex(d.framebufferWidth,d.framebufferHeight,{format:1023,type:1009,colorSpace:e.outputColorSpace,stencilBuffer:m.stencil})}else{let n=null,a=null,s=null;m.depth&&(s=m.stencil?t.DEPTH24_STENCIL8:t.DEPTH_COMPONENT24,n=m.stencil?1027:1026,a=m.stencil?1020:1014);let o={colorFormat:t.RGBA8,depthFormat:s,scaleFactor:r};h=(c=new XRWebGLBinding(i,t)).createProjectionLayer(o),i.updateRenderState({layers:[h]}),e.setPixelRatio(1),e.setSize(h.textureWidth,h.textureHeight,!1),v=new ex(h.textureWidth,h.textureHeight,{format:1023,type:1009,depthTexture:new ri(h.textureWidth,h.textureHeight,a,void 0,void 0,void 0,void 0,void 0,void 0,n),stencilBuffer:m.stencil,colorSpace:e.outputColorSpace,samples:4*!!m.antialias,resolveDepthBuffer:!1===h.ignoreDepthValues})}v.isXRRenderTarget=!0,this.setFoveation(o),l=null,a=await i.requestReferenceSpace(s),D.setContext(i),D.start(),n.isPresenting=!0,n.dispatchEvent({type:"sessionstart"})}},this.getEnvironmentBlendMode=function(){if(null!==i)return i.environmentBlendMode},this.getDepthTexture=function(){return f.getDepthTexture()};const I=new eE,L=new eE;function N(e,t){null===t?e.matrixWorld.copy(e.matrix):e.matrixWorld.multiplyMatrices(t.matrixWorld,e.matrix),e.matrixWorldInverse.copy(e.matrixWorld).invert()}this.updateCamera=function(e){var t,n,r;if(null===i)return;let a=e.near,s=e.far;null!==f.texture&&(f.depthNear>0&&(a=f.depthNear),f.depthFar>0&&(s=f.depthFar)),w.near=M.near=S.near=a,w.far=M.far=S.far=s,(E!==w.near||A!==w.far)&&(i.updateRenderState({depthNear:w.near,depthFar:w.far}),E=w.near,A=w.far),S.layers.mask=2|e.layers.mask,M.layers.mask=4|e.layers.mask,w.layers.mask=S.layers.mask|M.layers.mask;let o=e.parent,l=w.cameras;N(w,o);for(let e=0;e0&&(e.alphaTest.value=i.alphaTest);let r=t.get(i),a=r.envMap,s=r.envMapRotation;a&&(e.envMap.value=a,uq.copy(s),uq.x*=-1,uq.y*=-1,uq.z*=-1,a.isCubeTexture&&!1===a.isRenderTargetTexture&&(uq.y*=-1,uq.z*=-1),e.envMapRotation.value.setFromMatrix4(uY.makeRotationFromEuler(uq)),e.flipEnvMap.value=a.isCubeTexture&&!1===a.isRenderTargetTexture?-1:1,e.reflectivity.value=i.reflectivity,e.ior.value=i.ior,e.refractionRatio.value=i.refractionRatio),i.lightMap&&(e.lightMap.value=i.lightMap,e.lightMapIntensity.value=i.lightMapIntensity,n(i.lightMap,e.lightMapTransform)),i.aoMap&&(e.aoMap.value=i.aoMap,e.aoMapIntensity.value=i.aoMapIntensity,n(i.aoMap,e.aoMapTransform))}return{refreshFogUniforms:function(t,n){n.color.getRGB(t.fogColor.value,ny(e)),n.isFog?(t.fogNear.value=n.near,t.fogFar.value=n.far):n.isFogExp2&&(t.fogDensity.value=n.density)},refreshMaterialUniforms:function(e,r,a,s,o){var l,u,c,h,d,p,f,m,g,v,_,y,x,b,S,M,T,w,E,A,C,R,P;let I;r.isMeshBasicMaterial||r.isMeshLambertMaterial?i(e,r):r.isMeshToonMaterial?(i(e,r),l=e,(u=r).gradientMap&&(l.gradientMap.value=u.gradientMap)):r.isMeshPhongMaterial?(i(e,r),c=e,h=r,c.specular.value.copy(h.specular),c.shininess.value=Math.max(h.shininess,1e-4)):r.isMeshStandardMaterial?(i(e,r),d=e,p=r,d.metalness.value=p.metalness,p.metalnessMap&&(d.metalnessMap.value=p.metalnessMap,n(p.metalnessMap,d.metalnessMapTransform)),d.roughness.value=p.roughness,p.roughnessMap&&(d.roughnessMap.value=p.roughnessMap,n(p.roughnessMap,d.roughnessMapTransform)),p.envMap&&(d.envMapIntensity.value=p.envMapIntensity),r.isMeshPhysicalMaterial&&(f=e,m=r,g=o,f.ior.value=m.ior,m.sheen>0&&(f.sheenColor.value.copy(m.sheenColor).multiplyScalar(m.sheen),f.sheenRoughness.value=m.sheenRoughness,m.sheenColorMap&&(f.sheenColorMap.value=m.sheenColorMap,n(m.sheenColorMap,f.sheenColorMapTransform)),m.sheenRoughnessMap&&(f.sheenRoughnessMap.value=m.sheenRoughnessMap,n(m.sheenRoughnessMap,f.sheenRoughnessMapTransform))),m.clearcoat>0&&(f.clearcoat.value=m.clearcoat,f.clearcoatRoughness.value=m.clearcoatRoughness,m.clearcoatMap&&(f.clearcoatMap.value=m.clearcoatMap,n(m.clearcoatMap,f.clearcoatMapTransform)),m.clearcoatRoughnessMap&&(f.clearcoatRoughnessMap.value=m.clearcoatRoughnessMap,n(m.clearcoatRoughnessMap,f.clearcoatRoughnessMapTransform)),m.clearcoatNormalMap&&(f.clearcoatNormalMap.value=m.clearcoatNormalMap,n(m.clearcoatNormalMap,f.clearcoatNormalMapTransform),f.clearcoatNormalScale.value.copy(m.clearcoatNormalScale),1===m.side&&f.clearcoatNormalScale.value.negate())),m.dispersion>0&&(f.dispersion.value=m.dispersion),m.iridescence>0&&(f.iridescence.value=m.iridescence,f.iridescenceIOR.value=m.iridescenceIOR,f.iridescenceThicknessMinimum.value=m.iridescenceThicknessRange[0],f.iridescenceThicknessMaximum.value=m.iridescenceThicknessRange[1],m.iridescenceMap&&(f.iridescenceMap.value=m.iridescenceMap,n(m.iridescenceMap,f.iridescenceMapTransform)),m.iridescenceThicknessMap&&(f.iridescenceThicknessMap.value=m.iridescenceThicknessMap,n(m.iridescenceThicknessMap,f.iridescenceThicknessMapTransform))),m.transmission>0&&(f.transmission.value=m.transmission,f.transmissionSamplerMap.value=g.texture,f.transmissionSamplerSize.value.set(g.width,g.height),m.transmissionMap&&(f.transmissionMap.value=m.transmissionMap,n(m.transmissionMap,f.transmissionMapTransform)),f.thickness.value=m.thickness,m.thicknessMap&&(f.thicknessMap.value=m.thicknessMap,n(m.thicknessMap,f.thicknessMapTransform)),f.attenuationDistance.value=m.attenuationDistance,f.attenuationColor.value.copy(m.attenuationColor)),m.anisotropy>0&&(f.anisotropyVector.value.set(m.anisotropy*Math.cos(m.anisotropyRotation),m.anisotropy*Math.sin(m.anisotropyRotation)),m.anisotropyMap&&(f.anisotropyMap.value=m.anisotropyMap,n(m.anisotropyMap,f.anisotropyMapTransform))),f.specularIntensity.value=m.specularIntensity,f.specularColor.value.copy(m.specularColor),m.specularColorMap&&(f.specularColorMap.value=m.specularColorMap,n(m.specularColorMap,f.specularColorMapTransform)),m.specularIntensityMap&&(f.specularIntensityMap.value=m.specularIntensityMap,n(m.specularIntensityMap,f.specularIntensityMapTransform)))):r.isMeshMatcapMaterial?(i(e,r),v=e,(_=r).matcap&&(v.matcap.value=_.matcap)):r.isMeshDepthMaterial?i(e,r):r.isMeshDistanceMaterial?(i(e,r),y=e,x=r,I=t.get(x).light,y.referencePosition.value.setFromMatrixPosition(I.matrixWorld),y.nearDistance.value=I.shadow.camera.near,y.farDistance.value=I.shadow.camera.far):r.isMeshNormalMaterial?i(e,r):r.isLineBasicMaterial?(b=e,S=r,b.diffuse.value.copy(S.color),b.opacity.value=S.opacity,S.map&&(b.map.value=S.map,n(S.map,b.mapTransform)),r.isLineDashedMaterial&&(M=e,T=r,M.dashSize.value=T.dashSize,M.totalSize.value=T.dashSize+T.gapSize,M.scale.value=T.scale)):r.isPointsMaterial?(w=e,E=r,A=a,C=s,w.diffuse.value.copy(E.color),w.opacity.value=E.opacity,w.size.value=E.size*A,w.scale.value=.5*C,E.map&&(w.map.value=E.map,n(E.map,w.uvTransform)),E.alphaMap&&(w.alphaMap.value=E.alphaMap,n(E.alphaMap,w.alphaMapTransform)),E.alphaTest>0&&(w.alphaTest.value=E.alphaTest)):r.isSpriteMaterial?(R=e,P=r,R.diffuse.value.copy(P.color),R.opacity.value=P.opacity,R.rotation.value=P.rotation,P.map&&(R.map.value=P.map,n(P.map,R.mapTransform)),P.alphaMap&&(R.alphaMap.value=P.alphaMap,n(P.alphaMap,R.alphaMapTransform)),P.alphaTest>0&&(R.alphaTest.value=P.alphaTest)):r.isShadowMaterial?(e.color.value.copy(r.color),e.opacity.value=r.opacity):r.isShaderMaterial&&(r.uniformsNeedUpdate=!1)}}}function uJ(e,t,n,i){let r={},a={},s=[],o=e.getParameter(e.MAX_UNIFORM_BUFFER_BINDINGS);function l(e){let t={boundary:0,storage:0};return"number"==typeof e||"boolean"==typeof e?(t.boundary=4,t.storage=4):e.isVector2?(t.boundary=8,t.storage=8):e.isVector3||e.isColor?(t.boundary=16,t.storage=12):e.isVector4?(t.boundary=16,t.storage=16):e.isMatrix3?(t.boundary=48,t.storage=48):e.isMatrix4?(t.boundary=64,t.storage=64):e.isTexture?console.warn("THREE.WebGLRenderer: Texture samplers can not be part of an uniforms group."):console.warn("THREE.WebGLRenderer: Unsupported uniform value type.",e),t}function u(t){let n=t.target;n.removeEventListener("dispose",u);let i=s.indexOf(n.__bindingPointIndex);s.splice(i,1),e.deleteBuffer(r[n.id]),delete r[n.id],delete a[n.id]}return{bind:function(e,t){let n=t.program;i.uniformBlockBinding(e,n)},update:function(n,c){var h;let d,p,f,m,g=r[n.id];void 0===g&&(function(e){let t=e.uniforms,n=0;for(let e=0,i=t.length;e0&&(n+=16-i),e.__size=n,e.__cache={}}(n),(h=n).__bindingPointIndex=d=function(){for(let e=0;etypeof WebGLRenderingContext&&A instanceof WebGLRenderingContext)throw Error("THREE.WebGLRenderer: WebGL 1 is not supported since r163.");t=A.getContextAttributes().alpha}else t=P;const B=new Uint32Array(4),k=new Int32Array(4);let H=null,V=null;const G=[],W=[];this.domElement=E,this.debug={checkShaderErrors:!0,onShaderError:null},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this._outputColorSpace=I,this.toneMapping=0,this.toneMappingExposure=1;const j=this;let X=!1,q=0,Y=0,Z=null,J=-1,K=null;const $=new e_,Q=new e_;let ee=null;const en=new tz(0);let eo=0,el=E.width,ec=E.height,eh=1,ed=null,ep=null;const ef=new e_(0,0,el,ec),em=new e_(0,0,el,ec);let eg=!1;const ev=new iS;let ey=!1,eb=!1;const eS=new e2,eM=new e2,eT=new eE,ew=new e_,eA={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0};let eC=!1;function eR(){return null===Z?eh:1}let eP=A;function eI(e,t){return E.getContext(e,t)}try{if("setAttribute"in E&&E.setAttribute("data-engine","three.js r171"),E.addEventListener("webglcontextlost",eU,!1),E.addEventListener("webglcontextrestored",eD,!1),E.addEventListener("webglcontextcreationerror",eO,!1),null===eP){const e="webgl2";if(eP=eI(e,{alpha:!0,depth:C,stencil:R,antialias:N,premultipliedAlpha:U,preserveDrawingBuffer:D,powerPreference:O,failIfMajorPerformanceCaveat:F}),null===eP)if(eI(e))throw Error("Error creating WebGL context with your selected attributes.");else throw Error("Error creating WebGL context.")}}catch(e){throw console.error("THREE.WebGLRenderer: "+e.message),e}function eL(){(n=new lr(eP)).init(),M=new uk(eP,n),i=new oY(eP,n,e,M),r=new uz(eP,n),i.reverseDepthBuffer&&z&&r.buffers.depth.setReversed(!0),a=new lo(eP),s=new uw,o=new uB(eP,n,r,s,i,M,a),l=new oJ(j),u=new li(j),c=new oz(eP),T=new oX(eP,c),h=new la(eP,c,a,T),d=new lu(eP,h,c,a),x=new ll(eP,i,o),v=new oZ(s),p=new uT(j,l,u,n,i,T,v),f=new uZ(j,s),m=new uR,g=new uD(n),y=new oj(j,l,u,r,d,t,U),_=new uO(j,d,i),w=new uJ(eP,a,i,r),b=new oq(eP,n,a),S=new ls(eP,n,a),a.programs=p.programs,j.capabilities=i,j.extensions=n,j.properties=s,j.renderLists=m,j.shadowMap=_,j.state=r,j.info=a}eL();const eN=new uX(j,eP);function eU(e){e.preventDefault(),console.log("THREE.WebGLRenderer: Context Lost."),X=!0}function eD(){console.log("THREE.WebGLRenderer: Context Restored."),X=!1;let e=a.autoReset,t=_.enabled,n=_.autoUpdate,i=_.needsUpdate,r=_.type;eL(),a.autoReset=e,_.enabled=t,_.autoUpdate=n,_.needsUpdate=i,_.type=r}function eO(e){console.error("THREE.WebGLRenderer: A WebGL context could not be created. Reason: ",e.statusMessage)}function eF(e){var t,n;let i,r=e.target;r.removeEventListener("dispose",eF),n=t=r,void 0!==(i=s.get(n).programs)&&(i.forEach(function(e){p.releaseProgram(e)}),n.isShaderMaterial&&p.releaseShaderCache(n)),s.remove(t)}function ez(e,t,n){!0===e.transparent&&2===e.side&&!1===e.forceSinglePass?(e.side=1,e.needsUpdate=!0,eY(e,t,n),e.side=0,e.needsUpdate=!0,eY(e,t,n),e.side=2):eY(e,t,n)}this.xr=eN,this.getContext=function(){return eP},this.getContextAttributes=function(){return eP.getContextAttributes()},this.forceContextLoss=function(){let e=n.get("WEBGL_lose_context");e&&e.loseContext()},this.forceContextRestore=function(){let e=n.get("WEBGL_lose_context");e&&e.restoreContext()},this.getPixelRatio=function(){return eh},this.setPixelRatio=function(e){void 0!==e&&(eh=e,this.setSize(el,ec,!1))},this.getSize=function(e){return e.set(el,ec)},this.setSize=function(e,t,n=!0){eN.isPresenting?console.warn("THREE.WebGLRenderer: Can't change size while VR device is presenting."):(el=e,ec=t,E.width=Math.floor(e*eh),E.height=Math.floor(t*eh),!0===n&&(E.style.width=e+"px",E.style.height=t+"px"),this.setViewport(0,0,e,t))},this.getDrawingBufferSize=function(e){return e.set(el*eh,ec*eh).floor()},this.setDrawingBufferSize=function(e,t,n){el=e,ec=t,eh=n,E.width=Math.floor(e*n),E.height=Math.floor(t*n),this.setViewport(0,0,e,t)},this.getCurrentViewport=function(e){return e.copy($)},this.getViewport=function(e){return e.copy(ef)},this.setViewport=function(e,t,n,i){e.isVector4?ef.set(e.x,e.y,e.z,e.w):ef.set(e,t,n,i),r.viewport($.copy(ef).multiplyScalar(eh).round())},this.getScissor=function(e){return e.copy(em)},this.setScissor=function(e,t,n,i){e.isVector4?em.set(e.x,e.y,e.z,e.w):em.set(e,t,n,i),r.scissor(Q.copy(em).multiplyScalar(eh).round())},this.getScissorTest=function(){return eg},this.setScissorTest=function(e){r.setScissorTest(eg=e)},this.setOpaqueSort=function(e){ed=e},this.setTransparentSort=function(e){ep=e},this.getClearColor=function(e){return e.copy(y.getClearColor())},this.setClearColor=function(){y.setClearColor.apply(y,arguments)},this.getClearAlpha=function(){return y.getClearAlpha()},this.setClearAlpha=function(){y.setClearAlpha.apply(y,arguments)},this.clear=function(e=!0,t=!0,n=!0){let i=0;if(e){let e=!1;if(null!==Z){let t=Z.texture.format;e=1033===t||1031===t||1029===t}if(e){let e=Z.texture.type,t=1009===e||1014===e||1012===e||1020===e||1017===e||1018===e,n=y.getClearColor(),i=y.getClearAlpha(),r=n.r,a=n.g,s=n.b;t?(B[0]=r,B[1]=a,B[2]=s,B[3]=i,eP.clearBufferuiv(eP.COLOR,0,B)):(k[0]=r,k[1]=a,k[2]=s,k[3]=i,eP.clearBufferiv(eP.COLOR,0,k))}else i|=eP.COLOR_BUFFER_BIT}t&&(i|=eP.DEPTH_BUFFER_BIT),n&&(i|=eP.STENCIL_BUFFER_BIT,this.state.buffers.stencil.setMask(0xffffffff)),eP.clear(i)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.dispose=function(){E.removeEventListener("webglcontextlost",eU,!1),E.removeEventListener("webglcontextrestored",eD,!1),E.removeEventListener("webglcontextcreationerror",eO,!1),y.dispose(),m.dispose(),g.dispose(),s.dispose(),l.dispose(),u.dispose(),d.dispose(),T.dispose(),w.dispose(),p.dispose(),eN.dispose(),eN.removeEventListener("sessionstart",ek),eN.removeEventListener("sessionend",eH),eV.stop()},this.renderBufferDirect=function(e,t,a,d,p,m){let g;null===t&&(t=eA);let _=p.isMesh&&0>p.matrixWorld.determinant(),y=function(e,t,n,a,c){var h,d;!0!==t.isScene&&(t=eA),o.resetTextureUnits();let p=t.fog,m=a.isMeshStandardMaterial?t.environment:null,g=null===Z?j.outputColorSpace:!0===Z.isXRRenderTarget?Z.texture.colorSpace:L,_=(a.isMeshStandardMaterial?u:l).get(a.envMap||m),y=!0===a.vertexColors&&!!n.attributes.color&&4===n.attributes.color.itemSize,b=!!n.attributes.tangent&&(!!a.normalMap||a.anisotropy>0),S=!!n.morphAttributes.position,M=!!n.morphAttributes.normal,T=!!n.morphAttributes.color,E=0;a.toneMapped&&(null===Z||!0===Z.isXRRenderTarget)&&(E=j.toneMapping);let A=n.morphAttributes.position||n.morphAttributes.normal||n.morphAttributes.color,C=void 0!==A?A.length:0,R=s.get(a),P=V.state.lights;if(!0===ey&&(!0===eb||e!==K)){let t=e===K&&a.id===J;v.setState(a,e,t)}let I=!1;a.version===R.__version?R.needsLights&&R.lightsStateVersion!==P.state.version||R.outputColorSpace!==g||c.isBatchedMesh&&!1===R.batching?I=!0:c.isBatchedMesh||!0!==R.batching?c.isBatchedMesh&&!0===R.batchingColor&&null===c.colorTexture||c.isBatchedMesh&&!1===R.batchingColor&&null!==c.colorTexture||c.isInstancedMesh&&!1===R.instancing?I=!0:c.isInstancedMesh||!0!==R.instancing?c.isSkinnedMesh&&!1===R.skinning?I=!0:c.isSkinnedMesh||!0!==R.skinning?c.isInstancedMesh&&!0===R.instancingColor&&null===c.instanceColor||c.isInstancedMesh&&!1===R.instancingColor&&null!==c.instanceColor||c.isInstancedMesh&&!0===R.instancingMorph&&null===c.morphTexture||c.isInstancedMesh&&!1===R.instancingMorph&&null!==c.morphTexture||R.envMap!==_||!0===a.fog&&R.fog!==p||void 0!==R.numClippingPlanes&&(R.numClippingPlanes!==v.numPlanes||R.numIntersection!==v.numIntersection)||R.vertexAlphas!==y||R.vertexTangents!==b||R.morphTargets!==S||R.morphNormals!==M||R.morphColors!==T||R.toneMapping!==E?I=!0:R.morphTargetsCount!==C&&(I=!0):I=!0:I=!0:I=!0:(I=!0,R.__version=a.version);let N=R.currentProgram;!0===I&&(N=eY(a,t,c));let U=!1,D=!1,O=!1,F=N.getUniforms(),z=R.uniforms;if(r.useProgram(N.program)&&(U=!0,D=!0,O=!0),a.id!==J&&(J=a.id,D=!0),U||K!==e){r.buffers.depth.getReversed()?(eS.copy(e.projectionMatrix),ea(eS),es(eS),F.setValue(eP,"projectionMatrix",eS)):F.setValue(eP,"projectionMatrix",e.projectionMatrix),F.setValue(eP,"viewMatrix",e.matrixWorldInverse);let t=F.map.cameraPosition;void 0!==t&&t.setValue(eP,eT.setFromMatrixPosition(e.matrixWorld)),i.logarithmicDepthBuffer&&F.setValue(eP,"logDepthBufFC",2/(Math.log(e.far+1)/Math.LN2)),(a.isMeshPhongMaterial||a.isMeshToonMaterial||a.isMeshLambertMaterial||a.isMeshBasicMaterial||a.isMeshStandardMaterial||a.isShaderMaterial)&&F.setValue(eP,"isOrthographic",!0===e.isOrthographicCamera),K!==e&&(K=e,D=!0,O=!0)}if(c.isSkinnedMesh){F.setOptional(eP,c,"bindMatrix"),F.setOptional(eP,c,"bindMatrixInverse");let e=c.skeleton;e&&(null===e.boneTexture&&e.computeBoneTexture(),F.setValue(eP,"boneTexture",e.boneTexture,o))}c.isBatchedMesh&&(F.setOptional(eP,c,"batchingTexture"),F.setValue(eP,"batchingTexture",c._matricesTexture,o),F.setOptional(eP,c,"batchingIdTexture"),F.setValue(eP,"batchingIdTexture",c._indirectTexture,o),F.setOptional(eP,c,"batchingColorTexture"),null!==c._colorsTexture&&F.setValue(eP,"batchingColorTexture",c._colorsTexture,o));let B=n.morphAttributes;if((void 0!==B.position||void 0!==B.normal||void 0!==B.color)&&x.update(c,n,N),(D||R.receiveShadow!==c.receiveShadow)&&(R.receiveShadow=c.receiveShadow,F.setValue(eP,"receiveShadow",c.receiveShadow)),a.isMeshGouraudMaterial&&null!==a.envMap&&(z.envMap.value=_,z.flipEnvMap.value=_.isCubeTexture&&!1===_.isRenderTargetTexture?-1:1),a.isMeshStandardMaterial&&null===a.envMap&&null!==t.environment&&(z.envMapIntensity.value=t.environmentIntensity),D&&(F.setValue(eP,"toneMappingExposure",j.toneMappingExposure),R.needsLights&&(h=z,d=O,h.ambientLightColor.needsUpdate=d,h.lightProbe.needsUpdate=d,h.directionalLights.needsUpdate=d,h.directionalLightShadows.needsUpdate=d,h.pointLights.needsUpdate=d,h.pointLightShadows.needsUpdate=d,h.spotLights.needsUpdate=d,h.spotLightShadows.needsUpdate=d,h.rectAreaLights.needsUpdate=d,h.hemisphereLights.needsUpdate=d),p&&!0===a.fog&&f.refreshFogUniforms(z,p),f.refreshMaterialUniforms(z,a,eh,ec,V.state.transmissionRenderTarget[e.id]),ui.upload(eP,eZ(R),z,o)),a.isShaderMaterial&&!0===a.uniformsNeedUpdate&&(ui.upload(eP,eZ(R),z,o),a.uniformsNeedUpdate=!1),a.isSpriteMaterial&&F.setValue(eP,"center",c.center),F.setValue(eP,"modelViewMatrix",c.modelViewMatrix),F.setValue(eP,"normalMatrix",c.normalMatrix),F.setValue(eP,"modelMatrix",c.matrixWorld),a.isShaderMaterial||a.isRawShaderMaterial){let e=a.uniformsGroups;for(let t=0,n=e.length;t{function i(){(r.forEach(function(e){s.get(e).currentProgram.isReady()&&r.delete(e)}),0===r.size)?t(e):setTimeout(i,10)}null!==n.get("KHR_parallel_shader_compile")?i():setTimeout(i,10)})};let eB=null;function ek(){eV.stop()}function eH(){eV.start()}const eV=new oF;function eG(e,t,n,i){if(!1===e.visible)return;if(e.layers.test(t.layers)){if(e.isGroup)n=e.renderOrder;else if(e.isLOD)!0===e.autoUpdate&&e.update(t);else if(e.isLight)V.pushLight(e),e.castShadow&&V.pushShadow(e);else if(e.isSprite){if(!e.frustumCulled||ev.intersectsSprite(e)){i&&ew.setFromMatrixPosition(e.matrixWorld).applyMatrix4(eM);let t=d.update(e),r=e.material;r.visible&&H.push(e,t,r,n,ew.z,null)}}else if((e.isMesh||e.isLine||e.isPoints)&&(!e.frustumCulled||ev.intersectsObject(e))){let t=d.update(e),r=e.material;if(i&&(void 0!==e.boundingSphere?(null===e.boundingSphere&&e.computeBoundingSphere(),ew.copy(e.boundingSphere.center)):(null===t.boundingSphere&&t.computeBoundingSphere(),ew.copy(t.boundingSphere.center)),ew.applyMatrix4(e.matrixWorld).applyMatrix4(eM)),Array.isArray(r)){let i=t.groups;for(let a=0,s=i.length;a0&&eX(a,t,n),s.length>0&&eX(s,t,n),o.length>0&&eX(o,t,n),r.buffers.depth.setTest(!0),r.buffers.depth.setMask(!0),r.buffers.color.setMask(!0),r.setPolygonOffset(!1)}function ej(e,t,i,r){if(null!==(!0===i.isScene?i.overrideMaterial:null))return;void 0===V.state.transmissionRenderTarget[r.id]&&(V.state.transmissionRenderTarget[r.id]=new ex(1,1,{generateMipmaps:!0,type:n.has("EXT_color_buffer_half_float")||n.has("EXT_color_buffer_float")?1016:1009,minFilter:1008,samples:4,stencilBuffer:R,resolveDepthBuffer:!1,resolveStencilBuffer:!1,colorSpace:eu.workingColorSpace}));let a=V.state.transmissionRenderTarget[r.id],s=r.viewport||$;a.setSize(s.z,s.w);let l=j.getRenderTarget();j.setRenderTarget(a),j.getClearColor(en),(eo=j.getClearAlpha())<1&&j.setClearColor(0xffffff,.5),j.clear(),eC&&y.render(i);let u=j.toneMapping;j.toneMapping=0;let c=r.viewport;if(void 0!==r.viewport&&(r.viewport=void 0),V.setupLightsView(r),!0===ey&&v.setGlobalState(j.clippingPlanes,r),eX(e,i,r),o.updateMultisampleRenderTarget(a),o.updateRenderTargetMipmap(a),!1===n.has("WEBGL_multisampled_render_to_texture")){let e=!1;for(let n=0,a=t.length;ntypeof self&&eV.setContext(self),this.setAnimationLoop=function(e){eB=e,eN.setAnimationLoop(e),null===e?eV.stop():eV.start()},eN.addEventListener("sessionstart",ek),eN.addEventListener("sessionend",eH),this.render=function(e,t){if(void 0!==t&&!0!==t.isCamera)return void console.error("THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.");if(!0===X)return;if(!0===e.matrixWorldAutoUpdate&&e.updateMatrixWorld(),null===t.parent&&!0===t.matrixWorldAutoUpdate&&t.updateMatrixWorld(),!0===eN.enabled&&!0===eN.isPresenting&&(!0===eN.cameraAutoUpdate&&eN.updateCamera(t),t=eN.getCamera()),!0===e.isScene&&e.onBeforeRender(j,e,t,Z),(V=g.get(e,W.length)).init(t),W.push(V),eM.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse),ev.setFromProjectionMatrix(eM),eb=this.localClippingEnabled,ey=v.init(this.clippingPlanes,eb),(H=m.get(e,G.length)).init(),G.push(H),!0===eN.enabled&&!0===eN.isPresenting){let e=j.xr.getDepthSensingMesh();null!==e&&eG(e,t,-1/0,j.sortObjects)}eG(e,t,0,j.sortObjects),H.finish(),!0===j.sortObjects&&H.sort(ed,ep),(eC=!1===eN.enabled||!1===eN.isPresenting||!1===eN.hasDepthSensing())&&y.addToRenderList(H,e),this.info.render.frame++,!0===ey&&v.beginShadows();let n=V.state.shadowsArray;_.render(n,e,t),!0===ey&&v.endShadows(),!0===this.info.autoReset&&this.info.reset();let i=H.opaque,r=H.transmissive;if(V.setupLights(),t.isArrayCamera){let n=t.cameras;if(r.length>0)for(let t=0,a=n.length;t0&&ej(i,r,e,t),eC&&y.render(e),eW(H,e,t);null!==Z&&(o.updateMultisampleRenderTarget(Z),o.updateRenderTargetMipmap(Z)),!0===e.isScene&&e.onAfterRender(j,e,t),T.resetDefaultState(),J=-1,K=null,W.pop(),W.length>0?(V=W[W.length-1],!0===ey&&v.setGlobalState(j.clippingPlanes,V.state.camera)):V=null,G.pop(),H=G.length>0?G[G.length-1]:null},this.getActiveCubeFace=function(){return q},this.getActiveMipmapLevel=function(){return Y},this.getRenderTarget=function(){return Z},this.setRenderTargetTextures=function(e,t,i){s.get(e.texture).__webglTexture=t,s.get(e.depthTexture).__webglTexture=i;let r=s.get(e);r.__hasExternalTextures=!0,r.__autoAllocateDepthBuffer=void 0===i,r.__autoAllocateDepthBuffer||!0!==n.has("WEBGL_multisampled_render_to_texture")||(console.warn("THREE.WebGLRenderer: Render-to-texture extension was disabled because an external texture was provided"),r.__useRenderToTexture=!1)},this.setRenderTargetFramebuffer=function(e,t){let n=s.get(e);n.__webglFramebuffer=t,n.__useDefaultFramebuffer=void 0===t},this.setRenderTarget=function(e,t=0,n=0){Z=e,q=t,Y=n;let i=!0,a=null,l=!1,u=!1;if(e){let c=s.get(e);if(void 0!==c.__useDefaultFramebuffer)r.bindFramebuffer(eP.FRAMEBUFFER,null),i=!1;else if(void 0===c.__webglFramebuffer)o.setupRenderTarget(e);else if(c.__hasExternalTextures)o.rebindTextures(e,s.get(e.texture).__webglTexture,s.get(e.depthTexture).__webglTexture);else if(e.depthBuffer){let t=e.depthTexture;if(c.__boundDepthTexture!==t){if(null!==t&&s.has(t)&&(e.width!==t.image.width||e.height!==t.image.height))throw Error("WebGLRenderTarget: Attached DepthTexture is initialized to the incorrect size.");o.setupDepthRenderbuffer(e)}}let h=e.texture;(h.isData3DTexture||h.isDataArrayTexture||h.isCompressedArrayTexture)&&(u=!0);let d=s.get(e).__webglFramebuffer;e.isWebGLCubeRenderTarget?(a=Array.isArray(d[t])?d[t][n]:d[t],l=!0):a=e.samples>0&&!1===o.useMultisampledRTT(e)?s.get(e).__webglMultisampledFramebuffer:Array.isArray(d)?d[n]:d,$.copy(e.viewport),Q.copy(e.scissor),ee=e.scissorTest}else $.copy(ef).multiplyScalar(eh).floor(),Q.copy(em).multiplyScalar(eh).floor(),ee=eg;if(r.bindFramebuffer(eP.FRAMEBUFFER,a)&&i&&r.drawBuffers(e,a),r.viewport($),r.scissor(Q),r.setScissorTest(ee),l){let i=s.get(e.texture);eP.framebufferTexture2D(eP.FRAMEBUFFER,eP.COLOR_ATTACHMENT0,eP.TEXTURE_CUBE_MAP_POSITIVE_X+t,i.__webglTexture,n)}else if(u){let i=s.get(e.texture);eP.framebufferTextureLayer(eP.FRAMEBUFFER,eP.COLOR_ATTACHMENT0,i.__webglTexture,n||0,t||0)}J=-1},this.readRenderTargetPixels=function(e,t,n,a,o,l,u){if(!(e&&e.isWebGLRenderTarget))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");let c=s.get(e).__webglFramebuffer;if(e.isWebGLCubeRenderTarget&&void 0!==u&&(c=c[u]),c){r.bindFramebuffer(eP.FRAMEBUFFER,c);try{let r=e.texture,s=r.format,u=r.type;if(!i.textureFormatReadable(s))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.");if(!i.textureTypeReadable(u))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.");t>=0&&t<=e.width-a&&n>=0&&n<=e.height-o&&eP.readPixels(t,n,a,o,M.convert(s),M.convert(u),l)}finally{let e=null!==Z?s.get(Z).__webglFramebuffer:null;r.bindFramebuffer(eP.FRAMEBUFFER,e)}}},this.readRenderTargetPixelsAsync=async function(e,t,n,a,o,l,u){if(!(e&&e.isWebGLRenderTarget))throw Error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");let c=s.get(e).__webglFramebuffer;if(e.isWebGLCubeRenderTarget&&void 0!==u&&(c=c[u]),c){let u=e.texture,h=u.format,d=u.type;if(!i.textureFormatReadable(h))throw Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.");if(!i.textureTypeReadable(d))throw Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.");if(t>=0&&t<=e.width-a&&n>=0&&n<=e.height-o){r.bindFramebuffer(eP.FRAMEBUFFER,c);let e=eP.createBuffer();eP.bindBuffer(eP.PIXEL_PACK_BUFFER,e),eP.bufferData(eP.PIXEL_PACK_BUFFER,l.byteLength,eP.STREAM_READ),eP.readPixels(t,n,a,o,M.convert(h),M.convert(d),0);let i=null!==Z?s.get(Z).__webglFramebuffer:null;r.bindFramebuffer(eP.FRAMEBUFFER,i);let u=eP.fenceSync(eP.SYNC_GPU_COMMANDS_COMPLETE,0);return eP.flush(),await er(eP,u,4),eP.bindBuffer(eP.PIXEL_PACK_BUFFER,e),eP.getBufferSubData(eP.PIXEL_PACK_BUFFER,0,l),eP.deleteBuffer(e),eP.deleteSync(u),l}throw Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: requested read bounds are out of range.")}},this.copyFramebufferToTexture=function(e,t=null,n=0){!0!==e.isTexture&&(ei("WebGLRenderer: copyFramebufferToTexture function signature has changed."),t=arguments[0]||null,e=arguments[1]);let i=Math.pow(2,-n),a=Math.floor(e.image.width*i),s=Math.floor(e.image.height*i),l=null!==t?t.x:0,u=null!==t?t.y:0;o.setTexture2D(e,0),eP.copyTexSubImage2D(eP.TEXTURE_2D,n,0,0,l,u,a,s),r.unbindTexture()};const eK=eP.createFramebuffer(),e$=eP.createFramebuffer();this.copyTextureToTexture=function(e,t,n=null,i=null,a=0,l=null){let u,c,h,d,p,f,m,g,v,_;!0!==e.isTexture&&(ei("WebGLRenderer: copyTextureToTexture function signature has changed."),i=arguments[0]||null,e=arguments[1],t=arguments[2],l=arguments[3]||0,n=null),null===l&&(0!==a?(ei("WebGLRenderer: copyTextureToTexture function signature has changed to support src and dst mipmap levels."),l=a,a=0):l=0);let y=e.isCompressedTexture?e.mipmaps[l]:e.image;if(null!==n)u=n.max.x-n.min.x,c=n.max.y-n.min.y,h=n.isBox3?n.max.z-n.min.z:1,d=n.min.x,p=n.min.y,f=n.isBox3?n.min.z:0;else{let t=Math.pow(2,-a);u=Math.floor(y.width*t),c=Math.floor(y.height*t),h=e.isDataArrayTexture?y.depth:e.isData3DTexture?Math.floor(y.depth*t):1,d=0,p=0,f=0}null!==i?(m=i.x,g=i.y,v=i.z):(m=0,g=0,v=0);let x=M.convert(t.format),b=M.convert(t.type);t.isData3DTexture?(o.setTexture3D(t,0),_=eP.TEXTURE_3D):t.isDataArrayTexture||t.isCompressedArrayTexture?(o.setTexture2DArray(t,0),_=eP.TEXTURE_2D_ARRAY):(o.setTexture2D(t,0),_=eP.TEXTURE_2D),eP.pixelStorei(eP.UNPACK_FLIP_Y_WEBGL,t.flipY),eP.pixelStorei(eP.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t.premultiplyAlpha),eP.pixelStorei(eP.UNPACK_ALIGNMENT,t.unpackAlignment);let S=eP.getParameter(eP.UNPACK_ROW_LENGTH),T=eP.getParameter(eP.UNPACK_IMAGE_HEIGHT),w=eP.getParameter(eP.UNPACK_SKIP_PIXELS),E=eP.getParameter(eP.UNPACK_SKIP_ROWS),A=eP.getParameter(eP.UNPACK_SKIP_IMAGES);eP.pixelStorei(eP.UNPACK_ROW_LENGTH,y.width),eP.pixelStorei(eP.UNPACK_IMAGE_HEIGHT,y.height),eP.pixelStorei(eP.UNPACK_SKIP_PIXELS,d),eP.pixelStorei(eP.UNPACK_SKIP_ROWS,p),eP.pixelStorei(eP.UNPACK_SKIP_IMAGES,f);let C=e.isDataArrayTexture||e.isData3DTexture,R=t.isDataArrayTexture||t.isData3DTexture;if(e.isDepthTexture){let n=s.get(e),i=s.get(t),o=s.get(n.__renderTarget),_=s.get(i.__renderTarget);r.bindFramebuffer(eP.READ_FRAMEBUFFER,o.__webglFramebuffer),r.bindFramebuffer(eP.DRAW_FRAMEBUFFER,_.__webglFramebuffer);for(let n=0;ntypeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}get coordinateSystem(){return 2e3}get outputColorSpace(){return this._outputColorSpace}set outputColorSpace(e){this._outputColorSpace=e;let t=this.getContext();t.drawingBufferColorspace=eu._getDrawingBufferColorSpace(e),t.unpackColorSpace=eu._getUnpackColorSpace()}}e.s(["PMREMGenerator",0,o8,"ShaderChunk",0,oB,"ShaderLib",0,oH,"UniformsLib",0,ok,"WebGLRenderer",0,uK,"WebGLUtils",0,uk],8560);var u$=e.i(30224);let uQ=e=>{let t,n=new Set,i=(e,i)=>{let r="function"==typeof e?e(t):e;if(!Object.is(r,t)){let e=t;t=(null!=i?i:"object"!=typeof r||null===r)?r:Object.assign({},t,r),n.forEach(n=>n(t,e))}},r=()=>t,a={setState:i,getState:r,getInitialState:()=>s,subscribe:e=>(n.add(e),()=>n.delete(e))},s=t=e(i,r,a);return a},u0=e=>e?uQ(e):uQ;e.s(["createStore",0,u0],8155);let{useSyncExternalStoreWithSelector:u1}=u$.default,u2=(e,t)=>{let n=u0(e),i=(e,i=t)=>(function(e,t=e=>e,n){let i=u1(e.subscribe,e.getState,e.getInitialState,t,n);return E.default.useDebugValue(i),i})(n,e,i);return Object.assign(i,n),i},u3=(e,t)=>e?u2(e,t):u2,u4=[];function u5(e,t,n=(e,t)=>e===t){if(e===t)return!0;if(!e||!t)return!1;let i=e.length;if(t.length!==i)return!1;for(let r=0;r0&&(r.timeout&&clearTimeout(r.timeout),r.timeout=setTimeout(r.remove,i.lifespan)),r.response;if(!n)throw r.promise}let r={keys:t,equal:i.equal,remove:()=>{let e=u4.indexOf(r);-1!==e&&u4.splice(e,1)},promise:("object"==typeof e&&"function"==typeof e.then?e:e(...t)).then(e=>{r.response=e,i.lifespan&&i.lifespan>0&&(r.timeout=setTimeout(r.remove,i.lifespan))}).catch(e=>r.error=e)};if(u4.push(r),!n)throw r.promise}var u8=e.i(89499),u9=e.i(43476),u7=E;function ce(e,t,n){if(!e)return;if(!0===n(e))return e;let i=t?e.return:e.child;for(;i;){let e=ce(i,t,n);if(e)return e;i=t?null:i.sibling}}function ct(e){try{return Object.defineProperties(e,{_currentRenderer:{get:()=>null,set(){}},_currentRenderer2:{get:()=>null,set(){}}})}catch(t){return e}}"u">typeof window&&((null==(y=window.document)?void 0:y.createElement)||(null==(x=window.navigator)?void 0:x.product)==="ReactNative")?u7.useLayoutEffect:u7.useEffect;let cn=ct(u7.createContext(null));class ci extends u7.Component{render(){return u7.createElement(cn.Provider,{value:this._reactInternals},this.props.children)}}function cr(){let e=u7.useContext(cn);if(null===e)throw Error("its-fine: useFiber must be called within a !");let t=u7.useId();return u7.useMemo(()=>{for(let n of[e,null==e?void 0:e.alternate]){if(!n)continue;let e=ce(n,!1,e=>{let n=e.memoizedState;for(;n;){if(n.memoizedState===t)return!0;n=n.next}});if(e)return e}},[e,t])}let ca=Symbol.for("react.context"),cs=e=>null!==e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===ca;function co(e){let t=e.root;for(;t.getState().previousRoot;)t=t.getState().previousRoot;return t}E.act;let cl=e=>e&&e.hasOwnProperty("current"),cu=e=>null!=e&&("string"==typeof e||"number"==typeof e||e.isColor),cc="u">typeof window&&((null==(m=window.document)?void 0:m.createElement)||(null==(g=window.navigator)?void 0:g.product)==="ReactNative")?E.useLayoutEffect:E.useEffect;function ch(e){let t=E.useRef(e);return cc(()=>void(t.current=e),[e]),t}function cd(){let e,t=cr(),n=(e=function(){let e=cr(),[t]=u7.useState(()=>new Map);t.clear();let n=e;for(;n;){let e=n.type;cs(e)&&e!==cn&&!t.has(e)&&t.set(e,u7.use(ct(e))),n=n.return}return t}(),u7.useMemo(()=>Array.from(e.keys()).reduce((t,n)=>i=>u7.createElement(t,null,u7.createElement(n.Provider,{...i,value:e.get(n)})),e=>u7.createElement(ci,{...e})),[e]));return E.useMemo(()=>({children:e})=>{let i=ce(t,!0,e=>e.type===E.StrictMode)?E.StrictMode:E.Fragment;return(0,u9.jsx)(i,{children:(0,u9.jsx)(n,{children:e})})},[t,n])}function cp({set:e}){return cc(()=>(e(new Promise(()=>null)),()=>e(!1)),[e]),null}let cf=((v=class extends E.Component{constructor(...e){super(...e),this.state={error:!1}}componentDidCatch(e){this.props.set(e)}render(){return this.state.error?null:this.props.children}}).getDerivedStateFromError=()=>({error:!0}),v);function cm(e){var t;let n="u">typeof window?null!=(t=window.devicePixelRatio)?t:2:1;return Array.isArray(e)?Math.min(Math.max(e[0],n),e[1]):e}function cg(e){var t;return null==(t=e.__r3f)?void 0:t.root.getState()}let cv={obj:e=>e===Object(e)&&!cv.arr(e)&&"function"!=typeof e,fun:e=>"function"==typeof e,str:e=>"string"==typeof e,num:e=>"number"==typeof e,boo:e=>"boolean"==typeof e,und:e=>void 0===e,nul:e=>null===e,arr:e=>Array.isArray(e),equ(e,t,{arrays:n="shallow",objects:i="reference",strict:r=!0}={}){let a;if(typeof e!=typeof t||!!e!=!!t)return!1;if(cv.str(e)||cv.num(e)||cv.boo(e))return e===t;let s=cv.obj(e);if(s&&"reference"===i)return e===t;let o=cv.arr(e);if(o&&"reference"===n)return e===t;if((o||s)&&e===t)return!0;for(a in e)if(!(a in t))return!1;if(s&&"shallow"===n&&"shallow"===i){for(a in r?t:e)if(!cv.equ(e[a],t[a],{strict:r,objects:"reference"}))return!1}else for(a in r?t:e)if(e[a]!==t[a])return!1;if(cv.und(a)){if(o&&0===e.length&&0===t.length||s&&0===Object.keys(e).length&&0===Object.keys(t).length)return!0;if(e!==t)return!1}return!0}},c_=["children","key","ref"];function cy(e,t,n,i){let r=null==e?void 0:e.__r3f;return!r&&(r={root:t,type:n,parent:null,children:[],props:function(e){let t={};for(let n in e)c_.includes(n)||(t[n]=e[n]);return t}(i),object:e,eventCount:0,handlers:{},isHidden:!1},e&&(e.__r3f=r)),r}function cx(e,t){if(!t.includes("-")||t in e)return{root:e,key:t,target:e[t]};let n=e,i=t.split("-");for(let r of i){if("object"!=typeof n||null===n){if(void 0!==n)return{root:n,key:i.slice(i.indexOf(r)).join("-"),target:void 0};return{root:e,key:t,target:void 0}}t=r,e=n,n=n[t]}return{root:e,key:t,target:n}}let cb=/-\d+$/;function cS(e,t){if(cv.str(t.props.attach)){if(cb.test(t.props.attach)){let n=t.props.attach.replace(cb,""),{root:i,key:r}=cx(e.object,n);Array.isArray(i[r])||(i[r]=[])}let{root:n,key:i}=cx(e.object,t.props.attach);t.previousAttach=n[i],n[i]=t.object}else cv.fun(t.props.attach)&&(t.previousAttach=t.props.attach(e.object,t.object))}function cM(e,t){if(cv.str(t.props.attach)){let{root:n,key:i}=cx(e.object,t.props.attach),r=t.previousAttach;void 0===r?delete n[i]:n[i]=r}else null==t.previousAttach||t.previousAttach(e.object,t.object);delete t.previousAttach}let cT=[...c_,"args","dispose","attach","object","onUpdate","dispose"],cw=new Map,cE=["map","emissiveMap","sheenColorMap","specularColorMap","envMap"],cA=/^on(Pointer|Click|DoubleClick|ContextMenu|Wheel)/;function cC(e,t){var n,i;let r=e.__r3f,a=r&&co(r).getState(),s=null==r?void 0:r.eventCount;for(let n in t){let s=t[n];if(cT.includes(n))continue;if(r&&cA.test(n)){"function"==typeof s?r.handlers[n]=s:delete r.handlers[n],r.eventCount=Object.keys(r.handlers).length;continue}if(void 0===s)continue;let{root:o,key:l,target:u}=cx(e,n);if(void 0===u&&("object"!=typeof o||null===o))throw Error(`R3F: Cannot set "${n}". Ensure it is an object before setting "${l}".`);if(u instanceof ti&&s instanceof ti)u.mask=s.mask;else if(u instanceof tz&&cu(s))u.set(s);else if(null!==u&&"object"==typeof u&&"function"==typeof u.set&&"function"==typeof u.copy&&null!=s&&s.constructor&&u.constructor===s.constructor)u.copy(s);else if(null!==u&&"object"==typeof u&&"function"==typeof u.set&&Array.isArray(s))"function"==typeof u.fromArray?u.fromArray(s):u.set(...s);else if(null!==u&&"object"==typeof u&&"function"==typeof u.set&&"number"==typeof s)"function"==typeof u.setScalar?u.setScalar(s):u.set(s);else if(o instanceof nb&&"uniforms"===l&&cv.obj(s)){cv.obj(o.uniforms)||(o.uniforms={});let e=o.uniforms;for(let t in s){let n=s[t],i=e[t];i?Object.assign(i,n):e[t]={...n}}}else o[l]=s,a&&!a.linear&&cE.includes(l)&&null!=(i=o[l])&&i.isTexture&&1023===o[l].format&&1009===o[l].type&&(o[l].colorSpace=I)}if(null!=r&&r.parent&&null!=a&&a.internal&&null!=(n=r.object)&&n.isObject3D&&s!==r.eventCount){let e=r.object,t=a.internal.interaction.indexOf(e);t>-1&&a.internal.interaction.splice(t,1),r.eventCount&&null!==e.raycast&&a.internal.interaction.push(e)}return r&&void 0===r.props.attach&&(r.object.isBufferGeometry?r.props.attach="geometry":r.object.isMaterial&&(r.props.attach="material")),r&&cR(r),e}function cR(e){var t;if(!e.parent)return;null==e.props.onUpdate||e.props.onUpdate(e.object);let n=null==(t=e.root)||null==t.getState?void 0:t.getState();n&&0===n.internal.frames&&n.invalidate()}function cP(e,t){!e.manual&&(e&&e.isOrthographicCamera?(e.left=-(t.width/2),e.right=t.width/2,e.top=t.height/2,e.bottom=-(t.height/2)):e.aspect=t.width/t.height,e.updateProjectionMatrix())}let cI=e=>null==e?void 0:e.isObject3D;function cL(e){return(e.eventObject||e.object).uuid+"/"+e.index+e.instanceId}function cN(e,t,n,i){let r=n.get(t);r&&(n.delete(t),0===n.size&&(e.delete(i),r.target.releasePointerCapture(i)))}let cU=e=>!!(null!=e&&e.render),cD=E.createContext(null);function cO(){let e=E.useContext(cD);if(!e)throw Error("R3F: Hooks can only be used within the Canvas component!");return e}function cF(e=e=>e,t){return cO()(e,t)}function cz(e,t=0){let n=cO(),i=n.getState().internal.subscribe,r=ch(e);return cc(()=>i(r,t,n),[t,i,n]),null}let cB=new WeakMap;function ck(e,t){return function(n,...i){var r;let a;return"function"==typeof n&&(null==n||null==(r=n.prototype)?void 0:r.constructor)===n?(a=cB.get(n))||(a=new n,cB.set(n,a)):a=n,e&&e(a),Promise.all(i.map(e=>new Promise((n,i)=>a.load(e,e=>{var t;let i;cI(null==e?void 0:e.scene)&&Object.assign(e,(t=e.scene,i={nodes:{},materials:{},meshes:{}},t&&t.traverse(e=>{e.name&&(i.nodes[e.name]=e),e.material&&!i.materials[e.material.name]&&(i.materials[e.material.name]=e.material),e.isMesh&&!i.meshes[e.name]&&(i.meshes[e.name]=e)}),i)),n(e)},t,t=>i(Error(`Could not load ${e}: ${null==t?void 0:t.message}`))))))}}function cH(e,t,n,i){let r=Array.isArray(t)?t:[t],a=u6(ck(n,i),[e,...r],!1,{equal:cv.equ});return Array.isArray(t)?a:a[0]}cH.preload=function(e,t,n){let i,r=Array.isArray(t)?t:[t];u6(ck(n),[e,...r],!0,i)},cH.clear=function(e,t){var n=[e,...Array.isArray(t)?t:[t]];if(void 0===n||0===n.length)u4.splice(0,u4.length);else{let e=u4.find(e=>u5(n,e.keys,e.equal));e&&e.remove()}};var cV={exports:{}},cG={exports:{}};cG.exports;let cW=(T||(T=1,M||(M=1,cG.exports=function(e){function t(e,t,n,i){return new iJ(e,t,n,i)}function n(){}function i(e){var t="https://react.dev/errors/"+e;if(1sT||(e.current=sM[sT],sM[sT]=null,sT--)}function h(e,t){sM[++sT]=e.current,e.current=t}function d(e){var t=42&e;if(0!==t)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return 261888&e;case 262144:case 524288:case 1048576:case 2097152:return 3932160&e;case 4194304:case 8388608:case 0x1000000:case 0x2000000:return 0x3c00000&e;case 0x4000000:return 0x4000000;case 0x8000000:return 0x8000000;case 0x10000000:return 0x10000000;case 0x20000000:return 0x20000000;case 0x40000000:return 0;default:return e}}function p(e,t,n){var i=e.pendingLanes;if(0===i)return 0;var r=0,a=e.suspendedLanes,s=e.pingedLanes;e=e.warmLanes;var o=0x7ffffff&i;return 0!==o?0!=(i=o&~a)?r=d(i):0!=(s&=o)?r=d(s):n||0!=(n=o&~e)&&(r=d(n)):0!=(o=i&~a)?r=d(o):0!==s?r=d(s):n||0!=(n=i&~e)&&(r=d(n)),0===r?0:0!==t&&t!==r&&(t&a)==0&&((a=r&-r)>=(n=t&-t)||32===a&&(4194048&n)!=0)?t:r}function f(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)==0}function m(){var e=sI;return(0x3c00000&(sI<<=1))==0&&(sI=4194304),e}function g(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function v(e,t){e.pendingLanes|=t,0x10000000!==t&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function _(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var i=31-sE(t);e.entangledLanes|=t,e.entanglements[i]=0x40000000|e.entanglements[i]|261930&n}function y(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var i=31-sE(n),r=1<)":-1r||l[i]!==u[r]){var c=` +`+l[i].replace(" at new "," at ");return e.displayName&&c.includes("")&&(c=c.replace("",e.displayName)),c}while(1<=i&&0<=r)break}}}finally{sY=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?T(n):""}function C(e){try{var t="",n=null;do t+=function(e,t){switch(e.tag){case 26:case 27:case 5:return T(e.type);case 16:return T("Lazy");case 13:return e.child!==t&&null!==t?T("Suspense Fallback"):T("Suspense");case 19:return T("SuspenseList");case 0:case 15:return A(e.type,!1);case 11:return A(e.type.render,!1);case 1:return A(e.type,!0);case 31:return T("Activity");default:return""}}(e,n),n=e,e=e.return;while(e)return t}catch(e){return` +Error generating stack: `+e.message+` +`+e.stack}}function R(e,t){if("object"==typeof e&&null!==e){var n=sZ.get(e);return void 0!==n?n:(t={value:e,source:t,stack:C(t)},sZ.set(e,t),t)}return{value:e,source:t,stack:C(t)}}function P(e,t){sJ[sK++]=sQ,sJ[sK++]=s$,s$=e,sQ=t}function I(e,t,n){s0[s1++]=s3,s0[s1++]=s4,s0[s1++]=s2,s2=e;var i=s3;e=s4;var r=32-sE(i)-1;i&=~(1<>=s,r-=s,s3=1<<32-sE(t)+r|n<d?(p=h,h=null):p=h.sibling;var v=m(t,h,s[d],o);if(null===v){null===h&&(h=p);break}e&&h&&null===v.alternate&&n(t,h),i=l(v,i,d),null===c?u=v:c.sibling=v,c=v,h=p}if(d===s.length)return r(t,h),ot&&P(t,d),u;if(null===h){for(;dp?(v=d,d=null):v=d.sibling;var y=m(t,d,_.value,u);if(null===y){null===d&&(d=v);break}e&&d&&null===y.alternate&&n(t,d),s=l(y,s,p),null===h?c=y:h.sibling=y,h=y,d=v}if(_.done)return r(t,d),ot&&P(t,p),c;if(null===d){for(;!_.done;p++,_=o.next())null!==(_=f(t,_.value,u))&&(s=l(_,s,p),null===h?c=_:h.sibling=_,h=_);return ot&&P(t,p),c}for(d=a(d);!_.done;p++,_=o.next())null!==(_=g(d,t,p,_.value,u))&&(e&&null!==_.alternate&&d.delete(null===_.key?p:_.key),s=l(_,s,p),null===h?c=_:h.sibling=_,h=_);return e&&d.forEach(function(e){return n(t,e)}),ot&&P(t,p),c}(c,h,d=v.call(d),p)}if("function"==typeof d.then)return t(c,h,eM(d),p);if(d.$$typeof===rd)return t(c,h,ee(c,d),p);ew(c,d)}return"string"==typeof d&&""!==d||"number"==typeof d||"bigint"==typeof d?(d=""+d,null!==h&&6===h.tag?(r(c,h.sibling),(p=s(h,d)).return=c):(r(c,h),(p=i2(d,c.mode,p)).return=c),u(c=p)):r(c,h)}(c,h,d,p);return oR=null,v}catch(e){if(e===oT||e===oE)throw e;var _=t(29,e,null,c.mode);return _.lanes=p,_.return=c,_}finally{}}}function eA(){for(var e=oU,t=oD=oU=0;ta?a:8);var s=rM.T,o={};rM.T=o,t$(e,!1,t,n);try{var l=r(),u=rM.S;if(null!==u&&u(o,l),null!==l&&"object"==typeof l&&"function"==typeof l.then){var c,h,d=(c=[],h={status:"pending",value:null,reason:null,then:function(e){c.push(e)}},l.then(function(){h.status="fulfilled",h.value=i;for(var e=0;e";case lu:return":has("+(id(e)||"")+")";case lc:return'[role="'+e.value+'"]';case ld:return'"'+e.value+'"';case lh:return'[data-testname="'+e.value+'"]';default:throw Error(i(365))}}function ip(e,t){var n=[];e=[e,0];for(var i=0;ilO&&(t.flags|=128,a=!0,nO(r,!1),t.lanes=4194304)}else{if(!a)if(null!==(e=eK(s))){if(t.flags|=128,a=!0,t.updateQueue=e=e.updateQueue,nD(t,e),nO(r,!0),null===r.tail&&"hidden"===r.tailMode&&!s.alternate&&!ot)return nF(t),null}else 2*sO()-r.renderingStartTime>lO&&0x20000000!==n&&(t.flags|=128,a=!0,nO(r,!1),t.lanes=4194304);r.isBackwards?(s.sibling=t.child,t.child=s):(null!==(e=r.last)?e.sibling=s:t.child=s,r.last=s)}return null!==r.tail?(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=sO(),e.sibling=null,n=oV.current,h(oV,a?1&n|2:1&n),ot&&P(t,r.treeForkCount),e):(nF(t),null);case 22:case 23:return eJ(t),ej(),r=null!==t.memoizedState,null!==e?null!==e.memoizedState!==r&&(t.flags|=8192):r&&(t.flags|=8192),r?(0x20000000&n)!=0&&(128&t.flags)==0&&(nF(t),6&t.subtreeFlags&&(t.flags|=8192)):nF(t),null!==(n=t.updateQueue)&&nD(t,n.retryQueue),n=null,null!==e&&null!==e.memoizedState&&null!==e.memoizedState.cachePool&&(n=e.memoizedState.cachePool.pool),r=null,null!==t.memoizedState&&null!==t.memoizedState.cachePool&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),null!==e&&c(oM),null;case 24:return n=null,null!==e&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),q(oh),nF(t),null;case 25:case 30:return null}throw Error(i(156,t.tag))}(t.alternate,t,lT);if(null!==n){lv=n;return}if(null!==(t=t.sibling)){lv=t;return}lv=t=e}while(null!==t)0===lw&&(lw=5)}function iD(e,t){do{var n=function(e,t){switch(N(t),t.tag){case 1:return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return q(oh),O(),(65536&(e=t.flags))!=0&&(128&e)==0?(t.flags=-65537&e|128,t):null;case 26:case 27:case 5:return z(t),null;case 31:if(null!==t.memoizedState){if(eJ(t),null===t.alternate)throw Error(i(340));G()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 13:if(eJ(t),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(i(340));G()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return c(oV),null;case 4:return O(),null;case 10:return q(t.type),null;case 22:case 23:return eJ(t),ej(),null!==e&&c(oM),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 24:return q(oh),null;default:return null}}(e.alternate,e);if(null!==n){n.flags&=32767,lv=n;return}if(null!==(n=e.return)&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!t&&null!==(e=e.sibling)){lv=e;return}lv=e=n}while(null!==e)lw=6,lv=null}function iO(e,t,n,r,a,s,o,l,u){e.cancelPendingCommit=null;do iH();while(0!==lB)if((6&lm)!=0)throw Error(i(327));if(null!==t){if(t===e.current)throw Error(i(177));if(function(e,t,n,i,r,a){var s=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var o=e.entanglements,l=e.expirationTimes,u=e.hiddenUpdates;for(n=s&~n;0n?32:n;n=rM.T;var a=rq();try{rX(r),rM.T=null,r=lW,lW=null;var s=lk,o=lV;if(lB=0,lH=lk=null,lV=0,(6&lm)!=0)throw Error(i(331));var l=lm;if(lm|=4,il(s.current),it(s,s.current,o,r),lm=l,es(0,!1),sW&&"function"==typeof sW.onPostCommitFiberRoot)try{sW.onPostCommitFiberRoot(sG,s)}catch{}return!0}finally{rX(a),rM.T=n,ik(e,t)}}function iG(e,t,n){t=R(n,t),t=t9(e.stateNode,t,2),null!==(e=eO(e,t,2))&&(v(e,2),ea(e))}function iW(e,t,n){if(3===e.tag)iG(e,e,n);else for(;null!==t;){if(3===t.tag){iG(t,e,n);break}if(1===t.tag){var i=t.stateNode;if("function"==typeof t.type.getDerivedStateFromError||"function"==typeof i.componentDidCatch&&(null===lz||!lz.has(i))){e=R(n,e),null!==(i=eO(t,n=t7(2),2))&&(ne(n,i,t,e),v(i,2),ea(i));break}}t=t.return}}function ij(e,t,n){var i=e.pingCache;if(null===i){i=e.pingCache=new lf;var r=new Set;i.set(t,r)}else void 0===(r=i.get(t))&&(r=new Set,i.set(t,r));r.has(n)||(lM=!0,r.add(n),e=iX.bind(null,e,t,n),t.then(e,e))}function iX(e,t,n){var i=e.pingCache;null!==i&&i.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,lg===e&&(l_&n)===n&&(4===lw||3===lw&&(0x3c00000&l_)===l_&&300>sO()-lU?(2&lm)==0&&iT(e,0):lC|=n,lP===l_&&(lP=0)),ea(e)}function iq(e,t){0===t&&(t=m()),null!==(e=eP(e,t))&&(v(e,t),ea(e))}function iY(e){var t=e.memoizedState,n=0;null!==t&&(n=t.retryLane),iq(e,n)}function iZ(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,a=e.memoizedState;null!==a&&(n=a.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(i(314))}null!==r&&r.delete(t),iq(e,n)}function iJ(e,t,n,i){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=i,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function iK(e){return!(!(e=e.prototype)||!e.isReactComponent)}function i$(e,n){var i=e.alternate;return null===i?((i=t(e.tag,n,e.key,e.mode)).elementType=e.elementType,i.type=e.type,i.stateNode=e.stateNode,i.alternate=e,e.alternate=i):(i.pendingProps=n,i.type=e.type,i.flags=0,i.subtreeFlags=0,i.deletions=null),i.flags=0x3e00000&e.flags,i.childLanes=e.childLanes,i.lanes=e.lanes,i.child=e.child,i.memoizedProps=e.memoizedProps,i.memoizedState=e.memoizedState,i.updateQueue=e.updateQueue,n=e.dependencies,i.dependencies=null===n?null:{lanes:n.lanes,firstContext:n.firstContext},i.sibling=e.sibling,i.index=e.index,i.ref=e.ref,i.refCleanup=e.refCleanup,i}function iQ(e,t){e.flags&=0x3e00002;var n=e.alternate;return null===n?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=n.childLanes,e.lanes=n.lanes,e.child=n.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=n.memoizedProps,e.memoizedState=n.memoizedState,e.updateQueue=n.updateQueue,e.type=n.type,e.dependencies=null===(t=n.dependencies)?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function i0(e,n,r,a,s,o){var l=0;if(a=e,"function"==typeof e)iK(e)&&(l=1);else if("string"==typeof e)l=si&&sv?sr(e,r,s5.current)?26:sb(e)?27:5:si?sr(e,r,s5.current)?26:5:sv&&sb(e)?27:5;else o:switch(e){case r_:return(e=t(31,r,n,s)).elementType=r_,e.lanes=o,e;case rl:return i1(r.children,s,o,n);case ru:l=8,s|=24;break;case rc:return(e=t(12,r,n,2|s)).elementType=rc,e.lanes=o,e;case rf:return(e=t(13,r,n,s)).elementType=rf,e.lanes=o,e;case rm:return(e=t(19,r,n,s)).elementType=rm,e.lanes=o,e;default:if("object"==typeof e&&null!==e)switch(e.$$typeof){case rd:l=10;break o;case rh:l=9;break o;case rp:l=11;break o;case rg:l=14;break o;case rv:l=16,a=null;break o}l=29,r=Error(i(130,null===e?"null":typeof e,"")),a=null}return(n=t(l,r,n,s)).elementType=e,n.type=a,n.lanes=o,n}function i1(e,n,i,r){return(e=t(7,e,r,n)).lanes=i,e}function i2(e,n,i){return(e=t(6,e,null,n)).lanes=i,e}function i3(e){var n=t(18,null,null,0);return n.stateNode=e,n}function i4(e,n,i){return(n=t(4,null!==e.children?e.children:[],e.key,n)).lanes=i,n.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},n}function i5(e,t,n,i,r,a,s,o,l){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=rB,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=g(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=g(0),this.hiddenUpdates=g(null),this.identifierPrefix=i,this.onUncaughtError=r,this.onCaughtError=a,this.onRecoverableError=s,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=l,this.incompleteTransitions=new Map}function i6(e,n,i,r,a,s,o,l,u,c,h,d){return e=new i5(e,n,i,o,u,c,h,d,l),n=1,!0===s&&(n|=24),s=t(3,null,null,n),e.current=s,s.stateNode=e,n=en(),n.refCount++,e.pooledCache=n,n.refCount++,s.memoizedState={element:r,isDehydrated:i,cache:n},eN(s),e}function i8(e){var t=e._reactInternals;if(void 0===t)throw"function"==typeof e.render?Error(i(188)):Error(i(268,e=Object.keys(e).join(",")));return null===(e=null!==(e=s(t))?function e(t){var n=t.tag;if(5===n||26===n||27===n||6===n)return t;for(t=t.child;null!==t;){if(null!==(n=e(t)))return n;t=t.sibling}return null}(e):null)?null:rA(e.stateNode)}function i9(e,t,n,i,r,a){r=sw,null===i.context?i.context=r:i.pendingContext=r,(i=eD(t)).payload={element:n},null!==(a=void 0===a?null:a)&&(i.callback=a),null!==(n=eO(e,i,t))&&(i_(n,e,t),eF(n,e,t))}function i7(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var n=e.retryLane;e.retryLane=0!==n&&n>>=0)?32:31-(sA(e)/sC|0)|0},sA=Math.log,sC=Math.LN2,sR=256,sP=262144,sI=4194304,sL=ri.unstable_scheduleCallback,sN=ri.unstable_cancelCallback,sU=ri.unstable_shouldYield,sD=ri.unstable_requestPaint,sO=ri.unstable_now,sF=ri.unstable_ImmediatePriority,sz=ri.unstable_UserBlockingPriority,sB=ri.unstable_NormalPriority,sk=ri.unstable_IdlePriority,sH=ri.log,sV=ri.unstable_setDisableYieldValue,sG=null,sW=null,sj="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},sX="function"==typeof reportError?reportError:function(e){if("object"==typeof window&&"function"==typeof window.ErrorEvent){var t=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:"object"==typeof e&&null!==e&&"string"==typeof e.message?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if("object"==typeof w.default&&"function"==typeof w.default.emit)return void w.default.emit("uncaughtException",e);console.error(e)},sq=Object.prototype.hasOwnProperty,sY=!1,sZ=new WeakMap,sJ=[],sK=0,s$=null,sQ=0,s0=[],s1=0,s2=null,s3=1,s4="",s5=u(null),s6=u(null),s8=u(null),s9=u(null),s7=null,oe=null,ot=!1,on=null,oi=!1,or=Error(i(519)),oa=u(null),os=null,oo=null,ol="u">typeof AbortController?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(t,n){e.push(n)}};this.abort=function(){t.aborted=!0,e.forEach(function(e){return e()})}},ou=ri.unstable_scheduleCallback,oc=ri.unstable_NormalPriority,oh={$$typeof:rd,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0},od=null,op=null,of=!1,om=!1,og=!1,ov=0,o_=null,oy=0,ox=0,ob=null,oS=rM.S;rM.S=function(e,t){lD=sO(),"object"==typeof t&&null!==t&&"function"==typeof t.then&&function(e){if(null===o_){var t=o_=[];oy=0,ox=ed(),ob={status:"pending",value:void 0,then:function(e){t.push(e)}}}oy++,e.then(ep,ep)}(t),null!==oS&&oS(e,t)};var oM=u(null),oT=Error(i(460)),ow=Error(i(474)),oE=Error(i(542)),oA={then:function(){}},oC=null,oR=null,oP=0,oI=eE(!0),oL=eE(!1),oN=[],oU=0,oD=0,oO=!1,oF=!1,oz=u(null),oB=u(0),ok=u(null),oH=null,oV=u(0),oG=0,oW=null,oj=null,oX=null,oq=!1,oY=!1,oZ=!1,oJ=0,oK=0,o$=null,oQ=0,o0={readContext:Q,use:tt,useCallback:e$,useContext:e$,useEffect:e$,useImperativeHandle:e$,useLayoutEffect:e$,useInsertionEffect:e$,useMemo:e$,useReducer:e$,useRef:e$,useState:e$,useDebugValue:e$,useDeferredValue:e$,useTransition:e$,useSyncExternalStore:e$,useId:e$,useHostTransitionStatus:e$,useFormState:e$,useActionState:e$,useOptimistic:e$,useMemoCache:e$,useCacheRefresh:e$};o0.useEffectEvent=e$;var o1={readContext:Q,use:tt,useCallback:function(e,t){return e8().memoizedState=[e,void 0===t?null:t],e},useContext:Q,useEffect:tI,useImperativeHandle:function(e,t,n){n=null!=n?n.concat([e]):null,tR(4194308,4,tO.bind(null,t,e),n)},useLayoutEffect:function(e,t){return tR(4194308,4,e,t)},useInsertionEffect:function(e,t){tR(4,2,e,t)},useMemo:function(e,t){var n=e8();t=void 0===t?null:t;var i=e();return n.memoizedState=[i,t],i},useReducer:function(e,t,n){var i=e8();if(void 0!==n)var r=n(t);else r=t;return i.memoizedState=i.baseState=r,i.queue=e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:r},e=e.dispatch=tZ.bind(null,oW,e),[i.memoizedState,e]},useRef:function(e){return e8().memoizedState={current:e}},useState:function(e){var t=(e=tp(e)).queue,n=tJ.bind(null,oW,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:tz,useDeferredValue:function(e,t){return tH(e8(),e,t)},useTransition:function(){var e=tp(!1);return e=tG.bind(null,oW,e.queue,!0,!1),e8().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=oW,a=e8();if(ot){if(void 0===n)throw Error(i(407));n=n()}else{if(n=t(),null===lg)throw Error(i(349));(127&l_)!=0||tl(r,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,tI(tc.bind(null,r,s,e),[e]),r.flags|=2048,tA(9,{destroy:void 0},tu.bind(null,r,s,n,t),null),n},useId:function(){var e=e8(),t=lg.identifierPrefix;if(ot){var n=s4,i=s3;t="_"+t+"R_"+(n=(i&~(1<<32-sE(i)-1)).toString(32)+n),0<(n=oJ++)&&(t+="H"+n.toString(32)),t+="_"}else t="_"+t+"r_"+(n=oQ++).toString(32)+"_";return e.memoizedState=t},useHostTransitionStatus:tj,useFormState:tS,useActionState:tS,useOptimistic:function(e){var t=e8();t.memoizedState=t.baseState=e;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=n,t=t$.bind(null,oW,!0,n),n.dispatch=t,[e,t]},useMemoCache:tn,useCacheRefresh:function(){return e8().memoizedState=tY.bind(null,oW)},useEffectEvent:function(e){var t=e8(),n={impl:e};return t.memoizedState=n,function(){if((2&lm)!=0)throw Error(i(440));return n.impl.apply(void 0,arguments)}}},o2={readContext:Q,use:tt,useCallback:tB,useContext:Q,useEffect:tL,useImperativeHandle:tF,useInsertionEffect:tU,useLayoutEffect:tD,useMemo:tk,useReducer:tr,useRef:tC,useState:function(){return tr(ti)},useDebugValue:tz,useDeferredValue:function(e,t){return tV(e9(),oj.memoizedState,e,t)},useTransition:function(){var e=tr(ti)[0],t=e9().memoizedState;return["boolean"==typeof e?e:te(e),t]},useSyncExternalStore:to,useId:tX,useHostTransitionStatus:tj,useFormState:tM,useActionState:tM,useOptimistic:function(e,t){return tf(e9(),oj,e,t)},useMemoCache:tn,useCacheRefresh:tq};o2.useEffectEvent=tN;var o3={readContext:Q,use:tt,useCallback:tB,useContext:Q,useEffect:tL,useImperativeHandle:tF,useInsertionEffect:tU,useLayoutEffect:tD,useMemo:tk,useReducer:ts,useRef:tC,useState:function(){return ts(ti)},useDebugValue:tz,useDeferredValue:function(e,t){var n=e9();return null===oj?tH(n,e,t):tV(n,oj.memoizedState,e,t)},useTransition:function(){var e=ts(ti)[0],t=e9().memoizedState;return["boolean"==typeof e?e:te(e),t]},useSyncExternalStore:to,useId:tX,useHostTransitionStatus:tj,useFormState:tE,useActionState:tE,useOptimistic:function(e,t){var n=e9();return null!==oj?tf(n,oj,e,t):(n.baseState=e,[e,n.queue.dispatch])},useMemoCache:tn,useCacheRefresh:tq};o3.useEffectEvent=tN;var o4={enqueueSetState:function(e,t,n){e=e._reactInternals;var i=ig(),r=eD(i);r.payload=t,null!=n&&(r.callback=n),null!==(t=eO(e,r,i))&&(i_(t,e,i),eF(t,e,i))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var i=ig(),r=eD(i);r.tag=1,r.payload=t,null!=n&&(r.callback=n),null!==(t=eO(e,r,i))&&(i_(t,e,i),eF(t,e,i))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=ig(),i=eD(n);i.tag=2,null!=t&&(i.callback=t),null!==(t=eO(e,i,n))&&(i_(t,e,n),eF(t,e,n))}},o5=Error(i(461)),o6=!1,o8={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null},o9=!1,o7=!1,le=!1,lt="function"==typeof WeakSet?WeakSet:Set,ln=null,li=null,lr=!1,la=null,ls=8192,lo={getCacheForType:function(e){var t=Q(oh),n=t.data.get(e);return void 0===n&&(n=e(),t.data.set(e,n)),n},cacheSignal:function(){return Q(oh).controller.signal}},ll=0,lu=1,lc=2,lh=3,ld=4;if("function"==typeof Symbol&&Symbol.for){var lp=Symbol.for;ll=lp("selector.component"),lu=lp("selector.has_pseudo_class"),lc=lp("selector.role"),lh=lp("selector.test_id"),ld=lp("selector.text")}var lf="function"==typeof WeakMap?WeakMap:Map,lm=0,lg=null,lv=null,l_=0,ly=0,lx=null,lb=!1,lS=!1,lM=!1,lT=0,lw=0,lE=0,lA=0,lC=0,lR=0,lP=0,lI=null,lL=null,lN=!1,lU=0,lD=0,lO=1/0,lF=null,lz=null,lB=0,lk=null,lH=null,lV=0,lG=0,lW=null,lj=null,lX=0,lq=null;return rt.attemptContinuousHydration=function(e){if(13===e.tag||31===e.tag){var t=eP(e,0x4000000);null!==t&&i_(t,e,0x4000000),re(e,0x4000000)}},rt.attemptHydrationAtCurrentPriority=function(e){if(13===e.tag||31===e.tag){var t=ig(),n=eP(e,t=b(t));null!==n&&i_(n,e,t),re(e,t)}},rt.attemptSynchronousHydration=function(e){switch(e.tag){case 3:if((e=e.stateNode).current.memoizedState.isDehydrated){var t=d(e.pendingLanes);if(0!==t){for(e.pendingLanes|=2,e.entangledLanes|=2;t;){var n=1<<31-sE(t);e.entanglements[1]|=n,t&=~n}ea(e),(6&lm)==0&&(lO=sO()+500,es(0,!1))}}break;case 31:case 13:null!==(t=eP(e,2))&&i_(t,e,2),iS(),re(e,2)}},rt.batchedUpdates=function(e,t){return e(t)},rt.createComponentSelector=function(e){return{$$typeof:ll,value:e}},rt.createContainer=function(e,t,n,i,r,a,s,o,l,u){return i6(e,t,!1,null,n,i,a,null,s,o,l,u)},rt.createHasPseudoClassSelector=function(e){return{$$typeof:lu,value:e}},rt.createHydrationContainer=function(e,t,n,i,r,a,s,o,l,u,c,h,d,p){var f;return(e=i6(n,i,!0,e,r,a,o,p,l,u,c,h)).context=sw,n=e.current,(r=eD(i=b(i=ig()))).callback=null!=(f=t)?f:null,eO(n,r,i),t=i,e.current.lanes=t,v(e,t),ea(e),e},rt.createPortal=function(e,t,n){var i=3=c&&s>=d&&a<=h&&o<=p){e.splice(t,1);break}if(r!==c||n.width!==u.width||po){if(!(s!==d||n.height!==u.height||ha)){c>r&&(u.width+=c-r,u.x=r),hs&&(u.height+=d-s,u.y=s),pn&&(n=l)),l ")+` + +No matching component was found for: + `+e.join(" > ")}return null},rt.getPublicRootInstance=function(e){if(!(e=e.current).child)return null;switch(e.child.tag){case 27:case 5:return rA(e.child.stateNode);default:return e.child.stateNode}},rt.injectIntoDevTools=function(){var e={bundleType:0,version:rT,rendererPackageName:rw,currentDispatcherRef:rM,reconcilerVersion:"19.2.0"};if(null!==rE&&(e.rendererConfig=rE),typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")e=!1;else{var t=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(t.isDisabled||!t.supportsFiber)e=!0;else{try{sG=t.inject(e),sW=t}catch{}e=!!t.checkDCE}}return e},rt.isAlreadyRendering=function(){return(6&lm)!=0},rt.observeVisibleRects=function(e,t,n,r){if(!r7)throw Error(i(363));var a=as(e=im(e,t),n,r).disconnect;return{disconnect:function(){a()}}},rt.shouldError=function(){return null},rt.shouldSuspend=function(){return!1},rt.startHostTransition=function(e,t,r,a){if(5!==e.tag)throw Error(i(476));var s=tW(e).queue;tG(e,s,t,r4,null===r?n:function(){var t=tW(e);return null===t.next&&(t=e.alternate.memoizedState),tK(e,t.next.queue,{},ig()),r(a)})},rt.updateContainer=function(e,t,n,i){var r=t.current,a=ig();return i9(r,a,e,t,n,i),a},rt.updateContainerSync=function(e,t,n,i){return i9(t.current,2,e,t,n,i),2},rt},cG.exports.default=cG.exports,Object.defineProperty(cG.exports,"__esModule",{value:!0})),cV.exports=cG.exports),(b=cV.exports)&&b.__esModule&&Object.prototype.hasOwnProperty.call(b,"default"))?b.default:b,cj={},cX=/^three(?=[A-Z])/,cq=e=>`${e[0].toUpperCase()}${e.slice(1)}`,cY=0;function cZ(e){if("function"==typeof e){let t=`${cY++}`;return cj[t]=e,t}Object.assign(cj,e)}function cJ(e,t){let n=cq(e),i=cj[n];if("primitive"!==e&&!i)throw Error(`R3F: ${n} is not part of the THREE namespace! Did you forget to extend? See: https://docs.pmnd.rs/react-three-fiber/api/objects#using-3rd-party-objects-declaratively`);if("primitive"===e&&!t.object)throw Error("R3F: Primitives without 'object' are invalid!");if(void 0!==t.args&&!Array.isArray(t.args))throw Error("R3F: The args prop must be an array!")}function cK(e){if(e.isHidden){var t;e.props.attach&&null!=(t=e.parent)&&t.object?cS(e.parent,e):cI(e.object)&&!1!==e.props.visible&&(e.object.visible=!0),e.isHidden=!1,cR(e)}}function c$(e,t,n){let i=t.root.getState();if(e.parent||e.object===i.scene){if(!t.object){var r,a;let e=cj[cq(t.type)];t.object=null!=(r=t.props.object)?r:new e(...null!=(a=t.props.args)?a:[]),t.object.__r3f=t}if(cC(t.object,t.props),t.props.attach)cS(e,t);else if(cI(t.object)&&cI(e.object)){let i=e.object.children.indexOf(null==n?void 0:n.object);if(n&&-1!==i){let n=e.object.children.indexOf(t.object);-1!==n?(e.object.children.splice(n,1),e.object.children.splice(n{try{e.dispose()}catch{}};"u">typeof IS_REACT_ACT_ENVIRONMENT?t():(0,u8.unstable_scheduleCallback)(u8.unstable_IdlePriority,t)}}function c2(e,t,n){if(!t)return;t.parent=null;let i=e.children.indexOf(t);-1!==i&&e.children.splice(i,1),t.props.attach?cM(e,t):cI(t.object)&&cI(e.object)&&(e.object.remove(t.object),function(e,t){let{internal:n}=e.getState();n.interaction=n.interaction.filter(e=>e!==t),n.initialHits=n.initialHits.filter(e=>e!==t),n.hovered.forEach((e,i)=>{(e.eventObject===t||e.object===t)&&n.hovered.delete(i)}),n.capturedMap.forEach((e,i)=>{cN(n.capturedMap,t,e,i)})}(co(t),t.object));let r=null!==t.props.dispose&&!1!==n;for(let e=t.children.length-1;e>=0;e--){let n=t.children[e];c2(t,n,r)}t.children.length=0,delete t.object.__r3f,r&&"primitive"!==t.type&&"Scene"!==t.object.type&&c1(t.object),void 0===n&&cR(t)}let c3=[],c4=()=>{},c5={},c6=0,c8=(S={isPrimaryRenderer:!1,warnsIfNotActing:!1,supportsMutation:!0,supportsPersistence:!1,supportsHydration:!1,createInstance:function(e,t,n){var i;return cJ(e=cq(e)in cj?e:e.replace(cX,""),t),"primitive"===e&&null!=(i=t.object)&&i.__r3f&&delete t.object.__r3f,cy(t.object,n,e,t)},removeChild:c2,appendChild:cQ,appendInitialChild:cQ,insertBefore:c0,appendChildToContainer(e,t){let n=e.getState().scene.__r3f;t&&n&&cQ(n,t)},removeChildFromContainer(e,t){let n=e.getState().scene.__r3f;t&&n&&c2(n,t)},insertInContainerBefore(e,t,n){let i=e.getState().scene.__r3f;t&&n&&i&&c0(i,t,n)},getRootHostContext:()=>c5,getChildHostContext:()=>c5,commitUpdate(e,t,n,i,r){var a,s,o;cJ(t,i);let l=!1;if("primitive"===e.type&&n.object!==i.object||(null==(a=i.args)?void 0:a.length)!==(null==(s=n.args)?void 0:s.length)?l=!0:null!=(o=i.args)&&o.some((e,t)=>{var i;return e!==(null==(i=n.args)?void 0:i[t])})&&(l=!0),l)c3.push([e,{...i},r]);else{let t=function(e,t){let n={};for(let i in t)if(!cT.includes(i)&&!cv.equ(t[i],e.props[i]))for(let e in n[i]=t[i],t)e.startsWith(`${i}-`)&&(n[e]=t[e]);for(let i in e.props){if(cT.includes(i)||t.hasOwnProperty(i))continue;let{root:r,key:a}=cx(e.object,i);if(r.constructor&&0===r.constructor.length){let e=function(e){let t=cw.get(e.constructor);try{t||(t=new e.constructor,cw.set(e.constructor,t))}catch(e){}return t}(r);cv.und(e)||(n[a]=e[a])}else n[a]=0}return n}(e,i);Object.keys(t).length&&(Object.assign(e.props,t),cC(e.object,t))}(null===r.sibling||(4&r.flags)==0)&&function(){for(let[e]of c3){let t=e.parent;if(t)for(let n of(e.props.attach?cM(t,e):cI(e.object)&&cI(t.object)&&t.object.remove(e.object),e.children))n.props.attach?cM(e,n):cI(n.object)&&cI(e.object)&&e.object.remove(n.object);e.isHidden&&cK(e),e.object.__r3f&&delete e.object.__r3f,"primitive"!==e.type&&c1(e.object)}for(let[i,r,a]of c3){i.props=r;let s=i.parent;if(s){let r=cj[cq(i.type)],o=i.object;i.object=null!=(e=i.props.object)?e:new r(...null!=(t=i.props.args)?t:[]),i.object.__r3f=i;var e,t,n=i.object;for(let e of[a,a.alternate])if(null!==e)if("function"==typeof e.ref){null==e.refCleanup||e.refCleanup();let t=e.ref(n);"function"==typeof t&&(e.refCleanup=t)}else e.ref&&(e.ref.current=n);for(let e of(!function(e,t,n){let{internal:i}=e.getState();for(let e=0;e{if(e.eventObject===t||e.object===t){i.hovered.delete(r);let a={...e,eventObject:e.eventObject===t?n:e.eventObject,object:e.object===t?n:e.object};i.hovered.set(cL(a),a)}}),i.capturedMap.forEach(e=>{let i=e.get(t);i&&(e.delete(t),e.set(n,i))})}(co(i),o,i.object),cC(i.object,i.props),i.props.attach?cS(s,i):cI(i.object)&&cI(s.object)&&s.object.add(i.object),i.children))e.props.attach?cS(i,e):cI(e.object)&&cI(i.object)&&i.object.add(e.object);cR(i)}}c3.length=0}()},finalizeInitialChildren:()=>!1,commitMount(){},getPublicInstance:e=>null==e?void 0:e.object,prepareForCommit:()=>null,preparePortalMount:e=>cy(e.getState().scene,e,"",{}),resetAfterCommit:()=>{},shouldSetTextContent:()=>!1,clearContainer:()=>!1,hideInstance:function(e){if(!e.isHidden){var t;e.props.attach&&null!=(t=e.parent)&&t.object?cM(e.parent,e):cI(e.object)&&(e.object.visible=!1),e.isHidden=!0,cR(e)}},unhideInstance:cK,createTextInstance:c4,hideTextInstance:c4,unhideTextInstance:c4,scheduleTimeout:"function"==typeof setTimeout?setTimeout:void 0,cancelTimeout:"function"==typeof clearTimeout?clearTimeout:void 0,noTimeout:-1,getInstanceFromNode:()=>null,beforeActiveInstanceBlur(){},afterActiveInstanceBlur(){},detachDeletedInstance(){},prepareScopeUpdate(){},getInstanceFromScope:()=>null,shouldAttemptEagerTransition:()=>!1,trackSchedulerEvent:()=>{},resolveEventType:()=>null,resolveEventTimeStamp:()=>-1.1,requestPostPaintCallback(){},maySuspendCommit:()=>!1,preloadInstance:()=>!0,suspendInstance(){},waitForCommitToBeReady:()=>null,NotPendingTransition:null,HostTransitionContext:E.createContext(null),setCurrentUpdatePriority(e){c6=e},getCurrentUpdatePriority:()=>c6,resolveUpdatePriority(){var e;if(0!==c6)return c6;switch("u">typeof window&&(null==(e=window.event)?void 0:e.type)){case"click":case"contextmenu":case"dblclick":case"pointercancel":case"pointerdown":case"pointerup":return 2;case"pointermove":case"pointerout":case"pointerover":case"pointerenter":case"pointerleave":case"wheel":return 8;default:return 32}},resetFormInstance(){},rendererPackageName:"@react-three/fiber",rendererVersion:"9.6.1",applyViewTransitionName(e,t,n){},restoreViewTransitionName(e,t){},cancelViewTransitionName(e,t,n){},cancelRootViewTransitionName(e){},restoreRootViewTransitionName(e){},InstanceMeasurement:null,measureInstance:e=>null,wasInstanceInViewport:e=>!0,hasInstanceChanged:(e,t)=>!1,hasInstanceAffectedParent:(e,t)=>!1,suspendOnActiveViewTransition(e,t){},startGestureTransition:()=>null,startViewTransition:()=>null,stopViewTransition(e){},createViewTransitionInstance:e=>null,getCurrentGestureOffset(e){throw Error("startGestureTransition is not yet supported in react-three-fiber.")},cloneMutableInstance:(e,t)=>e,cloneMutableTextInstance:e=>e,cloneRootViewTransitionContainer(e){throw Error("Not implemented.")},removeRootViewTransitionClone(e,t){throw Error("Not implemented.")},createFragmentInstance:e=>null,updateFragmentInstanceFiber(e,t){},commitNewChildToFragmentInstance(e,t){},deleteChildFromFragmentInstance(e,t){},measureClonedInstance:e=>null,maySuspendCommitOnUpdate:(e,t,n)=>!1,maySuspendCommitInSyncRender:(e,t)=>!1,startSuspendingCommit:()=>null,getSuspendedCommitReason:(e,t)=>null},(_=cW(S)).injectIntoDevTools(),_),c9=new Map,c7={objects:"shallow",strict:!1};function he(e){var t,n;let i,r,a,s,o,l,u,c=c9.get(e),h=null==c?void 0:c.fiber,d=null==c?void 0:c.store;c&&console.warn("R3F.createRoot should only be called once!");let p="function"==typeof reportError?reportError:console.error,f=d||(t=hp,n=hf,o=(s=(a=u3((e,i)=>{let r,a=new eE,s=new eE,o=new eE;function l(e=i().camera,t=s,n=i().size){let{width:r,height:u,top:c,left:h}=n,d=r/u;t.isVector3?o.copy(t):o.set(...t);let p=e.getWorldPosition(a).distanceTo(o);if(e&&e.isOrthographicCamera)return{width:r/e.zoom,height:u/e.zoom,top:c,left:h,factor:1,distance:p,aspect:d};{let t=2*Math.tan(e.fov*Math.PI/180/2)*p,n=r/u*t;return{width:n,height:t,top:c,left:h,factor:r/n,distance:p,aspect:d}}}let u=t=>e(e=>({performance:{...e.performance,current:t}})),c=new Y;return{set:e,get:i,gl:null,camera:null,raycaster:null,events:{priority:1,enabled:!0,connected:!1},scene:null,xr:null,invalidate:(e=1)=>t(i(),e),advance:(e,t)=>n(e,t,i()),legacy:!1,linear:!1,flat:!1,controls:null,clock:new sw,pointer:c,mouse:c,frameloop:"always",onPointerMissed:void 0,performance:{current:1,min:.5,max:1,debounce:200,regress:()=>{let e=i();r&&clearTimeout(r),e.performance.current!==e.performance.min&&u(e.performance.min),r=setTimeout(()=>u(i().performance.max),e.performance.debounce)}},size:{width:0,height:0,top:0,left:0},viewport:{initialDpr:0,dpr:0,width:0,height:0,top:0,left:0,aspect:0,distance:0,factor:0,getCurrentViewport:l},setEvents:t=>e(e=>({...e,events:{...e.events,...t}})),setSize:(t,n,r=0,a=0)=>{let o=i().camera,u={width:t,height:n,top:r,left:a};e(e=>({size:u,viewport:{...e.viewport,...l(o,s,u)}}))},setDpr:t=>e(e=>{let n=cm(t);return{viewport:{...e.viewport,dpr:n,initialDpr:e.viewport.initialDpr||n}}}),setFrameloop:(t="always")=>{let n=i().clock;n.stop(),n.elapsedTime=0,"never"!==t&&(n.start(),n.elapsedTime=0),e(()=>({frameloop:t}))},previousRoot:void 0,internal:{interaction:[],hovered:new Map,subscribers:[],initialClick:[0,0],initialHits:[],capturedMap:new Map,lastEvent:E.createRef(),active:!1,frames:0,priority:0,subscribe:(e,t,n)=>{let r=i().internal;return r.priority=r.priority+ +(t>0),r.subscribers.push({ref:e,priority:t,store:n}),r.subscribers=r.subscribers.sort((e,t)=>e.priority-t.priority),()=>{let n=i().internal;null!=n&&n.subscribers&&(n.priority=n.priority-(t>0),n.subscribers=n.subscribers.filter(t=>t.ref!==e))}}}}})).getState()).size,l=s.viewport.dpr,u=s.camera,a.subscribe(()=>{let{camera:e,size:t,viewport:n,gl:i,set:r}=a.getState();if(t.width!==o.width||t.height!==o.height||n.dpr!==l){o=t,l=n.dpr,cP(e,t),n.dpr>0&&i.setPixelRatio(n.dpr);let r="u">typeof HTMLCanvasElement&&i.domElement instanceof HTMLCanvasElement;i.setSize(t.width,t.height,r)}e!==u&&(u=e,r(t=>({viewport:{...t.viewport,...t.viewport.getCurrentViewport(e)}})))}),a.subscribe(e=>t(e)),a),m=h||c8.createContainer(f,1,null,!1,null,"",p,p,p,null);c||c9.set(e,{fiber:m,store:f});let g=!1,v=null;return{async configure(t={}){var n,a;let s;v=new Promise(e=>s=e);let{gl:o,size:l,scene:u,events:c,onCreated:h,shadows:d=!1,linear:p=!1,flat:m=!1,legacy:_=!1,orthographic:y=!1,frameloop:x="always",dpr:b=[1,2],performance:S,raycaster:M,camera:T,onPointerMissed:w}=t,E=f.getState(),A=E.gl;if(!E.gl){let t={canvas:e,powerPreference:"high-performance",antialias:!0,alpha:!0},n="function"==typeof o?await o(t):o;A=cU(n)?n:new uK({...t,...o}),E.set({gl:A})}let C=E.raycaster;C||E.set({raycaster:C=new s3});let{params:R,...P}=M||{};if(cv.equ(P,C,c7)||cC(C,{...P}),cv.equ(R,C.params,c7)||cC(C,{params:{...C.params,...R}}),!E.camera||E.camera===r&&!cv.equ(r,T,c7)){r=T;let e=null==T?void 0:T.isCamera,t=e?T:y?new sn(0,0,0,0,.1,1e3):new nE(75,0,.1,1e3);!e&&(t.position.z=5,T&&(cC(t,T),!t.manual&&("aspect"in T||"left"in T||"right"in T||"bottom"in T||"top"in T)&&(t.manual=!0,t.updateProjectionMatrix())),E.camera||null!=T&&T.rotation||t.lookAt(0,0,0)),E.set({camera:t}),C.camera=t}if(!E.scene){let e;null!=u&&u.isScene?cy(e=u,f,"",{}):(cy(e=new nL,f,"",{}),u&&cC(e,u)),E.set({scene:e})}c&&!E.events.handlers&&E.set({events:c(f)});let N=function(e,t){if(!t&&"u">typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement&&e.parentElement){let{width:t,height:n,top:i,left:r}=e.parentElement.getBoundingClientRect();return{width:t,height:n,top:i,left:r}}return!t&&"u">typeof OffscreenCanvas&&e instanceof OffscreenCanvas?{width:e.width,height:e.height,top:0,left:0}:{width:0,height:0,top:0,left:0,...t}}(e,l);if(cv.equ(N,E.size,c7)||E.setSize(N.width,N.height,N.top,N.left),b&&E.viewport.dpr!==cm(b)&&E.setDpr(b),E.frameloop!==x&&E.setFrameloop(x),E.onPointerMissed||E.set({onPointerMissed:w}),S&&!cv.equ(S,E.performance,c7)&&E.set(e=>({performance:{...e.performance,...S}})),!E.xr){let e=(e,t)=>{let n=f.getState();"never"!==n.frameloop&&hf(e,!0,n,t)},t=()=>{let t=f.getState();t.gl.xr.enabled=t.gl.xr.isPresenting,t.gl.xr.setAnimationLoop(t.gl.xr.isPresenting?e:null),t.gl.xr.isPresenting||hp(t)},i={connect(){let e=f.getState().gl;e.xr.addEventListener("sessionstart",t),e.xr.addEventListener("sessionend",t)},disconnect(){let e=f.getState().gl;e.xr.removeEventListener("sessionstart",t),e.xr.removeEventListener("sessionend",t)}};"function"==typeof(null==(n=A.xr)?void 0:n.addEventListener)&&i.connect(),E.set({xr:i})}if(A.shadowMap){let e=A.shadowMap.enabled,t=A.shadowMap.type;A.shadowMap.enabled=!!d,cv.boo(d)?A.shadowMap.type=2:cv.str(d)?A.shadowMap.type=null!=(a=({basic:0,percentage:1,soft:2,variance:3})[d])?a:2:cv.obj(d)&&Object.assign(A.shadowMap,d),(e!==A.shadowMap.enabled||t!==A.shadowMap.type)&&(A.shadowMap.needsUpdate=!0)}return eu.enabled=!_,g||(A.outputColorSpace=p?L:I,A.toneMapping=4*!m),E.legacy!==_&&E.set(()=>({legacy:_})),E.linear!==p&&E.set(()=>({linear:p})),E.flat!==m&&E.set(()=>({flat:m})),!o||cv.fun(o)||cU(o)||cv.equ(o,A,c7)||cC(A,o),i=h,g=!0,s(),this},render(t){return g||v||this.configure(),v.then(()=>{c8.updateContainer((0,u9.jsx)(ht,{store:f,children:t,onCreated:i,rootElement:e}),m,null,()=>void 0)}),f},unmount(){hn(e)}}}function ht({store:e,children:t,onCreated:n,rootElement:i}){return cc(()=>{let t=e.getState();t.set(e=>({internal:{...e.internal,active:!0}})),n&&n(t),e.getState().events.connected||null==t.events.connect||t.events.connect(i)},[]),(0,u9.jsx)(cD.Provider,{value:e,children:t})}function hn(e,t){let n=c9.get(e),i=null==n?void 0:n.fiber;if(i){let r=null==n?void 0:n.store.getState();r&&(r.internal.active=!1),c8.updateContainer(null,i,null,()=>{r&&setTimeout(()=>{try{null==r.events.disconnect||r.events.disconnect(),null==(n=r.gl)||null==(i=n.renderLists)||null==i.dispose||i.dispose(),null==(a=r.gl)||null==a.forceContextLoss||a.forceContextLoss(),null!=(s=r.gl)&&s.xr&&r.xr.disconnect();var n,i,a,s,o=r.scene;for(let e in"Scene"!==o.type&&(null==o.dispose||o.dispose()),o){let t=o[e];(null==t?void 0:t.type)!=="Scene"&&(null==t||null==t.dispose||t.dispose())}c9.delete(e),t&&t(e)}catch(e){}},500)})}}function hi({state:e={},children:t,container:n}){let{events:i,size:r,...a}=e,s=cO(),[o]=E.useState(()=>new s3),[l]=E.useState(()=>new Y),u=ch((e,t)=>{let a;if(t.camera&&r){let n=t.camera;a=e.viewport.getCurrentViewport(n,new eE,r),n!==e.camera&&cP(n,r)}return{...e,...t,scene:n,raycaster:o,pointer:l,mouse:l,previousRoot:s,events:{...e.events,...t.events,...i},size:{...e.size,...r},viewport:{...e.viewport,...a},setEvents:e=>t.set(t=>({...t,events:{...t.events,...e}}))}}),c=E.useMemo(()=>{let e=u3((e,t)=>({...a,set:e,get:t})),t=t=>e.setState(e=>u.current(t,e));return t(s.getState()),s.subscribe(t),e},[s,n]);return(0,u9.jsx)(u9.Fragment,{children:c8.createPortal((0,u9.jsx)(cD.Provider,{value:c,children:t}),c,null)})}let hr=new Set,ha=new Set,hs=new Set;function ho(e,t){if(e.size)for(let{callback:n}of e.values())n(t)}function hl(e,t){switch(e){case"before":return ho(hr,t);case"after":return ho(ha,t);case"tail":return ho(hs,t)}}function hu(e,t,n){let i=t.clock.getDelta();"never"===t.frameloop&&"number"==typeof e&&(i=e-t.clock.elapsedTime,t.clock.oldTime=t.clock.elapsedTime,t.clock.elapsedTime=e),s=t.internal.subscribers;for(let e=0;e0)&&!(null!=(t=c.gl.xr)&&t.isPresenting)&&(l+=hu(e,c))}if(hh=!1,hl("after",e),0===l)return hl("tail",e),hc=!1,cancelAnimationFrame(u)}function hp(e,t=1){var n;if(!e)return c9.forEach(e=>hp(e.store.getState(),t));(null==(n=e.gl.xr)||!n.isPresenting)&&e.internal.active&&"never"!==e.frameloop&&(t>1?e.internal.frames=Math.min(60,e.internal.frames+t):hh?e.internal.frames=2:e.internal.frames=1,hc||(hc=!0,requestAnimationFrame(hd)))}function hf(e,t=!0,n,i){if(t&&hl("before",e),n)hu(e,n,i);else for(let t of c9.values())hu(e,t.store.getState());t&&hl("after",e)}let hm={onClick:["click",!1],onContextMenu:["contextmenu",!1],onDoubleClick:["dblclick",!1],onWheel:["wheel",!0],onPointerDown:["pointerdown",!0],onPointerUp:["pointerup",!0],onPointerLeave:["pointerleave",!0],onPointerMove:["pointermove",!0],onPointerCancel:["pointercancel",!0],onLostPointerCapture:["lostpointercapture",!0]};function hg(e){let{handlePointer:t}=function(e){function t(e){return e.filter(e=>["Move","Over","Enter","Out","Leave"].some(t=>{var n;return null==(n=e.__r3f)?void 0:n.handlers["onPointer"+t]}))}function n(t){let{internal:n}=e.getState();for(let e of n.hovered.values())if(!t.length||!t.find(t=>t.object===e.object&&t.index===e.index&&t.instanceId===e.instanceId)){let i=e.eventObject.__r3f;if(n.hovered.delete(cL(e)),null!=i&&i.eventCount){let n=i.handlers,r={...e,intersections:t};null==n.onPointerOut||n.onPointerOut(r),null==n.onPointerLeave||n.onPointerLeave(r)}}}function i(e,t){for(let n=0;nn([]);case"onLostPointerCapture":return t=>{let{internal:i}=e.getState();"pointerId"in t&&i.capturedMap.has(t.pointerId)&&requestAnimationFrame(()=>{i.capturedMap.has(t.pointerId)&&(i.capturedMap.delete(t.pointerId),n([]))})}}return function(a){let{onPointerMissed:s,internal:o}=e.getState();o.lastEvent.current=a;let l="onPointerMove"===r,u="onClick"===r||"onContextMenu"===r||"onDoubleClick"===r,c=function(t,n){let i=e.getState(),r=new Set,a=[],s=n?n(i.internal.interaction):i.internal.interaction;for(let e=0;e{let n=cg(e.object),i=cg(t.object);return n&&i&&i.events.priority-n.events.priority||e.distance-t.distance}).filter(e=>{let t=cL(e);return!r.has(t)&&(r.add(t),!0)});for(let e of(i.events.filter&&(o=i.events.filter(o,i)),o)){let t=e.object;for(;t;){var l;null!=(l=t.__r3f)&&l.eventCount&&a.push({...e,eventObject:t}),t=t.parent}}if("pointerId"in t&&i.internal.capturedMap.has(t.pointerId))for(let e of i.internal.capturedMap.get(t.pointerId).values())r.has(cL(e.intersection))||a.push(e.intersection);return a}(a,l?t:void 0),h=u?function(t){let{internal:n}=e.getState(),i=t.offsetX-n.initialClick[0],r=t.offsetY-n.initialClick[1];return Math.round(Math.sqrt(i*i+r*r))}(a):0;"onPointerDown"===r&&(o.initialClick=[a.offsetX,a.offsetY],o.initialHits=c.map(e=>e.eventObject)),u&&!c.length&&h<=2&&(i(a,o.interaction),s&&s(a)),l&&n(c),!function(e,t,i,r){if(e.length){let a={stopped:!1};for(let s of e){let o=cg(s.object);if(o||s.object.traverseAncestors(e=>{let t=cg(e);if(t)return o=t,!1}),o){let{raycaster:l,pointer:u,camera:c,internal:h}=o,d=new eE(u.x,u.y,0).unproject(c),p=e=>{var t,n;return null!=(t=null==(n=h.capturedMap.get(e))?void 0:n.has(s.eventObject))&&t},f=e=>{let n={intersection:s,target:t.target};h.capturedMap.has(e)?h.capturedMap.get(e).set(s.eventObject,n):h.capturedMap.set(e,new Map([[s.eventObject,n]])),t.target.setPointerCapture(e)},m=e=>{let t=h.capturedMap.get(e);t&&cN(h.capturedMap,s.eventObject,t,e)},g={};for(let e in t){let n=t[e];"function"!=typeof n&&(g[e]=n)}let v={...s,...g,pointer:u,intersections:e,stopped:a.stopped,delta:i,unprojectedPoint:d,ray:l.ray,camera:c,stopPropagation(){let i="pointerId"in t&&h.capturedMap.get(t.pointerId);(!i||i.has(s.eventObject))&&(v.stopped=a.stopped=!0,h.hovered.size&&Array.from(h.hovered.values()).find(e=>e.eventObject===s.eventObject)&&n([...e.slice(0,e.indexOf(s)),s]))},target:{hasPointerCapture:p,setPointerCapture:f,releasePointerCapture:m},currentTarget:{hasPointerCapture:p,setPointerCapture:f,releasePointerCapture:m},nativeEvent:t};if(r(v),!0===a.stopped)break}}}}(c,a,h,function(e){let t=e.eventObject,n=t.__r3f;if(!(null!=n&&n.eventCount))return;let s=n.handlers;if(l){if(s.onPointerOver||s.onPointerEnter||s.onPointerOut||s.onPointerLeave){let t=cL(e),n=o.hovered.get(t);n?n.stopped&&e.stopPropagation():(o.hovered.set(t,e),null==s.onPointerOver||s.onPointerOver(e),null==s.onPointerEnter||s.onPointerEnter(e))}null==s.onPointerMove||s.onPointerMove(e)}else{let n=s[r];n?(!u||o.initialHits.includes(t))&&(i(a,o.interaction.filter(e=>!o.initialHits.includes(e))),n(e)):u&&o.initialHits.includes(t)&&i(a,o.interaction.filter(e=>!o.initialHits.includes(e)))}})}}}}(e);return{priority:1,enabled:!0,compute(e,t,n){t.pointer.set(e.offsetX/t.size.width*2-1,-(2*(e.offsetY/t.size.height))+1),t.raycaster.setFromCamera(t.pointer,t.camera)},connected:void 0,handlers:Object.keys(hm).reduce((e,n)=>({...e,[n]:t(n)}),{}),update:()=>{var t;let{events:n,internal:i}=e.getState();null!=(t=i.lastEvent)&&t.current&&n.handlers&&n.handlers.onPointerMove(i.lastEvent.current)},connect:t=>{let{set:n,events:i}=e.getState();if(null==i.disconnect||i.disconnect(),n(e=>({events:{...e.events,connected:t}})),i.handlers)for(let e in i.handlers){let n=i.handlers[e],[r,a]=hm[e];t.addEventListener(r,n,{passive:a})}},disconnect:()=>{let{set:t,events:n}=e.getState();if(n.connected){if(n.handlers)for(let e in n.handlers){let t=n.handlers[e],[i]=hm[e];n.connected.removeEventListener(i,t)}t(e=>({events:{...e.events,connected:void 0}}))}}}}e.s(["B",0,cp,"C",0,cF,"D",0,cz,"E",0,cf,"G",0,cH,"a",0,ch,"b",0,cc,"c",0,he,"d",0,hn,"e",0,cZ,"f",0,hg,"i",0,cl,"o",0,function(e,t,n){return(0,u9.jsx)(hi,{children:e,container:t,state:n})},"s",0,cC,"u",0,cd],1950),e.i(8560),e.s(["ACESFilmicToneMapping",0,4,"AddEquation",0,100,"AddOperation",0,2,"AdditiveAnimationBlendMode",0,2501,"AdditiveBlending",0,2,"AgXToneMapping",0,6,"AlphaFormat",0,1021,"AlwaysCompare",0,519,"AlwaysDepth",0,1,"AlwaysStencilFunc",0,519,"AmbientLight",0,sa,"AnimationAction",0,sY,"AnimationClip",0,aB,"AnimationLoader",0,aq,"AnimationMixer",0,sJ,"AnimationObjectGroup",0,sq,"AnimationUtils",0,aE,"ArcCurve",0,rs,"ArrayCamera",0,sT,"ArrowHelper",0,oP,"AttachedBindMode",0,R,"Audio",0,sL,"AudioAnalyser",0,sz,"AudioContext",0,s_,"AudioListener",0,sI,"AudioLoader",0,sy,"AxesHelper",0,oI,"BackSide",0,1,"BasicDepthPacking",0,3200,"BasicShadowMap",0,0,"BatchedMesh",0,iz,"Bone",0,ie,"BooleanKeyframeTrack",0,aL,"Box2",0,oe,"Box3",0,eR,"Box3Helper",0,oA,"BoxGeometry",0,ng,"BoxHelper",0,oE,"BufferAttribute",0,tZ,"BufferGeometry",0,nn,"BufferGeometryLoader",0,sd,"ByteType",0,1010,"Cache",0,ak,"Camera",0,nS,"CameraHelper",0,oM,"CanvasTexture",0,rn,"CapsuleGeometry",0,rA,"CatmullRomCurve3",0,rd,"CineonToneMapping",0,3,"CircleGeometry",0,rC,"ClampToEdgeWrapping",0,1001,"Clock",0,sw,"Color",0,tz,"ColorKeyframeTrack",0,aN,"ColorManagement",0,eu,"CompressedArrayTexture",0,re,"CompressedCubeTexture",0,rt,"CompressedTexture",0,i7,"CompressedTextureLoader",0,aY,"ConeGeometry",0,rP,"ConstantAlphaFactor",0,213,"ConstantColorFactor",0,211,"Controls",0,oN,"CubeCamera",0,nA,"CubeReflectionMapping",0,301,"CubeRefractionMapping",0,302,"CubeTexture",0,nC,"CubeTextureLoader",0,aJ,"CubeUVReflectionMapping",0,306,"CubicBezierCurve",0,rg,"CubicBezierCurve3",0,rv,"CubicInterpolant",0,aC,"CullFaceBack",0,1,"CullFaceFront",0,2,"CullFaceFrontBack",0,3,"CullFaceNone",0,0,"Curve",0,rr,"CurvePath",0,rT,"CustomBlending",0,5,"CustomToneMapping",0,5,"CylinderGeometry",0,rR,"Cylindrical",0,s8,"Data3DTexture",0,eM,"DataArrayTexture",0,eb,"DataTexture",0,it,"DataTextureLoader",0,aK,"DataUtils",0,tX,"DecrementStencilOp",0,7683,"DecrementWrapStencilOp",0,34056,"DefaultLoadingManager",0,aV,"DepthFormat",0,1026,"DepthStencilFormat",0,1027,"DepthTexture",0,ri,"DetachedBindMode",0,P,"DirectionalLight",0,sr,"DirectionalLightHelper",0,ox,"DiscreteInterpolant",0,aP,"DodecahedronGeometry",0,rL,"DoubleSide",0,2,"DstAlphaFactor",0,206,"DstColorFactor",0,208,"DynamicCopyUsage",0,35050,"DynamicDrawUsage",0,35048,"DynamicReadUsage",0,35049,"EdgesGeometry",0,rF,"EllipseCurve",0,ra,"EqualCompare",0,514,"EqualDepth",0,4,"EqualStencilFunc",0,514,"EquirectangularReflectionMapping",0,303,"EquirectangularRefractionMapping",0,304,"Euler",0,tn,"EventDispatcher",0,O,"ExtrudeGeometry",0,r4,"FileLoader",0,aX,"Float16BufferAttribute",0,t3,"Float32BufferAttribute",0,t4,"FloatType",0,1015,"Fog",0,nI,"FogExp2",0,nP,"FramebufferTexture",0,i9,"FrontSide",0,0,"Frustum",0,iS,"GLBufferAttribute",0,s1,"GLSL1",0,"100","GLSL3",0,D,"GreaterCompare",0,516,"GreaterDepth",0,6,"GreaterEqualCompare",0,518,"GreaterEqualDepth",0,5,"GreaterEqualStencilFunc",0,518,"GreaterStencilFunc",0,516,"GridHelper",0,om,"Group",0,i6,"HalfFloatType",0,1016,"HemisphereLight",0,a0,"HemisphereLightHelper",0,of,"IcosahedronGeometry",0,r6,"ImageBitmapLoader",0,sv,"ImageLoader",0,aZ,"ImageUtils",0,ed,"IncrementStencilOp",0,7682,"IncrementWrapStencilOp",0,34055,"InstancedBufferAttribute",0,is,"InstancedBufferGeometry",0,sh,"InstancedInterleavedBuffer",0,s0,"InstancedMesh",0,im,"Int16BufferAttribute",0,tQ,"Int32BufferAttribute",0,t1,"Int8BufferAttribute",0,tJ,"IntType",0,1013,"InterleavedBuffer",0,nN,"InterleavedBufferAttribute",0,nD,"Interpolant",0,aA,"InterpolateDiscrete",0,2300,"InterpolateLinear",0,2301,"InterpolateSmooth",0,2302,"InvertStencilOp",0,5386,"KeepStencilOp",0,7680,"KeyframeTrack",0,aI,"LOD",0,nQ,"LatheGeometry",0,rE,"Layers",0,ti,"LessCompare",0,513,"LessDepth",0,2,"LessEqualCompare",0,515,"LessEqualDepth",0,3,"LessEqualStencilFunc",0,515,"LessStencilFunc",0,513,"Light",0,aQ,"LightProbe",0,sl,"Line",0,iq,"Line3",0,oi,"LineBasicMaterial",0,iB,"LineCurve",0,r_,"LineCurve3",0,ry,"LineDashedMaterial",0,ax,"LineLoop",0,i$,"LineSegments",0,iK,"LinearFilter",0,1006,"LinearInterpolant",0,aR,"LinearMipMapLinearFilter",0,1008,"LinearMipMapNearestFilter",0,1007,"LinearMipmapLinearFilter",0,1008,"LinearMipmapNearestFilter",0,1007,"LinearSRGBColorSpace",0,L,"LinearToneMapping",0,1,"LinearTransfer",0,N,"Loader",0,aG,"LoaderUtils",0,sc,"LoadingManager",0,aH,"LoopOnce",0,2200,"LoopPingPong",0,2202,"LoopRepeat",0,2201,"LuminanceAlphaFormat",0,1025,"LuminanceFormat",0,1024,"MOUSE",0,A,"Material",0,tH,"MaterialLoader",0,su,"MathUtils",0,q,"Matrix2",0,s9,"Matrix3",0,Z,"Matrix4",0,e2,"MaxEquation",0,104,"Mesh",0,nf,"MeshBasicMaterial",0,tV,"MeshDepthMaterial",0,av,"MeshDistanceMaterial",0,a_,"MeshLambertMaterial",0,ag,"MeshMatcapMaterial",0,ay,"MeshNormalMaterial",0,am,"MeshPhongMaterial",0,ap,"MeshPhysicalMaterial",0,ad,"MeshStandardMaterial",0,ah,"MeshToonMaterial",0,af,"MinEquation",0,103,"MirroredRepeatWrapping",0,1002,"MixOperation",0,1,"MultiplyBlending",0,4,"MultiplyOperation",0,0,"NearestFilter",0,1003,"NearestMipMapLinearFilter",0,1005,"NearestMipMapNearestFilter",0,1004,"NearestMipmapLinearFilter",0,1005,"NearestMipmapNearestFilter",0,1004,"NeutralToneMapping",0,7,"NeverCompare",0,512,"NeverDepth",0,0,"NeverStencilFunc",0,512,"NoBlending",0,0,"NoColorSpace",0,"","NoToneMapping",0,0,"NormalAnimationBlendMode",0,2500,"NormalBlending",0,1,"NotEqualCompare",0,517,"NotEqualDepth",0,7,"NotEqualStencilFunc",0,517,"NumberKeyframeTrack",0,aU,"Object3D",0,ty,"ObjectLoader",0,sp,"ObjectSpaceNormalMap",0,1,"OctahedronGeometry",0,r8,"OneFactor",0,201,"OneMinusConstantAlphaFactor",0,214,"OneMinusConstantColorFactor",0,212,"OneMinusDstAlphaFactor",0,207,"OneMinusDstColorFactor",0,209,"OneMinusSrcAlphaFactor",0,205,"OneMinusSrcColorFactor",0,203,"OrthographicCamera",0,sn,"PCFShadowMap",0,1,"PCFSoftShadowMap",0,2,"PMREMGenerator",0,o8,"Path",0,rw,"PerspectiveCamera",0,nE,"Plane",0,iy,"PlaneGeometry",0,r9,"PlaneHelper",0,oC,"PointLight",0,st,"PointLightHelper",0,oc,"Points",0,i4,"PointsMaterial",0,iQ,"PolarGridHelper",0,og,"PolyhedronGeometry",0,rI,"PositionalAudio",0,sF,"PropertyBinding",0,sX,"PropertyMixer",0,sB,"QuadraticBezierCurve",0,rx,"QuadraticBezierCurve3",0,rb,"Quaternion",0,ew,"QuaternionKeyframeTrack",0,aO,"QuaternionLinearInterpolant",0,aD,"RED_GREEN_RGTC2_Format",0,36285,"RED_RGTC1_Format",0,36283,"REVISION",0,"171","RGBADepthPacking",0,3201,"RGBAFormat",0,1023,"RGBAIntegerFormat",0,1033,"RGBA_ASTC_10x10_Format",0,37819,"RGBA_ASTC_10x5_Format",0,37816,"RGBA_ASTC_10x6_Format",0,37817,"RGBA_ASTC_10x8_Format",0,37818,"RGBA_ASTC_12x10_Format",0,37820,"RGBA_ASTC_12x12_Format",0,37821,"RGBA_ASTC_4x4_Format",0,37808,"RGBA_ASTC_5x4_Format",0,37809,"RGBA_ASTC_5x5_Format",0,37810,"RGBA_ASTC_6x5_Format",0,37811,"RGBA_ASTC_6x6_Format",0,37812,"RGBA_ASTC_8x5_Format",0,37813,"RGBA_ASTC_8x6_Format",0,37814,"RGBA_ASTC_8x8_Format",0,37815,"RGBA_BPTC_Format",0,36492,"RGBA_ETC2_EAC_Format",0,37496,"RGBA_PVRTC_2BPPV1_Format",0,35843,"RGBA_PVRTC_4BPPV1_Format",0,35842,"RGBA_S3TC_DXT1_Format",0,33777,"RGBA_S3TC_DXT3_Format",0,33778,"RGBA_S3TC_DXT5_Format",0,33779,"RGBDepthPacking",0,3202,"RGBFormat",0,1022,"RGBIntegerFormat",0,1032,"RGB_BPTC_SIGNED_Format",0,36494,"RGB_BPTC_UNSIGNED_Format",0,36495,"RGB_ETC1_Format",0,36196,"RGB_ETC2_Format",0,37492,"RGB_PVRTC_2BPPV1_Format",0,35841,"RGB_PVRTC_4BPPV1_Format",0,35840,"RGB_S3TC_DXT1_Format",0,33776,"RGDepthPacking",0,3203,"RGFormat",0,1030,"RGIntegerFormat",0,1031,"RawShaderMaterial",0,ac,"Ray",0,e1,"Raycaster",0,s3,"RectAreaLight",0,ss,"RedFormat",0,1028,"RedIntegerFormat",0,1029,"ReinhardToneMapping",0,2,"RenderTarget",0,ey,"RepeatWrapping",0,1e3,"ReplaceStencilOp",0,7681,"ReverseSubtractEquation",0,102,"RingGeometry",0,r7,"SIGNED_RED_GREEN_RGTC2_Format",0,36286,"SIGNED_RED_RGTC1_Format",0,36284,"SRGBColorSpace",0,I,"SRGBTransfer",0,U,"Scene",0,nL,"ShaderChunk",0,oB,"ShaderLib",0,oH,"ShaderMaterial",0,nb,"ShadowMaterial",0,au,"Shape",0,rz,"ShapeGeometry",0,ae,"ShapePath",0,oL,"ShapeUtils",0,r1,"ShortType",0,1011,"Skeleton",0,ia,"SkeletonHelper",0,ou,"SkinnedMesh",0,n7,"Source",0,ef,"Sphere",0,eq,"SphereGeometry",0,at,"Spherical",0,s6,"SphericalHarmonics3",0,so,"SplineCurve",0,rS,"SpotLight",0,a6,"SpotLightHelper",0,oa,"Sprite",0,nZ,"SpriteMaterial",0,nO,"SrcAlphaFactor",0,204,"SrcAlphaSaturateFactor",0,210,"SrcColorFactor",0,202,"StaticCopyUsage",0,35046,"StaticDrawUsage",0,35044,"StaticReadUsage",0,35045,"StereoCamera",0,sM,"StreamCopyUsage",0,35042,"StreamDrawUsage",0,35040,"StreamReadUsage",0,35041,"StringKeyframeTrack",0,aF,"SubtractEquation",0,101,"SubtractiveBlending",0,3,"TOUCH",0,C,"TangentSpaceNormalMap",0,0,"TetrahedronGeometry",0,an,"Texture",0,ev,"TextureLoader",0,a$,"TextureUtils",0,oD,"TorusGeometry",0,ai,"TorusKnotGeometry",0,ar,"Triangle",0,tN,"TriangleFanDrawMode",0,2,"TriangleStripDrawMode",0,1,"TrianglesDrawMode",0,0,"TubeGeometry",0,aa,"UVMapping",0,300,"Uint16BufferAttribute",0,t0,"Uint32BufferAttribute",0,t2,"Uint8BufferAttribute",0,tK,"Uint8ClampedBufferAttribute",0,t$,"Uniform",0,sK,"UniformsGroup",0,sQ,"UniformsLib",0,ok,"UniformsUtils",0,nx,"UnsignedByteType",0,1009,"UnsignedInt248Type",0,1020,"UnsignedInt5999Type",0,35902,"UnsignedIntType",0,1014,"UnsignedShort4444Type",0,1017,"UnsignedShort5551Type",0,1018,"UnsignedShortType",0,1012,"VSMShadowMap",0,3,"Vector2",0,Y,"Vector3",0,eE,"Vector4",0,e_,"VectorKeyframeTrack",0,az,"VideoTexture",0,i8,"WebGL3DRenderTarget",0,eT,"WebGLArrayRenderTarget",0,eS,"WebGLCoordinateSystem",0,2e3,"WebGLCubeRenderTarget",0,nR,"WebGLMultipleRenderTargets",0,oO,"WebGLRenderTarget",0,ex,"WebGLRenderer",0,uK,"WebGLUtils",0,uk,"WebGPUCoordinateSystem",0,2001,"WireframeGeometry",0,as,"WrapAroundEnding",0,2402,"ZeroCurvatureEnding",0,2400,"ZeroFactor",0,200,"ZeroSlopeEnding",0,2401,"ZeroStencilOp",0,0,"createCanvasElement",0,et],32009);var hv=e.i(32009);function h_(e,t){let n;return(...i)=>{window.clearTimeout(n),n=window.setTimeout(()=>e(...i),t)}}let hy=["x","y","top","bottom","left","right","width","height"];function hx({ref:e,children:t,fallback:n,resize:i,style:r,gl:a,events:s=hg,eventSource:o,eventPrefix:l,shadows:u,linear:c,flat:h,legacy:d,orthographic:p,frameloop:f,dpr:m,performance:g,raycaster:v,camera:_,scene:y,onPointerMissed:x,onCreated:b,...S}){E.useMemo(()=>cZ(hv),[]);let M=cd(),[T,w]=function({debounce:e,scroll:t,polyfill:n,offsetSize:i}={debounce:0,scroll:!1,offsetSize:!1}){var r,a,s;let o=n||("u"(p.current=!0,()=>void(p.current=!1)));let[f,m,g]=(0,E.useMemo)(()=>{let e=()=>{let e,t;if(!c.current.element)return;let{left:n,top:r,width:a,height:s,bottom:o,right:l,x:h,y:d}=c.current.element.getBoundingClientRect(),f={left:n,top:r,width:a,height:s,bottom:o,right:l,x:h,y:d};c.current.element instanceof HTMLElement&&i&&(f.height=c.current.element.offsetHeight,f.width=c.current.element.offsetWidth),Object.freeze(f),p.current&&(e=c.current.lastBounds,t=f,!hy.every(n=>e[n]===t[n]))&&u(c.current.lastBounds=f)};return[e,d?h_(e,d):e,h?h_(e,h):e]},[u,i,h,d]);function v(){c.current.scrollContainers&&(c.current.scrollContainers.forEach(e=>e.removeEventListener("scroll",g,!0)),c.current.scrollContainers=null),c.current.resizeObserver&&(c.current.resizeObserver.disconnect(),c.current.resizeObserver=null),c.current.orientationHandler&&("orientation"in screen&&"removeEventListener"in screen.orientation?screen.orientation.removeEventListener("change",c.current.orientationHandler):"onorientationchange"in window&&window.removeEventListener("orientationchange",c.current.orientationHandler))}function _(){c.current.element&&(c.current.resizeObserver=new o(g),c.current.resizeObserver.observe(c.current.element),t&&c.current.scrollContainers&&c.current.scrollContainers.forEach(e=>e.addEventListener("scroll",g,{capture:!0,passive:!0})),c.current.orientationHandler=()=>{g()},"orientation"in screen&&"addEventListener"in screen.orientation?screen.orientation.addEventListener("change",c.current.orientationHandler):"onorientationchange"in window&&window.addEventListener("orientationchange",c.current.orientationHandler))}return r=g,a=!!t,(0,E.useEffect)(()=>{if(a)return window.addEventListener("scroll",r,{capture:!0,passive:!0}),()=>void window.removeEventListener("scroll",r,!0)},[r,a]),s=m,(0,E.useEffect)(()=>(window.addEventListener("resize",s),()=>void window.removeEventListener("resize",s)),[s]),(0,E.useEffect)(()=>{v(),_()},[t,g,m]),(0,E.useEffect)(()=>v,[]),[e=>{e&&e!==c.current.element&&(v(),c.current.element=e,c.current.scrollContainers=function e(t){let n=[];if(!t||t===document.body)return n;let{overflow:i,overflowX:r,overflowY:a}=window.getComputedStyle(t);return[i,r,a].some(e=>"auto"===e||"scroll"===e)&&n.push(t),[...n,...e(t.parentElement)]}(e),_())},l,f]}({scroll:!0,debounce:{scroll:50,resize:0},...i}),A=E.useRef(null),C=E.useRef(null);E.useImperativeHandle(e,()=>A.current);let R=ch(x),[P,I]=E.useState(!1),[L,N]=E.useState(!1);if(P)throw P;if(L)throw L;let U=E.useRef(null);cc(()=>{let e=A.current;w.width>0&&w.height>0&&e&&(U.current||(U.current=he(e)),async function(){await U.current.configure({gl:a,scene:y,events:s,shadows:u,linear:c,flat:h,legacy:d,orthographic:p,frameloop:f,dpr:m,performance:g,raycaster:v,camera:_,size:w,onPointerMissed:(...e)=>null==R.current?void 0:R.current(...e),onCreated:e=>{null==e.events.connect||e.events.connect(o?cl(o)?o.current:o:C.current),l&&e.setEvents({compute:(e,t)=>{let n=e[l+"X"],i=e[l+"Y"];t.pointer.set(n/t.size.width*2-1,-(2*(i/t.size.height))+1),t.raycaster.setFromCamera(t.pointer,t.camera)}}),null==b||b(e)}}),U.current.render((0,u9.jsx)(M,{children:(0,u9.jsx)(cf,{set:N,children:(0,u9.jsx)(E.Suspense,{fallback:(0,u9.jsx)(cp,{set:I}),children:null!=t?t:null})})}))}())}),E.useEffect(()=>{let e=A.current;if(e)return()=>hn(e)},[]);let D=o?"none":"auto";return(0,u9.jsx)("div",{ref:C,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden",pointerEvents:D,...r},...S,children:(0,u9.jsx)("div",{ref:T,style:{width:"100%",height:"100%"},children:(0,u9.jsx)("canvas",{ref:A,style:{display:"block"},children:n})})})}e.s(["Canvas",0,function(e){return(0,u9.jsx)(ci,{children:(0,u9.jsx)(hx,{...e})})}],75056),e.s(["useFrame",0,cz],25234),e.s(["useThree",0,cF],28600)},67335,e=>{"use strict";var t=e.i(1950);e.s(["extend",()=>t.e])},44208,e=>{"use strict";var t=e.i(1950);e.s(["createPortal",()=>t.o])},60602,e=>{"use strict";var t=e.i(1950);e.s(["useLoader",()=>t.G])},24205,e=>{"use strict";var t=e.i(1950);e.s(["applyProps",()=>t.s])}]); \ No newline at end of file diff --git a/build/_next/static/chunks/06n0m6ck5r8gy.js b/build/_next/static/chunks/06n0m6ck5r8gy.js new file mode 100644 index 0000000..a71123e --- /dev/null +++ b/build/_next/static/chunks/06n0m6ck5r8gy.js @@ -0,0 +1 @@ +(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,94909,(t,e,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var s={default:function(){return c},getImageProps:function(){return a}};for(var o in s)Object.defineProperty(i,o,{enumerable:!0,get:s[o]});let r=t.r(55682),n=t.r(8927),l=t.r(5500),h=r._(t.r(1948));function a(t){let{props:e}=(0,n.getImgProps)(t,{defaultLoader:h.default,imgConf:{deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!0}});for(let[t,i]of Object.entries(e))void 0===i&&delete e[t];return{props:e}}let c=l.Image},57688,(t,e,i)=>{e.exports=t.r(94909)},92599,t=>{"use strict";var e="1.3.23";function i(t,e,i){return Math.max(t,Math.min(e,i))}var s=class{isRunning=!1;value=0;from=0;to=0;currentTime=0;lerp;duration;easing;onUpdate;advance(t){if(!this.isRunning)return;let e=!1;if(this.duration&&this.easing){this.currentTime+=t;let s=i(0,this.currentTime/this.duration,1),o=(e=s>=1)?1:this.easing(s);this.value=this.from+(this.to-this.from)*o}else if(this.lerp){var s,o,r,n;this.value=(s=this.value,o=this.to,r=60*this.lerp,(1-(n=1-Math.exp(-r*t)))*s+n*o),Math.round(this.value)===Math.round(this.to)&&(this.value=this.to,e=!0)}else this.value=this.to,e=!0;e&&this.stop(),this.onUpdate?.(this.value,e)}stop(){this.isRunning=!1}fromTo(t,e,{lerp:i,duration:s,easing:o,onStart:r,onUpdate:n}){this.from=this.value=t,this.to=e,this.lerp=i,this.duration=s,this.easing=o,this.currentTime=0,this.isRunning=!0,r?.(),this.onUpdate=n}},o=class{width=0;height=0;scrollHeight=0;scrollWidth=0;debouncedResize;wrapperResizeObserver;contentResizeObserver;constructor(t,e,{autoResize:i=!0,debounce:s=250}={}){this.wrapper=t,this.content=e,i&&(this.debouncedResize=function(t,e){let i;return function(...s){clearTimeout(i),i=setTimeout(()=>{i=void 0,t.apply(this,s)},e)}}(this.resize,s),this.wrapper instanceof Window?window.addEventListener("resize",this.debouncedResize):(this.wrapperResizeObserver=new ResizeObserver(this.debouncedResize),this.wrapperResizeObserver.observe(this.wrapper)),this.contentResizeObserver=new ResizeObserver(this.debouncedResize),this.contentResizeObserver.observe(this.content)),this.resize()}destroy(){this.wrapperResizeObserver?.disconnect(),this.contentResizeObserver?.disconnect(),this.wrapper===window&&this.debouncedResize&&window.removeEventListener("resize",this.debouncedResize)}resize=()=>{this.onWrapperResize(),this.onContentResize()};onWrapperResize=()=>{this.wrapper instanceof Window?(this.width=window.innerWidth,this.height=window.innerHeight):(this.width=this.wrapper.clientWidth,this.height=this.wrapper.clientHeight)};onContentResize=()=>{this.wrapper instanceof Window?(this.scrollHeight=this.content.scrollHeight,this.scrollWidth=this.content.scrollWidth):(this.scrollHeight=this.wrapper.scrollHeight,this.scrollWidth=this.wrapper.scrollWidth)};get limit(){return{x:this.scrollWidth-this.width,y:this.scrollHeight-this.height}}},r=class{events={};emit(t,...e){let i=this.events[t]||[];for(let t=0,s=i.length;t{this.events[t]=this.events[t]?.filter(t=>e!==t)}}off(t,e){this.events[t]=this.events[t]?.filter(t=>e!==t)}destroy(){this.events={}}};let n=100/6,l={passive:!1};function h(t,e){return 1===t?n:2===t?e:1}var a=class{touchStart={x:0,y:0};lastDelta={x:0,y:0};window={width:0,height:0};emitter=new r;constructor(t,e={wheelMultiplier:1,touchMultiplier:1}){this.element=t,this.options=e,window.addEventListener("resize",this.onWindowResize),this.onWindowResize(),this.element.addEventListener("wheel",this.onWheel,l),this.element.addEventListener("touchstart",this.onTouchStart,l),this.element.addEventListener("touchmove",this.onTouchMove,l),this.element.addEventListener("touchend",this.onTouchEnd,l)}on(t,e){return this.emitter.on(t,e)}destroy(){this.emitter.destroy(),window.removeEventListener("resize",this.onWindowResize),this.element.removeEventListener("wheel",this.onWheel,l),this.element.removeEventListener("touchstart",this.onTouchStart,l),this.element.removeEventListener("touchmove",this.onTouchMove,l),this.element.removeEventListener("touchend",this.onTouchEnd,l)}onTouchStart=t=>{let{clientX:e,clientY:i}=t.targetTouches?t.targetTouches[0]:t;this.touchStart.x=e,this.touchStart.y=i,this.lastDelta={x:0,y:0},this.emitter.emit("scroll",{deltaX:0,deltaY:0,event:t})};onTouchMove=t=>{let{clientX:e,clientY:i}=t.targetTouches?t.targetTouches[0]:t,s=-(e-this.touchStart.x)*this.options.touchMultiplier,o=-(i-this.touchStart.y)*this.options.touchMultiplier;this.touchStart.x=e,this.touchStart.y=i,this.lastDelta={x:s,y:o},this.emitter.emit("scroll",{deltaX:s,deltaY:o,event:t})};onTouchEnd=t=>{this.emitter.emit("scroll",{deltaX:this.lastDelta.x,deltaY:this.lastDelta.y,event:t})};onWheel=t=>{let{deltaX:e,deltaY:i,deltaMode:s}=t,o=h(s,this.window.width),r=h(s,this.window.height);e*=o,i*=r,e*=this.options.wheelMultiplier,i*=this.options.wheelMultiplier,this.emitter.emit("scroll",{deltaX:e,deltaY:i,event:t})};onWindowResize=()=>{this.window={width:window.innerWidth,height:window.innerHeight}}};let c=t=>Math.min(1,1.001-2**(-10*t));var p=class{_isScrolling=!1;_isStopped=!1;_isLocked=!1;_preventNextNativeScrollEvent=!1;_resetVelocityTimeout=null;_rafId=null;isTouching;time=0;userData={};lastVelocity=0;velocity=0;direction=0;options;targetScroll;animatedScroll;animate=new s;emitter=new r;dimensions;virtualScroll;constructor({wrapper:t=window,content:i=document.documentElement,eventsTarget:s=t,smoothWheel:r=!0,syncTouch:n=!1,syncTouchLerp:l=.075,touchInertiaExponent:h=1.7,duration:p,easing:d,lerp:u=.1,infinite:m=!1,orientation:v="vertical",gestureOrientation:f="horizontal"===v?"both":"vertical",touchMultiplier:g=1,wheelMultiplier:w=1,autoResize:S=!0,prevent:y,virtualScroll:E,overscroll:b=!0,autoRaf:T=!1,anchors:z=!1,autoToggle:L=!1,allowNestedScroll:N=!1,__experimental__naiveDimensions:R=!1,naiveDimensions:O=R,stopInertiaOnNavigate:_=!1}={}){window.lenisVersion=e,window.lenis||(window.lenis={}),window.lenis.version=e,"horizontal"===v&&(window.lenis.horizontal=!0),!0===n&&(window.lenis.touch=!0),t&&t!==document.documentElement||(t=window),"number"==typeof p&&"function"!=typeof d?d=c:"function"==typeof d&&"number"!=typeof p&&(p=1),this.options={wrapper:t,content:i,eventsTarget:s,smoothWheel:r,syncTouch:n,syncTouchLerp:l,touchInertiaExponent:h,duration:p,easing:d,lerp:u,infinite:m,gestureOrientation:f,orientation:v,touchMultiplier:g,wheelMultiplier:w,autoResize:S,prevent:y,virtualScroll:E,overscroll:b,autoRaf:T,anchors:z,autoToggle:L,allowNestedScroll:N,naiveDimensions:O,stopInertiaOnNavigate:_},this.dimensions=new o(t,i,{autoResize:S}),this.updateClassName(),this.targetScroll=this.animatedScroll=this.actualScroll,this.options.wrapper.addEventListener("scroll",this.onNativeScroll),this.options.wrapper.addEventListener("scrollend",this.onScrollEnd,{capture:!0}),(this.options.anchors||this.options.stopInertiaOnNavigate)&&this.options.wrapper.addEventListener("click",this.onClick),this.options.wrapper.addEventListener("pointerdown",this.onPointerDown),this.virtualScroll=new a(s,{touchMultiplier:g,wheelMultiplier:w}),this.virtualScroll.on("scroll",this.onVirtualScroll),this.options.autoToggle&&(this.checkOverflow(),this.rootElement.addEventListener("transitionend",this.onTransitionEnd)),this.options.autoRaf&&(this._rafId=requestAnimationFrame(this.raf))}destroy(){this.emitter.destroy(),this.options.wrapper.removeEventListener("scroll",this.onNativeScroll),this.options.wrapper.removeEventListener("scrollend",this.onScrollEnd,{capture:!0}),this.options.wrapper.removeEventListener("pointerdown",this.onPointerDown),(this.options.anchors||this.options.stopInertiaOnNavigate)&&this.options.wrapper.removeEventListener("click",this.onClick),this.virtualScroll.destroy(),this.dimensions.destroy(),this.cleanUpClassName(),this._rafId&&cancelAnimationFrame(this._rafId)}on(t,e){return this.emitter.on(t,e)}off(t,e){return this.emitter.off(t,e)}onScrollEnd=t=>{t instanceof CustomEvent||"smooth"!==this.isScrolling&&!1!==this.isScrolling||t.stopPropagation()};dispatchScrollendEvent=()=>{this.options.wrapper.dispatchEvent(new CustomEvent("scrollend",{bubbles:this.options.wrapper===window,detail:{lenisScrollEnd:!0}}))};get overflow(){let t=this.isHorizontal?"overflow-x":"overflow-y";return getComputedStyle(this.rootElement)[t]}checkOverflow(){["hidden","clip"].includes(this.overflow)?this.internalStop():this.internalStart()}onTransitionEnd=t=>{t.propertyName?.includes("overflow")&&t.target===this.rootElement&&this.checkOverflow()};setScroll(t){this.isHorizontal?this.options.wrapper.scrollTo({left:t,behavior:"instant"}):this.options.wrapper.scrollTo({top:t,behavior:"instant"})}onClick=t=>{let e=t.composedPath().filter(t=>t instanceof HTMLAnchorElement&&t.href).map(t=>new URL(t.href)),i=new URL(window.location.href);if(this.options.anchors){let t=e.find(t=>i.host===t.host&&i.pathname===t.pathname&&t.hash);if(t){let e="object"==typeof this.options.anchors&&this.options.anchors?this.options.anchors:void 0,i=`#${t.hash.split("#")[1]}`;this.scrollTo(i,e);return}}if(this.options.stopInertiaOnNavigate&&e.some(t=>i.host===t.host&&i.pathname!==t.pathname))return void this.reset()};onPointerDown=t=>{1===t.button&&this.reset()};onVirtualScroll=t=>{if("function"==typeof this.options.virtualScroll&&!1===this.options.virtualScroll(t))return;let{deltaX:e,deltaY:i,event:s}=t;if(this.emitter.emit("virtual-scroll",{deltaX:e,deltaY:i,event:s}),s.ctrlKey||s.lenisStopPropagation)return;let o=s.type.includes("touch"),r=s.type.includes("wheel");this.isTouching="touchstart"===s.type||"touchmove"===s.type;let n=0===e&&0===i;if(this.options.syncTouch&&o&&"touchstart"===s.type&&n&&!this.isStopped&&!this.isLocked)return void this.reset();let l="vertical"===this.options.gestureOrientation&&0===i||"horizontal"===this.options.gestureOrientation&&0===e;if(n||l)return;let h=s.composedPath();h=h.slice(0,h.indexOf(this.rootElement));let a=this.options.prevent,c=Math.abs(e)>=Math.abs(i)?"horizontal":"vertical";if(h.find(t=>t instanceof HTMLElement&&("function"==typeof a&&a?.(t)||t.hasAttribute?.("data-lenis-prevent")||"vertical"===c&&t.hasAttribute?.("data-lenis-prevent-vertical")||"horizontal"===c&&t.hasAttribute?.("data-lenis-prevent-horizontal")||o&&t.hasAttribute?.("data-lenis-prevent-touch")||r&&t.hasAttribute?.("data-lenis-prevent-wheel")||this.options.allowNestedScroll&&this.hasNestedScroll(t,{deltaX:e,deltaY:i}))))return;if(this.isStopped||this.isLocked){s.cancelable&&s.preventDefault();return}if(!(this.options.syncTouch&&o||this.options.smoothWheel&&r)){this.isScrolling="native",this.animate.stop(),s.lenisStopPropagation=!0;return}let p=i;"both"===this.options.gestureOrientation?p=Math.abs(i)>Math.abs(e)?i:e:"horizontal"===this.options.gestureOrientation&&(p=e),(!this.options.overscroll||this.options.infinite||this.options.wrapper!==window&&this.limit>0&&(this.animatedScroll>0&&this.animatedScroll0||this.animatedScroll===this.limit&&i<0))&&(s.lenisStopPropagation=!0),s.cancelable&&s.preventDefault();let d=o&&this.options.syncTouch,u=o&&"touchend"===s.type;u&&(p=Math.sign(p)*Math.abs(this.velocity)**this.options.touchInertiaExponent),this.scrollTo(this.targetScroll+p,{programmatic:!1,...d?{lerp:u?this.options.syncTouchLerp:1}:{lerp:this.options.lerp,duration:this.options.duration,easing:this.options.easing}})};resize(){this.dimensions.resize(),this.animatedScroll=this.targetScroll=this.actualScroll,this.emit()}emit(){this.emitter.emit("scroll",this)}onNativeScroll=()=>{if(null!==this._resetVelocityTimeout&&(clearTimeout(this._resetVelocityTimeout),this._resetVelocityTimeout=null),this._preventNextNativeScrollEvent){this._preventNextNativeScrollEvent=!1;return}if(!1===this.isScrolling||"native"===this.isScrolling){let t=this.animatedScroll;this.animatedScroll=this.targetScroll=this.actualScroll,this.lastVelocity=this.velocity,this.velocity=this.animatedScroll-t,this.direction=Math.sign(this.animatedScroll-t),this.isStopped||(this.isScrolling="native"),this.emit(),0!==this.velocity&&(this._resetVelocityTimeout=setTimeout(()=>{this.lastVelocity=this.velocity,this.velocity=0,this.isScrolling=!1,this.emit()},400))}};reset(){this.isLocked=!1,this.isScrolling=!1,this.animatedScroll=this.targetScroll=this.actualScroll,this.lastVelocity=this.velocity=0,this.animate.stop()}start(){if(this.isStopped){if(this.options.autoToggle)return void this.rootElement.style.removeProperty("overflow");this.internalStart()}}internalStart(){this.isStopped&&(this.reset(),this.isStopped=!1,this.emit())}stop(){if(!this.isStopped){if(this.options.autoToggle)return void this.rootElement.style.setProperty("overflow","clip");this.internalStop()}}internalStop(){this.isStopped||(this.reset(),this.isStopped=!0,this.emit())}raf=t=>{let e=t-(this.time||t);this.time=t,this.animate.advance(.001*e),this.options.autoRaf&&(this._rafId=requestAnimationFrame(this.raf))};scrollTo(t,{offset:e=0,immediate:s=!1,lock:o=!1,programmatic:r=!0,lerp:n=r?this.options.lerp:void 0,duration:l=r?this.options.duration:void 0,easing:h=r?this.options.easing:void 0,onStart:a,onComplete:p,force:d=!1,userData:u}={}){if((this.isStopped||this.isLocked)&&!d)return;let m=t,v=e;if("string"==typeof m&&["top","left","start","#"].includes(m))m=0;else if("string"==typeof m&&["bottom","right","end"].includes(m))m=this.limit;else{let t=null;if("string"==typeof m?(t=document.querySelector(m))||("#top"===m?m=0:console.warn("Lenis: Target not found",m)):m instanceof HTMLElement&&m?.nodeType&&(t=m),t){if(this.options.wrapper!==window){let t=this.rootElement.getBoundingClientRect();v-=this.isHorizontal?t.left:t.top}let e=t.getBoundingClientRect(),i=getComputedStyle(t),s=this.isHorizontal?Number.parseFloat(i.scrollMarginLeft):Number.parseFloat(i.scrollMarginTop),o=getComputedStyle(this.rootElement),r=this.isHorizontal?Number.parseFloat(o.scrollPaddingLeft):Number.parseFloat(o.scrollPaddingTop);m=(this.isHorizontal?e.left:e.top)+this.animatedScroll-(Number.isNaN(s)?0:s)-(Number.isNaN(r)?0:r)}}if("number"==typeof m){if(m+=v,this.options.infinite){if(r){this.targetScroll=this.animatedScroll=this.scroll;let t=m-this.animatedScroll;t>this.limit/2?m-=this.limit:t<-this.limit/2&&(m+=this.limit)}}else m=i(0,m,this.limit);if(m===this.targetScroll){a?.(this),p?.(this);return}if(this.userData=u??{},s){this.animatedScroll=this.targetScroll=m,this.setScroll(this.scroll),this.reset(),this.preventNextNativeScrollEvent(),this.emit(),p?.(this),this.userData={},requestAnimationFrame(()=>{this.dispatchScrollendEvent()});return}r||(this.targetScroll=m),"number"==typeof l&&"function"!=typeof h?h=c:"function"==typeof h&&"number"!=typeof l&&(l=1),this.animate.fromTo(this.animatedScroll,m,{duration:l,easing:h,lerp:n,onStart:()=>{o&&(this.isLocked=!0),this.isScrolling="smooth",a?.(this)},onUpdate:(t,e)=>{this.isScrolling="smooth",this.lastVelocity=this.velocity,this.velocity=t-this.animatedScroll,this.direction=Math.sign(this.velocity),this.animatedScroll=t,this.setScroll(this.scroll),r&&(this.targetScroll=t),e||this.emit(),e&&(this.reset(),this.emit(),p?.(this),this.userData={},requestAnimationFrame(()=>{this.dispatchScrollendEvent()}),this.preventNextNativeScrollEvent())}})}}preventNextNativeScrollEvent(){this._preventNextNativeScrollEvent=!0,requestAnimationFrame(()=>{this._preventNextNativeScrollEvent=!1})}hasNestedScroll(t,{deltaX:e,deltaY:i}){let s,o,r,n,l,h,a,c,p,d,u,m,v,f,g,w,S=Date.now();t._lenis||(t._lenis={});let y=t._lenis;if(S-(y.time??0)>2e3){y.time=Date.now();let e=window.getComputedStyle(t);if(y.computedStyle=e,s=["auto","overlay","scroll"].includes(e.overflowX),o=["auto","overlay","scroll"].includes(e.overflowY),l=["auto"].includes(e.overscrollBehaviorX),h=["auto"].includes(e.overscrollBehaviorY),y.hasOverflowX=s,y.hasOverflowY=o,!(s||o))return!1;a=t.scrollWidth,c=t.scrollHeight,p=t.clientWidth,d=t.clientHeight,r=a>p,n=c>d,y.isScrollableX=r,y.isScrollableY=n,y.scrollWidth=a,y.scrollHeight=c,y.clientWidth=p,y.clientHeight=d,y.hasOverscrollBehaviorX=l,y.hasOverscrollBehaviorY=h}else r=y.isScrollableX,n=y.isScrollableY,s=y.hasOverflowX,o=y.hasOverflowY,a=y.scrollWidth,c=y.scrollHeight,p=y.clientWidth,d=y.clientHeight,l=y.hasOverscrollBehaviorX,h=y.hasOverscrollBehaviorY;if(!(s&&r||o&&n))return!1;let E=Math.abs(e)>=Math.abs(i)?"horizontal":"vertical";if("horizontal"===E)u=Math.round(t.scrollLeft),m=a-p,v=e,f=s,g=r,w=l;else{if("vertical"!==E)return!1;u=Math.round(t.scrollTop),m=c-d,v=i,f=o,g=n,w=h}return!w&&(u>=m||u<=0)||(v>0?u0)&&f&&g}get rootElement(){return this.options.wrapper===window?document.documentElement:this.options.wrapper}get limit(){return this.options.naiveDimensions?this.isHorizontal?this.rootElement.scrollWidth-this.rootElement.clientWidth:this.rootElement.scrollHeight-this.rootElement.clientHeight:this.dimensions.limit[this.isHorizontal?"x":"y"]}get isHorizontal(){return"horizontal"===this.options.orientation}get actualScroll(){let t=this.options.wrapper;return this.isHorizontal?t.scrollX??t.scrollLeft:t.scrollY??t.scrollTop}get scroll(){var t;return this.options.infinite?(this.animatedScroll%(t=this.limit)+t)%t:this.animatedScroll}get progress(){return 0===this.limit?1:this.scroll/this.limit}get isScrolling(){return this._isScrolling}set isScrolling(t){this._isScrolling!==t&&(this._isScrolling=t,this.updateClassName())}get isStopped(){return this._isStopped}set isStopped(t){this._isStopped!==t&&(this._isStopped=t,this.updateClassName())}get isLocked(){return this._isLocked}set isLocked(t){this._isLocked!==t&&(this._isLocked=t,this.updateClassName())}get isSmooth(){return"smooth"===this.isScrolling}get className(){let t="lenis";return this.options.autoToggle&&(t+=" lenis-autoToggle"),this.isStopped&&(t+=" lenis-stopped"),this.isLocked&&(t+=" lenis-locked"),this.isScrolling&&(t+=" lenis-scrolling"),"smooth"===this.isScrolling&&(t+=" lenis-smooth"),t}updateClassName(){this.cleanUpClassName(),this.className.split(" ").forEach(t=>{this.rootElement.classList.add(t)})}cleanUpClassName(){for(let t of Array.from(this.rootElement.classList))("lenis"===t||t.startsWith("lenis-"))&&this.rootElement.classList.remove(t)}};t.s(["default",0,p])}]); \ No newline at end of file diff --git a/build/_next/static/chunks/07y.~m6x75v53.js b/build/_next/static/chunks/07y.~m6x75v53.js new file mode 100644 index 0000000..f3b6515 --- /dev/null +++ b/build/_next/static/chunks/07y.~m6x75v53.js @@ -0,0 +1,114 @@ +(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,31497,e=>{"use strict";let t=parseInt(e.i(90072).REVISION.replace(/\D+/g,""));e.s(["version",0,t])},43257,e=>{"use strict";let t;var r=e.i(31067),n=e.i(71645),a=e.i(28600),i=e.i(25234),s=e.i(44208),o=e.i(24205),l=e.i(67335),A=e.i(90072),u=A,c=e.i(31497);class h extends u.Mesh{constructor(e,t){var r,n;const a=(e=>e&&e.isCubeTexture)(e),i=Math.floor(Math.log2((null!=(n=a?null==(r=e.image[0])?void 0:r.width:e.image.width)?n:1024)/4)),s=Math.pow(2,i),o=3*Math.max(s,112),l=` + varying vec3 vWorldPosition; + void main() + { + vec4 worldPosition = ( modelMatrix * vec4( position, 1.0 ) ); + vWorldPosition = worldPosition.xyz; + + gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); + } + `,A=[a?"#define ENVMAP_TYPE_CUBE":"",`#define CUBEUV_TEXEL_WIDTH ${1/o}`,`#define CUBEUV_TEXEL_HEIGHT ${1/(4*s)}`,`#define CUBEUV_MAX_MIP ${i}.0`].join("\n")+` + #define ENVMAP_TYPE_CUBE_UV + varying vec3 vWorldPosition; + uniform float radius; + uniform float height; + uniform float angle; + #ifdef ENVMAP_TYPE_CUBE + uniform samplerCube map; + #else + uniform sampler2D map; + #endif + // From: https://www.shadertoy.com/view/4tsBD7 + float diskIntersectWithBackFaceCulling( vec3 ro, vec3 rd, vec3 c, vec3 n, float r ) + { + float d = dot ( rd, n ); + + if( d > 0.0 ) { return 1e6; } + + vec3 o = ro - c; + float t = - dot( n, o ) / d; + vec3 q = o + rd * t; + + return ( dot( q, q ) < r * r ) ? t : 1e6; + } + // From: https://www.iquilezles.org/www/articles/intersectors/intersectors.htm + float sphereIntersect( vec3 ro, vec3 rd, vec3 ce, float ra ) + { + vec3 oc = ro - ce; + float b = dot( oc, rd ); + float c = dot( oc, oc ) - ra * ra; + float h = b * b - c; + + if( h < 0.0 ) { return -1.0; } + + h = sqrt( h ); + + return - b + h; + } + vec3 project() + { + vec3 p = normalize( vWorldPosition ); + vec3 camPos = cameraPosition; + camPos.y -= height; + float intersection = sphereIntersect( camPos, p, vec3( 0.0 ), radius ); + if( intersection > 0.0 ) { + + vec3 h = vec3( 0.0, - height, 0.0 ); + float intersection2 = diskIntersectWithBackFaceCulling( camPos, p, h, vec3( 0.0, 1.0, 0.0 ), radius ); + p = ( camPos + min( intersection, intersection2 ) * p ) / radius; + } else { + p = vec3( 0.0, 1.0, 0.0 ); + } + return p; + } + #include + #include + void main() + { + vec3 projectedWorldPosition = project(); + + #ifdef ENVMAP_TYPE_CUBE + vec3 outcolor = textureCube( map, projectedWorldPosition ).rgb; + #else + vec3 direction = normalize( projectedWorldPosition ); + vec2 uv = equirectUv( direction ); + vec3 outcolor = texture2D( map, uv ).rgb; + #endif + gl_FragColor = vec4( outcolor, 1.0 ); + #include + #include <${c.version>=154?"colorspace_fragment":"encodings_fragment"}> + } + `,h={map:{value:e},height:{value:(null==t?void 0:t.height)||15},radius:{value:(null==t?void 0:t.radius)||100}};super(new u.IcosahedronGeometry(1,16),new u.ShaderMaterial({uniforms:h,fragmentShader:A,vertexShader:l,side:u.DoubleSide}))}set radius(e){this.material.uniforms.radius.value=e}get radius(){return this.material.uniforms.radius.value}set height(e){this.material.uniforms.height.value=e}get height(){return this.material.uniforms.height.value}}var d=e.i(60602),f=A;class B extends f.DataTextureLoader{constructor(e){super(e),this.type=f.HalfFloatType}parse(e){let t,r,n,a=function(e,t){switch(e){case 1:throw Error("THREE.RGBELoader: Read Error: "+(t||""));case 2:throw Error("THREE.RGBELoader: Write Error: "+(t||""));case 3:throw Error("THREE.RGBELoader: Bad File Format: "+(t||""));default:throw Error("THREE.RGBELoader: Memory Error: "+(t||""))}},i=function(e,t,r){t=t||1024;let n=e.pos,a=-1,i=0,s="",o=String.fromCharCode.apply(null,new Uint16Array(e.subarray(n,n+128)));for(;0>(a=o.indexOf("\n"))&&i=e.byteLength)&&(t=i(e))||a(1,"no header found"),(r=t.match(/^#\?(\S+)/))||a(3,"bad initial token"),A.valid|=1,A.programtype=r[1],A.string+=t+"\n";!1!==(t=i(e));){if(A.string+=t+"\n","#"===t.charAt(0)){A.comments+=t+"\n";continue}if((r=t.match(n))&&(A.gamma=parseFloat(r[1])),(r=t.match(s))&&(A.exposure=parseFloat(r[1])),(r=t.match(o))&&(A.valid|=2,A.format=r[1]),(r=t.match(l))&&(A.valid|=4,A.height=parseInt(r[1],10),A.width=parseInt(r[2],10)),2&A.valid&&4&A.valid)break}return 2&A.valid||a(3,"missing format specifier"),4&A.valid||a(3,"missing image size specifier"),A}(s),l=o.width,A=o.height,u=function(e,t,r){if(t<8||t>32767||2!==e[0]||2!==e[1]||128&e[2])return new Uint8Array(e);t!==(e[2]<<8|e[3])&&a(3,"wrong scanline width");let n=new Uint8Array(4*t*r);n.length||a(4,"unable to allocate buffer space");let i=0,s=0,o=4*t,l=new Uint8Array(4),A=new Uint8Array(o),u=r;for(;u>0&&se.byteLength&&a(1),l[0]=e[s++],l[1]=e[s++],l[2]=e[s++],l[3]=e[s++],(2!=l[0]||2!=l[1]||(l[2]<<8|l[3])!=t)&&a(3,"bad rgbe scanline format");let r=0,c;for(;r128;if(t&&(c-=128),(0===c||r+c>o)&&a(3,"bad scanline data"),t){let t=e[s++];for(let e=0;e>>1|(21845&x)<<1;J=(61680&(J=(52428&J)>>>2|(13107&J)<<2))>>>4|(3855&J)<<4,H[x]=((65280&J)>>>8|(255&J)<<8)>>>1}for(var L=function(e,t,r){for(var n,a=e.length,i=0,s=new M(t);i>>l]=A}else for(i=0,n=new M(a);i>>15-e[i]);return n},S=new g(288),x=0;x<144;++x)S[x]=8;for(var x=144;x<256;++x)S[x]=9;for(var x=256;x<280;++x)S[x]=7;for(var x=280;x<288;++x)S[x]=8;for(var U=new g(32),x=0;x<32;++x)U[x]=5;var O=L(S,9,0),P=L(S,9,1),_=L(U,5,0),K=L(U,5,1),k=function(e){for(var t=e[0],r=1;rt&&(t=e[r]);return t},N=function(e,t,r){var n=t/8|0;return(e[n]|e[n+1]<<8)>>(7&t)&r},Q=function(e,t){var r=t/8|0;return(e[r]|e[r+1]<<8|e[r+2]<<16)>>(7&t)},X=function(e){return(e/8|0)+(7&e&&1)},j=function(e,t,r){(null==t||t<0)&&(t=0),(null==r||r>e.length)&&(r=e.length);var n=new(e instanceof M?M:e instanceof v?v:g)(r-t);return n.set(e.subarray(t,r)),n},Y=function(e,t,r){var n=e.length;if(!n||r&&!r.l&&n<5)return t||new g(0);var a=!t||r,i=!r||r.i;r||(r={}),t||(t=new g(3*n));var s=function(e){var r=t.length;if(e>r){var n=new g(Math.max(2*r,e));n.set(t),t=n}},o=r.f||0,l=r.p||0,A=r.b||0,u=r.l,c=r.d,h=r.m,d=r.n,f=8*n;do{if(!u){r.f=o=N(e,l,1);var B=N(e,l+1,3);if(l+=3,B)if(1==B)u=P,c=K,h=9,d=5;else if(2==B){var p=N(e,l,31)+257,C=N(e,l+10,15)+4,m=p+N(e,l+5,31)+1;l+=14;for(var M=new g(m),v=new g(19),I=0;I>>4;if(H<16)M[I++]=H;else{var x=0,J=0;for(16==H?(J=3+N(e,l,3),l+=2,x=M[I-1]):17==H?(J=3+N(e,l,7),l+=3):18==H&&(J=11+N(e,l,127),l+=7);J--;)M[I++]=x}}var S=M.subarray(0,p),U=M.subarray(p);h=k(S),d=k(U),u=L(S,h,1),c=L(U,d,1)}else throw"invalid block type";else{var H=X(l)+4,O=e[H-4]|e[H-3]<<8,_=H+O;if(_>n){if(i)throw"unexpected EOF";break}a&&s(A+O),t.set(e.subarray(H,_),A),r.b=A+=O,r.p=l=8*_;continue}if(l>f){if(i)throw"unexpected EOF";break}}a&&s(A+131072);for(var Y=(1<>>4;if((l+=15&x)>f){if(i)throw"unexpected EOF";break}if(!x)throw"invalid length/literal";if(V<256)t[A++]=V;else if(256==V){Z=l,u=null;break}else{var z=V-254;if(V>264){var I=V-257,q=F[I];z=N(e,l,(1<>>4;if(!$)throw"invalid distance";l+=15&$;var U=T[ee];if(ee>3){var q=E[ee];U+=Q(e,l)&(1<f){if(i)throw"unexpected EOF";break}a&&s(A+131072);for(var et=A+z;A>>8},Z=function(e,t,r){r<<=7&t;var n=t/8|0;e[n]|=r,e[n+1]|=r>>>8,e[n+2]|=r>>>16},V=function(e,t){for(var r=[],n=0;nh&&(h=i[n].s);var d=new M(h+1),f=z(r[u-1],d,0);if(f>t){var n=0,B=0,p=f-t,C=1<t)B+=C-(1<>>=p;B>0;){var v=i[n].s;d[v]=0&&B;--n){var F=i[n].s;d[F]==t&&(--d[F],++B)}f=t}return[new g(d),f]},z=function(e,t,r){return -1==e.s?Math.max(z(e.l,t,r+1),z(e.r,t,r+1)):t[e.s]=r},q=function(e){for(var t=e.length;t&&!e[--t];);for(var r=new M(++t),n=0,a=e[0],i=1,s=function(e){r[n++]=e},o=1;o<=t;++o)if(e[o]==a&&o!=t)++i;else{if(!a&&i>2){for(;i>138;i-=138)s(32754);i>2&&(s(i>10?i-11<<5|28690:i-3<<5|12305),i=0)}else if(i>3){for(s(a),--i;i>6;i-=6)s(8304);i>2&&(s(i-3<<5|8208),i=0)}for(;i--;)s(a);i=1,a=e[o]}return[r.subarray(0,n),t]},$=function(e,t){for(var r=0,n=0;n>>8,e[a+2]=255^e[a],e[a+3]=255^e[a+1];for(var i=0;i4&&!J[y[K-1]];--K);var k=A+5<<3,N=$(a,S)+$(i,U)+s,Q=$(a,p)+$(i,g)+s+14+3*K+$(w,J)+(2*w[16]+3*w[17]+7*w[18]);if(k<=N&&k<=Q)return ee(t,u,e.subarray(l,l+A));if(W(t,u,1+(Q15&&(W(t,u,z[H]>>>5&127),u+=z[H]>>>12)}}else c=O,h=S,d=_,f=U;for(var H=0;H255){var et=n[H]>>>18&31;Z(t,u,c[et+257]),u+=h[et+257],et>7&&(W(t,u,n[H]>>>23&31),u+=F[et]);var er=31&n[H];Z(t,u,d[er]),u+=f[er],er>3&&(Z(t,u,n[H]>>>5&8191),u+=E[er])}else Z(t,u,c[n[H]]),u+=h[n[H]];return Z(t,u,c[256]),u+h[256]},er=new v([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),en=new g(0),ea=function(e,t,r,n,a,i){var s=e.length,o=new g(n+s+5*(1+Math.ceil(s/7e3))+a),l=o.subarray(n,o.length-a),A=0;if(!t||s<8)for(var u=0;u<=s;u+=65535){var c=u+65535;c>>13,f=8191&h,B=(1<7e3||x>24576)&&P>423){A=et(e,l,0,G,R,D,H,x,L,u-L,A),x=T=H=0,L=u;for(var _=0;_<286;++_)R[_]=0;for(var _=0;_<30;++_)D[_]=0}var K=2,k=0,N=f,Q=U-O&32767;if(P>2&&S==I(u-Q))for(var Y=Math.min(d,P)-1,W=Math.min(32767,u),Z=Math.min(258,P);Q<=W&&--N&&U!=O;){if(e[u+K]==e[u+K-Q]){for(var V=0;VK){if(K=V,k=Q,V>Y)break;for(var z=Math.min(Q,V-2),q=0,_=0;_q&&(q=ei,O=$)}}}O=p[U=O],Q+=U-O+32768&32767}if(k){G[x++]=0x10000000|b[K]<<18|w[k];var es=31&b[K],eo=31&w[k];H+=F[es]+E[eo],++R[257+es],++D[eo],J=u+K,++T}else G[x++]=e[u],++R[e[u]]}}A=et(e,l,i,G,R,D,H,x,L,u-L,A),!i&&7&A&&(A=ee(l,A+1,en))}return j(o,0,n+X(A)+a)},ei=function(){for(var e=new Int32Array(256),t=0;t<256;++t){for(var r=t,n=9;--n;)r=(1&r&&-0x12477ce0)^r>>>1;e[t]=r}return e}(),es=function(){var e=-1;return{p:function(t){for(var r=e,n=0;n>>8;e=r},d:function(){return~e}}},eo=function(){var e=1,t=0;return{p:function(r){for(var n=e,a=t,i=r.length,s=0;s!=i;){for(var o=Math.min(s+2655,i);s>16),a=(65535&a)+15*(a>>16)}e=n,t=a},d:function(){return e%=65521,t%=65521,(255&e)<<24|e>>>8<<16|(255&t)<<8|t>>>8}}},el=function(e,t,r,n,a){return ea(e,null==t.level?6:t.level,null==t.mem?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(e.length)))):12+t.mem,r,n,!a)},eA=function(e,t){var r={};for(var n in e)r[n]=e[n];for(var n in t)r[n]=t[n];return r},eu=function(e,t,r){for(var n=e(),a=e.toString(),i=a.slice(a.indexOf("[")+1,a.lastIndexOf("]")).replace(/ /g,"").split(","),s=0;s>>0},ey=function(e,t){return eE(e,t)+0x100000000*eE(e,t+4)},eI=function(e,t,r){for(;r;++t)e[t]=r,r>>>=8},eG=function(e,t){var r=t.filename;if(e[0]=31,e[1]=139,e[2]=8,e[8]=t.level<2?4:2*(9==t.level),e[9]=3,0!=t.mtime&&eI(e,4,Math.floor(new Date(t.mtime||Date.now())/1e3)),r){e[3]=8;for(var n=0;n<=r.length;++n)e[n+10]=r.charCodeAt(n)}},eR=function(e){if(31!=e[0]||139!=e[1]||8!=e[2])throw"invalid gzip data";var t=e[3],r=10;4&t&&(r+=e[10]|(e[11]<<8)+2);for(var n=(t>>3&1)+(t>>4&1);n>0;n-=!e[r++]);return r+(2&t)},eb=function(e){var t=e.length;return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0},eD=function(e){return 10+(e.filename&&e.filename.length+1||0)},eT=function(e,t){var r=t.level,n=0==r?0:r<6?1:9==r?3:2;e[0]=120,e[1]=n<<6|(n?32-2*n:1)},ew=function(e){if((15&e[0])!=8||e[0]>>>4>7||(e[0]<<8|e[1])%31)throw"invalid zlib data";if(32&e[1])throw"invalid zlib data: preset dictionaries not supported"};function eH(e,t){return t||"function"!=typeof e||(t=e,e={}),this.ondata=t,e}var ex=function(){function e(e,t){t||"function"!=typeof e||(t=e,e={}),this.ondata=t,this.o=e||{}}return e.prototype.p=function(e,t){this.ondata(el(e,this.o,0,0,!t),t)},e.prototype.push=function(e,t){if(this.d)throw"stream finished";if(!this.ondata)throw"no stream handler";this.d=t,this.p(e,t||!1)},e}(),eJ=function(e,t){ev([eB,function(){return[eM,ex]}],this,eH.call(this,e,t),function(e){onmessage=eM(new ex(e.data))},6)};function eL(e,t){return el(e,t||{},0,0)}var eS=function(){function e(e){this.s={},this.p=new g(0),this.ondata=e}return e.prototype.e=function(e){if(this.d)throw"stream finished";if(!this.ondata)throw"no stream handler";var t=this.p.length,r=new g(t+e.length);r.set(this.p),r.set(e,t),this.p=r},e.prototype.c=function(e){this.d=this.s.i=e||!1;var t=this.s.b,r=Y(this.p,this.o,this.s);this.ondata(j(r,t,this.s.b),this.d),this.o=j(r,this.s.b-32768),this.s.b=this.o.length,this.p=j(this.p,this.s.p/8|0),this.s.p&=7},e.prototype.push=function(e,t){this.e(e),this.c(t)},e}(),eU=function(e){this.ondata=e,ev([ef,function(){return[eM,eS]}],this,0,function(){onmessage=eM(new eS)},7)};function eO(e,t){return Y(e,t)}(function(){function e(e,t){this.c=es(),this.l=0,this.v=1,ex.call(this,e,t)}e.prototype.push=function(e,t){ex.prototype.push.call(this,e,t)},e.prototype.p=function(e,t){this.c.p(e),this.l+=e.length;var r=el(e,this.o,this.v&&eD(this.o),t&&8,!t);this.v&&(eG(r,this.o),this.v=0),t&&(eI(r,r.length-8,this.c.d()),eI(r,r.length-4,this.l)),this.ondata(r,t)}})();var eP=function(){function e(e){this.v=1,eS.call(this,e)}return e.prototype.push=function(e,t){if(eS.prototype.e.call(this,e),this.v){var r=this.p.length>3?eR(this.p):4;if(r>=this.p.length&&!t)return;this.p=this.p.subarray(r),this.v=0}if(t){if(this.p.length<8)throw"invalid gzip stream";this.p=this.p.subarray(0,-8)}eS.prototype.c.call(this,t)},e}(),e_=function(e){this.ondata=e,ev([ef,ep,function(){return[eM,eS,eP]}],this,0,function(){onmessage=eM(new eP)},9)},eK=(function(){function e(e,t){this.c=eo(),this.v=1,ex.call(this,e,t)}e.prototype.push=function(e,t){ex.prototype.push.call(this,e,t)},e.prototype.p=function(e,t){this.c.p(e);var r=el(e,this.o,this.v&&2,t&&4,!t);this.v&&(eT(r,this.o),this.v=0),t&&eI(r,r.length-4,this.c.d()),this.ondata(r,t)}}(),function(){function e(e){this.v=1,eS.call(this,e)}return e.prototype.push=function(e,t){if(eS.prototype.e.call(this,e),this.v){if(this.p.length<2&&!t)return;this.p=this.p.subarray(2),this.v=0}if(t){if(this.p.length<4)throw"invalid zlib stream";this.p=this.p.subarray(0,-4)}eS.prototype.c.call(this,t)},e}()),ek=function(e){this.ondata=e,ev([ef,eC,function(){return[eM,eS,eK]}],this,0,function(){onmessage=eM(new eK)},11)};function eN(e,t){return Y((ew(e),e.subarray(2,-4)),t)}var eQ=function(){function e(e){this.G=eP,this.I=eS,this.Z=eK,this.ondata=e}return e.prototype.push=function(e,t){if(!this.ondata)throw"no stream handler";if(this.s)this.s.push(e,t);else{if(this.p&&this.p.length){var r=new g(this.p.length+e.length);r.set(this.p),r.set(e,this.p.length)}else this.p=e;if(this.p.length>2){var n=this,a=function(){n.ondata.apply(n,arguments)};this.s=31==this.p[0]&&139==this.p[1]&&8==this.p[2]?new this.G(a):(15&this.p[0])!=8||this.p[0]>>4>7||(this.p[0]<<8|this.p[1])%31?new this.I(a):new this.Z(a),this.s.push(this.p,t),this.p=null}}},e}();(function(e){this.G=e_,this.I=eU,this.Z=ek,this.ondata=e}).prototype.push=function(e,t){eQ.prototype.push.call(this,e,t)};var eX="u">typeof TextEncoder&&new TextEncoder,ej="u">typeof TextDecoder&&new TextDecoder,eY=0;try{ej.decode(en,{stream:!0}),eY=1}catch(e){}var eW=function(e){for(var t="",r=0;;){var n=e[r++],a=(n>127)+(n>223)+(n>239);if(r+a>e.length)return[t,j(e,r-1)];a?3==a?t+=String.fromCharCode(55296|(n=((15&n)<<18|(63&e[r++])<<12|(63&e[r++])<<6|63&e[r++])-65536)>>10,56320|1023&n):1&a?t+=String.fromCharCode((31&n)<<6|63&e[r++]):t+=String.fromCharCode((15&n)<<12|(63&e[r++])<<6|63&e[r++]):t+=String.fromCharCode(n)}};function eZ(e,t){if(t){for(var r=new g(e.length),n=0;n>1)),s=0,o=function(e){i[s++]=e},n=0;ni.length){var l=new g(s+8+(a-n<<1));l.set(i),i=l}var A=e.charCodeAt(n);A<128||t?o(A):(A<2048?o(192|A>>6):(A>55295&&A<57344?(o(240|(A=65536+(1047552&A)|1023&e.charCodeAt(++n))>>18),o(128|A>>12&63)):o(224|A>>12),o(128|A>>6&63)),o(128|63&A))}return j(i,0,s)}(function(e){this.ondata=e,eY?this.t=new TextDecoder:this.p=en}).prototype.push=function(e,t){if(!this.ondata)throw"no callback";if(t=!!t,this.t){if(this.ondata(this.t.decode(e,{stream:!0}),t),t){if(this.t.decode().length)throw"invalid utf-8 data";this.t=null}return}if(!this.p)throw"stream finished";var r=new g(this.p.length+e.length);r.set(this.p),r.set(e,this.p.length);var n=eW(r),a=n[0],i=n[1];if(t){if(i.length)throw"invalid utf-8 data";this.p=null}else this.p=i;this.ondata(a,t)},(function(e){this.ondata=e}).prototype.push=function(e,t){if(!this.ondata)throw"no callback";if(this.d)throw"stream finished";this.ondata(eZ(e),this.d=t||!1)};var eV=function(e){return 1==e?3:e<6?2:+(9==e)},ez=function(e,t){for(;1!=eF(e,t);t+=4+eF(e,t+2));return[ey(e,t+12),ey(e,t+4),ey(e,t+20)]},eq=function(e){var t=0;if(e)for(var r in e){var n=e[r].length;if(n>65535)throw"extra field too long";t+=n+4}return t},e$=function(e,t,r,n,a,i,s,o){var l=n.length,A=r.extra,u=o&&o.length,c=eq(A);eI(e,t,null!=s?0x2014b50:0x4034b50),t+=4,null!=s&&(e[t++]=20,e[t++]=r.os),e[t]=20,t+=2,e[t++]=r.flag<<1|(null==i&&8),e[t++]=a&&8,e[t++]=255&r.compression,e[t++]=r.compression>>8;var h=new Date(null==r.mtime?Date.now():r.mtime),d=h.getFullYear()-1980;if(d<0||d>119)throw"date not in range 1980-2099";if(eI(e,t,d<<25|h.getMonth()+1<<21|h.getDate()<<16|h.getHours()<<11|h.getMinutes()<<5|h.getSeconds()>>>1),t+=4,null!=i&&(eI(e,t,r.crc),eI(e,t+4,i),eI(e,t+8,r.size)),eI(e,t+12,l),eI(e,t+14,c),t+=16,null!=s&&(eI(e,t,u),eI(e,t+6,r.attrs),eI(e,t+10,s),t+=14),e.set(n,t),t+=l,c)for(var f in A){var B=A[f],p=B.length;eI(e,t,+f),eI(e,t+2,p),e.set(B,t+4),t+=4+p}return u&&(e.set(o,t),t+=u),t},e0=function(e,t,r,n,a){eI(e,t,0x6054b50),eI(e,t+8,r),eI(e,t+10,r),eI(e,t+12,n),eI(e,t+16,a)},e1=function(){function e(e){this.filename=e,this.c=es(),this.size=0,this.compression=0}return e.prototype.process=function(e,t){this.ondata(null,e,t)},e.prototype.push=function(e,t){if(!this.ondata)throw"no callback - add to ZIP archive before pushing";this.c.p(e),this.size+=e.length,t&&(this.crc=this.c.d()),this.process(e,t||!1)},e}();function e9(e,t){var r=this;t||(t={}),e1.call(this,e),this.d=new ex(t,function(e,t){r.ondata(null,e,t)}),this.compression=8,this.flag=eV(t.level)}function e2(e,t){var r=this;t||(t={}),e1.call(this,e),this.d=new eJ(t,function(e,t,n){r.ondata(e,t,n)}),this.compression=8,this.flag=eV(t.level),this.terminate=this.d.terminate}function e8(e){this.ondata=e,this.u=[],this.d=1}e9.prototype.process=function(e,t){try{this.d.push(e,t)}catch(e){this.ondata(e,null,t)}},e9.prototype.push=function(e,t){e1.prototype.push.call(this,e,t)},e2.prototype.process=function(e,t){this.d.push(e,t)},e2.prototype.push=function(e,t){e1.prototype.push.call(this,e,t)},e8.prototype.add=function(e){var t=this;if(2&this.d)throw"stream finished";var r=eZ(e.filename),n=r.length,a=e.comment,i=a&&eZ(a),s=n!=e.filename.length||i&&a.length!=i.length,o=n+eq(e.extra)+30;if(n>65535)throw"filename too long";var l=new g(o);e$(l,0,e,r,s);var A=[l],u=function(){for(var e=0,r=A;e0){var n=Math.min(this.c,e.length),a=e.subarray(0,n);if(this.c-=n,this.d?this.d.push(a,!this.c):this.k[0].push(a),(e=e.subarray(n)).length)return this.push(e,t)}else{var i=0,s=0,o=void 0,l=void 0;this.p.length?e.length?((l=new g(this.p.length+e.length)).set(this.p),l.set(e,this.p.length)):l=this.p:l=e;for(var A=l.length,u=this.c,c=u&&this.d,h=this;ss+30+c+d){var f,B,p=[];h.k.unshift(p),i=2;var C=eE(l,s+18),m=eE(l,s+22),g=function(e,t){if(t){for(var r="",n=0;n=0&&(M.size=C,M.originalSize=m),h.onfile(M)}return"break"}if(u){if(0x8074b50==e)return o=s+=12+(-2==u&&8),i=3,h.c=0,"break";else if(0x2014b50==e)return o=s-=4,i=3,h.c=0,"break"}}();++s);if(this.p=en,u<0){var d=i?l.subarray(0,o-12-(-2==u&&8)-(0x8074b50==eE(l,o-16)&&4)):l.subarray(0,s);c?c.push(d,!!i):this.k[+(2==i)].push(d)}if(2&i)return this.push(l.subarray(s),t);this.p=l.subarray(s)}if(t){if(this.c)throw"invalid zip file";this.p=null}},e5.prototype.register=function(e){this.o[e.compression]=e};let e7=c.version>=152;class te extends p.DataTextureLoader{constructor(e){super(e),this.type=p.HalfFloatType}parse(e){let t={l:0,c:0,lc:0};function r(e,r,n,a,i){for(;n>(n-=e)&(1<>(n-=8),d=new Uint8Array([d])[0];if(c.value+d>h)return!1;for(var f=u[c.value-1];d-- >0;)u[c.value++]=f}else{if(!(c.value32767?t-65536:t}let A={a:0,b:0};function u(e,t){var r=l(e),n=l(t),a=r+(1&n)+(n>>1),i=a-n;A.a=a,A.b=i}function c(e,t){var r=65535&t,n=(65535&e)-(r>>1)&65535;A.a=r+n-32768&65535,A.b=n}function h(e,l,A,u,c,h){var d=A.value,f=I(l,A),B=I(l,A);A.value+=4;var p=I(l,A);if(A.value+=4,f<0||f>=65537||B<0||B>=65537)throw"Something wrong with HUF_ENCSIZE";for(var C=Array(65537),m=Array(16384),g=0;g<16384;g++)m[g]={},m[g].len=0,m[g].lit=0,m[g].p=null;var M=u-(A.value-d);if(!function(e,a,i,s,o,l){for(var A=0,u=0;s<=o;s++){if(a.value-a.value>i)return!1;r(6,A,u,e,a);var c=t.l;if(A=t.c,u=t.lc,l[s]=c,63==c){if(a.value-a.value>i)throw"Something wrong with hufUnpackEncTable";r(8,A,u,e,a);var h=t.l+6;if(A=t.c,u=t.lc,s+h>o+1)throw"Something wrong with hufUnpackEncTable";for(;h--;)l[s++]=0;s--}else if(c>=59){var h=c-59+2;if(s+h>o+1)throw"Something wrong with hufUnpackEncTable";for(;h--;)l[s++]=0;s--}}!function(e){for(var t=0;t<=58;++t)n[t]=0;for(var t=0;t<65537;++t)n[e[t]]+=1;for(var r=0,t=58;t>0;--t){var a=r+n[t]>>1;n[t]=r,r=a}for(var t=0;t<65537;++t){var i=e[t];i>0&&(e[t]=i|n[i]++<<6)}}(l)}(e,A,M,f,B,C),p>8*(u-(A.value-d)))throw"Something wrong with hufUncompress";!function(e,t,r,n){for(;t<=r;t++){var a=e[t]>>6,i=63&e[t];if(a>>i)throw"Invalid table entry";if(i>14){var s=n[a>>i-14];if(s.len)throw"Invalid table entry";if(s.lit++,s.p){var o=s.p;s.p=Array(s.lit);for(var l=0;l0;l--){var s=n[(a<<14-i)+A];if(s.len||s.p)throw"Invalid table entry";s.len=i,s.lit=t,A++}}}(C,f,B,m),function(e,t,r,n,l,A,u,c,h,d){for(var f=0,B=0,p=Math.trunc(l.value+(A+7)/8);l.value=14;){var C=t[f>>B-14&16383];if(C.len)B-=C.len,o(C.lit,u,f,B,r,n,l,h,d,c),f=s.c,B=s.lc;else{if(!C.p)throw"hufDecode issues";for(m=0;m=g&&e[C.p[m]]>>6==(f>>B-g&(1<>=M,B-=M;B>0;){var C=t[f<<14-B&16383];if(C.len)B-=C.len,o(C.lit,u,f,B,r,n,l,h,d,c),f=s.c,B=s.lc;else throw"hufDecode issues"}}(C,m,e,l,A,p,B,h,c,{value:0})}function d(e){for(var t=1;ti)&&(t[a++]=e[r++],!(a>i));){;t[a++]=e[n++]}}function B(e){for(var t=e.byteLength,r=[],n=0,a=new DataView(e);t>0;){var i=a.getInt8(n++);if(i<0){var s=-i;t-=s+1;for(var o=0;o=8192)throw"Something is wrong with PIZ_COMPRESSION BITMAP_SIZE";if(l<=d)for(var o=0;o>3]&1<<(7&n))&&(t[r++]=n);for(var a=r-1;r<65536;)t[r++]=0;return a}(a,f),p=I(t,r);h(e.array,t,r,p,n,i);for(var o=0;oa?a:r,h=1;h<=l;)h<<=1;for(h>>=1,d=h,h>>=1;h>=1;){for(var d,f,B,p,C,m=0,g=0+i*(a-d),M=i*h,v=i*d,F=n*h,E=n*d;m<=g;m+=v){for(var y=m,I=m+n*(r-d);y<=I;y+=E){var G=y+F,R=y+M,b=R+F;o?(u(e[y+t],e[R+t]),f=A.a,p=A.b,u(e[G+t],e[b+t]),B=A.a,C=A.b,u(f,B),e[y+t]=A.a,e[G+t]=A.b,u(p,C)):(c(e[y+t],e[R+t]),f=A.a,p=A.b,c(e[G+t],e[b+t]),B=A.a,C=A.b,c(f,B),e[y+t]=A.a,e[G+t]=A.b,c(p,C)),e[R+t]=A.a,e[b+t]=A.b}if(r&h){var R=y+M;o?u(e[y+t],e[R+t]):c(e[y+t],e[R+t]),f=A.a,e[R+t]=A.b,e[y+t]=f}}if(a&h)for(var y=m,I=m+n*(r-d);y<=I;y+=E){var G=y+F;o?u(e[y+t],e[G+t]):c(e[y+t],e[G+t]),f=A.a,e[G+t]=A.b,e[y+t]=f}d=h,h>>=1}}(n,C.start+m,C.nx,C.size,C.ny,C.nx*C.size,B);for(var g=i,M=0;M0;){var o=E(t.buffer,r),l=R(t,r),A=l>>2&3,u=new Int8Array([(l>>4)-1])[0],c=R(t,r);i.push({name:o,index:u,type:c,compression:A}),s-=o.length+3}for(var d=U.channels,f=Array(e.channels),C=0;C=0&&(v.idx[y.index]=F),m.offset=F)}if(a.acCompressedSize>0)switch(a.acCompression){case 0:var I=new Uint16Array(a.totalAcUncompressedCount);h(e.array,t,r,a.acCompressedSize,I,a.totalAcUncompressedCount);break;case 1:var G=e.array.slice(r.value,r.value+a.totalAcUncompressedCount),D=eN(G),I=new Uint16Array(D.buffer);r.value+=a.totalAcUncompressedCount}if(a.dcCompressedSize>0){var T=new Uint16Array(g({array:e.array,offset:r,size:a.dcCompressedSize}).buffer);r.value+=a.dcCompressedSize}if(a.rleRawSize>0){var G=e.array.slice(r.value,r.value+a.rleCompressedSize),D=eN(G),x=B(D.buffer);r.value+=a.rleCompressedSize}for(var J=0,L=Array(f.length),C=0;C>8==255?a+=255&n:(r[a]=n,a++),e.value++}(f,n,m[e]),v=m[e],(F=C[e])[0]=w(v[0]),F[1]=w(v[1]),F[2]=w(v[5]),F[3]=w(v[6]),F[4]=w(v[14]),F[5]=w(v[15]),F[6]=w(v[27]),F[7]=w(v[28]),F[8]=w(v[2]),F[9]=w(v[4]),F[10]=w(v[7]),F[11]=w(v[13]),F[12]=w(v[16]),F[13]=w(v[26]),F[14]=w(v[29]),F[15]=w(v[42]),F[16]=w(v[3]),F[17]=w(v[8]),F[18]=w(v[12]),F[19]=w(v[17]),F[20]=w(v[25]),F[21]=w(v[30]),F[22]=w(v[41]),F[23]=w(v[43]),F[24]=w(v[9]),F[25]=w(v[11]),F[26]=w(v[18]),F[27]=w(v[24]),F[28]=w(v[31]),F[29]=w(v[40]),F[30]=w(v[44]),F[31]=w(v[53]),F[32]=w(v[10]),F[33]=w(v[19]),F[34]=w(v[23]),F[35]=w(v[32]),F[36]=w(v[39]),F[37]=w(v[45]),F[38]=w(v[52]),F[39]=w(v[54]),F[40]=w(v[20]),F[41]=w(v[22]),F[42]=w(v[33]),F[43]=w(v[38]),F[44]=w(v[46]),F[45]=w(v[51]),F[46]=w(v[55]),F[47]=w(v[60]),F[48]=w(v[21]),F[49]=w(v[34]),F[50]=w(v[37]),F[51]=w(v[47]),F[52]=w(v[50]),F[53]=w(v[56]),F[54]=w(v[59]),F[55]=w(v[61]),F[56]=w(v[35]),F[57]=w(v[36]),F[58]=w(v[48]),F[59]=w(v[49]),F[60]=w(v[57]),F[61]=w(v[58]),F[62]=w(v[62]),F[63]=w(v[63]),function(e){let t=.5*Math.cos(3.14159/16),r=.5*Math.cos(3.14159/8),n=.5*Math.cos(3*3.14159/16),a=.5*Math.cos(3*3.14159/8);for(var i=[,,,,],s=[,,,,],o=[,,,,],l=[,,,,],A=0;A<8;++A){var u=8*A;i[0]=r*e[u+2],i[1]=a*e[u+2],i[2]=r*e[u+6],i[3]=a*e[u+6],s[0]=t*e[u+1]+n*e[u+3]+.2777854612564676*e[u+5]+.09754573032714427*e[u+7],s[1]=n*e[u+1]-.09754573032714427*e[u+3]-t*e[u+5]-.2777854612564676*e[u+7],s[2]=.2777854612564676*e[u+1]-t*e[u+3]+.09754573032714427*e[u+5]+n*e[u+7],s[3]=.09754573032714427*e[u+1]-.2777854612564676*e[u+3]+n*e[u+5]-t*e[u+7],o[0]=.35355362513961314*(e[u+0]+e[u+4]),o[3]=.35355362513961314*(e[u+0]-e[u+4]),o[1]=i[0]+i[3],o[2]=i[1]-i[2],l[0]=o[0]+o[1],l[1]=o[3]+o[2],l[2]=o[3]-o[2],l[3]=o[0]-o[1],e[u+0]=l[0]+s[0],e[u+1]=l[1]+s[1],e[u+2]=l[2]+s[2],e[u+3]=l[3]+s[3],e[u+4]=l[3]-s[3],e[u+5]=l[2]-s[2],e[u+6]=l[1]-s[1],e[u+7]=l[0]-s[0]}for(var c=0;c<8;++c)i[0]=r*e[16+c],i[1]=a*e[16+c],i[2]=r*e[48+c],i[3]=a*e[48+c],s[0]=t*e[8+c]+n*e[24+c]+.2777854612564676*e[40+c]+.09754573032714427*e[56+c],s[1]=n*e[8+c]-.09754573032714427*e[24+c]-t*e[40+c]-.2777854612564676*e[56+c],s[2]=.2777854612564676*e[8+c]-t*e[24+c]+.09754573032714427*e[40+c]+n*e[56+c],s[3]=.09754573032714427*e[8+c]-.2777854612564676*e[24+c]+n*e[40+c]-t*e[56+c],o[0]=.35355362513961314*(e[c]+e[32+c]),o[3]=.35355362513961314*(e[c]-e[32+c]),o[1]=i[0]+i[3],o[2]=i[1]-i[2],l[0]=o[0]+o[1],l[1]=o[3]+o[2],l[2]=o[3]-o[2],l[3]=o[0]-o[1],e[0+c]=l[0]+s[0],e[8+c]=l[1]+s[1],e[16+c]=l[2]+s[2],e[24+c]=l[3]+s[3],e[32+c]=l[3]-s[3],e[40+c]=l[2]-s[2],e[48+c]=l[1]-s[1],e[56+c]=l[0]-s[0]}(C[e])}for(var I=C,G=0;G<64;++G){var R=I[0][G],b=I[1][G],D=I[2][G];I[0][G]=R+1.5747*D,I[1][G]=R-.1873*b-.4682*D,I[2][G]=R+1.8556*b}for(let t=0;t<3;++t)!function(e,t,r){for(var n,a=0;a<64;++a){t[r+a]=p.DataUtils.toHalfFloat((n=e[a])<=1?Math.sign(n)*Math.pow(Math.abs(n),2.2):Math.sign(n)*Math.pow(9.025013291561939,Math.abs(n)-1))}}(C[t],g[t],64*e)}let i=0;for(let n=0;n<3;++n){let a=r[e.idx[n]].type;for(let e=8*t;e<8*t+E;++e){i=M[n][e];for(let t=0;t>10,r=1023&e;return(e>>15?-1:1)*(t?31===t?r?NaN:1/0:Math.pow(2,t-15)*(1+r/1024):r/1024*6103515625e-14)}function H(e,t){var r=e.getUint16(t.value,!0);return t.value+=2,r}function x(e,t){return w(H(e,t))}let J=new DataView(e),L=new Uint8Array(e),S={value:0},U=function(e,t,r){let n={};if(0x1312f76!=e.getUint32(0,!0))throw"THREE.EXRLoader: provided file doesn't appear to be in OpenEXR format.";n.version=e.getUint8(4);let a=e.getUint8(5);n.spec={singleTile:!!(2&a),longName:!!(4&a),deepFormat:!!(8&a),multiPart:!!(16&a)},r.value=8;for(var i=!0;i;){var s=E(t,r);if(0==s)i=!1;else{var o=E(t,r),l=I(e,r),A=function(e,t,r,n,a){var i,s,o,l,A,u,c;if("string"===n||"stringvector"===n||"iccProfile"===n)return i=new TextDecoder().decode(new Uint8Array(t).slice(r.value,r.value+a)),r.value=r.value+a,i;if("chlist"===n)return function(e,t,r,n){for(var a=r.value,i=[];r.valueO.height?O.height-t:O.scanlineBlockSize;let r=O.size=O.height)break;for(let e=0;e{let n;switch(e){case A.UnsignedByteType:n=new Uint8ClampedArray(t*r*4);break;case A.HalfFloatType:n=new Uint16Array(t*r*4);break;case A.UnsignedIntType:n=new Uint32Array(t*r*4);break;case A.ByteType:n=new Int8Array(t*r*4);break;case A.ShortType:n=new Int16Array(t*r*4);break;case A.IntType:n=new Int32Array(t*r*4);break;case A.FloatType:n=new Float32Array(t*r*4);break;default:throw Error("Unsupported data type")}return n};class tn{_renderer;_rendererIsDisposable=!1;_material;_scene;_camera;_quad;_renderTarget;_width;_height;_type;_colorSpace;_supportsReadPixels=!0;constructor(e){this._width=e.width,this._height=e.height,this._type=e.type,this._colorSpace=e.colorSpace;const r={format:A.RGBAFormat,depthBuffer:!1,stencilBuffer:!1,type:this._type,colorSpace:this._colorSpace,anisotropy:e.renderTargetOptions?.anisotropy!==void 0?e.renderTargetOptions?.anisotropy:1,generateMipmaps:e.renderTargetOptions?.generateMipmaps!==void 0&&e.renderTargetOptions?.generateMipmaps,magFilter:e.renderTargetOptions?.magFilter!==void 0?e.renderTargetOptions?.magFilter:A.LinearFilter,minFilter:e.renderTargetOptions?.minFilter!==void 0?e.renderTargetOptions?.minFilter:A.LinearFilter,samples:e.renderTargetOptions?.samples!==void 0?e.renderTargetOptions?.samples:void 0,wrapS:e.renderTargetOptions?.wrapS!==void 0?e.renderTargetOptions?.wrapS:A.ClampToEdgeWrapping,wrapT:e.renderTargetOptions?.wrapT!==void 0?e.renderTargetOptions?.wrapT:A.ClampToEdgeWrapping};if(this._material=e.material,e.renderer?this._renderer=e.renderer:(this._renderer=tn.instantiateRenderer(),this._rendererIsDisposable=!0),this._scene=new A.Scene,this._camera=new A.OrthographicCamera,this._camera.position.set(0,0,10),this._camera.left=-.5,this._camera.right=.5,this._camera.top=.5,this._camera.bottom=-.5,this._camera.updateProjectionMatrix(),!((e,r,n,a)=>{if(void 0!==t)return t;let i=new A.WebGLRenderTarget(1,1,a);r.setRenderTarget(i);let s=new A.Mesh(new A.PlaneGeometry,new A.MeshBasicMaterial({color:0xffffff}));r.render(s,n),r.setRenderTarget(null);let o=tr(e,i.width,i.height);return r.readRenderTargetPixels(i,0,0,i.width,i.height,o),i.dispose(),s.geometry.dispose(),s.material.dispose(),t=0!==o[0]})(this._type,this._renderer,this._camera,r)){let e;this._type===A.HalfFloatType&&(e=this._renderer.extensions.has("EXT_color_buffer_float")?A.FloatType:void 0),void 0!==e?(console.warn(`This browser does not support reading pixels from ${this._type} RenderTargets, switching to ${A.FloatType}`),this._type=e):(this._supportsReadPixels=!1,console.warn("This browser dos not support toArray or toDataTexture, calls to those methods will result in an error thrown"))}this._quad=new A.Mesh(new A.PlaneGeometry,this._material),this._quad.geometry.computeBoundingBox(),this._scene.add(this._quad),this._renderTarget=new A.WebGLRenderTarget(this.width,this.height,r),this._renderTarget.texture.mapping=e.renderTargetOptions?.mapping!==void 0?e.renderTargetOptions?.mapping:A.UVMapping}static instantiateRenderer(){let e=new tt.WebGLRenderer;return e.setSize(128,128),e}render=()=>{this._renderer.setRenderTarget(this._renderTarget);try{this._renderer.render(this._scene,this._camera)}catch(e){throw this._renderer.setRenderTarget(null),e}this._renderer.setRenderTarget(null)};toArray(){if(!this._supportsReadPixels)throw Error("Can't read pixels in this browser");let e=tr(this._type,this._width,this._height);return this._renderer.readRenderTargetPixels(this._renderTarget,0,0,this._width,this._height,e),e}toDataTexture(e){let t=new A.DataTexture(this.toArray(),this.width,this.height,A.RGBAFormat,this._type,e?.mapping||A.UVMapping,e?.wrapS||A.ClampToEdgeWrapping,e?.wrapT||A.ClampToEdgeWrapping,e?.magFilter||A.LinearFilter,e?.minFilter||A.LinearFilter,e?.anisotropy||1,A.LinearSRGBColorSpace);return t.generateMipmaps=e?.generateMipmaps!==void 0&&e?.generateMipmaps,t}disposeOnDemandRenderer(){this._renderer.setRenderTarget(null),this._rendererIsDisposable&&(this._renderer.dispose(),this._renderer.forceContextLoss())}dispose(e){this.disposeOnDemandRenderer(),e&&this.renderTarget.dispose(),this.material instanceof A.ShaderMaterial&&Object.values(this.material.uniforms).forEach(e=>{e.value instanceof A.Texture&&e.value.dispose()}),Object.values(this.material).forEach(e=>{e instanceof A.Texture&&e.dispose()}),this.material.dispose(),this._quad.geometry.dispose()}get width(){return this._width}set width(e){this._width=e,this._renderTarget.setSize(this._width,this._height)}get height(){return this._height}set height(e){this._height=e,this._renderTarget.setSize(this._width,this._height)}get renderer(){return this._renderer}get renderTarget(){return this._renderTarget}set renderTarget(e){this._renderTarget=e,this._width=e.width,this._height=e.height}get material(){return this._material}get type(){return this._type}get colorSpace(){return this._colorSpace}}var ta=A;class ti extends Error{}class ts extends Error{}let to=(e,t,r)=>{let n=RegExp(`${t}="([^"]*)"`,"i").exec(e);if(n)return n[1];let a=RegExp(`<${t}[^>]*>([\\s\\S]*?)`,"i").exec(e);if(a){let e=a[1].match(/([^<]*)<\/rdf:li>/g);return e&&3===e.length?e.map(e=>e.replace(/<\/?rdf:li>/g,"")):a[1].trim()}if(void 0!==r)return r;throw Error(`Can't find ${t} in gainmap metadata`)};class tl{options;constructor(e){this.options={debug:!!e&&void 0!==e.debug&&e.debug,extractFII:!e||void 0===e.extractFII||e.extractFII,extractNonFII:!e||void 0===e.extractNonFII||e.extractNonFII}}extract(e){return new Promise((t,r)=>{let n,a=this.options.debug,i=new DataView(e.buffer);if(65496!==i.getUint16(0))return void r(Error("Not a valid jpeg"));let s=i.byteLength,o=2,l=0;for(;o250)return void r(Error(`Found no marker after ${l} loops 😵`));if(255!==i.getUint8(o))return void r(Error(`Not a valid marker at offset 0x${o.toString(16)}, found: 0x${i.getUint8(o).toString(16)}`));if(n=i.getUint8(o+1),a&&console.log(`Marker: ${n.toString(16)}`),226===n){a&&console.log("Found APP2 marker (0xffe2)");let e=o+4;if(0x4d504600===i.getUint32(e)){let n,a=e+4;if(18761===i.getUint16(a))n=!1;else{if(19789!==i.getUint16(a))return void r(Error("No valid endianness marker found in TIFF header"));n=!0}if(42!==i.getUint16(a+2,!n))return void r(Error("Not valid TIFF data! (no 0x002A marker)"));let s=i.getUint32(a+4,!n);if(s<8)return void r(Error("Not valid TIFF data! (First offset less than 8)"));let o=a+s,l=i.getUint16(o,!n),A=o+2,u=0;for(let e=A;e{let t=(e=>{let t,r=(t="u">typeof TextDecoder?new TextDecoder().decode(e):e.toString()).indexOf("",r),n=t.slice(r,e+10);try{let e=to(n,"hdrgm:GainMapMin","0"),t=to(n,"hdrgm:GainMapMax"),r=to(n,"hdrgm:Gamma","1"),a=to(n,"hdrgm:OffsetSDR","0.015625"),i=to(n,"hdrgm:OffsetHDR","0.015625"),s=/hdrgm:HDRCapacityMin="([^"]*)"/.exec(n),o=s?s[1]:"0",l=/hdrgm:HDRCapacityMax="([^"]*)"/.exec(n);if(!l)throw Error("Incomplete gainmap metadata");let A=l[1];return{gainMapMin:Array.isArray(e)?e.map(e=>parseFloat(e)):[parseFloat(e),parseFloat(e),parseFloat(e)],gainMapMax:Array.isArray(t)?t.map(e=>parseFloat(e)):[parseFloat(t),parseFloat(t),parseFloat(t)],gamma:Array.isArray(r)?r.map(e=>parseFloat(e)):[parseFloat(r),parseFloat(r),parseFloat(r)],offsetSdr:Array.isArray(a)?a.map(e=>parseFloat(e)):[parseFloat(a),parseFloat(a),parseFloat(a)],offsetHdr:Array.isArray(i)?i.map(e=>parseFloat(e)):[parseFloat(i),parseFloat(i),parseFloat(i)],hdrCapacityMin:parseFloat(o),hdrCapacityMax:parseFloat(A)}}catch(e){}r=t.indexOf("new Promise((t,r)=>{let n=document.createElement("img");n.onload=()=>{t(n)},n.onerror=e=>{r(e)},n.src=URL.createObjectURL(e)});class tc extends ta.Loader{_renderer;_renderTargetOptions;_internalLoadingManager;_config;constructor(e,t){super(t),this._config=e,e.renderer&&(this._renderer=e.renderer),this._internalLoadingManager=new ta.LoadingManager}setRenderer(e){return this._renderer=e,this}setRenderTargetOptions(e){return this._renderTargetOptions=e,this}prepareQuadRenderer(){this._renderer||console.warn("WARNING: A Renderer was not passed to this Loader constructor or in setRenderer, the result of this Loader will need to be converted to a Data Texture with toDataTexture() before you can use it in your renderer.");let e=this._config.createMaterial({gainMapMax:[1,1,1],gainMapMin:[0,0,0],gamma:[1,1,1],offsetHdr:[1,1,1],offsetSdr:[1,1,1],hdrCapacityMax:1,hdrCapacityMin:0,maxDisplayBoost:1,gainMap:new ta.Texture,sdr:new ta.Texture});return this._config.createQuadRenderer({width:16,height:16,type:ta.HalfFloatType,colorSpace:ta.LinearSRGBColorSpace,material:e,renderer:this._renderer,renderTargetOptions:this._renderTargetOptions})}async processImages(e,t,r){let n,a,i=t?new Blob([t],{type:"image/jpeg"}):void 0,s=new Blob([e],{type:"image/jpeg"}),o=!1;if("u"new tB(e),createQuadRenderer:e=>new tn(e)},t)}async render(e,t,r,n){let{sdrImage:a,gainMapImage:i,needsFlip:s}=await this.processImages(r,n,"flipY"),{gainMap:o,sdr:l}=this.createTextures(a,i,s);this.updateQuadRenderer(e,a,o,l,t),e.render()}}class tC extends tp{load([e,t,r],n,a,i){let s,o,l,A=this.prepareQuadRenderer(),u=async()=>{if(s&&o&&l){try{await this.render(A,l,s,o)}catch(n){this.manager.itemError(e),this.manager.itemError(t),this.manager.itemError(r),"function"==typeof i&&i(n),A.disposeOnDemandRenderer();return}"function"==typeof n&&n(A),this.manager.itemEnd(e),this.manager.itemEnd(t),this.manager.itemEnd(r),A.disposeOnDemandRenderer()}},c=!0,h=0,d=0,f=!0,B=0,p=0,C=!0,m=0,g=0,M=()=>{"function"==typeof a&&a(new ProgressEvent("progress",{lengthComputable:c&&f&&C,loaded:d+p+g,total:h+B+m}))};this.manager.itemStart(e),this.manager.itemStart(t),this.manager.itemStart(r);let v=new th.FileLoader(this._internalLoadingManager);v.setResponseType("arraybuffer"),v.setRequestHeader(this.requestHeader),v.setPath(this.path),v.setWithCredentials(this.withCredentials),v.load(e,async e=>{if("string"==typeof e)throw Error("Invalid sdr buffer");s=e,await u()},e=>{c=e.lengthComputable,d=e.loaded,h=e.total,M()},t=>{this.manager.itemError(e),"function"==typeof i&&i(t)});let F=new th.FileLoader(this._internalLoadingManager);F.setResponseType("arraybuffer"),F.setRequestHeader(this.requestHeader),F.setPath(this.path),F.setWithCredentials(this.withCredentials),F.load(t,async e=>{if("string"==typeof e)throw Error("Invalid gainmap buffer");o=e,await u()},e=>{f=e.lengthComputable,p=e.loaded,B=e.total,M()},e=>{this.manager.itemError(t),"function"==typeof i&&i(e)});let E=new th.FileLoader(this._internalLoadingManager);return E.setRequestHeader(this.requestHeader),E.setPath(this.path),E.setWithCredentials(this.withCredentials),E.load(r,async e=>{if("string"!=typeof e)throw Error("Invalid metadata string");l=JSON.parse(e),await u()},e=>{C=e.lengthComputable,g=e.loaded,m=e.total,M()},e=>{this.manager.itemError(r),"function"==typeof i&&i(e)}),A}}class tm extends tp{load(e,t,r,n){let a=this.prepareQuadRenderer(),i=new th.FileLoader(this._internalLoadingManager);return i.setResponseType("arraybuffer"),i.setRequestHeader(this.requestHeader),i.setPath(this.path),i.setWithCredentials(this.withCredentials),this.manager.itemStart(e),i.load(e,async r=>{let i,s,o;if("string"==typeof r)throw Error("Invalid buffer, received [string], was expecting [ArrayBuffer]");let l=new Uint8Array(r);try{let e=await tA(l);i=e.sdr,s=e.gainMap,o=e.metadata}catch(t){if(t instanceof ts||t instanceof ti)console.warn(`Failure to reconstruct an HDR image from ${e}: Gain map metadata not found in the file, HDRJPGLoader will render the SDR jpeg`),o={gainMapMin:[0,0,0],gainMapMax:[1,1,1],gamma:[1,1,1],hdrCapacityMin:0,hdrCapacityMax:1,offsetHdr:[0,0,0],offsetSdr:[0,0,0]},i=l;else throw t}try{await this.render(a,o,i.buffer,s?.buffer)}catch(t){this.manager.itemError(e),"function"==typeof n&&n(t),a.disposeOnDemandRenderer();return}"function"==typeof t&&t(a),this.manager.itemEnd(e),a.disposeOnDemandRenderer()},r,t=>{this.manager.itemError(e),"function"==typeof n&&n(t)}),a}}let tg={apartment:"lebombo_1k.hdr",city:"potsdamer_platz_1k.hdr",dawn:"kiara_1_dawn_1k.hdr",forest:"forest_slope_1k.hdr",lobby:"st_fagans_interior_1k.hdr",night:"dikhololo_night_1k.hdr",park:"rooitou_park_1k.hdr",studio:"studio_small_03_1k.hdr",sunset:"venice_sunset_1k.hdr",warehouse:"empty_warehouse_01_1k.hdr"},tM="https://raw.githack.com/pmndrs/drei-assets/456060a26bbeb8fdf79326f224b6d99b8bcce736/hdri/",tv=["/px.png","/nx.png","/py.png","/ny.png","/pz.png","/nz.png"];function tF({files:e=tv,path:t="",preset:r,colorSpace:i,extensions:s}={}){r&&(tI(r),e=tg[r],t=tM);let o=Array.isArray(e),{extension:l,isCubemap:u}=tG(e),c=tR(l);if(!c)throw Error("useEnvironment: Unrecognized file extension: "+e);let h=(0,a.useThree)(e=>e.gl);(0,n.useLayoutEffect)(()=>{("webp"===l||"jpg"===l||"jpeg"===l)&&h.domElement.addEventListener("webglcontextlost",function(){d.useLoader.clear(c,o?[e]:e)},{once:!0})},[e,h.domElement]);let f=(0,d.useLoader)(c,o?[e]:e,e=>{("webp"===l||"jpg"===l||"jpeg"===l)&&e.setRenderer(h),null==e.setPath||e.setPath(t),s&&s(e)}),B=o?f[0]:f;if("jpg"===l||"jpeg"===l||"webp"===l){var p;B=null==(p=B.renderTarget)?void 0:p.texture}return B.mapping=u?A.CubeReflectionMapping:A.EquirectangularReflectionMapping,B.colorSpace=null!=i?i:u?"srgb":"srgb-linear",B}let tE={files:tv,path:"",preset:void 0,extensions:void 0};tF.preload=e=>{let t={...tE,...e},{files:r,path:n=""}=t,{preset:a,extensions:i}=t;a&&(tI(a),r=tg[a],n=tM);let{extension:s}=tG(r);if("webp"===s||"jpg"===s||"jpeg"===s)throw Error("useEnvironment: Preloading gainmaps is not supported");let o=tR(s);if(!o)throw Error("useEnvironment: Unrecognized file extension: "+r);d.useLoader.preload(o,Array.isArray(r)?[r]:r,e=>{null==e.setPath||e.setPath(n),i&&i(e)})};let ty={files:tv,preset:void 0};function tI(e){if(!(e in tg))throw Error("Preset must be one of: "+Object.keys(tg).join(", "))}function tG(e){var t;let r=Array.isArray(e)&&6===e.length,n=Array.isArray(e)&&3===e.length&&e.some(e=>e.endsWith("json")),a=Array.isArray(e)?e[0]:e;return{extension:r?"cube":n?"webp":a.startsWith("data:application/exr")?"exr":a.startsWith("data:application/hdr")?"hdr":a.startsWith("data:image/jpeg")?"jpg":null==(t=a.split(".").pop())||null==(t=t.split("?"))||null==(t=t.shift())?void 0:t.toLowerCase(),isCubemap:r,isGainmap:n}}function tR(e){return"cube"===e?A.CubeTextureLoader:"hdr"===e?B:"exr"===e?te:"jpg"===e||"jpeg"===e?tm:"webp"===e?tC:null}function tb(e,t,r,n,a={}){var i,s,l,A,u;let c;a={backgroundBlurriness:0,backgroundIntensity:1,backgroundRotation:[0,0,0],environmentIntensity:1,environmentRotation:[0,0,0],...a};let h=(c=u=t||r).current&&c.current.isScene?u.current:u,d=h.background,f=h.environment,B={backgroundBlurriness:h.backgroundBlurriness,backgroundIntensity:h.backgroundIntensity,backgroundRotation:null!=(i=null==(s=h.backgroundRotation)||null==s.clone?void 0:s.clone())?i:[0,0,0],environmentIntensity:h.environmentIntensity,environmentRotation:null!=(l=null==(A=h.environmentRotation)||null==A.clone?void 0:A.clone())?l:[0,0,0]};return"only"!==e&&(h.environment=n),e&&(h.background=n),(0,o.applyProps)(h,a),()=>{"only"!==e&&(h.environment=f),e&&(h.background=d),(0,o.applyProps)(h,B)}}function tD({scene:e,background:t=!1,map:r,...i}){let s=(0,a.useThree)(e=>e.scene);return n.useLayoutEffect(()=>{if(r)return tb(t,e,s,r,i)}),null}function tT({background:e=!1,scene:t,blur:r,backgroundBlurriness:i,backgroundIntensity:s,backgroundRotation:o,environmentIntensity:l,environmentRotation:A,...u}){let c=tF(u),h=(0,a.useThree)(e=>e.scene);return n.useLayoutEffect(()=>tb(e,t,h,c,{backgroundBlurriness:null!=r?r:i,backgroundIntensity:s,backgroundRotation:o,environmentIntensity:l,environmentRotation:A})),n.useEffect(()=>()=>{c.dispose()},[c]),null}function tw({children:e,near:t=.1,far:r=1e3,resolution:o=256,frames:l=1,map:u,background:c=!1,blur:h,backgroundBlurriness:d,backgroundIntensity:f,backgroundRotation:B,environmentIntensity:p,environmentRotation:C,scene:m,files:g,path:M,preset:v,extensions:F}){let E=(0,a.useThree)(e=>e.gl),y=(0,a.useThree)(e=>e.scene),I=n.useRef(null),[G]=n.useState(()=>new A.Scene),R=n.useMemo(()=>{let e=new A.WebGLCubeRenderTarget(o);return e.texture.type=A.HalfFloatType,e},[o]);n.useEffect(()=>()=>{R.dispose()},[R]),n.useLayoutEffect(()=>{if(1===l){let e=E.autoClear;E.autoClear=!0,I.current.update(E,G),E.autoClear=e}return tb(c,m,y,R.texture,{backgroundBlurriness:null!=h?h:d,backgroundIntensity:f,backgroundRotation:B,environmentIntensity:p,environmentRotation:C})},[e,G,R.texture,m,y,c,l,E]);let b=1;return(0,i.useFrame)(()=>{if(l===1/0||b(0,l.extend)({GroundProjectedEnvImpl:h}),[]),n.useEffect(()=>()=>{o.dispose()},[o]);let u=n.useMemo(()=>[A],[A]),c=null==(t=e.ground)?void 0:t.height,d=null==(a=e.ground)?void 0:a.radius,f=null!=(i=null==(s=e.ground)?void 0:s.scale)?i:1e3;return n.createElement(n.Fragment,null,n.createElement(tD,(0,r.default)({},e,{map:A})),n.createElement("groundProjectedEnvImpl",{args:u,scale:f,height:c,radius:d}))}tF.clear=e=>{let t={...ty,...e},{files:r}=t,{preset:n}=t;n&&(tI(n),r=tg[n]);let{extension:a}=tG(r),i=tR(a);if(!i)throw Error("useEnvironment: Unrecognized file extension: "+r);d.useLoader.clear(i,Array.isArray(r)?[r]:r)},e.s(["Environment",0,function(e){return e.ground?n.createElement(tH,e):e.map?n.createElement(tD,e):e.children?n.createElement(tw,e):n.createElement(tT,e)}],43257)},68911,e=>{"use strict";var t=e.i(90072);e.s(["toCreasedNormals",0,function(e,r=Math.PI/3){let n=Math.cos(r),a=(1+1e-10)*100,i=[new t.Vector3,new t.Vector3,new t.Vector3],s=new t.Vector3,o=new t.Vector3,l=new t.Vector3,A=new t.Vector3;function u(e){let t=~~(e.x*a),r=~~(e.y*a),n=~~(e.z*a);return`${t},${r},${n}`}let c=e.index?e.toNonIndexed():e,h=c.attributes.position,d={};for(let e=0,r=h.count/3;en&&A.add(t)}A.normalize(),B.setXYZ(t+e,A.x,A.y,A.z)}}return c.setAttribute("normal",B),c},"toTrianglesDrawMode",0,function(e,r){if(r===t.TrianglesDrawMode)return console.warn("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles."),e;if(r!==t.TriangleFanDrawMode&&r!==t.TriangleStripDrawMode)return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unknown draw mode:",r),e;{let n=e.getIndex();if(null===n){let t=[],r=e.getAttribute("position");if(void 0===r)return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Undefined position attribute. Processing not possible."),e;for(let e=0;e{"use strict";let t;var r=e.i(31067),n=e.i(71645),a=e.i(90072),i=e.i(68911),s=e.i(31497);function o(e){if("u">typeof TextDecoder)return new TextDecoder().decode(e);let t="";for(let r=0,n=e.length;r=2.0 are supported."));return}let l=new q(a,{path:t||this.resourcePath||"",crossOrigin:this.crossOrigin,requestHeader:this.requestHeader,manager:this.manager,ktx2Loader:this.ktx2Loader,meshoptDecoder:this.meshoptDecoder});l.fileLoader.setRequestHeader(this.requestHeader);for(let e=0;e=0&&void 0===s[t]&&console.warn('THREE.GLTFLoader: Unknown extension "'+t+'".')}}l.setExtensions(i),l.setPlugins(s),l.parse(r,n)}parseAsync(e,t){let r=this;return new Promise(function(n,a){r.parse(e,t,n,a)})}}function c(){let e={};return{get:function(t){return e[t]},add:function(t,r){e[t]=r},remove:function(t){delete e[t]},removeAll:function(){e={}}}}let h={KHR_BINARY_GLTF:"KHR_binary_glTF",KHR_DRACO_MESH_COMPRESSION:"KHR_draco_mesh_compression",KHR_LIGHTS_PUNCTUAL:"KHR_lights_punctual",KHR_MATERIALS_CLEARCOAT:"KHR_materials_clearcoat",KHR_MATERIALS_DISPERSION:"KHR_materials_dispersion",KHR_MATERIALS_IOR:"KHR_materials_ior",KHR_MATERIALS_SHEEN:"KHR_materials_sheen",KHR_MATERIALS_SPECULAR:"KHR_materials_specular",KHR_MATERIALS_TRANSMISSION:"KHR_materials_transmission",KHR_MATERIALS_IRIDESCENCE:"KHR_materials_iridescence",KHR_MATERIALS_ANISOTROPY:"KHR_materials_anisotropy",KHR_MATERIALS_UNLIT:"KHR_materials_unlit",KHR_MATERIALS_VOLUME:"KHR_materials_volume",KHR_TEXTURE_BASISU:"KHR_texture_basisu",KHR_TEXTURE_TRANSFORM:"KHR_texture_transform",KHR_MESH_QUANTIZATION:"KHR_mesh_quantization",KHR_MATERIALS_EMISSIVE_STRENGTH:"KHR_materials_emissive_strength",EXT_MATERIALS_BUMP:"EXT_materials_bump",EXT_TEXTURE_WEBP:"EXT_texture_webp",EXT_TEXTURE_AVIF:"EXT_texture_avif",EXT_MESHOPT_COMPRESSION:"EXT_meshopt_compression",EXT_MESH_GPU_INSTANCING:"EXT_mesh_gpu_instancing"};class d{constructor(e){this.parser=e,this.name=h.KHR_LIGHTS_PUNCTUAL,this.cache={refs:{},uses:{}}}_markDefs(){let e=this.parser,t=this.parser.json.nodes||[];for(let r=0,n=t.length;r=0))return null;else throw Error("THREE.GLTFLoader: setKTX2Loader must be called before loading KTX2 textures");return t.loadTextureImage(e,a.source,i)}}class R{constructor(e){this.parser=e,this.name=h.EXT_TEXTURE_WEBP,this.isSupported=null}loadTexture(e){let t=this.name,r=this.parser,n=r.json,a=n.textures[e];if(!a.extensions||!a.extensions[t])return null;let i=a.extensions[t],s=n.images[i.source],o=r.textureLoader;if(s.uri){let e=r.options.manager.getHandler(s.uri);null!==e&&(o=e)}return this.detectSupport().then(function(a){if(a)return r.loadTextureImage(e,i.source,o);if(n.extensionsRequired&&n.extensionsRequired.indexOf(t)>=0)throw Error("THREE.GLTFLoader: WebP required by asset but unsupported.");return r.loadTexture(e)})}detectSupport(){return this.isSupported||(this.isSupported=new Promise(function(e){let t=new Image;t.src="data:image/webp;base64,UklGRiIAAABXRUJQVlA4IBYAAAAwAQCdASoBAAEADsD+JaQAA3AAAAAA",t.onload=t.onerror=function(){e(1===t.height)}})),this.isSupported}}class b{constructor(e){this.parser=e,this.name=h.EXT_TEXTURE_AVIF,this.isSupported=null}loadTexture(e){let t=this.name,r=this.parser,n=r.json,a=n.textures[e];if(!a.extensions||!a.extensions[t])return null;let i=a.extensions[t],s=n.images[i.source],o=r.textureLoader;if(s.uri){let e=r.options.manager.getHandler(s.uri);null!==e&&(o=e)}return this.detectSupport().then(function(a){if(a)return r.loadTextureImage(e,i.source,o);if(n.extensionsRequired&&n.extensionsRequired.indexOf(t)>=0)throw Error("THREE.GLTFLoader: AVIF required by asset but unsupported.");return r.loadTexture(e)})}detectSupport(){return this.isSupported||(this.isSupported=new Promise(function(e){let t=new Image;t.src="data:image/avif;base64,AAAAIGZ0eXBhdmlmAAAAAGF2aWZtaWYxbWlhZk1BMUIAAADybWV0YQAAAAAAAAAoaGRscgAAAAAAAAAAcGljdAAAAAAAAAAAAAAAAGxpYmF2aWYAAAAADnBpdG0AAAAAAAEAAAAeaWxvYwAAAABEAAABAAEAAAABAAABGgAAABcAAAAoaWluZgAAAAAAAQAAABppbmZlAgAAAAABAABhdjAxQ29sb3IAAAAAamlwcnAAAABLaXBjbwAAABRpc3BlAAAAAAAAAAEAAAABAAAAEHBpeGkAAAAAAwgICAAAAAxhdjFDgQAMAAAAABNjb2xybmNseAACAAIABoAAAAAXaXBtYQAAAAAAAAABAAEEAQKDBAAAAB9tZGF0EgAKCBgABogQEDQgMgkQAAAAB8dSLfI=",t.onload=t.onerror=function(){e(1===t.height)}})),this.isSupported}}class D{constructor(e){this.name=h.EXT_MESHOPT_COMPRESSION,this.parser=e}loadBufferView(e){let t=this.parser.json,r=t.bufferViews[e];if(!r.extensions||!r.extensions[this.name])return null;{let e=r.extensions[this.name],n=this.parser.getDependency("buffer",e.buffer),a=this.parser.options.meshoptDecoder;if(!a||!a.supported)if(!(t.extensionsRequired&&t.extensionsRequired.indexOf(this.name)>=0))return null;else throw Error("THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files");return n.then(function(t){let r=e.byteOffset||0,n=e.byteLength||0,i=e.count,s=e.byteStride,o=new Uint8Array(t,r,n);return a.decodeGltfBufferAsync?a.decodeGltfBufferAsync(i,s,o,e.mode,e.filter).then(function(e){return e.buffer}):a.ready.then(function(){let t=new ArrayBuffer(i*s);return a.decodeGltfBuffer(new Uint8Array(t),i,s,o,e.mode,e.filter),t})})}}}class T{constructor(e){this.name=h.EXT_MESH_GPU_INSTANCING,this.parser=e}createNodeMesh(e){let t=this.parser.json,r=t.nodes[e];if(!r.extensions||!r.extensions[this.name]||void 0===r.mesh)return null;for(let e of t.meshes[r.mesh].primitives)if(e.mode!==P.TRIANGLES&&e.mode!==P.TRIANGLE_STRIP&&e.mode!==P.TRIANGLE_FAN&&void 0!==e.mode)return null;let n=r.extensions[this.name].attributes,i=[],s={};for(let e in n)i.push(this.parser.getDependency("accessor",n[e]).then(t=>(s[e]=t,s[e])));return i.length<1?null:(i.push(this.parser.createNodeMesh(e)),Promise.all(i).then(e=>{let t=e.pop(),r=t.isGroup?t.children:[t],n=e[0].count,i=[];for(let e of r){let t=new a.Matrix4,r=new a.Vector3,o=new a.Quaternion,l=new a.Vector3(1,1,1),A=new a.InstancedMesh(e.geometry,e.material,n);for(let e=0;e=152?{TEXCOORD_0:"uv",TEXCOORD_1:"uv1",TEXCOORD_2:"uv2",TEXCOORD_3:"uv3"}:{TEXCOORD_0:"uv",TEXCOORD_1:"uv2"},COLOR_0:"color",WEIGHTS_0:"skinWeight",JOINTS_0:"skinIndex"},X={scale:"scale",translation:"position",rotation:"quaternion",weights:"morphTargetInfluences"},j={CUBICSPLINE:void 0,LINEAR:a.InterpolateLinear,STEP:a.InterpolateDiscrete};function Y(e,t,r){for(let n in r.extensions)void 0===e[n]&&(t.userData.gltfExtensions=t.userData.gltfExtensions||{},t.userData.gltfExtensions[n]=r.extensions[n])}function W(e,t){void 0!==t.extras&&("object"==typeof t.extras?Object.assign(e.userData,t.extras):console.warn("THREE.GLTFLoader: Ignoring primitive type .extras, "+t.extras))}function Z(e){let t="",r=Object.keys(e).sort();for(let n=0,a=r.length;ntypeof navigator&&void 0!==navigator.userAgent&&(r=!0===/^((?!chrome|android).)*safari/i.test(navigator.userAgent),i=(n=navigator.userAgent.indexOf("Firefox")>-1)?navigator.userAgent.match(/Firefox\/([0-9]+)\./)[1]:-1),"u"{let r=this.associations.get(e);for(let[n,i]of(null!=r&&this.associations.set(t,r),e.children.entries()))a(i,t.children[n])};return a(r,n),n.name+="_instance_"+e.uses[t]++,n}_invokeOne(e){let t=Object.values(this.plugins);t.push(this);for(let r=0;r=2&&s.setY(t,h[e*l+1]),l>=3&&s.setZ(t,h[e*l+2]),l>=4&&s.setW(t,h[e*l+3]),l>=5)throw Error("THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.")}}return s})}loadTexture(e){let t=this.json,r=this.options,n=t.textures[e].source,a=t.images[n],i=this.textureLoader;if(a.uri){let e=r.manager.getHandler(a.uri);null!==e&&(i=e)}return this.loadTextureImage(e,n,i)}loadTextureImage(e,t,r){let n=this,i=this.json,s=i.textures[e],o=i.images[t],l=(o.uri||o.bufferView)+":"+s.sampler;if(this.textureCache[l])return this.textureCache[l];let A=this.loadImageSource(t,r).then(function(t){t.flipY=!1,t.name=s.name||o.name||"",""===t.name&&"string"==typeof o.uri&&!1===o.uri.startsWith("data:image/")&&(t.name=o.uri);let r=(i.samplers||{})[s.sampler]||{};return t.magFilter=K[r.magFilter]||a.LinearFilter,t.minFilter=K[r.minFilter]||a.LinearMipmapLinearFilter,t.wrapS=k[r.wrapS]||a.RepeatWrapping,t.wrapT=k[r.wrapT]||a.RepeatWrapping,n.associations.set(t,{textures:e}),t}).catch(function(){return null});return this.textureCache[l]=A,A}loadImageSource(e,t){let r=this.json,n=this.options;if(void 0!==this.sourceCache[e])return this.sourceCache[e].then(e=>e.clone());let i=r.images[e],s=self.URL||self.webkitURL,o=i.uri||"",l=!1;if(void 0!==i.bufferView)o=this.getDependency("bufferView",i.bufferView).then(function(e){l=!0;let t=new Blob([e],{type:i.mimeType});return o=s.createObjectURL(t)});else if(void 0===i.uri)throw Error("THREE.GLTFLoader: Image "+e+" is missing URI and bufferView");let A=Promise.resolve(o).then(function(e){return new Promise(function(r,i){let s=r;!0===t.isImageBitmapLoader&&(s=function(e){let t=new a.Texture(e);t.needsUpdate=!0,r(t)}),t.load(a.LoaderUtils.resolveURL(e,n.path),s,void 0,i)})}).then(function(e){var t;return!0===l&&s.revokeObjectURL(o),W(e,i),e.userData.mimeType=i.mimeType||((t=i.uri).search(/\.jpe?g($|\?)/i)>0||0===t.search(/^data\:image\/jpeg/)?"image/jpeg":t.search(/\.webp($|\?)/i)>0||0===t.search(/^data\:image\/webp/)?"image/webp":"image/png"),e}).catch(function(e){throw console.error("THREE.GLTFLoader: Couldn't load texture",o),e});return this.sourceCache[e]=A,A}assignTexture(e,t,r,n){let a=this;return this.getDependency("texture",r.index).then(function(i){if(!i)return null;if(void 0!==r.texCoord&&r.texCoord>0&&((i=i.clone()).channel=r.texCoord),a.extensions[h.KHR_TEXTURE_TRANSFORM]){let e=void 0!==r.extensions?r.extensions[h.KHR_TEXTURE_TRANSFORM]:void 0;if(e){let t=a.associations.get(i);i=a.extensions[h.KHR_TEXTURE_TRANSFORM].extendTexture(i,e),a.associations.set(i,t)}}return void 0!==n&&("number"==typeof n&&(n=3001===n?l:A),"colorSpace"in i?i.colorSpace=n:i.encoding=n===l?3001:3e3),e[t]=i,i})}assignFinalMaterial(e){let t=e.geometry,r=e.material,n=void 0===t.attributes.tangent,i=void 0!==t.attributes.color,s=void 0===t.attributes.normal;if(e.isPoints){let e="PointsMaterial:"+r.uuid,t=this.cache.get(e);t||(t=new a.PointsMaterial,a.Material.prototype.copy.call(t,r),t.color.copy(r.color),t.map=r.map,t.sizeAttenuation=!1,this.cache.add(e,t)),r=t}else if(e.isLine){let e="LineBasicMaterial:"+r.uuid,t=this.cache.get(e);t||(t=new a.LineBasicMaterial,a.Material.prototype.copy.call(t,r),t.color.copy(r.color),t.map=r.map,this.cache.add(e,t)),r=t}if(n||i||s){let e="ClonedMaterial:"+r.uuid+":";n&&(e+="derivative-tangents:"),i&&(e+="vertex-colors:"),s&&(e+="flat-shading:");let t=this.cache.get(e);t||(t=r.clone(),i&&(t.vertexColors=!0),s&&(t.flatShading=!0),n&&(t.normalScale&&(t.normalScale.y*=-1),t.clearcoatNormalScale&&(t.clearcoatNormalScale.y*=-1)),this.cache.add(e,t),this.associations.set(t,this.associations.get(r))),r=t}e.material=r}getMaterialType(){return a.MeshStandardMaterial}loadMaterial(e){let t,r=this,n=this.json,i=this.extensions,s=n.materials[e],o={},u=s.extensions||{},c=[];if(u[h.KHR_MATERIALS_UNLIT]){let e=i[h.KHR_MATERIALS_UNLIT];t=e.getMaterialType(),c.push(e.extendParams(o,s,r))}else{let n=s.pbrMetallicRoughness||{};if(o.color=new a.Color(1,1,1),o.opacity=1,Array.isArray(n.baseColorFactor)){let e=n.baseColorFactor;o.color.setRGB(e[0],e[1],e[2],A),o.opacity=e[3]}void 0!==n.baseColorTexture&&c.push(r.assignTexture(o,"map",n.baseColorTexture,l)),o.metalness=void 0!==n.metallicFactor?n.metallicFactor:1,o.roughness=void 0!==n.roughnessFactor?n.roughnessFactor:1,void 0!==n.metallicRoughnessTexture&&(c.push(r.assignTexture(o,"metalnessMap",n.metallicRoughnessTexture)),c.push(r.assignTexture(o,"roughnessMap",n.metallicRoughnessTexture))),t=this._invokeOne(function(t){return t.getMaterialType&&t.getMaterialType(e)}),c.push(Promise.all(this._invokeAll(function(t){return t.extendMaterialParams&&t.extendMaterialParams(e,o)})))}!0===s.doubleSided&&(o.side=a.DoubleSide);let d=s.alphaMode||"OPAQUE";if("BLEND"===d?(o.transparent=!0,o.depthWrite=!1):(o.transparent=!1,"MASK"===d&&(o.alphaTest=void 0!==s.alphaCutoff?s.alphaCutoff:.5)),void 0!==s.normalTexture&&t!==a.MeshBasicMaterial&&(c.push(r.assignTexture(o,"normalMap",s.normalTexture)),o.normalScale=new a.Vector2(1,1),void 0!==s.normalTexture.scale)){let e=s.normalTexture.scale;o.normalScale.set(e,e)}if(void 0!==s.occlusionTexture&&t!==a.MeshBasicMaterial&&(c.push(r.assignTexture(o,"aoMap",s.occlusionTexture)),void 0!==s.occlusionTexture.strength&&(o.aoMapIntensity=s.occlusionTexture.strength)),void 0!==s.emissiveFactor&&t!==a.MeshBasicMaterial){let e=s.emissiveFactor;o.emissive=new a.Color().setRGB(e[0],e[1],e[2],A)}return void 0!==s.emissiveTexture&&t!==a.MeshBasicMaterial&&c.push(r.assignTexture(o,"emissiveMap",s.emissiveTexture,l)),Promise.all(c).then(function(){let n=new t(o);return s.name&&(n.name=s.name),W(n,s),r.associations.set(n,{materials:e}),s.extensions&&Y(i,n,s),n})}createUniqueName(e){let t=a.PropertyBinding.sanitizeNodeName(e||"");return t in this.nodeNamesUsed?t+"_"+ ++this.nodeNamesUsed[t]:(this.nodeNamesUsed[t]=0,t)}loadGeometries(e){let t=this,r=this.extensions,n=this.primitiveCache,i=[];for(let s=0,o=e.length;s0&&function(e,t){if(e.updateMorphTargets(),void 0!==t.weights)for(let r=0,n=t.weights.length;r1?new a.Group:1===t.length?t[0]:new a.Object3D)!==t[0])for(let e=0,r=t.length;e{let t=new Map;for(let[e,r]of n.associations)(e instanceof a.Material||e instanceof a.Texture)&&t.set(e,r);return e.traverse(e=>{let r=n.associations.get(e);null!=r&&t.set(e,r)}),t})(i),i})}_createAnimationTracks(e,t,r,n,i){let s,o=[],l=e.name?e.name:e.uuid,A=[];switch(X[i.path]===X.weights?e.traverse(function(e){e.morphTargetInfluences&&A.push(e.name?e.name:e.uuid)}):A.push(l),X[i.path]){case X.weights:s=a.NumberKeyframeTrack;break;case X.rotation:s=a.QuaternionKeyframeTrack;break;case X.position:case X.scale:s=a.VectorKeyframeTrack;break;default:s=1===r.itemSize?a.NumberKeyframeTrack:a.VectorKeyframeTrack}let u=void 0!==n.interpolation?j[n.interpolation]:a.InterpolateLinear,c=this._getArrayFromAccessor(r);for(let e=0,r=A.length;e{let r={attributeIDs:this.defaultAttributeIDs,attributeTypes:this.defaultAttributeTypes,useUniqueIDs:!1};this.decodeGeometry(e,r).then(t).catch(n)},r,n)}decodeDracoFile(e,t,r,n){let a={attributeIDs:r||this.defaultAttributeIDs,attributeTypes:n||this.defaultAttributeTypes,useUniqueIDs:!!r};this.decodeGeometry(e,a).then(t)}decodeGeometry(e,t){let r;for(let e in t.attributeTypes){let r=t.attributeTypes[e];void 0!==r.BYTES_PER_ELEMENT&&(t.attributeTypes[e]=r.name)}let n=JSON.stringify(t);if(et.has(e)){let t=et.get(e);if(t.key===n)return t.promise;if(0===e.byteLength)throw Error("THREE.DRACOLoader: Unable to re-decode a buffer with different settings. Buffer has already been transferred.")}let a=this.workerNextTaskID++,i=e.byteLength,s=this._getWorker(a,i).then(n=>(r=n,new Promise((n,i)=>{r._callbacks[a]={resolve:n,reject:i},r.postMessage({type:"decode",id:a,taskConfig:t,buffer:e},[e])}))).then(e=>this._createGeometry(e.geometry));return s.catch(()=>!0).then(()=>{r&&a&&this._releaseTask(r,a)}),et.set(e,{key:n,promise:s}),s}_createGeometry(e){let t=new ee.BufferGeometry;e.index&&t.setIndex(new ee.BufferAttribute(e.index.array,1));for(let r=0;r{r.load(e,t,void 0,n)})}preload(){return this._initDecoder(),this}_initDecoder(){if(this.decoderPending)return this.decoderPending;let e="object"!=typeof WebAssembly||"js"===this.decoderConfig.type,t=[];return e?t.push(this._loadLibrary("draco_decoder.js","text")):(t.push(this._loadLibrary("draco_wasm_wrapper.js","text")),t.push(this._loadLibrary("draco_decoder.wasm","arraybuffer"))),this.decoderPending=Promise.all(t).then(t=>{let r=t[0];e||(this.decoderConfig.wasmBinary=t[1]);let n=en.toString(),a=["/* draco decoder */",r,"\n/* worker */",n.substring(n.indexOf("{")+1,n.lastIndexOf("}"))].join("\n");this.workerSourceURL=URL.createObjectURL(new Blob([a]))}),this.decoderPending}_getWorker(e,t){return this._initDecoder().then(()=>{if(this.workerPool.lengtht._taskLoad?-1:1});let r=this.workerPool[this.workerPool.length-1];return r._taskCosts[e]=t,r._taskLoad+=t,r})}_releaseTask(e,t){e._taskLoad-=e._taskCosts[t],delete e._callbacks[t],delete e._taskCosts[t]}debug(){console.log("Task load: ",this.workerPool.map(e=>e._taskLoad))}dispose(){for(let e=0;e{let t=e.draco,r=new t.Decoder,s=new t.DecoderBuffer;s.Init(new Int8Array(a),a.byteLength);try{let e=function(e,t,r,n){var a,i,s;let o,l,A,u,c,h,d=n.attributeIDs,f=n.attributeTypes,B=t.GetEncodedGeometryType(r);if(B===e.TRIANGULAR_MESH)c=new e.Mesh,h=t.DecodeBufferToMesh(r,c);else if(B===e.POINT_CLOUD)c=new e.PointCloud,h=t.DecodeBufferToPointCloud(r,c);else throw Error("THREE.DRACOLoader: Unexpected geometry type.");if(!h.ok()||0===c.ptr)throw Error("THREE.DRACOLoader: Decoding failed: "+h.error_msg());let p={index:null,attributes:[]};for(let r in d){let a,i,s=self[f[r]];if(n.useUniqueIDs)i=d[r],a=t.GetAttributeByUniqueId(c,i);else{if(-1===(i=t.GetAttributeId(c,e[d[r]])))continue;a=t.GetAttribute(c,i)}p.attributes.push(function(e,t,r,n,a,i){let s=i.num_components(),o=r.num_points()*s,l=o*a.BYTES_PER_ELEMENT,A=function(e,t){switch(t){case Float32Array:return e.DT_FLOAT32;case Int8Array:return e.DT_INT8;case Int16Array:return e.DT_INT16;case Int32Array:return e.DT_INT32;case Uint8Array:return e.DT_UINT8;case Uint16Array:return e.DT_UINT16;case Uint32Array:return e.DT_UINT32}}(e,a),u=e._malloc(l);t.GetAttributeDataArrayForAllPoints(r,i,A,l,u);let c=new a(e.HEAPF32.buffer,u,o).slice();return e._free(u),{name:n,array:c,itemSize:s}}(e,t,c,r,s,a))}return B===e.TRIANGULAR_MESH&&(a=e,i=t,s=c,o=3*s.num_faces(),l=4*o,A=a._malloc(l),i.GetTrianglesUInt32Array(s,l,A),u=new Uint32Array(a.HEAPF32.buffer,A,o).slice(),a._free(A),p.index={array:u,itemSize:1}),e.destroy(c),p}(t,r,s,i),a=e.attributes.map(e=>e.array.buffer);e.index&&a.push(e.index.array.buffer),self.postMessage({type:"decode",id:n.id,geometry:e},a)}catch(e){console.error(e),self.postMessage({type:"error",id:n.id,error:e.message})}finally{t.destroy(s),t.destroy(r)}})}}}var ea=e.i(60602);let ei=function(e){let t=new Map,r=new Map,n=e.clone();return function e(t,r,n){n(t,r);for(let a=0;a{let d={keys:u,deep:s,inject:A,castShadow:o,receiveShadow:l};if(Array.isArray(t=n.useMemo(()=>{if(!1===e&&!Array.isArray(t)){let e=!1;if(t.traverse(t=>{t.isSkinnedMesh&&(e=!0)}),e)return ei(t)}return t},[t,e])))return n.createElement("group",(0,r.default)({},c,{ref:h}),t.map(e=>n.createElement(es,(0,r.default)({key:e.uuid,object:e},d))),i);let{children:f,...B}=function(e,{keys:t=["near","far","color","distance","decay","penumbra","angle","intensity","skeleton","visible","castShadow","receiveShadow","morphTargetDictionary","morphTargetInfluences","name","geometry","material","position","rotation","scale","up","userData","bindMode","bindMatrix","bindMatrixInverse","skeleton"],deep:r,inject:i,castShadow:s,receiveShadow:o}){let l={};for(let r of t)l[r]=e[r];return r&&(l.geometry&&"materialsOnly"!==r&&(l.geometry=l.geometry.clone()),l.material&&"geometriesOnly"!==r&&(l.material=l.material.clone())),i&&(l="function"==typeof i?{...l,children:i(e)}:n.isValidElement(i)?{...l,children:i}:{...l,...i}),e instanceof a.Mesh&&(s&&(l.castShadow=!0),o&&(l.receiveShadow=!0)),l}(t,d),p=t.type[0].toLowerCase()+t.type.slice(1);return n.createElement(p,(0,r.default)({},B,c,{ref:h}),t.children.map(e=>"Bone"===e.type?n.createElement("primitive",(0,r.default)({key:e.uuid,object:e},d)):n.createElement(es,(0,r.default)({key:e.uuid,object:e},d,{isChild:!0}))),i,f)}),eo=null,el="https://www.gstatic.com/draco/versioned/decoders/1.5.5/";function eA(e=!0,r=!0,n){return a=>{n&&n(a),e&&(eo||(eo=new er),eo.setDecoderPath("string"==typeof e?e:el),a.setDRACOLoader(eo)),r&&a.setMeshoptDecoder((()=>{let e;if(t)return t;let r=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,3,2,0,0,5,3,1,0,1,12,1,0,10,22,2,12,0,65,0,65,0,65,0,252,10,0,0,11,7,0,65,0,253,15,26,11]),n=new Uint8Array([32,0,65,253,3,1,2,34,4,106,6,5,11,8,7,20,13,33,12,16,128,9,116,64,19,113,127,15,10,21,22,14,255,66,24,54,136,107,18,23,192,26,114,118,132,17,77,101,130,144,27,87,131,44,45,74,156,154,70,167]);if("object"!=typeof WebAssembly)return{supported:!1};let a="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";WebAssembly.validate(r)&&(a="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");let i=WebAssembly.instantiate(function(e){let t=new Uint8Array(e.length);for(let r=0;r96?n-71:n>64?n-65:n>47?n+4:n>46?63:62}let r=0;for(let a=0;a{(e=t.instance).exports.__wasm_call_ctors()});function s(t,r,n,a,i,s){let o=e.exports.sbrk,l=n+3&-4,A=o(l*a),u=o(i.length),c=new Uint8Array(e.exports.memory.buffer);c.set(i,u);let h=t(A,n,a,u,i.length);if(0===h&&s&&s(A,l,a),r.set(c.subarray(A,A+n*a)),o(A-o(0)),0!==h)throw Error(`Malformed buffer data: ${h}`)}let o={0:"",1:"meshopt_decodeFilterOct",2:"meshopt_decodeFilterQuat",3:"meshopt_decodeFilterExp",NONE:"",OCTAHEDRAL:"meshopt_decodeFilterOct",QUATERNION:"meshopt_decodeFilterQuat",EXPONENTIAL:"meshopt_decodeFilterExp"},l={0:"meshopt_decodeVertexBuffer",1:"meshopt_decodeIndexBuffer",2:"meshopt_decodeIndexSequence",ATTRIBUTES:"meshopt_decodeVertexBuffer",TRIANGLES:"meshopt_decodeIndexBuffer",INDICES:"meshopt_decodeIndexSequence"};return t={ready:i,supported:!0,decodeVertexBuffer(t,r,n,a,i){s(e.exports.meshopt_decodeVertexBuffer,t,r,n,a,e.exports[o[i]])},decodeIndexBuffer(t,r,n,a){s(e.exports.meshopt_decodeIndexBuffer,t,r,n,a)},decodeIndexSequence(t,r,n,a){s(e.exports.meshopt_decodeIndexSequence,t,r,n,a)},decodeGltfBuffer(t,r,n,a,i,A){s(e.exports[l[i]],t,r,n,a,e.exports[o[A]])}}})())}}let eu=(e,t,r,n)=>(0,ea.useLoader)(u,e,eA(t,r,n));eu.preload=(e,t,r,n)=>ea.useLoader.preload(u,e,eA(t,r,n)),eu.clear=e=>ea.useLoader.clear(u,e),eu.setDecoderPath=e=>{el=e},e.s(["useGLTF",0,eu],78140)}]); \ No newline at end of file diff --git a/build/_next/static/chunks/08ym5qvn8x_06.css b/build/_next/static/chunks/08ym5qvn8x_06.css new file mode 100644 index 0000000..e3b11a9 --- /dev/null +++ b/build/_next/static/chunks/08ym5qvn8x_06.css @@ -0,0 +1 @@ +.OfficeMap-module__ToIo3G__root{border-radius:inherit;isolation:isolate;background:#0b0b0b;width:100%;height:100%;position:relative;overflow:hidden}.OfficeMap-module__ToIo3G__map{width:100%;height:100%;font-family:var(--font-manrope), system-ui, -apple-system, sans-serif;background:#0b0b0b}.OfficeMap-module__ToIo3G__map:focus-visible{outline-offset:-2px;outline:2px solid #c01227}.OfficeMap-module__ToIo3G__controls{z-index:600;pointer-events:none;flex-wrap:wrap;justify-content:center;gap:8px;display:flex;position:absolute;top:14px;left:12px;right:12px}.OfficeMap-module__ToIo3G__controlBtn{pointer-events:auto;appearance:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#f5f5f5;font-family:var(--font-manrope), system-ui, -apple-system, sans-serif;letter-spacing:.01em;cursor:pointer;white-space:nowrap;background:#0f0f11d1;border:1px solid #ffffff2e;border-radius:999px;margin:0;padding:9px 16px;font-size:13px;font-weight:700;line-height:1;transition:background-color .2s,border-color .2s,color .2s,transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s}.OfficeMap-module__ToIo3G__controlBtn:hover{background:#c01227e6;border-color:#c01227;transform:translateY(-1px)}.OfficeMap-module__ToIo3G__controlBtn:focus-visible{outline-offset:2px;outline:2px solid #fff}.OfficeMap-module__ToIo3G__controlBtnActive,.OfficeMap-module__ToIo3G__controlBtnActive:hover{color:#fff;background:#c01227;border-color:#c01227;box-shadow:0 6px 18px #c0122773}.OfficeMap-module__ToIo3G__controlBtnHq{border-color:#c012278c;box-shadow:0 0 0 1px #c0122740,0 4px 14px #c0122733}.OfficeMap-module__ToIo3G__controlBtnHq.OfficeMap-module__ToIo3G__controlBtnActive{box-shadow:0 6px 20px #c012278c}@media (max-width:480px){.OfficeMap-module__ToIo3G__controls{flex-wrap:nowrap;gap:5px;top:12px}.OfficeMap-module__ToIo3G__controlBtn{padding:7px 9px;font-size:11px}}.OfficeMap-module__ToIo3G__markerIcon{filter:drop-shadow(0 4px 6px #0000008c);background:0 0;border:0;transition:transform .18s cubic-bezier(.16,1,.3,1)}.OfficeMap-module__ToIo3G__markerIcon:hover,.OfficeMap-module__ToIo3G__markerIcon:focus-visible{transform:translateY(-3px)scale(1.06)}.OfficeMap-module__ToIo3G__markerIconHq{filter:drop-shadow(0 0 9px #c01227d9)drop-shadow(0 5px 7px #0000008c);background:0 0;border:0;transition:transform .18s cubic-bezier(.16,1,.3,1)}.OfficeMap-module__ToIo3G__markerIconHq svg{z-index:2;position:relative}.OfficeMap-module__ToIo3G__markerIconHq:hover,.OfficeMap-module__ToIo3G__markerIconHq:focus-visible{transform:translateY(-3px)scale(1.05)}.OfficeMap-module__ToIo3G__pinPulse{z-index:1;pointer-events:none;background:#c0122780;border-radius:50%;width:18px;height:18px;margin:-9px 0 0 -9px;animation:2.2s ease-out infinite OfficeMap-module__ToIo3G__hqPulse;position:absolute;top:19px;left:20px}@keyframes OfficeMap-module__ToIo3G__hqPulse{0%{opacity:.75;transform:scale(.6)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(3)}}.OfficeMap-module__ToIo3G__root .leaflet-container{background:#0b0b0b}.OfficeMap-module__ToIo3G__root .leaflet-bar{border:1px solid #ffffff1f;box-shadow:0 6px 18px #0006}.OfficeMap-module__ToIo3G__root .leaflet-bar a{color:#f5f5f5;background:#0f0f11eb;border-bottom-color:#ffffff1f;transition:background-color .2s,color .2s}.OfficeMap-module__ToIo3G__root .leaflet-bar a:hover{color:#fff;background:#c01227}.OfficeMap-module__ToIo3G__root .leaflet-bar a:focus-visible{outline-offset:2px;outline:2px solid #c01227}.OfficeMap-module__ToIo3G__root .leaflet-control-attribution{color:#ffffffa6;-webkit-backdrop-filter:blur(6px);background:#0a0a0ab8;border-radius:6px 0 0;padding:2px 8px;font-size:11px}.OfficeMap-module__ToIo3G__root .leaflet-control-attribution a{color:#ffffffd9}.OfficeMap-module__ToIo3G__root .leaflet-popup-content-wrapper{color:#fff;background:#141416;border:1px solid #ffffff1a;border-radius:12px;box-shadow:0 18px 40px #0000008c}.OfficeMap-module__ToIo3G__root .leaflet-popup-content-wrapper{border-radius:10px}.OfficeMap-module__ToIo3G__root .leaflet-popup-content{margin:0;font-size:13px;line-height:1.4}.OfficeMap-module__ToIo3G__root .leaflet-popup-tip{background:#141416;border:1px solid #ffffff1a}.OfficeMap-module__ToIo3G__tip{text-align:left;min-width:120px;max-width:200px;font-family:var(--font-manrope), system-ui, -apple-system, sans-serif;flex-direction:column;gap:2px;padding:8px 12px;display:flex}.OfficeMap-module__ToIo3G__tipTitle{letter-spacing:-.01em;color:#fff;white-space:nowrap;font-size:13px;font-weight:800}.OfficeMap-module__ToIo3G__skeleton{border-radius:inherit;background-color:#101012;background-image:linear-gradient(100deg,#fff0 30%,#ffffff0d 50%,#fff0 70%),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:200% 100%;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;width:100%;height:100%;animation:1.4s ease-in-out infinite OfficeMap-module__ToIo3G__shimmer}@keyframes OfficeMap-module__ToIo3G__shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.OfficeMap-module__ToIo3G__skeleton{animation:none}.OfficeMap-module__ToIo3G__markerIcon,.OfficeMap-module__ToIo3G__markerIconHq{transition:none}.OfficeMap-module__ToIo3G__pinPulse{opacity:.45;animation:none}}.OfficeMap-module__ToIo3G__errorOverlay{z-index:500;text-align:center;color:#ffffffd1;font-family:var(--font-manrope), system-ui, sans-serif;background:#101012;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;display:flex;position:absolute;inset:0}.OfficeMap-module__ToIo3G__errorTitle{color:#fff;margin:0;font-size:clamp(15px,2.4vw,18px);font-weight:800}.OfficeMap-module__ToIo3G__errorText{color:#fff9;max-width:38ch;margin:0;font-size:13px;line-height:1.55}.OfficeMap-module__ToIo3G__errorList{flex-wrap:wrap;justify-content:center;gap:8px 12px;margin:4px 0 0;padding:0;list-style:none;display:flex}.OfficeMap-module__ToIo3G__errorList li{color:#f1f1f1;align-items:center;gap:7px;font-size:13px;font-weight:700;display:inline-flex}.OfficeMap-module__ToIo3G__errorList li:before{content:"";background:#c01227;border-radius:50%;width:7px;height:7px}.OfficeMap-module__ToIo3G__srOnly{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden} diff --git a/build/_next/static/chunks/0~ck806-rgc-9.js b/build/_next/static/chunks/091.e3qn0x~hc.js similarity index 86% rename from build/_next/static/chunks/0~ck806-rgc-9.js rename to build/_next/static/chunks/091.e3qn0x~hc.js index 3c35991..1499a3c 100644 --- a/build/_next/static/chunks/0~ck806-rgc-9.js +++ b/build/_next/static/chunks/091.e3qn0x~hc.js @@ -1,7 +1,14 @@ -(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,32322,(t,e,i)=>{t.e,function(t){"use strict";function e(t){var e,i,n,o;for(i=1,n=arguments.length;itypeof L&&L&&L.Mixin){t=z(t)?t:[t];for(var e=0;e0?Math.floor(t):Math.ceil(t)};function F(t,e,i){return t instanceof D?t:z(t)?new D(t[0],t[1]):null==t?t:"object"==typeof t&&"x"in t&&"y"in t?new D(t.x,t.y):new D(t,e,i)}function W(t,e){if(t)for(var i=e?[t,e]:t,n=0,o=i.length;n=this.min.x&&i.x<=this.max.x&&e.y>=this.min.y&&i.y<=this.max.y},intersects:function(t){t=U(t);var e=this.min,i=this.max,n=t.min,o=t.max,s=o.x>=e.x&&n.x<=i.x,r=o.y>=e.y&&n.y<=i.y;return s&&r},overlaps:function(t){t=U(t);var e=this.min,i=this.max,n=t.min,o=t.max,s=o.x>e.x&&n.xe.y&&n.y=n.lat&&i.lat<=o.lat&&e.lng>=n.lng&&i.lng<=o.lng},intersects:function(t){t=q(t);var e=this._southWest,i=this._northEast,n=t.getSouthWest(),o=t.getNorthEast(),s=o.lat>=e.lat&&n.lat<=i.lat,r=o.lng>=e.lng&&n.lng<=i.lng;return s&&r},overlaps:function(t){t=q(t);var e=this._southWest,i=this._northEast,n=t.getSouthWest(),o=t.getNorthEast(),s=o.lat>e.lat&&n.late.lng&&n.lngtypeof orientation||tB("mobile"),tT=!window.PointerEvent&&window.MSPointerEvent,tM=!!(window.PointerEvent||tT),tz="ontouchstart"in window||!!window.TouchEvent,tC=!window.L_NO_TOUCH&&(tz||tM),tS=(window.devicePixelRatio||window.screen.deviceXDPI/window.screen.logicalXDPI)>1,tZ=function(){var t=!1;try{var e=Object.defineProperty({},"passive",{get:function(){t=!0}});window.addEventListener("testPassiveEventSupport",v,e),window.removeEventListener("testPassiveEventSupport",v,e)}catch(t){}return t}(),tE=!!document.createElement("canvas").getContext,tk=!!(document.createElementNS&&ti("svg").createSVGRect),tO=!!tk&&((u=document.createElement("div")).innerHTML="","http://www.w3.org/2000/svg"===(u.firstChild&&u.firstChild.namespaceURI)),tA=!tk&&function(){try{var t=document.createElement("div");t.innerHTML='';var e=t.firstChild;return e.style.behavior="url(#default#VML)",e&&"object"==typeof e.adj}catch(t){return!1}}();function tB(t){return navigator.userAgent.toLowerCase().indexOf(t)>=0}var tI={ie:ts,ielt9:tr,edge:ta,webkit:th,android:tl,android23:tu,androidStock:td,opera:t_,chrome:tp,gecko:tm,safari:tf,phantom:tg,opera12:tv,win:ty,ie3d:tx,webkit3d:tw,gecko3d:tb,any3d:tP,mobile:tL,mobileWebkit:tL&&th,mobileWebkit3d:tL&&tw,msPointer:tT,pointer:tM,touch:tC,touchNative:tz,mobileOpera:tL&&t_,mobileGecko:tL&&tm,retina:tS,passiveEvents:tZ,canvas:tE,svg:tk,vml:tA,inlineSvg:tO,mac:0===navigator.platform.indexOf("Mac"),linux:0===navigator.platform.indexOf("Linux")},tR=tI.msPointer?"MSPointerDown":"pointerdown",tN=tI.msPointer?"MSPointerMove":"pointermove",tj=tI.msPointer?"MSPointerUp":"pointerup",tD=tI.msPointer?"MSPointerCancel":"pointercancel",tH={touchstart:tR,touchmove:tN,touchend:tj,touchcancel:tD},tF={touchstart:function(t,e){e.MSPOINTER_TYPE_TOUCH&&e.pointerType===e.MSPOINTER_TYPE_TOUCH&&eb(e),tK(t,e)},touchmove:tK,touchend:tK,touchcancel:tK},tW={},tU=!1;function tV(t){tW[t.pointerId]=t}function tq(t){tW[t.pointerId]&&(tW[t.pointerId]=t)}function tG(t){delete tW[t.pointerId]}function tK(t,e){if(e.pointerType!==(e.MSPOINTER_TYPE_MOUSE||"mouse")){for(var i in e.touches=[],tW)e.touches.push(tW[i]);e.changedTouches=[e],t(e)}}var tY=ee(["transform","webkitTransform","OTransform","MozTransform","msTransform"]),tJ=ee(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),tX="webkitTransition"===tJ||"OTransition"===tJ?tJ+"End":"transitionend";function t$(t){return"string"==typeof t?document.getElementById(t):t}function tQ(t,e){var i=t.style[e]||t.currentStyle&&t.currentStyle[e];if((!i||"auto"===i)&&document.defaultView){var n=document.defaultView.getComputedStyle(t,null);i=n?n[e]:null}return"auto"===i?null:i}function t0(t,e,i){var n=document.createElement(t);return n.className=e||"",i&&i.appendChild(n),n}function t1(t){var e=t.parentNode;e&&e.removeChild(t)}function t2(t){for(;t.firstChild;)t.removeChild(t.firstChild)}function t3(t){var e=t.parentNode;e&&e.lastChild!==t&&e.appendChild(t)}function t5(t){var e=t.parentNode;e&&e.firstChild!==t&&e.insertBefore(t,e.firstChild)}function t8(t,e){if(void 0!==t.classList)return t.classList.contains(e);var i=t6(t);return i.length>0&&RegExp("(^|\\s)"+e+"(\\s|$)").test(i)}function t4(t,e){if(void 0!==t.classList)for(var i=w(e),n=0,o=i.length;n0?2*window.devicePixelRatio:1;function ez(t){return tI.edge?t.wheelDeltaY/2:t.deltaY&&0===t.deltaMode?-t.deltaY/eM:t.deltaY&&1===t.deltaMode?-(20*t.deltaY):t.deltaY&&2===t.deltaMode?-(60*t.deltaY):t.deltaX||t.deltaZ?0:t.wheelDelta?(t.wheelDeltaY||t.wheelDelta)/2:t.detail&&32765>Math.abs(t.detail)?-(20*t.detail):t.detail?-(60*(t.detail/32765)):0}function eC(t,e){var i=e.relatedTarget;if(!i)return!0;try{for(;i&&i!==t;)i=i.parentNode}catch(t){return!1}return i!==t}var eS=j.extend({run:function(t,e,i,n){this.stop(),this._el=t,this._inProgress=!0,this._duration=i||.25,this._easeOutPower=1/Math.max(n||.5,.2),this._startPos=eo(t),this._offset=e.subtract(this._startPos),this._startTime=+new Date,this.fire("start"),this._animate()},stop:function(){this._inProgress&&(this._step(!0),this._complete())},_animate:function(){this._animId=B(this._animate,this),this._step()},_step:function(t){var e=new Date-this._startTime,i=1e3*this._duration;ethis.options.maxZoom))?this.setZoom(t):this},panInsideBounds:function(t,e){this._enforcingBounds=!0;var i=this.getCenter(),n=this._limitCenter(i,this._zoom,q(t));return i.equals(n)||this.panTo(n,e),this._enforcingBounds=!1,this},panInside:function(t,e){var i=F((e=e||{}).paddingTopLeft||e.padding||[0,0]),n=F(e.paddingBottomRight||e.padding||[0,0]),o=this.project(this.getCenter()),s=this.project(t),r=this.getPixelBounds(),a=U([r.min.add(i),r.max.subtract(n)]),h=a.getSize();if(!a.contains(s)){this._enforcingBounds=!0;var l=s.subtract(a.getCenter()),u=a.extend(s).getSize().subtract(h);o.x+=l.x<0?-u.x:u.x,o.y+=l.y<0?-u.y:u.y,this.panTo(this.unproject(o),e),this._enforcingBounds=!1}return this},invalidateSize:function(t){if(!this._loaded)return this;t=e({animate:!1,pan:!0},!0===t?{animate:!0}:t);var i=this.getSize();this._sizeChanged=!0,this._lastCenter=null;var n=this.getSize(),o=i.divideBy(2).round(),s=n.divideBy(2).round(),r=o.subtract(s);return r.x||r.y?(t.animate&&t.pan?this.panBy(r):(t.pan&&this._rawPanBy(r),this.fire("move"),t.debounceMoveend?(clearTimeout(this._sizeTimer),this._sizeTimer=setTimeout(_(this.fire,this,"moveend"),200)):this.fire("moveend")),this.fire("resize",{oldSize:i,newSize:n})):this},stop:function(){return this.setZoom(this._limitZoom(this._zoom)),this.options.zoomSnap||this.fire("viewreset"),this._stop()},locate:function(t){if(t=this._locateOptions=e({timeout:1e4,watch:!1},t),!("geolocation"in navigator))return this._handleGeolocationError({code:0,message:"Geolocation not supported."}),this;var i=_(this._handleGeolocationResponse,this),n=_(this._handleGeolocationError,this);return t.watch?this._locationWatchId=navigator.geolocation.watchPosition(i,n,t):navigator.geolocation.getCurrentPosition(i,n,t),this},stopLocate:function(){return navigator.geolocation&&navigator.geolocation.clearWatch&&navigator.geolocation.clearWatch(this._locationWatchId),this._locateOptions&&(this._locateOptions.setView=!1),this},_handleGeolocationError:function(t){if(this._container._leaflet_id){var e=t.code,i=t.message||(1===e?"permission denied":2===e?"position unavailable":"timeout");this._locateOptions.setView&&!this._loaded&&this.fitWorld(),this.fire("locationerror",{code:e,message:"Geolocation error: "+i+"."})}},_handleGeolocationResponse:function(t){if(this._container._leaflet_id){var e=new G(t.coords.latitude,t.coords.longitude),i=e.toBounds(2*t.coords.accuracy),n=this._locateOptions;if(n.setView){var o=this.getBoundsZoom(i);this.setView(e,n.maxZoom?Math.min(o,n.maxZoom):o)}var s={latlng:e,bounds:i,timestamp:t.timestamp};for(var r in t.coords)"number"==typeof t.coords[r]&&(s[r]=t.coords[r]);this.fire("locationfound",s)}},addHandler:function(t,e){if(!e)return this;var i=this[t]=new e(this);return this._handlers.push(i),this.options[t]&&i.enable(),this},remove:function(){var t;if(this._initEvents(!0),this.options.maxBounds&&this.off("moveend",this._panInsideMaxBounds),this._containerId!==this._container._leaflet_id)throw Error("Map container is being reused by another instance");try{delete this._container._leaflet_id,delete this._containerId}catch(t){this._container._leaflet_id=void 0,this._containerId=void 0}for(t in void 0!==this._locationWatchId&&this.stopLocate(),this._stop(),t1(this._mapPane),this._clearControlPos&&this._clearControlPos(),this._resizeRequest&&(I(this._resizeRequest),this._resizeRequest=null),this._clearHandlers(),this._loaded&&this.fire("unload"),this._layers)this._layers[t].remove();for(t in this._panes)t1(this._panes[t]);return this._layers=[],this._panes=[],delete this._mapPane,delete this._renderer,this},createPane:function(t,e){var i=t0("div","leaflet-pane"+(t?" leaflet-"+t.replace("Pane","")+"-pane":""),e||this._mapPane);return t&&(this._panes[t]=i),i},getCenter:function(){return(this._checkIfLoaded(),this._lastCenter&&!this._moved())?this._lastCenter.clone():this.layerPointToLatLng(this._getCenterLayerPoint())},getZoom:function(){return this._zoom},getBounds:function(){var t=this.getPixelBounds();return new V(this.unproject(t.getBottomLeft()),this.unproject(t.getTopRight()))},getMinZoom:function(){return void 0===this.options.minZoom?this._layersMinZoom||0:this.options.minZoom},getMaxZoom:function(){return void 0===this.options.maxZoom?void 0===this._layersMaxZoom?1/0:this._layersMaxZoom:this.options.maxZoom},getBoundsZoom:function(t,e,i){t=q(t),i=F(i||[0,0]);var n=this.getZoom()||0,o=this.getMinZoom(),s=this.getMaxZoom(),r=t.getNorthWest(),a=t.getSouthEast(),h=this.getSize().subtract(i),l=U(this.project(a,n),this.project(r,n)).getSize(),u=tI.any3d?this.options.zoomSnap:1,c=h.x/l.x,d=h.y/l.y,_=e?Math.max(c,d):Math.min(c,d);return n=this.getScaleZoom(_,n),u&&(n=u/100*Math.round(n/(u/100)),n=e?Math.ceil(n/u)*u:Math.floor(n/u)*u),Math.max(o,Math.min(s,n))},getSize:function(){return(!this._size||this._sizeChanged)&&(this._size=new D(this._container.clientWidth||0,this._container.clientHeight||0),this._sizeChanged=!1),this._size.clone()},getPixelBounds:function(t,e){var i=this._getTopLeftPoint(t,e);return new W(i,i.add(this.getSize()))},getPixelOrigin:function(){return this._checkIfLoaded(),this._pixelOrigin},getPixelWorldBounds:function(t){return this.options.crs.getProjectedBounds(void 0===t?this.getZoom():t)},getPane:function(t){return"string"==typeof t?this._panes[t]:t},getPanes:function(){return this._panes},getContainer:function(){return this._container},getZoomScale:function(t,e){var i=this.options.crs;return e=void 0===e?this._zoom:e,i.scale(t)/i.scale(e)},getScaleZoom:function(t,e){var i=this.options.crs;e=void 0===e?this._zoom:e;var n=i.zoom(t*i.scale(e));return isNaN(n)?1/0:n},project:function(t,e){return e=void 0===e?this._zoom:e,this.options.crs.latLngToPoint(K(t),e)},unproject:function(t,e){return e=void 0===e?this._zoom:e,this.options.crs.pointToLatLng(F(t),e)},layerPointToLatLng:function(t){var e=F(t).add(this.getPixelOrigin());return this.unproject(e)},latLngToLayerPoint:function(t){return this.project(K(t))._round()._subtract(this.getPixelOrigin())},wrapLatLng:function(t){return this.options.crs.wrapLatLng(K(t))},wrapLatLngBounds:function(t){return this.options.crs.wrapLatLngBounds(q(t))},distance:function(t,e){return this.options.crs.distance(K(t),K(e))},containerPointToLayerPoint:function(t){return F(t).subtract(this._getMapPanePos())},layerPointToContainerPoint:function(t){return F(t).add(this._getMapPanePos())},containerPointToLatLng:function(t){var e=this.containerPointToLayerPoint(F(t));return this.layerPointToLatLng(e)},latLngToContainerPoint:function(t){return this.layerPointToContainerPoint(this.latLngToLayerPoint(K(t)))},mouseEventToContainerPoint:function(t){return eT(t,this._container)},mouseEventToLayerPoint:function(t){return this.containerPointToLayerPoint(this.mouseEventToContainerPoint(t))},mouseEventToLatLng:function(t){return this.layerPointToLatLng(this.mouseEventToLayerPoint(t))},_initContainer:function(t){var e=this._container=t$(t);if(e){if(e._leaflet_id)throw Error("Map container is already initialized.")}else throw Error("Map container not found.");ed(e,"scroll",this._onScroll,this),this._containerId=m(e)},_initLayout:function(){var t=this._container;this._fadeAnimated=this.options.fadeAnimation&&tI.any3d,t4(t,"leaflet-container"+(tI.touch?" leaflet-touch":"")+(tI.retina?" leaflet-retina":"")+(tI.ielt9?" leaflet-oldie":"")+(tI.safari?" leaflet-safari":"")+(this._fadeAnimated?" leaflet-fade-anim":""));var e=tQ(t,"position");"absolute"!==e&&"relative"!==e&&"fixed"!==e&&"sticky"!==e&&(t.style.position="relative"),this._initPanes(),this._initControlPos&&this._initControlPos()},_initPanes:function(){var t=this._panes={};this._paneRenderers={},this._mapPane=this.createPane("mapPane",this._container),en(this._mapPane,new D(0,0)),this.createPane("tilePane"),this.createPane("overlayPane"),this.createPane("shadowPane"),this.createPane("markerPane"),this.createPane("tooltipPane"),this.createPane("popupPane"),this.options.markerZoomAnimation||(t4(t.markerPane,"leaflet-zoom-hide"),t4(t.shadowPane,"leaflet-zoom-hide"))},_resetView:function(t,e,i){en(this._mapPane,new D(0,0));var n=!this._loaded;this._loaded=!0,e=this._limitZoom(e),this.fire("viewprereset");var o=this._zoom!==e;this._moveStart(o,i)._move(t,e)._moveEnd(o),this.fire("viewreset"),n&&this.fire("load")},_moveStart:function(t,e){return t&&this.fire("zoomstart"),e||this.fire("movestart"),this},_move:function(t,e,i,n){void 0===e&&(e=this._zoom);var o=this._zoom!==e;return this._zoom=e,this._lastCenter=t,this._pixelOrigin=this._getNewPixelOrigin(t),n?i&&i.pinch&&this.fire("zoom",i):((o||i&&i.pinch)&&this.fire("zoom",i),this.fire("move",i)),this},_moveEnd:function(t){return t&&this.fire("zoomend"),this.fire("moveend")},_stop:function(){return I(this._flyToFrame),this._panAnim&&this._panAnim.stop(),this},_rawPanBy:function(t){en(this._mapPane,this._getMapPanePos().subtract(t))},_getZoomSpan:function(){return this.getMaxZoom()-this.getMinZoom()},_panInsideMaxBounds:function(){this._enforcingBounds||this.panInsideBounds(this.options.maxBounds)},_checkIfLoaded:function(){if(!this._loaded)throw Error("Set map center and zoom first.")},_initEvents:function(t){this._targets={},this._targets[m(this._container)]=this;var e=t?ep:ed;e(this._container,"click dblclick mousedown mouseup mouseover mouseout mousemove contextmenu keypress keydown keyup",this._handleDOMEvent,this),this.options.trackResize&&e(window,"resize",this._onResize,this),tI.any3d&&this.options.transform3DLimit&&(t?this.off:this.on).call(this,"moveend",this._onMoveEnd)},_onResize:function(){I(this._resizeRequest),this._resizeRequest=B(function(){this.invalidateSize({debounceMoveend:!0})},this)},_onScroll:function(){this._container.scrollTop=0,this._container.scrollLeft=0},_onMoveEnd:function(){var t=this._getMapPanePos();Math.max(Math.abs(t.x),Math.abs(t.y))>=this.options.transform3DLimit&&this._resetView(this.getCenter(),this.getZoom())},_findEventTargets:function(t,e){for(var i,n=[],o="mouseout"===e||"mouseover"===e,s=t.target||t.srcElement,r=!1;s;){if((i=this._targets[m(s)])&&("click"===e||"preclick"===e)&&this._draggableMoved(i)){r=!0;break}if(i&&i.listens(e,!0)&&(o&&!eC(s,t)||(n.push(i),o)))break;if(s===this._container)break;s=s.parentNode}return!n.length&&!r&&!o&&this.listens(e,!0)&&(n=[this]),n},_isClickDisabled:function(t){for(;t&&t!==this._container;){if(t._leaflet_disable_click)return!0;t=t.parentNode}},_handleDOMEvent:function(t){var e=t.target||t.srcElement;if(!(!this._loaded||e._leaflet_disable_events||"click"===t.type&&this._isClickDisabled(e))){var i=t.type;"mousedown"===i&&eh(e),this._fireDOMEvent(t,i)}},_mouseEvents:["click","dblclick","mouseover","mouseout","contextmenu"],_fireDOMEvent:function(t,i,n){if("click"===t.type){var o=e({},t);o.type="preclick",this._fireDOMEvent(o,o.type,n)}var s=this._findEventTargets(t,i);if(n){for(var r=[],a=0;a=Math.abs(r.x)&&1>=Math.abs(r.y)?t:this.unproject(n.add(r),e)},_limitOffset:function(t,e){if(!e)return t;var i=this.getPixelBounds(),n=new W(i.min.add(t),i.max.add(t));return t.add(this._getBoundsOffset(n,e))},_getBoundsOffset:function(t,e,i){var n=U(this.project(e.getNorthEast(),i),this.project(e.getSouthWest(),i)),o=n.min.subtract(t.min),s=n.max.subtract(t.max);return new D(this._rebound(o.x,-s.x),this._rebound(o.y,-s.y))},_rebound:function(t,e){return t+e>0?Math.round(t-e)/2:Math.max(0,Math.ceil(t))-Math.max(0,Math.floor(e))},_limitZoom:function(t){var e=this.getMinZoom(),i=this.getMaxZoom(),n=tI.any3d?this.options.zoomSnap:1;return n&&(t=Math.round(t/n)*n),Math.max(e,Math.min(i,t))},_onPanTransitionStep:function(){this.fire("move")},_onPanTransitionEnd:function(){t7(this._mapPane,"leaflet-pan-anim"),this.fire("moveend")},_tryAnimatedPan:function(t,e){var i=this._getCenterOffset(t)._trunc();return(!0===(e&&e.animate)||!!this.getSize().contains(i))&&(this.panBy(i,e),!0)},_createAnimProxy:function(){var t=this._proxy=t0("div","leaflet-proxy leaflet-zoom-animated");this._panes.mapPane.appendChild(t),this.on("zoomanim",function(t){var e=this._proxy.style[tY];ei(this._proxy,this.project(t.center,t.zoom),this.getZoomScale(t.zoom,1)),e===this._proxy.style[tY]&&this._animatingZoom&&this._onZoomTransitionEnd()},this),this.on("load moveend",this._animMoveEnd,this),this._on("unload",this._destroyAnimProxy,this)},_destroyAnimProxy:function(){t1(this._proxy),this.off("load moveend",this._animMoveEnd,this),delete this._proxy},_animMoveEnd:function(){var t=this.getCenter(),e=this.getZoom();ei(this._proxy,this.project(t,e),this.getZoomScale(e,1))},_catchTransitionEnd:function(t){this._animatingZoom&&t.propertyName.indexOf("transform")>=0&&this._onZoomTransitionEnd()},_nothingToAnimate:function(){return!this._container.getElementsByClassName("leaflet-zoom-animated").length},_tryAnimatedZoom:function(t,e,i){if(this._animatingZoom)return!0;if(i=i||{},!this._zoomAnimated||!1===i.animate||this._nothingToAnimate()||Math.abs(e-this._zoom)>this.options.zoomAnimationThreshold)return!1;var n=this.getZoomScale(e),o=this._getCenterOffset(t)._divideBy(1-1/n);return(!0===i.animate||!!this.getSize().contains(o))&&(B(function(){this._moveStart(!0,i.noMoveStart||!1)._animateZoom(t,e,!0)},this),!0)},_animateZoom:function(t,e,i,n){this._mapPane&&(i&&(this._animatingZoom=!0,this._animateToCenter=t,this._animateToZoom=e,t4(this._mapPane,"leaflet-zoom-anim")),this.fire("zoomanim",{center:t,zoom:e,noUpdate:n}),this._tempFireZoomEvent||(this._tempFireZoomEvent=this._zoom!==this._animateToZoom),this._move(this._animateToCenter,this._animateToZoom,void 0,!0),setTimeout(_(this._onZoomTransitionEnd,this),250))},_onZoomTransitionEnd:function(){this._animatingZoom&&(this._mapPane&&t7(this._mapPane,"leaflet-zoom-anim"),this._animatingZoom=!1,this._move(this._animateToCenter,this._animateToZoom,void 0,!0),this._tempFireZoomEvent&&this.fire("zoom"),delete this._tempFireZoomEvent,this.fire("move"),this._moveEnd(!0))}}),eE=R.extend({options:{position:"topright"},initialize:function(t){b(this,t)},getPosition:function(){return this.options.position},setPosition:function(t){var e=this._map;return e&&e.removeControl(this),this.options.position=t,e&&e.addControl(this),this},getContainer:function(){return this._container},addTo:function(t){this.remove(),this._map=t;var e=this._container=this.onAdd(t),i=this.getPosition(),n=t._controlCorners[i];return t4(e,"leaflet-control"),-1!==i.indexOf("bottom")?n.insertBefore(e,n.firstChild):n.appendChild(e),this._map.on("unload",this.remove,this),this},remove:function(){return this._map&&(t1(this._container),this.onRemove&&this.onRemove(this._map),this._map.off("unload",this.remove,this),this._map=null),this},_refocusOnMap:function(t){this._map&&t&&t.screenX>0&&t.screenY>0&&this._map.getContainer().focus()}}),ek=function(t){return new eE(t)};eZ.include({addControl:function(t){return t.addTo(this),this},removeControl:function(t){return t.remove(),this},_initControlPos:function(){var t=this._controlCorners={},e="leaflet-",i=this._controlContainer=t0("div",e+"control-container",this._container);function n(n,o){t[n+o]=t0("div",e+n+" "+e+o,i)}n("top","left"),n("top","right"),n("bottom","left"),n("bottom","right")},_clearControlPos:function(){for(var t in this._controlCorners)t1(this._controlCorners[t]);t1(this._controlContainer),delete this._controlCorners,delete this._controlContainer}});var eO=eE.extend({options:{collapsed:!0,position:"topright",autoZIndex:!0,hideSingleBase:!1,sortLayers:!1,sortFunction:function(t,e,i,n){return i1,this._baseLayersList.style.display=t?"":"none"),this._separator.style.display=e&&t?"":"none",this},_onLayerChange:function(t){this._handlingClick||this._update();var e=this._getLayer(m(t.target)),i=e.overlay?"add"===t.type?"overlayadd":"overlayremove":"add"===t.type?"baselayerchange":null;i&&this._map.fire(i,e)},_createRadioElement:function(t,e){var i=document.createElement("div");return i.innerHTML='",i.firstChild},_addItem:function(t){var e,i=document.createElement("label"),n=this._map.hasLayer(t.layer);t.overlay?((e=document.createElement("input")).type="checkbox",e.className="leaflet-control-layers-selector",e.defaultChecked=n):e=this._createRadioElement("leaflet-base-layers_"+m(this),n),this._layerControlInputs.push(e),e.layerId=m(t.layer),ed(e,"click",this._onInputClick,this);var o=document.createElement("span");o.innerHTML=" "+t.name;var s=document.createElement("span");return i.appendChild(s),s.appendChild(e),s.appendChild(o),(t.overlay?this._overlaysList:this._baseLayersList).appendChild(i),this._checkDisabledLayers(),i},_onInputClick:function(){if(!this._preventClick){var t,e,i=this._layerControlInputs,n=[],o=[];this._handlingClick=!0;for(var s=i.length-1;s>=0;s--)t=i[s],e=this._getLayer(t.layerId).layer,t.checked?n.push(e):t.checked||o.push(e);for(s=0;s=0;o--)t=i[o],e=this._getLayer(t.layerId).layer,t.disabled=void 0!==e.options.minZoom&&ne.options.maxZoom},_expandIfNotCollapsed:function(){return this._map&&!this.options.collapsed&&this.expand(),this},_expandSafely:function(){var t=this._section;this._preventClick=!0,ed(t,"click",eb),this.expand();var e=this;setTimeout(function(){ep(t,"click",eb),e._preventClick=!1})}}),eA=eE.extend({options:{position:"topleft",zoomInText:'',zoomInTitle:"Zoom in",zoomOutText:'',zoomOutTitle:"Zoom out"},onAdd:function(t){var e="leaflet-control-zoom",i=t0("div",e+" leaflet-bar"),n=this.options;return this._zoomInButton=this._createButton(n.zoomInText,n.zoomInTitle,e+"-in",i,this._zoomIn),this._zoomOutButton=this._createButton(n.zoomOutText,n.zoomOutTitle,e+"-out",i,this._zoomOut),this._updateDisabled(),t.on("zoomend zoomlevelschange",this._updateDisabled,this),i},onRemove:function(t){t.off("zoomend zoomlevelschange",this._updateDisabled,this)},disable:function(){return this._disabled=!0,this._updateDisabled(),this},enable:function(){return this._disabled=!1,this._updateDisabled(),this},_zoomIn:function(t){!this._disabled&&this._map._zoomthis._map.getMinZoom()&&this._map.zoomOut(this._map.options.zoomDelta*(t.shiftKey?3:1))},_createButton:function(t,e,i,n,o){var s=t0("a",i,n);return s.innerHTML=t,s.href="#",s.title=e,s.setAttribute("role","button"),s.setAttribute("aria-label",e),ew(s),ed(s,"click",eP),ed(s,"click",o,this),ed(s,"click",this._refocusOnMap,this),s},_updateDisabled:function(){var t=this._map,e="leaflet-disabled";t7(this._zoomInButton,e),t7(this._zoomOutButton,e),this._zoomInButton.setAttribute("aria-disabled","false"),this._zoomOutButton.setAttribute("aria-disabled","false"),(this._disabled||t._zoom===t.getMinZoom())&&(t4(this._zoomOutButton,e),this._zoomOutButton.setAttribute("aria-disabled","true")),(this._disabled||t._zoom===t.getMaxZoom())&&(t4(this._zoomInButton,e),this._zoomInButton.setAttribute("aria-disabled","true"))}});eZ.mergeOptions({zoomControl:!0}),eZ.addInitHook(function(){this.options.zoomControl&&(this.zoomControl=new eA,this.addControl(this.zoomControl))});var eB=eE.extend({options:{position:"bottomleft",maxWidth:100,metric:!0,imperial:!0},onAdd:function(t){var e="leaflet-control-scale",i=t0("div",e),n=this.options;return this._addScales(n,e+"-line",i),t.on(n.updateWhenIdle?"moveend":"move",this._update,this),t.whenReady(this._update,this),i},onRemove:function(t){t.off(this.options.updateWhenIdle?"moveend":"move",this._update,this)},_addScales:function(t,e,i){t.metric&&(this._mScale=t0("div",e,i)),t.imperial&&(this._iScale=t0("div",e,i))},_update:function(){var t=this._map,e=t.getSize().y/2,i=t.distance(t.containerPointToLatLng([0,e]),t.containerPointToLatLng([this.options.maxWidth,e]));this._updateScales(i)},_updateScales:function(t){this.options.metric&&t&&this._updateMetric(t),this.options.imperial&&t&&this._updateImperial(t)},_updateMetric:function(t){var e=this._getRoundNum(t);this._updateScale(this._mScale,e<1e3?e+" m":e/1e3+" km",e/t)},_updateImperial:function(t){var e,i,n,o=3.2808399*t;o>5280?(e=o/5280,i=this._getRoundNum(e),this._updateScale(this._iScale,i+" mi",i/e)):(n=this._getRoundNum(o),this._updateScale(this._iScale,n+" ft",n/o))},_updateScale:function(t,e,i){t.style.width=Math.round(this.options.maxWidth*i)+"px",t.innerHTML=e},_getRoundNum:function(t){var e=Math.pow(10,(Math.floor(t)+"").length-1),i=t/e;return e*(i=i>=10?10:i>=5?5:i>=3?3:i>=2?2:1)}}),eI=eE.extend({options:{position:"bottomright",prefix:''+(tI.inlineSvg?' ':"")+"Leaflet"},initialize:function(t){b(this,t),this._attributions={}},onAdd:function(t){for(var e in t.attributionControl=this,this._container=t0("div","leaflet-control-attribution"),ew(this._container),t._layers)t._layers[e].getAttribution&&this.addAttribution(t._layers[e].getAttribution());return this._update(),t.on("layeradd",this._addAttribution,this),this._container},onRemove:function(t){t.off("layeradd",this._addAttribution,this)},_addAttribution:function(t){t.layer.getAttribution&&(this.addAttribution(t.layer.getAttribution()),t.layer.once("remove",function(){this.removeAttribution(t.layer.getAttribution())},this))},setPrefix:function(t){return this.options.prefix=t,this._update(),this},addAttribution:function(t){return t&&(this._attributions[t]||(this._attributions[t]=0),this._attributions[t]++,this._update()),this},removeAttribution:function(t){return t&&this._attributions[t]&&(this._attributions[t]--,this._update()),this},_update:function(){if(this._map){var t=[];for(var e in this._attributions)this._attributions[e]&&t.push(e);var i=[];this.options.prefix&&i.push(this.options.prefix),t.length&&i.push(t.join(", ")),this._container.innerHTML=i.join(' ')}}});eZ.mergeOptions({attributionControl:!0}),eZ.addInitHook(function(){this.options.attributionControl&&new eI().addTo(this)}),eE.Layers=eO,eE.Zoom=eA,eE.Scale=eB,eE.Attribution=eI,ek.layers=function(t,e,i){return new eO(t,e,i)},ek.zoom=function(t){return new eA(t)},ek.scale=function(t){return new eB(t)},ek.attribution=function(t){return new eI(t)};var eR=R.extend({initialize:function(t){this._map=t},enable:function(){return this._enabled||(this._enabled=!0,this.addHooks()),this},disable:function(){return this._enabled&&(this._enabled=!1,this.removeHooks()),this},enabled:function(){return!!this._enabled}});eR.addTo=function(t,e){return t.addHandler(e,this),this};var eN=tI.touch?"touchstart mousedown":"mousedown",ej=j.extend({options:{clickTolerance:3},initialize:function(t,e,i,n){b(this,n),this._element=t,this._dragStartTarget=e||t,this._preventOutline=i},enable:function(){this._enabled||(ed(this._dragStartTarget,eN,this._onDown,this),this._enabled=!0)},disable:function(){this._enabled&&(ej._dragging===this&&this.finishDrag(!0),ep(this._dragStartTarget,eN,this._onDown,this),this._enabled=!1,this._moved=!1)},_onDown:function(t){if(!(!this._enabled||(this._moved=!1,t8(this._element,"leaflet-zoom-anim")))){if(t.touches&&1!==t.touches.length){ej._dragging===this&&this.finishDrag();return}if(!ej._dragging&&!t.shiftKey&&(1===t.which||1===t.button||t.touches)&&(ej._dragging=this,this._preventOutline&&eh(this._element),er(),i(),!this._moving)){this.fire("down");var e=t.touches?t.touches[0]:t,n=eu(this._element);this._startPoint=new D(e.clientX,e.clientY),this._startPos=eo(this._element),this._parentScale=ec(n);var o="mousedown"===t.type;ed(document,o?"mousemove":"touchmove",this._onMove,this),ed(document,o?"mouseup":"touchend touchcancel",this._onUp,this)}}},_onMove:function(t){if(this._enabled){if(t.touches&&t.touches.length>1){this._moved=!0;return}var e=t.touches&&1===t.touches.length?t.touches[0]:t,i=new D(e.clientX,e.clientY)._subtract(this._startPoint);(i.x||i.y)&&(Math.abs(i.x)+Math.abs(i.y)typeof Uint8Array?Uint8Array:Array)(i);n[0]=n[i-1]=1,function t(e,i,n,o,s){var r,a,h,l=0;for(a=o+1;a<=s-1;a++)(h=eK(e[a],e[o],e[s],!0))>l&&(r=a,l=h);l>n&&(i[r]=1,t(e,i,n,o,r),t(e,i,n,r,s))}(t,n,e,0,i-1);var o,s=[];for(o=0;oe&&(i.push(t[n]),o=n);return oe.max.x&&(i|=2),t.ye.max.y&&(i|=8),i}function eK(t,e,i,n){var o,s=e.x,r=e.y,a=i.x-s,h=i.y-r,l=a*a+h*h;return l>0&&((o=((t.x-s)*a+(t.y-r)*h)/l)>1?(s=i.x,r=i.y):o>0&&(s+=a*o,r+=h*o)),a=t.x-s,h=t.y-r,n?a*a+h*h:new D(s,r)}function eY(t){return!z(t[0])||"object"!=typeof t[0][0]&&void 0!==t[0][0]}function eJ(t){return console.warn("Deprecated use of _flat, please use L.LineUtil.isFlat instead."),eY(t)}function eX(t,e){if(!t||0===t.length)throw Error("latlngs not passed");eY(t)||(console.warn("latlngs are not flat! Only the first ring will be used"),t=t[0]);var i,n,o,s,r,a,h,l,u=K([0,0]),c=q(t);c.getNorthWest().distanceTo(c.getSouthWest())*c.getNorthEast().distanceTo(c.getNorthWest())<1700&&(u=eF(t));var d=t.length,_=[];for(i=0;in){h=(s-n)/o,l=[a.x-h*(a.x-r.x),a.y-h*(a.y-r.y)];break}var m=e.unproject(F(l));return K([m.lat+u.lat,m.lng+u.lng])}var e$={project:function(t){return new D(t.lng,t.lat)},unproject:function(t){return new G(t.y,t.x)},bounds:new W([-180,-90],[180,90])},eQ={R:6378137,R_MINOR:6356752.314245179,bounds:new W([-20037508.34279,-15496570.73972],[20037508.34279,18764656.23138]),project:function(t){var e=Math.PI/180,i=this.R,n=t.lat*e,o=this.R_MINOR/i,s=Math.sqrt(1-o*o),r=s*Math.sin(n);return n=-i*Math.log(Math.max(Math.tan(Math.PI/4-n/2)/Math.pow((1-r)/(1+r),s/2),1e-10)),new D(t.lng*e*i,n)},unproject:function(t){for(var e,i=180/Math.PI,n=this.R,o=this.R_MINOR/n,s=Math.sqrt(1-o*o),r=Math.exp(-t.y/n),a=Math.PI/2-2*Math.atan(r),h=0,l=.1;h<15&&Math.abs(l)>1e-7;h++)l=Math.PI/2-2*Math.atan(r*(e=Math.pow((1-(e=s*Math.sin(a)))/(1+e),s/2)))-a,a+=l;return new G(a*i,t.x*i/n)}},e0=e({},J,{code:"EPSG:3395",projection:eQ,transformation:Q(c=.5/(Math.PI*eQ.R),.5,-c,.5)}),e1=e({},J,{code:"EPSG:4326",projection:e$,transformation:Q(1/180,1,-1/180,.5)}),e2=e({},Y,{projection:e$,transformation:Q(1,0,-1,0),scale:function(t){return Math.pow(2,t)},zoom:function(t){return Math.log(t)/Math.LN2},distance:function(t,e){var i=e.lng-t.lng,n=e.lat-t.lat;return Math.sqrt(i*i+n*n)},infinite:!0});Y.Earth=J,Y.EPSG3395=e0,Y.EPSG3857=tt,Y.EPSG900913=te,Y.EPSG4326=e1,Y.Simple=e2;var e3=j.extend({options:{pane:"overlayPane",attribution:null,bubblingMouseEvents:!0},addTo:function(t){return t.addLayer(this),this},remove:function(){return this.removeFrom(this._map||this._mapToAdd)},removeFrom:function(t){return t&&t.removeLayer(this),this},getPane:function(t){return this._map.getPane(t?this.options[t]||t:this.options.pane)},addInteractiveTarget:function(t){return this._map._targets[m(t)]=this,this},removeInteractiveTarget:function(t){return delete this._map._targets[m(t)],this},getAttribution:function(){return this.options.attribution},_layerAdd:function(t){var e=t.target;if(e.hasLayer(this)){if(this._map=e,this._zoomAnimated=e._zoomAnimated,this.getEvents){var i=this.getEvents();e.on(i,this),this.once("remove",function(){e.off(i,this)},this)}this.onAdd(e),this.fire("add"),e.fire("layeradd",{layer:this})}}});eZ.include({addLayer:function(t){if(!t._layerAdd)throw Error("The provided object is not a Layer.");var e=m(t);return this._layers[e]||(this._layers[e]=t,t._mapToAdd=this,t.beforeAdd&&t.beforeAdd(this),this.whenReady(t._layerAdd,t)),this},removeLayer:function(t){var e=m(t);return this._layers[e]&&(this._loaded&&t.onRemove(this),delete this._layers[e],this._loaded&&(this.fire("layerremove",{layer:t}),t.fire("remove")),t._map=t._mapToAdd=null),this},hasLayer:function(t){return m(t)in this._layers},eachLayer:function(t,e){for(var i in this._layers)t.call(e,this._layers[i]);return this},_addLayers:function(t){t=t?z(t)?t:[t]:[];for(var e=0,i=t.length;ethis._layersMaxZoom&&this.setZoom(this._layersMaxZoom),void 0===this.options.minZoom&&this._layersMinZoom&&this.getZoom()=2&&e[0]instanceof G&&e[0].equals(e[i-1])&&e.pop(),e},_setLatLngs:function(t){io.prototype._setLatLngs.call(this,t),eY(this._latlngs)&&(this._latlngs=[this._latlngs])},_defaultShape:function(){return eY(this._latlngs[0])?this._latlngs[0]:this._latlngs[0][0]},_clipPoints:function(){var t=this._renderer._bounds,e=this.options.weight,i=new D(e,e);if(t=new W(t.min.subtract(i),t.max.add(i)),this._parts=[],this._pxBounds&&this._pxBounds.intersects(t)){if(this.options.noClip){this._parts=this._rings;return}for(var n,o=0,s=this._rings.length;ot.y!=n.y>t.y&&t.x<(n.x-i.x)*(t.y-i.y)/(n.y-i.y)+i.x&&(l=!l);return l||io.prototype._containsPoint.call(this,t,!0)}}),ir=e8.extend({initialize:function(t,e){b(this,e),this._layers={},t&&this.addData(t)},addData:function(t){var e,i,n,o=z(t)?t:t.features;if(o){for(e=0,i=o.length;e0&&o.push(o[0].slice()),o}function i_(t,i){return t.feature?e({},t.feature,{geometry:i}):ip(i)}function ip(t){return"Feature"===t.type||"FeatureCollection"===t.type?t:{type:"Feature",properties:{},geometry:t}}var im={toGeoJSON:function(t){return i_(this,{type:"Point",coordinates:ic(this.getLatLng(),t)})}};function ig(t,e){return new ir(t,e)}e6.include(im),ii.include(im),ie.include(im),io.include({toGeoJSON:function(t){var e=!eY(this._latlngs),i=id(this._latlngs,+!!e,!1,t);return i_(this,{type:(e?"Multi":"")+"LineString",coordinates:i})}}),is.include({toGeoJSON:function(t){var e=!eY(this._latlngs),i=e&&!eY(this._latlngs[0]),n=id(this._latlngs,i?2:+!!e,!0,t);return e||(n=[n]),i_(this,{type:(i?"Multi":"")+"Polygon",coordinates:n})}}),e5.include({toMultiPoint:function(t){var e=[];return this.eachLayer(function(i){e.push(i.toGeoJSON(t).geometry.coordinates)}),i_(this,{type:"MultiPoint",coordinates:e})},toGeoJSON:function(t){var e=this.feature&&this.feature.geometry&&this.feature.geometry.type;if("MultiPoint"===e)return this.toMultiPoint(t);var i="GeometryCollection"===e,n=[];return(this.eachLayer(function(e){if(e.toGeoJSON){var o=e.toGeoJSON(t);if(i)n.push(o.geometry);else{var s=ip(o);"FeatureCollection"===s.type?n.push.apply(n,s.features):n.push(s)}}}),i)?i_(this,{geometries:n,type:"GeometryCollection"}):{type:"FeatureCollection",features:n}}});var iv=e3.extend({options:{opacity:1,alt:"",interactive:!1,crossOrigin:!1,errorOverlayUrl:"",zIndex:1,className:""},initialize:function(t,e,i){this._url=t,this._bounds=q(e),b(this,i)},onAdd:function(){!this._image&&(this._initImage(),this.options.opacity<1&&this._updateOpacity()),this.options.interactive&&(t4(this._image,"leaflet-interactive"),this.addInteractiveTarget(this._image)),this.getPane().appendChild(this._image),this._reset()},onRemove:function(){t1(this._image),this.options.interactive&&this.removeInteractiveTarget(this._image)},setOpacity:function(t){return this.options.opacity=t,this._image&&this._updateOpacity(),this},setStyle:function(t){return t.opacity&&this.setOpacity(t.opacity),this},bringToFront:function(){return this._map&&t3(this._image),this},bringToBack:function(){return this._map&&t5(this._image),this},setUrl:function(t){return this._url=t,this._image&&(this._image.src=t),this},setBounds:function(t){return this._bounds=q(t),this._map&&this._reset(),this},getEvents:function(){var t={zoom:this._reset,viewreset:this._reset};return this._zoomAnimated&&(t.zoomanim=this._animateZoom),t},setZIndex:function(t){return this.options.zIndex=t,this._updateZIndex(),this},getBounds:function(){return this._bounds},getElement:function(){return this._image},_initImage:function(){var t="IMG"===this._url.tagName,e=this._image=t?this._url:t0("img");if(t4(e,"leaflet-image-layer"),this._zoomAnimated&&t4(e,"leaflet-zoom-animated"),this.options.className&&t4(e,this.options.className),e.onselectstart=v,e.onmousemove=v,e.onload=_(this.fire,this,"load"),e.onerror=_(this._overlayOnError,this,"error"),(this.options.crossOrigin||""===this.options.crossOrigin)&&(e.crossOrigin=!0===this.options.crossOrigin?"":this.options.crossOrigin),this.options.zIndex&&this._updateZIndex(),t){this._url=e.src;return}e.src=this._url,e.alt=this.options.alt},_animateZoom:function(t){var e=this._map.getZoomScale(t.zoom),i=this._map._latLngBoundsToNewLayerBounds(this._bounds,t.zoom,t.center).min;ei(this._image,i,e)},_reset:function(){var t=this._image,e=new W(this._map.latLngToLayerPoint(this._bounds.getNorthWest()),this._map.latLngToLayerPoint(this._bounds.getSouthEast())),i=e.getSize();en(t,e.min),t.style.width=i.x+"px",t.style.height=i.y+"px"},_updateOpacity:function(){et(this._image,this.options.opacity)},_updateZIndex:function(){this._image&&void 0!==this.options.zIndex&&null!==this.options.zIndex&&(this._image.style.zIndex=this.options.zIndex)},_overlayOnError:function(){this.fire("error");var t=this.options.errorOverlayUrl;t&&this._url!==t&&(this._url=t,this._image.src=t)},getCenter:function(){return this._bounds.getCenter()}}),iy=iv.extend({options:{autoplay:!0,loop:!0,keepAspectRatio:!0,muted:!1,playsInline:!0},_initImage:function(){var t="VIDEO"===this._url.tagName,e=this._image=t?this._url:t0("video");if(t4(e,"leaflet-image-layer"),this._zoomAnimated&&t4(e,"leaflet-zoom-animated"),this.options.className&&t4(e,this.options.className),e.onselectstart=v,e.onmousemove=v,e.onloadeddata=_(this.fire,this,"load"),t){for(var i=e.getElementsByTagName("source"),n=[],o=0;o0?n:[e.src];return}z(this._url)||(this._url=[this._url]),!this.options.keepAspectRatio&&Object.prototype.hasOwnProperty.call(e.style,"objectFit")&&(e.style.objectFit="fill"),e.autoplay=!!this.options.autoplay,e.loop=!!this.options.loop,e.muted=!!this.options.muted,e.playsInline=!!this.options.playsInline;for(var s=0;so?(e.height=o+"px",t4(t,s)):t7(t,s),this._containerWidth=this._container.offsetWidth},_animateZoom:function(t){var e=this._map._latLngToNewLayerPoint(this._latlng,t.zoom,t.center),i=this._getAnchor();en(this._container,e.add(i))},_adjustPan:function(){if(this.options.autoPan){if(this._map._panAnim&&this._map._panAnim.stop(),this._autopanning){this._autopanning=!1;return}var t=this._map,e=parseInt(tQ(this._container,"marginBottom"),10)||0,i=this._container.offsetHeight+e,n=this._containerWidth,o=new D(this._containerLeft,-i-this._containerBottom);o._add(eo(this._container));var s=t.layerPointToContainerPoint(o),r=F(this.options.autoPanPadding),a=F(this.options.autoPanPaddingTopLeft||r),h=F(this.options.autoPanPaddingBottomRight||r),l=t.getSize(),u=0,c=0;s.x+n+h.x>l.x&&(u=s.x+n-l.x+h.x),s.x-u-a.x<0&&(u=s.x-a.x),s.y+i+h.y>l.y&&(c=s.y+i-l.y+h.y),s.y-c-a.y<0&&(c=s.y-a.y),(u||c)&&(this.options.keepInView&&(this._autopanning=!0),t.fire("autopanstart").panBy([u,c]))}},_getAnchor:function(){return F(this._source&&this._source._getPopupAnchor?this._source._getPopupAnchor():[0,0])}});eZ.mergeOptions({closePopupOnClick:!0}),eZ.include({openPopup:function(t,e,i){return this._initOverlay(ib,t,e,i).openOn(this),this},closePopup:function(t){return t=arguments.length?t:this._popup,t&&t.close(),this}}),e3.include({bindPopup:function(t,e){return this._popup=this._initOverlay(ib,this._popup,t,e),this._popupHandlersAdded||(this.on({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!0),this},unbindPopup:function(){return this._popup&&(this.off({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!1,this._popup=null),this},openPopup:function(t){return this._popup&&(this instanceof e8||(this._popup._source=this),this._popup._prepareOpen(t||this._latlng)&&this._popup.openOn(this._map)),this},closePopup:function(){return this._popup&&this._popup.close(),this},togglePopup:function(){return this._popup&&this._popup.toggle(this),this},isPopupOpen:function(){return!!this._popup&&this._popup.isOpen()},setPopupContent:function(t){return this._popup&&this._popup.setContent(t),this},getPopup:function(){return this._popup},_openPopup:function(t){if(this._popup&&this._map){eP(t);var e=t.layer||t.target;if(this._popup._source===e&&!(e instanceof it))return void(this._map.hasLayer(this._popup)?this.closePopup():this.openPopup(t.latlng));this._popup._source=e,this.openPopup(t.latlng)}},_movePopup:function(t){this._popup.setLatLng(t.latlng)},_onKeyPress:function(t){13===t.originalEvent.keyCode&&this._openPopup(t)}});var iP=iw.extend({options:{pane:"tooltipPane",offset:[0,0],direction:"auto",permanent:!1,sticky:!1,opacity:.9},onAdd:function(t){iw.prototype.onAdd.call(this,t),this.setOpacity(this.options.opacity),t.fire("tooltipopen",{tooltip:this}),this._source&&(this.addEventParent(this._source),this._source.fire("tooltipopen",{tooltip:this},!0))},onRemove:function(t){iw.prototype.onRemove.call(this,t),t.fire("tooltipclose",{tooltip:this}),this._source&&(this.removeEventParent(this._source),this._source.fire("tooltipclose",{tooltip:this},!0))},getEvents:function(){var t=iw.prototype.getEvents.call(this);return this.options.permanent||(t.preclick=this.close),t},_initLayout:function(){var t="leaflet-tooltip "+(this.options.className||"")+" leaflet-zoom-"+(this._zoomAnimated?"animated":"hide");this._contentNode=this._container=t0("div",t),this._container.setAttribute("role","tooltip"),this._container.setAttribute("id","leaflet-tooltip-"+m(this))},_updateLayout:function(){},_adjustPan:function(){},_setPosition:function(t){var e,i,n=this._map,o=this._container,s=n.latLngToContainerPoint(n.getCenter()),r=n.layerPointToContainerPoint(t),a=this.options.direction,h=o.offsetWidth,l=o.offsetHeight,u=F(this.options.offset),c=this._getAnchor();"top"===a?(e=h/2,i=l):"bottom"===a?(e=h/2,i=0):("center"===a?e=h/2:"right"===a?e=0:"left"===a?e=h:r.xthis.options.maxZoom||in&&this._retainParent(o,s,r,n))},_retainChildren:function(t,e,i,n){for(var o=2*t;o<2*t+2;o++)for(var s=2*e;s<2*e+2;s++){var r=new D(o,s);r.z=i+1;var a=this._tileCoordsToKey(r),h=this._tiles[a];if(h&&h.active){h.retain=!0;continue}h&&h.loaded&&(h.retain=!0),i+1this.options.maxZoom||void 0!==this.options.minZoom&&o1)return void this._setView(t,i);for(var c=o.min.y;c<=o.max.y;c++)for(var d=o.min.x;d<=o.max.x;d++){var _=new D(d,c);if(_.z=this._tileZoom,this._isValidTile(_)){var p=this._tiles[this._tileCoordsToKey(_)];p?p.current=!0:r.push(_)}}if(r.sort(function(t,e){return t.distanceTo(s)-e.distanceTo(s)}),0!==r.length){this._loading||(this._loading=!0,this.fire("loading"));var m=document.createDocumentFragment();for(d=0;di.max.x)||!e.wrapLat&&(t.yi.max.y))return!1}if(!this.options.bounds)return!0;var n=this._tileCoordsToBounds(t);return q(this.options.bounds).overlaps(n)},_keyToBounds:function(t){return this._tileCoordsToBounds(this._keyToTileCoords(t))},_tileCoordsToNwSe:function(t){var e=this._map,i=this.getTileSize(),n=t.scaleBy(i),o=n.add(i);return[e.unproject(n,t.z),e.unproject(o,t.z)]},_tileCoordsToBounds:function(t){var e=this._tileCoordsToNwSe(t),i=new V(e[0],e[1]);return this.options.noWrap||(i=this._map.wrapLatLngBounds(i)),i},_tileCoordsToKey:function(t){return t.x+":"+t.y+":"+t.z},_keyToTileCoords:function(t){var e=t.split(":"),i=new D(+e[0],+e[1]);return i.z=+e[2],i},_removeTile:function(t){var e=this._tiles[t];e&&(t1(e.el),delete this._tiles[t],this.fire("tileunload",{tile:e.el,coords:this._keyToTileCoords(t)}))},_initTile:function(t){t4(t,"leaflet-tile");var e=this.getTileSize();t.style.width=e.x+"px",t.style.height=e.y+"px",t.onselectstart=v,t.onmousemove=v,tI.ielt9&&this.options.opacity<1&&et(t,this.options.opacity)},_addTile:function(t,e){var i=this._getTilePos(t),n=this._tileCoordsToKey(t),o=this.createTile(this._wrapCoords(t),_(this._tileReady,this,t));this._initTile(o),this.createTile.length<2&&B(_(this._tileReady,this,t,null,o)),en(o,i),this._tiles[n]={el:o,coords:t,current:!0},e.appendChild(o),this.fire("tileloadstart",{tile:o,coords:t})},_tileReady:function(t,e,i){e&&this.fire("tileerror",{error:e,tile:i,coords:t});var n=this._tileCoordsToKey(t);(i=this._tiles[n])&&(i.loaded=+new Date,this._map._fadeAnimated?(et(i.el,0),I(this._fadeFrame),this._fadeFrame=B(this._updateOpacity,this)):(i.active=!0,this._pruneTiles()),e||(t4(i.el,"leaflet-tile-loaded"),this.fire("tileload",{tile:i.el,coords:t})),this._noTilesToLoad()&&(this._loading=!1,this.fire("load"),tI.ielt9||!this._map._fadeAnimated?B(this._pruneTiles,this):setTimeout(_(this._pruneTiles,this),250)))},_getTilePos:function(t){return t.scaleBy(this.getTileSize()).subtract(this._level.origin)},_wrapCoords:function(t){var e=new D(this._wrapX?g(t.x,this._wrapX):t.x,this._wrapY?g(t.y,this._wrapY):t.y);return e.z=t.z,e},_pxBoundsToTileRange:function(t){var e=this.getTileSize();return new W(t.min.unscaleBy(e).floor(),t.max.unscaleBy(e).ceil().subtract([1,1]))},_noTilesToLoad:function(){for(var t in this._tiles)if(!this._tiles[t].loaded)return!1;return!0}}),iM=iT.extend({options:{minZoom:0,maxZoom:18,subdomains:"abc",errorTileUrl:"",zoomOffset:0,tms:!1,zoomReverse:!1,detectRetina:!1,crossOrigin:!1,referrerPolicy:!1},initialize:function(t,e){this._url=t,(e=b(this,e)).detectRetina&&tI.retina&&e.maxZoom>0?(e.tileSize=Math.floor(e.tileSize/2),e.zoomReverse?(e.zoomOffset--,e.minZoom=Math.min(e.maxZoom,e.minZoom+1)):(e.zoomOffset++,e.maxZoom=Math.max(e.minZoom,e.maxZoom-1)),e.minZoom=Math.max(0,e.minZoom)):e.zoomReverse?e.minZoom=Math.min(e.maxZoom,e.minZoom):e.maxZoom=Math.max(e.minZoom,e.maxZoom),"string"==typeof e.subdomains&&(e.subdomains=e.subdomains.split("")),this.on("tileunload",this._onTileRemove)},setUrl:function(t,e){return this._url===t&&void 0===e&&(e=!0),this._url=t,e||this.redraw(),this},createTile:function(t,e){var i=document.createElement("img");return ed(i,"load",_(this._tileOnLoad,this,e,i)),ed(i,"error",_(this._tileOnError,this,e,i)),(this.options.crossOrigin||""===this.options.crossOrigin)&&(i.crossOrigin=!0===this.options.crossOrigin?"":this.options.crossOrigin),"string"==typeof this.options.referrerPolicy&&(i.referrerPolicy=this.options.referrerPolicy),i.alt="",i.src=this.getTileUrl(t),i},getTileUrl:function(t){var i={r:tI.retina?"@2x":"",s:this._getSubdomain(t),x:t.x,y:t.y,z:this._getZoomForUrl()};if(this._map&&!this._map.options.crs.infinite){var n=this._globalTileRange.max.y-t.y;this.options.tms&&(i.y=n),i["-y"]=n}return M(this._url,e(i,this.options))},_tileOnLoad:function(t,e){tI.ielt9?setTimeout(_(t,this,null,e),0):t(null,e)},_tileOnError:function(t,e,i){var n=this.options.errorTileUrl;n&&e.getAttribute("src")!==n&&(e.src=n),t(i,e)},_onTileRemove:function(t){t.tile.onload=null},_getZoomForUrl:function(){var t=this._tileZoom,e=this.options.maxZoom,i=this.options.zoomReverse,n=this.options.zoomOffset;return i&&(t=e-t),t+n},_getSubdomain:function(t){var e=Math.abs(t.x+t.y)%this.options.subdomains.length;return this.options.subdomains[e]},_abortLoading:function(){var t,e;for(t in this._tiles)if(this._tiles[t].coords.z!==this._tileZoom&&((e=this._tiles[t].el).onload=v,e.onerror=v,!e.complete)){e.src=S;var i=this._tiles[t].coords;t1(e),delete this._tiles[t],this.fire("tileabort",{tile:e,coords:i})}},_removeTile:function(t){var e=this._tiles[t];if(e)return e.el.setAttribute("src",S),iT.prototype._removeTile.call(this,t)},_tileReady:function(t,e,i){if(this._map&&(!i||i.getAttribute("src")!==S))return iT.prototype._tileReady.call(this,t,e,i)}});function iz(t,e){return new iM(t,e)}var iC=iM.extend({defaultWmsParams:{service:"WMS",request:"GetMap",layers:"",styles:"",format:"image/jpeg",transparent:!1,version:"1.1.1"},options:{crs:null,uppercase:!1},initialize:function(t,i){this._url=t;var n=e({},this.defaultWmsParams);for(var o in i)o in this.options||(n[o]=i[o]);var s=(i=b(this,i)).detectRetina&&tI.retina?2:1,r=this.getTileSize();n.width=r.x*s,n.height=r.y*s,this.wmsParams=n},onAdd:function(t){this._crs=this.options.crs||t.options.crs,this._wmsVersion=parseFloat(this.wmsParams.version);var e=this._wmsVersion>=1.3?"crs":"srs";this.wmsParams[e]=this._crs.code,iM.prototype.onAdd.call(this,t)},getTileUrl:function(t){var e=this._tileCoordsToNwSe(t),i=this._crs,n=U(i.project(e[0]),i.project(e[1])),o=n.min,s=n.max,r=(this._wmsVersion>=1.3&&this._crs===e1?[o.y,o.x,s.y,s.x]:[o.x,o.y,s.x,s.y]).join(","),a=iM.prototype.getTileUrl.call(this,t);return a+P(this.wmsParams,a,this.options.uppercase)+(this.options.uppercase?"&BBOX=":"&bbox=")+r},setParams:function(t,i){return e(this.wmsParams,t),i||this.redraw(),this}});iM.WMS=iC,iz.wms=function(t,e){return new iC(t,e)};var iS=e3.extend({options:{padding:.1},initialize:function(t){b(this,t),m(this),this._layers=this._layers||{}},onAdd:function(){this._container||(this._initContainer(),t4(this._container,"leaflet-zoom-animated")),this.getPane().appendChild(this._container),this._update(),this.on("update",this._updatePaths,this)},onRemove:function(){this.off("update",this._updatePaths,this),this._destroyContainer()},getEvents:function(){var t={viewreset:this._reset,zoom:this._onZoom,moveend:this._update,zoomend:this._onZoomEnd};return this._zoomAnimated&&(t.zoomanim=this._onAnimZoom),t},_onAnimZoom:function(t){this._updateTransform(t.center,t.zoom)},_onZoom:function(){this._updateTransform(this._map.getCenter(),this._map.getZoom())},_updateTransform:function(t,e){var i=this._map.getZoomScale(e,this._zoom),n=this._map.getSize().multiplyBy(.5+this.options.padding),o=this._map.project(this._center,e),s=n.multiplyBy(-i).add(o).subtract(this._map._getNewPixelOrigin(t,e));tI.any3d?ei(this._container,s,i):en(this._container,s)},_reset:function(){for(var t in this._update(),this._updateTransform(this._center,this._zoom),this._layers)this._layers[t]._reset()},_onZoomEnd:function(){for(var t in this._layers)this._layers[t]._project()},_updatePaths:function(){for(var t in this._layers)this._layers[t]._update()},_update:function(){var t=this.options.padding,e=this._map.getSize(),i=this._map.containerPointToLayerPoint(e.multiplyBy(-t)).round();this._bounds=new W(i,i.add(e.multiplyBy(1+2*t)).round()),this._center=this._map.getCenter(),this._zoom=this._map.getZoom()}}),iZ=iS.extend({options:{tolerance:0},getEvents:function(){var t=iS.prototype.getEvents.call(this);return t.viewprereset=this._onViewPreReset,t},_onViewPreReset:function(){this._postponeUpdatePaths=!0},onAdd:function(){iS.prototype.onAdd.call(this),this._draw()},_initContainer:function(){var t=this._container=document.createElement("canvas");ed(t,"mousemove",this._onMouseMove,this),ed(t,"click dblclick mousedown mouseup contextmenu",this._onClick,this),ed(t,"mouseout",this._handleMouseOut,this),t._leaflet_disable_events=!0,this._ctx=t.getContext("2d")},_destroyContainer:function(){I(this._redrawRequest),delete this._ctx,t1(this._container),ep(this._container),delete this._container},_updatePaths:function(){if(!this._postponeUpdatePaths){for(var t in this._redrawBounds=null,this._layers)this._layers[t]._update();this._redraw()}},_update:function(){if(!this._map._animatingZoom||!this._bounds){iS.prototype._update.call(this);var t=this._bounds,e=this._container,i=t.getSize(),n=tI.retina?2:1;en(e,t.min),e.width=n*i.x,e.height=n*i.y,e.style.width=i.x+"px",e.style.height=i.y+"px",tI.retina&&this._ctx.scale(2,2),this._ctx.translate(-t.min.x,-t.min.y),this.fire("update")}},_reset:function(){iS.prototype._reset.call(this),this._postponeUpdatePaths&&(this._postponeUpdatePaths=!1,this._updatePaths())},_initPath:function(t){this._updateDashArray(t),this._layers[m(t)]=t;var e=t._order={layer:t,prev:this._drawLast,next:null};this._drawLast&&(this._drawLast.next=e),this._drawLast=e,this._drawFirst=this._drawFirst||this._drawLast},_addPath:function(t){this._requestRedraw(t)},_removePath:function(t){var e=t._order,i=e.next,n=e.prev;i?i.prev=n:this._drawLast=n,n?n.next=i:this._drawFirst=i,delete t._order,delete this._layers[m(t)],this._requestRedraw(t)},_updatePath:function(t){this._extendRedrawBounds(t),t._project(),t._update(),this._requestRedraw(t)},_updateStyle:function(t){this._updateDashArray(t),this._requestRedraw(t)},_updateDashArray:function(t){if("string"==typeof t.options.dashArray){var e,i,n=t.options.dashArray.split(/[, ]+/),o=[];for(i=0;i')}}catch(t){}return function(t){return document.createElement("<"+t+' xmlns="urn:schemas-microsoft.com:vml" class="lvml">')}}(),iO=tI.vml?ik:ti,iA=iS.extend({_initContainer:function(){this._container=iO("svg"),this._container.setAttribute("pointer-events","none"),this._rootGroup=iO("g"),this._container.appendChild(this._rootGroup)},_destroyContainer:function(){t1(this._container),ep(this._container),delete this._container,delete this._rootGroup,delete this._svgSize},_update:function(){if(!this._map._animatingZoom||!this._bounds){iS.prototype._update.call(this);var t=this._bounds,e=t.getSize(),i=this._container;this._svgSize&&this._svgSize.equals(e)||(this._svgSize=e,i.setAttribute("width",e.x),i.setAttribute("height",e.y)),en(i,t.min),i.setAttribute("viewBox",[t.min.x,t.min.y,e.x,e.y].join(" ")),this.fire("update")}},_initPath:function(t){var e=t._path=iO("path");t.options.className&&t4(e,t.options.className),t.options.interactive&&t4(e,"leaflet-interactive"),this._updateStyle(t),this._layers[m(t)]=t},_addPath:function(t){this._rootGroup||this._initContainer(),this._rootGroup.appendChild(t._path),t.addInteractiveTarget(t._path)},_removePath:function(t){t1(t._path),t.removeInteractiveTarget(t._path),delete this._layers[m(t)]},_updatePath:function(t){t._project(),t._update()},_updateStyle:function(t){var e=t._path,i=t.options;e&&(i.stroke?(e.setAttribute("stroke",i.color),e.setAttribute("stroke-opacity",i.opacity),e.setAttribute("stroke-width",i.weight),e.setAttribute("stroke-linecap",i.lineCap),e.setAttribute("stroke-linejoin",i.lineJoin),i.dashArray?e.setAttribute("stroke-dasharray",i.dashArray):e.removeAttribute("stroke-dasharray"),i.dashOffset?e.setAttribute("stroke-dashoffset",i.dashOffset):e.removeAttribute("stroke-dashoffset")):e.setAttribute("stroke","none"),i.fill?(e.setAttribute("fill",i.fillColor||i.color),e.setAttribute("fill-opacity",i.fillOpacity),e.setAttribute("fill-rule",i.fillRule||"evenodd")):e.setAttribute("fill","none"))},_updatePoly:function(t,e){this._setPath(t,tn(t._parts,e))},_updateCircle:function(t){var e=t._point,i=Math.max(Math.round(t._radius),1),n=Math.max(Math.round(t._radiusY),1)||i,o="a"+i+","+n+" 0 1,0 ",s=t._empty()?"M0 0":"M"+(e.x-i)+","+e.y+o+2*i+",0 "+o+-(2*i)+",0 ";this._setPath(t,s)},_setPath:function(t,e){t._path.setAttribute("d",e)},_bringToFront:function(t){t3(t._path)},_bringToBack:function(t){t5(t._path)}});function iB(t){return tI.svg||tI.vml?new iA(t):null}tI.vml&&iA.include({_initContainer:function(){this._container=t0("div","leaflet-vml-container")},_update:function(){this._map._animatingZoom||(iS.prototype._update.call(this),this.fire("update"))},_initPath:function(t){var e=t._container=ik("shape");t4(e,"leaflet-vml-shape "+(this.options.className||"")),e.coordsize="1 1",t._path=ik("path"),e.appendChild(t._path),this._updateStyle(t),this._layers[m(t)]=t},_addPath:function(t){var e=t._container;this._container.appendChild(e),t.options.interactive&&t.addInteractiveTarget(e)},_removePath:function(t){var e=t._container;t1(e),t.removeInteractiveTarget(e),delete this._layers[m(t)]},_updateStyle:function(t){var e=t._stroke,i=t._fill,n=t.options,o=t._container;o.stroked=!!n.stroke,o.filled=!!n.fill,n.stroke?(e||(e=t._stroke=ik("stroke")),o.appendChild(e),e.weight=n.weight+"px",e.color=n.color,e.opacity=n.opacity,n.dashArray?e.dashStyle=z(n.dashArray)?n.dashArray.join(" "):n.dashArray.replace(/( *, *)/g," "):e.dashStyle="",e.endcap=n.lineCap.replace("butt","flat"),e.joinstyle=n.lineJoin):e&&(o.removeChild(e),t._stroke=null),n.fill?(i||(i=t._fill=ik("fill")),o.appendChild(i),i.color=n.fillColor||n.color,i.opacity=n.fillOpacity):i&&(o.removeChild(i),t._fill=null)},_updateCircle:function(t){var e=t._point.round(),i=Math.round(t._radius),n=Math.round(t._radiusY||i);this._setPath(t,t._empty()?"M0 0":"AL "+e.x+","+e.y+" "+i+","+n+" 0,23592600")},_setPath:function(t,e){t._path.v=e},_bringToFront:function(t){t3(t._container)},_bringToBack:function(t){t5(t._container)}}),eZ.include({getRenderer:function(t){var e=t.options.renderer||this._getPaneRenderer(t.options.pane)||this.options.renderer||this._renderer;return e||(e=this._renderer=this._createRenderer()),this.hasLayer(e)||this.addLayer(e),e},_getPaneRenderer:function(t){if("overlayPane"===t||void 0===t)return!1;var e=this._paneRenderers[t];return void 0===e&&(e=this._createRenderer({pane:t}),this._paneRenderers[t]=e),e},_createRenderer:function(t){return this.options.preferCanvas&&iE(t)||iB(t)}});var iI=is.extend({initialize:function(t,e){is.prototype.initialize.call(this,this._boundsToLatLngs(t),e)},setBounds:function(t){return this.setLatLngs(this._boundsToLatLngs(t))},_boundsToLatLngs:function(t){return[(t=q(t)).getSouthWest(),t.getNorthWest(),t.getNorthEast(),t.getSouthEast()]}});iA.create=iO,iA.pointsToPath=tn,ir.geometryToLayer=ia,ir.coordsToLatLng=il,ir.coordsToLatLngs=iu,ir.latLngToCoords=ic,ir.latLngsToCoords=id,ir.getFeature=i_,ir.asFeature=ip,eZ.mergeOptions({boxZoom:!0});var iR=eR.extend({initialize:function(t){this._map=t,this._container=t._container,this._pane=t._panes.overlayPane,this._resetStateTimeout=0,t.on("unload",this._destroy,this)},addHooks:function(){ed(this._container,"mousedown",this._onMouseDown,this)},removeHooks:function(){ep(this._container,"mousedown",this._onMouseDown,this)},moved:function(){return this._moved},_destroy:function(){t1(this._pane),delete this._pane},_resetState:function(){this._resetStateTimeout=0,this._moved=!1},_clearDeferredResetState:function(){0!==this._resetStateTimeout&&(clearTimeout(this._resetStateTimeout),this._resetStateTimeout=0)},_onMouseDown:function(t){if(!t.shiftKey||1!==t.which&&1!==t.button)return!1;this._clearDeferredResetState(),this._resetState(),i(),er(),this._startPoint=this._map.mouseEventToContainerPoint(t),ed(document,{contextmenu:eP,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseMove:function(t){this._moved||(this._moved=!0,this._box=t0("div","leaflet-zoom-box",this._container),t4(this._container,"leaflet-crosshair"),this._map.fire("boxzoomstart")),this._point=this._map.mouseEventToContainerPoint(t);var e=new W(this._point,this._startPoint),i=e.getSize();en(this._box,e.min),this._box.style.width=i.x+"px",this._box.style.height=i.y+"px"},_finish:function(){this._moved&&(t1(this._box),t7(this._container,"leaflet-crosshair")),n(),ea(),ep(document,{contextmenu:eP,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseUp:function(t){if((1===t.which||1===t.button)&&(this._finish(),this._moved)){this._clearDeferredResetState(),this._resetStateTimeout=setTimeout(_(this._resetState,this),0);var e=new V(this._map.containerPointToLatLng(this._startPoint),this._map.containerPointToLatLng(this._point));this._map.fitBounds(e).fire("boxzoomend",{boxZoomBounds:e})}},_onKeyDown:function(t){27===t.keyCode&&(this._finish(),this._clearDeferredResetState(),this._resetState())}});eZ.addInitHook("addHandler","boxZoom",iR),eZ.mergeOptions({doubleClickZoom:!0});var iN=eR.extend({addHooks:function(){this._map.on("dblclick",this._onDoubleClick,this)},removeHooks:function(){this._map.off("dblclick",this._onDoubleClick,this)},_onDoubleClick:function(t){var e=this._map,i=e.getZoom(),n=e.options.zoomDelta,o=t.originalEvent.shiftKey?i-n:i+n;"center"===e.options.doubleClickZoom?e.setZoom(o):e.setZoomAround(t.containerPoint,o)}});eZ.addInitHook("addHandler","doubleClickZoom",iN),eZ.mergeOptions({dragging:!0,inertia:!0,inertiaDeceleration:3400,inertiaMaxSpeed:1/0,easeLinearity:.2,worldCopyJump:!1,maxBoundsViscosity:0});var ij=eR.extend({addHooks:function(){if(!this._draggable){var t=this._map;this._draggable=new ej(t._mapPane,t._container),this._draggable.on({dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this),this._draggable.on("predrag",this._onPreDragLimit,this),t.options.worldCopyJump&&(this._draggable.on("predrag",this._onPreDragWrap,this),t.on("zoomend",this._onZoomEnd,this),t.whenReady(this._onZoomEnd,this))}t4(this._map._container,"leaflet-grab leaflet-touch-drag"),this._draggable.enable(),this._positions=[],this._times=[]},removeHooks:function(){t7(this._map._container,"leaflet-grab"),t7(this._map._container,"leaflet-touch-drag"),this._draggable.disable()},moved:function(){return this._draggable&&this._draggable._moved},moving:function(){return this._draggable&&this._draggable._moving},_onDragStart:function(){var t=this._map;if(t._stop(),this._map.options.maxBounds&&this._map.options.maxBoundsViscosity){var e=q(this._map.options.maxBounds);this._offsetLimit=U(this._map.latLngToContainerPoint(e.getNorthWest()).multiplyBy(-1),this._map.latLngToContainerPoint(e.getSouthEast()).multiplyBy(-1).add(this._map.getSize())),this._viscosity=Math.min(1,Math.max(0,this._map.options.maxBoundsViscosity))}else this._offsetLimit=null;t.fire("movestart").fire("dragstart"),t.options.inertia&&(this._positions=[],this._times=[])},_onDrag:function(t){if(this._map.options.inertia){var e=this._lastTime=+new Date,i=this._lastPos=this._draggable._absPos||this._draggable._newPos;this._positions.push(i),this._times.push(e),this._prunePositions(e)}this._map.fire("move",t).fire("drag",t)},_prunePositions:function(t){for(;this._positions.length>1&&t-this._times[0]>50;)this._positions.shift(),this._times.shift()},_onZoomEnd:function(){var t=this._map.getSize().divideBy(2),e=this._map.latLngToLayerPoint([0,0]);this._initialWorldOffset=e.subtract(t).x,this._worldWidth=this._map.getPixelWorldBounds().getSize().x},_viscousLimit:function(t,e){return t-(t-e)*this._viscosity},_onPreDragLimit:function(){if(this._viscosity&&this._offsetLimit){var t=this._draggable._newPos.subtract(this._draggable._startPos),e=this._offsetLimit;t.xe.max.x&&(t.x=this._viscousLimit(t.x,e.max.x)),t.y>e.max.y&&(t.y=this._viscousLimit(t.y,e.max.y)),this._draggable._newPos=this._draggable._startPos.add(t)}},_onPreDragWrap:function(){var t=this._worldWidth,e=Math.round(t/2),i=this._initialWorldOffset,n=this._draggable._newPos.x,o=(n-e+i)%t+e-i,s=(n+e+i)%t-e-i,r=Math.abs(o+i)0?o:-o))-e;this._delta=0,this._startTime=null,s&&("center"===t.options.scrollWheelZoom?t.setZoom(e+s):t.setZoomAround(this._lastMousePos,e+s))}});eZ.addInitHook("addHandler","scrollWheelZoom",iH),eZ.mergeOptions({tapHold:tI.touchNative&&tI.safari&&tI.mobile,tapTolerance:15});var iF=eR.extend({addHooks:function(){ed(this._map._container,"touchstart",this._onDown,this)},removeHooks:function(){ep(this._map._container,"touchstart",this._onDown,this)},_onDown:function(t){if(clearTimeout(this._holdTimeout),1===t.touches.length){var e=t.touches[0];this._startPos=this._newPos=new D(e.clientX,e.clientY),this._holdTimeout=setTimeout(_(function(){this._cancel(),this._isTapValid()&&(ed(document,"touchend",eb),ed(document,"touchend touchcancel",this._cancelClickPrevent),this._simulateEvent("contextmenu",e))},this),600),ed(document,"touchend touchcancel contextmenu",this._cancel,this),ed(document,"touchmove",this._onMove,this)}},_cancelClickPrevent:function t(){ep(document,"touchend",eb),ep(document,"touchend touchcancel",t)},_cancel:function(){clearTimeout(this._holdTimeout),ep(document,"touchend touchcancel contextmenu",this._cancel,this),ep(document,"touchmove",this._onMove,this)},_onMove:function(t){var e=t.touches[0];this._newPos=new D(e.clientX,e.clientY)},_isTapValid:function(){return this._newPos.distanceTo(this._startPos)<=this._map.options.tapTolerance},_simulateEvent:function(t,e){var i=new MouseEvent(t,{bubbles:!0,cancelable:!0,view:window,screenX:e.screenX,screenY:e.screenY,clientX:e.clientX,clientY:e.clientY});i._simulated=!0,e.target.dispatchEvent(i)}});eZ.addInitHook("addHandler","tapHold",iF),eZ.mergeOptions({touchZoom:tI.touch,bounceAtZoomLimits:!0});var iW=eR.extend({addHooks:function(){t4(this._map._container,"leaflet-touch-zoom"),ed(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){t7(this._map._container,"leaflet-touch-zoom"),ep(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(t){var e=this._map;if(t.touches&&2===t.touches.length&&!e._animatingZoom&&!this._zooming){var i=e.mouseEventToContainerPoint(t.touches[0]),n=e.mouseEventToContainerPoint(t.touches[1]);this._centerPoint=e.getSize()._divideBy(2),this._startLatLng=e.containerPointToLatLng(this._centerPoint),"center"!==e.options.touchZoom&&(this._pinchStartLatLng=e.containerPointToLatLng(i.add(n)._divideBy(2))),this._startDist=i.distanceTo(n),this._startZoom=e.getZoom(),this._moved=!1,this._zooming=!0,e._stop(),ed(document,"touchmove",this._onTouchMove,this),ed(document,"touchend touchcancel",this._onTouchEnd,this),eb(t)}},_onTouchMove:function(t){if(t.touches&&2===t.touches.length&&this._zooming){var e=this._map,i=e.mouseEventToContainerPoint(t.touches[0]),n=e.mouseEventToContainerPoint(t.touches[1]),o=i.distanceTo(n)/this._startDist;if(this._zoom=e.getScaleZoom(o,this._startZoom),!e.options.bounceAtZoomLimits&&(this._zoome.getMaxZoom()&&o>1)&&(this._zoom=e._limitZoom(this._zoom)),"center"===e.options.touchZoom){if(this._center=this._startLatLng,1===o)return}else{var s=i._add(n)._divideBy(2)._subtract(this._centerPoint);if(1===o&&0===s.x&&0===s.y)return;this._center=e.unproject(e.project(this._pinchStartLatLng,this._zoom).subtract(s),this._zoom)}this._moved||(e._moveStart(!0,!1),this._moved=!0),I(this._animRequest);var r=_(e._move,e,this._center,this._zoom,{pinch:!0,round:!1},void 0);this._animRequest=B(r,this,!0),eb(t)}},_onTouchEnd:function(){if(!this._moved||!this._zooming){this._zooming=!1;return}this._zooming=!1,I(this._animRequest),ep(document,"touchmove",this._onTouchMove,this),ep(document,"touchend touchcancel",this._onTouchEnd,this),this._map.options.zoomAnimation?this._map._animateZoom(this._center,this._map._limitZoom(this._zoom),!0,this._map.options.zoomSnap):this._map._resetView(this._center,this._map._limitZoom(this._zoom))}});eZ.addInitHook("addHandler","touchZoom",iW),eZ.BoxZoom=iR,eZ.DoubleClickZoom=iN,eZ.Drag=ij,eZ.Keyboard=iD,eZ.ScrollWheelZoom=iH,eZ.TapHold=iF,eZ.TouchZoom=iW,t.Bounds=W,t.Browser=tI,t.CRS=Y,t.Canvas=iZ,t.Circle=ii,t.CircleMarker=ie,t.Class=R,t.Control=eE,t.DivIcon=iL,t.DivOverlay=iw,t.DomEvent={__proto__:null,on:ed,off:ep,stopPropagation:ey,disableScrollPropagation:ex,disableClickPropagation:ew,preventDefault:eb,stop:eP,getPropagationPath:eL,getMousePosition:eT,getWheelDelta:ez,isExternalTarget:eC,addListener:ed,removeListener:ep},t.DomUtil={__proto__:null,TRANSFORM:tY,TRANSITION:tJ,TRANSITION_END:tX,get:t$,getStyle:tQ,create:t0,remove:t1,empty:t2,toFront:t3,toBack:t5,hasClass:t8,addClass:t4,removeClass:t7,setClass:t9,getClass:t6,setOpacity:et,testProp:ee,setTransform:ei,setPosition:en,getPosition:eo,get disableTextSelection(){return i},get enableTextSelection(){return n},disableImageDrag:er,enableImageDrag:ea,preventOutline:eh,restoreOutline:el,getSizedParentNode:eu,getScale:ec},t.Draggable=ej,t.Evented=j,t.FeatureGroup=e8,t.GeoJSON=ir,t.GridLayer=iT,t.Handler=eR,t.Icon=e4,t.ImageOverlay=iv,t.LatLng=G,t.LatLngBounds=V,t.Layer=e3,t.LayerGroup=e5,t.LineUtil={__proto__:null,simplify:eW,pointToSegmentDistance:eU,closestPointOnSegment:function(t,e,i){return eK(t,e,i)},clipSegment:eV,_getEdgeIntersection:eq,_getBitCode:eG,_sqClosestPointOnSegment:eK,isFlat:eY,_flat:eJ,polylineCenter:eX},t.Map=eZ,t.Marker=e6,t.Mixin={Events:N},t.Path=it,t.Point=D,t.PolyUtil={__proto__:null,clipPolygon:eD,polygonCenter:eH,centroid:eF},t.Polygon=is,t.Polyline=io,t.Popup=ib,t.PosAnimation=eS,t.Projection={__proto__:null,LonLat:e$,Mercator:eQ,SphericalMercator:X},t.Rectangle=iI,t.Renderer=iS,t.SVG=iA,t.SVGOverlay=ix,t.TileLayer=iM,t.Tooltip=iP,t.Transformation=$,t.Util={__proto__:null,extend:e,create:d,bind:_,get lastId(){return p},stamp:m,throttle:f,wrapNum:g,falseFn:v,formatNum:y,trim:x,splitWords:w,setOptions:b,getParamString:P,template:M,isArray:z,indexOf:C,emptyImageUrl:S,requestFn:O,cancelFn:A,requestAnimFrame:B,cancelAnimFrame:I},t.VideoOverlay=iy,t.bind=_,t.bounds=U,t.canvas=iE,t.circle=function(t,e,i){return new ii(t,e,i)},t.circleMarker=function(t,e){return new ie(t,e)},t.control=ek,t.divIcon=function(t){return new iL(t)},t.extend=e,t.featureGroup=function(t,e){return new e8(t,e)},t.geoJSON=ig,t.geoJson=ig,t.gridLayer=function(t){return new iT(t)},t.icon=function(t){return new e4(t)},t.imageOverlay=function(t,e,i){return new iv(t,e,i)},t.latLng=K,t.latLngBounds=q,t.layerGroup=function(t,e){return new e5(t,e)},t.map=function(t,e){return new eZ(t,e)},t.marker=function(t,e){return new e6(t,e)},t.point=F,t.polygon=function(t,e){return new is(t,e)},t.polyline=function(t,e){return new io(t,e)},t.popup=function(t,e){return new ib(t,e)},t.rectangle=function(t,e){return new iI(t,e)},t.setOptions=b,t.stamp=m,t.svg=iB,t.svgOverlay=function(t,e,i){return new ix(t,e,i)},t.tileLayer=iz,t.tooltip=function(t,e){return new iP(t,e)},t.transformation=Q,t.version="1.9.4",t.videoOverlay=function(t,e,i){return new iy(t,e,i)};var iU=window.L;t.noConflict=function(){return window.L=iU,this},window.L=t}(i)},13958,t=>{"use strict";var e,i,n,o,s,r,a,h=t.i(43476),l=t.i(9409),u=t.i(71645),c=t.i(32322);let d=(0,u.createContext)(null);function _(){let t=(0,u.use)(d);if(null==t)throw Error("No context provided: useLeafletContext() can only be used in a descendant of ");return t}let p=(0,u.forwardRef)(function({bounds:t,boundsOptions:e,center:i,children:n,className:o,id:s,placeholder:r,style:a,whenReady:h,zoom:l,..._},p){let[m]=(0,u.useState)({className:o,id:s,style:a}),[f,g]=(0,u.useState)(null),v=(0,u.useRef)(void 0);(0,u.useImperativeHandle)(p,()=>f?.map??null,[f]);let y=(0,u.useCallback)(n=>{if(null!==n&&!v.current){let o=new c.Map(n,_);v.current=o,null!=i&&null!=l?o.setView(i,l):null!=t&&o.fitBounds(t,e),null!=h&&o.whenReady(h),g(Object.freeze({__version:1,map:o}))}},[]);(0,u.useEffect)(()=>()=>{f?.map.remove()},[f]);let x=f?u.default.createElement(d,{value:f},n):r??null;return u.default.createElement("div",{...m,ref:y},x)});function m(t,e,i){return Object.freeze({instance:t,context:e,container:i})}function f(t,e){return null==e?function(e,i){let n=(0,u.useRef)(void 0);return n.current||(n.current=t(e,i)),n}:function(i,n){let o=(0,u.useRef)(void 0);o.current||(o.current=t(i,n));let s=(0,u.useRef)(i),{instance:r}=o.current;return(0,u.useEffect)(function(){s.current!==i&&(e(r,i,s.current),s.current=i)},[r,i,e]),o}}var g=t.i(74080);function v(t){return(0,u.forwardRef)(function(e,i){let{instance:n}=t(e).current;return(0,u.useImperativeHandle)(i,()=>n),null})}function y(t,e){let i=(0,u.useRef)(e);(0,u.useEffect)(function(){e!==i.current&&null!=t.attributionControl&&(null!=i.current&&t.attributionControl.removeAttribution(i.current),null!=e&&t.attributionControl.addAttribution(e)),i.current=e},[t,e])}function x(t,e){let i=(0,u.useRef)(void 0);(0,u.useEffect)(function(){return null!=e&&t.instance.on(e),i.current=e,function(){null!=i.current&&t.instance.off(i.current),i.current=null}},[t,e])}function w(t,e){let i=t.pane??e.pane;return i?{...t,pane:i}:t}function b(t){return function(e){var i;let n=_(),o=t(w(e,n),n);return y(n.map,e.attribution),x(o.current,e.eventHandlers),i=o.current,(0,u.useEffect)(function(){return(n.layerContainer??n.map).addLayer(i.instance),function(){n.layerContainer?.removeLayer(i.instance),n.map.removeLayer(i.instance)}},[n,i]),o}}let P=(e=b(f(function({position:t,...e},i){var n;let o=new c.Marker(t,e);return m(o,(n={overlayContainer:o},Object.freeze({...i,...n})))},function(t,e,i){e.position!==i.position&&t.setLatLng(e.position),null!=e.icon&&e.icon!==i.icon&&t.setIcon(e.icon),null!=e.zIndexOffset&&e.zIndexOffset!==i.zIndexOffset&&t.setZIndexOffset(e.zIndexOffset),null!=e.opacity&&e.opacity!==i.opacity&&t.setOpacity(e.opacity),null!=t.dragging&&e.draggable!==i.draggable&&(!0===e.draggable?t.dragging.enable():t.dragging.disable())})),(0,u.forwardRef)(function(t,i){let{instance:n,context:o}=e(t).current;(0,u.useImperativeHandle)(i,()=>n);let{children:s}=t;return null==s?null:u.default.createElement(d,{value:o},s)})),T=(i=function(t,e){return m(new c.Popup(t,e.overlayContainer),e)},n=function(t,e,{position:i},n){(0,u.useEffect)(function(){let{instance:o}=t;function s(t){t.popup===o&&(o.update(),n(!0))}function r(t){t.popup===o&&n(!1)}return e.map.on({popupopen:s,popupclose:r}),null==e.overlayContainer?(null!=i&&o.setLatLng(i),o.openOn(e.map)):e.overlayContainer.bindPopup(o),function(){e.map.off({popupopen:s,popupclose:r}),e.overlayContainer?.unbindPopup(),e.map.removeLayer(o)}},[t,e,n,i])},o=f(i),s=function(t,e){let i=_(),s=o(w(t,i),i);return y(i.map,t.attribution),x(s.current,t.eventHandlers),n(s.current,i,t,e),s},(0,u.forwardRef)(function(t,e){let[i,n]=(0,u.useState)(!1),{instance:o}=s(t,n).current;(0,u.useImperativeHandle)(e,()=>o),(0,u.useEffect)(function(){i&&o.update()},[o,i,t.children]);let r=o._contentNode;return r?(0,g.createPortal)(t.children,r):null})),M=v(b(f(function({url:t,...e},i){return m(new c.TileLayer(t,w(e,i)),i)},function(t,e,i){!function(t,e,i){let{opacity:n,zIndex:o}=e;null!=n&&n!==i.opacity&&t.setOpacity(n),null!=o&&o!==i.zIndex&&t.setZIndex(o)}(t,e,i);let{url:n}=e;null!=n&&n!==i.url&&t.setUrl(n)}))),z=(r=function(t){return new c.Control.Zoom(t)},v((a=f(function(t,e){return m(r(t),e)}),function(t){let e=_(),i=a(t,e),{instance:n}=i.current,o=(0,u.useRef)(t.position),{position:s}=t;return(0,u.useEffect)(function(){return n.addTo(e.map),function(){n.remove()}},[e.map,n]),(0,u.useEffect)(function(){null!=s&&s!==o.current&&(n.setPosition(s),o.current=s)},[n,s]),i}))),C=[{id:"coimbatore",city:"Coimbatore",name:"Coimbatore Office",position:[11.0168,76.9558]},{id:"bengaluru",city:"Bengaluru",name:"Bengaluru Office",position:[12.9716,77.5946]},{id:"hyderabad",city:"Hyderabad",name:"Hyderabad Office",position:[17.385,78.4867]}],S=[50,50],Z=[14,77.7];function E({positions:t,focus:e,markerRefs:i}){let n=_().map,o=(0,u.useRef)(e);(0,u.useEffect)(()=>{o.current=e},[e]);let s=(0,u.useCallback)(()=>{0!==t.length&&(n.invalidateSize(),n.fitBounds(c.default.latLngBounds(t),{padding:S,maxZoom:7}))},[n,t]);return(0,u.useEffect)(()=>{let t=requestAnimationFrame(s);return()=>cancelAnimationFrame(t)},[s]),(0,u.useEffect)(()=>{let e=n.getContainer(),i=0,s=new ResizeObserver(()=>{cancelAnimationFrame(i),i=requestAnimationFrame(()=>{n.invalidateSize(),o.current||n.fitBounds(c.default.latLngBounds(t),{padding:S,maxZoom:7})})});return s.observe(e),()=>{cancelAnimationFrame(i),s.disconnect()}},[n,t]),(0,u.useEffect)(()=>{if(!e)return;let t=C.find(t=>t.id===e.id);if(!t)return;n.flyTo(t.position,13,{duration:1.1});let o=i.current[t.id];if(!o)return;let s=()=>o.openPopup();return n.once("moveend",s),()=>{n.off("moveend",s)}},[n,e,i]),null}t.s(["default",0,function(){let t=(0,u.useMemo)(()=>c.default.divIcon({className:l.default.markerIcon,html:` +(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,32322,(t,e,i)=>{t.e,function(t){"use strict";function e(t){var e,i,n,o;for(i=1,n=arguments.length;itypeof L&&L&&L.Mixin){t=z(t)?t:[t];for(var e=0;e0?Math.floor(t):Math.ceil(t)};function W(t,e,i){return t instanceof D?t:z(t)?new D(t[0],t[1]):null==t?t:"object"==typeof t&&"x"in t&&"y"in t?new D(t.x,t.y):new D(t,e,i)}function F(t,e){if(t)for(var i=e?[t,e]:t,n=0,o=i.length;n=this.min.x&&i.x<=this.max.x&&e.y>=this.min.y&&i.y<=this.max.y},intersects:function(t){t=U(t);var e=this.min,i=this.max,n=t.min,o=t.max,s=o.x>=e.x&&n.x<=i.x,r=o.y>=e.y&&n.y<=i.y;return s&&r},overlaps:function(t){t=U(t);var e=this.min,i=this.max,n=t.min,o=t.max,s=o.x>e.x&&n.xe.y&&n.y=n.lat&&i.lat<=o.lat&&e.lng>=n.lng&&i.lng<=o.lng},intersects:function(t){t=V(t);var e=this._southWest,i=this._northEast,n=t.getSouthWest(),o=t.getNorthEast(),s=o.lat>=e.lat&&n.lat<=i.lat,r=o.lng>=e.lng&&n.lng<=i.lng;return s&&r},overlaps:function(t){t=V(t);var e=this._southWest,i=this._northEast,n=t.getSouthWest(),o=t.getNorthEast(),s=o.lat>e.lat&&n.late.lng&&n.lngtypeof orientation||tI("mobile"),tT=!window.PointerEvent&&window.MSPointerEvent,tM=!!(window.PointerEvent||tT),tz="ontouchstart"in window||!!window.TouchEvent,tC=!window.L_NO_TOUCH&&(tz||tM),tS=(window.devicePixelRatio||window.screen.deviceXDPI/window.screen.logicalXDPI)>1,tZ=function(){var t=!1;try{var e=Object.defineProperty({},"passive",{get:function(){t=!0}});window.addEventListener("testPassiveEventSupport",v,e),window.removeEventListener("testPassiveEventSupport",v,e)}catch(t){}return t}(),tE=!!document.createElement("canvas").getContext,tk=!!(document.createElementNS&&ti("svg").createSVGRect),tO=!!tk&&((u=document.createElement("div")).innerHTML="","http://www.w3.org/2000/svg"===(u.firstChild&&u.firstChild.namespaceURI)),tA=!tk&&function(){try{var t=document.createElement("div");t.innerHTML='';var e=t.firstChild;return e.style.behavior="url(#default#VML)",e&&"object"==typeof e.adj}catch(t){return!1}}();function tI(t){return navigator.userAgent.toLowerCase().indexOf(t)>=0}var tB={ie:ts,ielt9:tr,edge:ta,webkit:th,android:tl,android23:tu,androidStock:td,opera:t_,chrome:tp,gecko:tm,safari:tf,phantom:tg,opera12:tv,win:ty,ie3d:tx,webkit3d:tw,gecko3d:tb,any3d:tP,mobile:tL,mobileWebkit:tL&&th,mobileWebkit3d:tL&&tw,msPointer:tT,pointer:tM,touch:tC,touchNative:tz,mobileOpera:tL&&t_,mobileGecko:tL&&tm,retina:tS,passiveEvents:tZ,canvas:tE,svg:tk,vml:tA,inlineSvg:tO,mac:0===navigator.platform.indexOf("Mac"),linux:0===navigator.platform.indexOf("Linux")},tR=tB.msPointer?"MSPointerDown":"pointerdown",tN=tB.msPointer?"MSPointerMove":"pointermove",tj=tB.msPointer?"MSPointerUp":"pointerup",tD=tB.msPointer?"MSPointerCancel":"pointercancel",tH={touchstart:tR,touchmove:tN,touchend:tj,touchcancel:tD},tW={touchstart:function(t,e){e.MSPOINTER_TYPE_TOUCH&&e.pointerType===e.MSPOINTER_TYPE_TOUCH&&eb(e),tK(t,e)},touchmove:tK,touchend:tK,touchcancel:tK},tF={},tU=!1;function tq(t){tF[t.pointerId]=t}function tV(t){tF[t.pointerId]&&(tF[t.pointerId]=t)}function tG(t){delete tF[t.pointerId]}function tK(t,e){if(e.pointerType!==(e.MSPOINTER_TYPE_MOUSE||"mouse")){for(var i in e.touches=[],tF)e.touches.push(tF[i]);e.changedTouches=[e],t(e)}}var tY=ee(["transform","webkitTransform","OTransform","MozTransform","msTransform"]),tJ=ee(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),tX="webkitTransition"===tJ||"OTransition"===tJ?tJ+"End":"transitionend";function t$(t){return"string"==typeof t?document.getElementById(t):t}function tQ(t,e){var i=t.style[e]||t.currentStyle&&t.currentStyle[e];if((!i||"auto"===i)&&document.defaultView){var n=document.defaultView.getComputedStyle(t,null);i=n?n[e]:null}return"auto"===i?null:i}function t0(t,e,i){var n=document.createElement(t);return n.className=e||"",i&&i.appendChild(n),n}function t1(t){var e=t.parentNode;e&&e.removeChild(t)}function t2(t){for(;t.firstChild;)t.removeChild(t.firstChild)}function t3(t){var e=t.parentNode;e&&e.lastChild!==t&&e.appendChild(t)}function t5(t){var e=t.parentNode;e&&e.firstChild!==t&&e.insertBefore(t,e.firstChild)}function t8(t,e){if(void 0!==t.classList)return t.classList.contains(e);var i=t7(t);return i.length>0&&RegExp("(^|\\s)"+e+"(\\s|$)").test(i)}function t4(t,e){if(void 0!==t.classList)for(var i=w(e),n=0,o=i.length;n0?2*window.devicePixelRatio:1;function ez(t){return tB.edge?t.wheelDeltaY/2:t.deltaY&&0===t.deltaMode?-t.deltaY/eM:t.deltaY&&1===t.deltaMode?-(20*t.deltaY):t.deltaY&&2===t.deltaMode?-(60*t.deltaY):t.deltaX||t.deltaZ?0:t.wheelDelta?(t.wheelDeltaY||t.wheelDelta)/2:t.detail&&32765>Math.abs(t.detail)?-(20*t.detail):t.detail?-(60*(t.detail/32765)):0}function eC(t,e){var i=e.relatedTarget;if(!i)return!0;try{for(;i&&i!==t;)i=i.parentNode}catch(t){return!1}return i!==t}var eS=j.extend({run:function(t,e,i,n){this.stop(),this._el=t,this._inProgress=!0,this._duration=i||.25,this._easeOutPower=1/Math.max(n||.5,.2),this._startPos=eo(t),this._offset=e.subtract(this._startPos),this._startTime=+new Date,this.fire("start"),this._animate()},stop:function(){this._inProgress&&(this._step(!0),this._complete())},_animate:function(){this._animId=I(this._animate,this),this._step()},_step:function(t){var e=new Date-this._startTime,i=1e3*this._duration;ethis.options.maxZoom))?this.setZoom(t):this},panInsideBounds:function(t,e){this._enforcingBounds=!0;var i=this.getCenter(),n=this._limitCenter(i,this._zoom,V(t));return i.equals(n)||this.panTo(n,e),this._enforcingBounds=!1,this},panInside:function(t,e){var i=W((e=e||{}).paddingTopLeft||e.padding||[0,0]),n=W(e.paddingBottomRight||e.padding||[0,0]),o=this.project(this.getCenter()),s=this.project(t),r=this.getPixelBounds(),a=U([r.min.add(i),r.max.subtract(n)]),h=a.getSize();if(!a.contains(s)){this._enforcingBounds=!0;var l=s.subtract(a.getCenter()),u=a.extend(s).getSize().subtract(h);o.x+=l.x<0?-u.x:u.x,o.y+=l.y<0?-u.y:u.y,this.panTo(this.unproject(o),e),this._enforcingBounds=!1}return this},invalidateSize:function(t){if(!this._loaded)return this;t=e({animate:!1,pan:!0},!0===t?{animate:!0}:t);var i=this.getSize();this._sizeChanged=!0,this._lastCenter=null;var n=this.getSize(),o=i.divideBy(2).round(),s=n.divideBy(2).round(),r=o.subtract(s);return r.x||r.y?(t.animate&&t.pan?this.panBy(r):(t.pan&&this._rawPanBy(r),this.fire("move"),t.debounceMoveend?(clearTimeout(this._sizeTimer),this._sizeTimer=setTimeout(_(this.fire,this,"moveend"),200)):this.fire("moveend")),this.fire("resize",{oldSize:i,newSize:n})):this},stop:function(){return this.setZoom(this._limitZoom(this._zoom)),this.options.zoomSnap||this.fire("viewreset"),this._stop()},locate:function(t){if(t=this._locateOptions=e({timeout:1e4,watch:!1},t),!("geolocation"in navigator))return this._handleGeolocationError({code:0,message:"Geolocation not supported."}),this;var i=_(this._handleGeolocationResponse,this),n=_(this._handleGeolocationError,this);return t.watch?this._locationWatchId=navigator.geolocation.watchPosition(i,n,t):navigator.geolocation.getCurrentPosition(i,n,t),this},stopLocate:function(){return navigator.geolocation&&navigator.geolocation.clearWatch&&navigator.geolocation.clearWatch(this._locationWatchId),this._locateOptions&&(this._locateOptions.setView=!1),this},_handleGeolocationError:function(t){if(this._container._leaflet_id){var e=t.code,i=t.message||(1===e?"permission denied":2===e?"position unavailable":"timeout");this._locateOptions.setView&&!this._loaded&&this.fitWorld(),this.fire("locationerror",{code:e,message:"Geolocation error: "+i+"."})}},_handleGeolocationResponse:function(t){if(this._container._leaflet_id){var e=new G(t.coords.latitude,t.coords.longitude),i=e.toBounds(2*t.coords.accuracy),n=this._locateOptions;if(n.setView){var o=this.getBoundsZoom(i);this.setView(e,n.maxZoom?Math.min(o,n.maxZoom):o)}var s={latlng:e,bounds:i,timestamp:t.timestamp};for(var r in t.coords)"number"==typeof t.coords[r]&&(s[r]=t.coords[r]);this.fire("locationfound",s)}},addHandler:function(t,e){if(!e)return this;var i=this[t]=new e(this);return this._handlers.push(i),this.options[t]&&i.enable(),this},remove:function(){var t;if(this._initEvents(!0),this.options.maxBounds&&this.off("moveend",this._panInsideMaxBounds),this._containerId!==this._container._leaflet_id)throw Error("Map container is being reused by another instance");try{delete this._container._leaflet_id,delete this._containerId}catch(t){this._container._leaflet_id=void 0,this._containerId=void 0}for(t in void 0!==this._locationWatchId&&this.stopLocate(),this._stop(),t1(this._mapPane),this._clearControlPos&&this._clearControlPos(),this._resizeRequest&&(B(this._resizeRequest),this._resizeRequest=null),this._clearHandlers(),this._loaded&&this.fire("unload"),this._layers)this._layers[t].remove();for(t in this._panes)t1(this._panes[t]);return this._layers=[],this._panes=[],delete this._mapPane,delete this._renderer,this},createPane:function(t,e){var i=t0("div","leaflet-pane"+(t?" leaflet-"+t.replace("Pane","")+"-pane":""),e||this._mapPane);return t&&(this._panes[t]=i),i},getCenter:function(){return(this._checkIfLoaded(),this._lastCenter&&!this._moved())?this._lastCenter.clone():this.layerPointToLatLng(this._getCenterLayerPoint())},getZoom:function(){return this._zoom},getBounds:function(){var t=this.getPixelBounds();return new q(this.unproject(t.getBottomLeft()),this.unproject(t.getTopRight()))},getMinZoom:function(){return void 0===this.options.minZoom?this._layersMinZoom||0:this.options.minZoom},getMaxZoom:function(){return void 0===this.options.maxZoom?void 0===this._layersMaxZoom?1/0:this._layersMaxZoom:this.options.maxZoom},getBoundsZoom:function(t,e,i){t=V(t),i=W(i||[0,0]);var n=this.getZoom()||0,o=this.getMinZoom(),s=this.getMaxZoom(),r=t.getNorthWest(),a=t.getSouthEast(),h=this.getSize().subtract(i),l=U(this.project(a,n),this.project(r,n)).getSize(),u=tB.any3d?this.options.zoomSnap:1,c=h.x/l.x,d=h.y/l.y,_=e?Math.max(c,d):Math.min(c,d);return n=this.getScaleZoom(_,n),u&&(n=u/100*Math.round(n/(u/100)),n=e?Math.ceil(n/u)*u:Math.floor(n/u)*u),Math.max(o,Math.min(s,n))},getSize:function(){return(!this._size||this._sizeChanged)&&(this._size=new D(this._container.clientWidth||0,this._container.clientHeight||0),this._sizeChanged=!1),this._size.clone()},getPixelBounds:function(t,e){var i=this._getTopLeftPoint(t,e);return new F(i,i.add(this.getSize()))},getPixelOrigin:function(){return this._checkIfLoaded(),this._pixelOrigin},getPixelWorldBounds:function(t){return this.options.crs.getProjectedBounds(void 0===t?this.getZoom():t)},getPane:function(t){return"string"==typeof t?this._panes[t]:t},getPanes:function(){return this._panes},getContainer:function(){return this._container},getZoomScale:function(t,e){var i=this.options.crs;return e=void 0===e?this._zoom:e,i.scale(t)/i.scale(e)},getScaleZoom:function(t,e){var i=this.options.crs;e=void 0===e?this._zoom:e;var n=i.zoom(t*i.scale(e));return isNaN(n)?1/0:n},project:function(t,e){return e=void 0===e?this._zoom:e,this.options.crs.latLngToPoint(K(t),e)},unproject:function(t,e){return e=void 0===e?this._zoom:e,this.options.crs.pointToLatLng(W(t),e)},layerPointToLatLng:function(t){var e=W(t).add(this.getPixelOrigin());return this.unproject(e)},latLngToLayerPoint:function(t){return this.project(K(t))._round()._subtract(this.getPixelOrigin())},wrapLatLng:function(t){return this.options.crs.wrapLatLng(K(t))},wrapLatLngBounds:function(t){return this.options.crs.wrapLatLngBounds(V(t))},distance:function(t,e){return this.options.crs.distance(K(t),K(e))},containerPointToLayerPoint:function(t){return W(t).subtract(this._getMapPanePos())},layerPointToContainerPoint:function(t){return W(t).add(this._getMapPanePos())},containerPointToLatLng:function(t){var e=this.containerPointToLayerPoint(W(t));return this.layerPointToLatLng(e)},latLngToContainerPoint:function(t){return this.layerPointToContainerPoint(this.latLngToLayerPoint(K(t)))},mouseEventToContainerPoint:function(t){return eT(t,this._container)},mouseEventToLayerPoint:function(t){return this.containerPointToLayerPoint(this.mouseEventToContainerPoint(t))},mouseEventToLatLng:function(t){return this.layerPointToLatLng(this.mouseEventToLayerPoint(t))},_initContainer:function(t){var e=this._container=t$(t);if(e){if(e._leaflet_id)throw Error("Map container is already initialized.")}else throw Error("Map container not found.");ed(e,"scroll",this._onScroll,this),this._containerId=m(e)},_initLayout:function(){var t=this._container;this._fadeAnimated=this.options.fadeAnimation&&tB.any3d,t4(t,"leaflet-container"+(tB.touch?" leaflet-touch":"")+(tB.retina?" leaflet-retina":"")+(tB.ielt9?" leaflet-oldie":"")+(tB.safari?" leaflet-safari":"")+(this._fadeAnimated?" leaflet-fade-anim":""));var e=tQ(t,"position");"absolute"!==e&&"relative"!==e&&"fixed"!==e&&"sticky"!==e&&(t.style.position="relative"),this._initPanes(),this._initControlPos&&this._initControlPos()},_initPanes:function(){var t=this._panes={};this._paneRenderers={},this._mapPane=this.createPane("mapPane",this._container),en(this._mapPane,new D(0,0)),this.createPane("tilePane"),this.createPane("overlayPane"),this.createPane("shadowPane"),this.createPane("markerPane"),this.createPane("tooltipPane"),this.createPane("popupPane"),this.options.markerZoomAnimation||(t4(t.markerPane,"leaflet-zoom-hide"),t4(t.shadowPane,"leaflet-zoom-hide"))},_resetView:function(t,e,i){en(this._mapPane,new D(0,0));var n=!this._loaded;this._loaded=!0,e=this._limitZoom(e),this.fire("viewprereset");var o=this._zoom!==e;this._moveStart(o,i)._move(t,e)._moveEnd(o),this.fire("viewreset"),n&&this.fire("load")},_moveStart:function(t,e){return t&&this.fire("zoomstart"),e||this.fire("movestart"),this},_move:function(t,e,i,n){void 0===e&&(e=this._zoom);var o=this._zoom!==e;return this._zoom=e,this._lastCenter=t,this._pixelOrigin=this._getNewPixelOrigin(t),n?i&&i.pinch&&this.fire("zoom",i):((o||i&&i.pinch)&&this.fire("zoom",i),this.fire("move",i)),this},_moveEnd:function(t){return t&&this.fire("zoomend"),this.fire("moveend")},_stop:function(){return B(this._flyToFrame),this._panAnim&&this._panAnim.stop(),this},_rawPanBy:function(t){en(this._mapPane,this._getMapPanePos().subtract(t))},_getZoomSpan:function(){return this.getMaxZoom()-this.getMinZoom()},_panInsideMaxBounds:function(){this._enforcingBounds||this.panInsideBounds(this.options.maxBounds)},_checkIfLoaded:function(){if(!this._loaded)throw Error("Set map center and zoom first.")},_initEvents:function(t){this._targets={},this._targets[m(this._container)]=this;var e=t?ep:ed;e(this._container,"click dblclick mousedown mouseup mouseover mouseout mousemove contextmenu keypress keydown keyup",this._handleDOMEvent,this),this.options.trackResize&&e(window,"resize",this._onResize,this),tB.any3d&&this.options.transform3DLimit&&(t?this.off:this.on).call(this,"moveend",this._onMoveEnd)},_onResize:function(){B(this._resizeRequest),this._resizeRequest=I(function(){this.invalidateSize({debounceMoveend:!0})},this)},_onScroll:function(){this._container.scrollTop=0,this._container.scrollLeft=0},_onMoveEnd:function(){var t=this._getMapPanePos();Math.max(Math.abs(t.x),Math.abs(t.y))>=this.options.transform3DLimit&&this._resetView(this.getCenter(),this.getZoom())},_findEventTargets:function(t,e){for(var i,n=[],o="mouseout"===e||"mouseover"===e,s=t.target||t.srcElement,r=!1;s;){if((i=this._targets[m(s)])&&("click"===e||"preclick"===e)&&this._draggableMoved(i)){r=!0;break}if(i&&i.listens(e,!0)&&(o&&!eC(s,t)||(n.push(i),o)))break;if(s===this._container)break;s=s.parentNode}return!n.length&&!r&&!o&&this.listens(e,!0)&&(n=[this]),n},_isClickDisabled:function(t){for(;t&&t!==this._container;){if(t._leaflet_disable_click)return!0;t=t.parentNode}},_handleDOMEvent:function(t){var e=t.target||t.srcElement;if(!(!this._loaded||e._leaflet_disable_events||"click"===t.type&&this._isClickDisabled(e))){var i=t.type;"mousedown"===i&&eh(e),this._fireDOMEvent(t,i)}},_mouseEvents:["click","dblclick","mouseover","mouseout","contextmenu"],_fireDOMEvent:function(t,i,n){if("click"===t.type){var o=e({},t);o.type="preclick",this._fireDOMEvent(o,o.type,n)}var s=this._findEventTargets(t,i);if(n){for(var r=[],a=0;a=Math.abs(r.x)&&1>=Math.abs(r.y)?t:this.unproject(n.add(r),e)},_limitOffset:function(t,e){if(!e)return t;var i=this.getPixelBounds(),n=new F(i.min.add(t),i.max.add(t));return t.add(this._getBoundsOffset(n,e))},_getBoundsOffset:function(t,e,i){var n=U(this.project(e.getNorthEast(),i),this.project(e.getSouthWest(),i)),o=n.min.subtract(t.min),s=n.max.subtract(t.max);return new D(this._rebound(o.x,-s.x),this._rebound(o.y,-s.y))},_rebound:function(t,e){return t+e>0?Math.round(t-e)/2:Math.max(0,Math.ceil(t))-Math.max(0,Math.floor(e))},_limitZoom:function(t){var e=this.getMinZoom(),i=this.getMaxZoom(),n=tB.any3d?this.options.zoomSnap:1;return n&&(t=Math.round(t/n)*n),Math.max(e,Math.min(i,t))},_onPanTransitionStep:function(){this.fire("move")},_onPanTransitionEnd:function(){t9(this._mapPane,"leaflet-pan-anim"),this.fire("moveend")},_tryAnimatedPan:function(t,e){var i=this._getCenterOffset(t)._trunc();return(!0===(e&&e.animate)||!!this.getSize().contains(i))&&(this.panBy(i,e),!0)},_createAnimProxy:function(){var t=this._proxy=t0("div","leaflet-proxy leaflet-zoom-animated");this._panes.mapPane.appendChild(t),this.on("zoomanim",function(t){var e=this._proxy.style[tY];ei(this._proxy,this.project(t.center,t.zoom),this.getZoomScale(t.zoom,1)),e===this._proxy.style[tY]&&this._animatingZoom&&this._onZoomTransitionEnd()},this),this.on("load moveend",this._animMoveEnd,this),this._on("unload",this._destroyAnimProxy,this)},_destroyAnimProxy:function(){t1(this._proxy),this.off("load moveend",this._animMoveEnd,this),delete this._proxy},_animMoveEnd:function(){var t=this.getCenter(),e=this.getZoom();ei(this._proxy,this.project(t,e),this.getZoomScale(e,1))},_catchTransitionEnd:function(t){this._animatingZoom&&t.propertyName.indexOf("transform")>=0&&this._onZoomTransitionEnd()},_nothingToAnimate:function(){return!this._container.getElementsByClassName("leaflet-zoom-animated").length},_tryAnimatedZoom:function(t,e,i){if(this._animatingZoom)return!0;if(i=i||{},!this._zoomAnimated||!1===i.animate||this._nothingToAnimate()||Math.abs(e-this._zoom)>this.options.zoomAnimationThreshold)return!1;var n=this.getZoomScale(e),o=this._getCenterOffset(t)._divideBy(1-1/n);return(!0===i.animate||!!this.getSize().contains(o))&&(I(function(){this._moveStart(!0,i.noMoveStart||!1)._animateZoom(t,e,!0)},this),!0)},_animateZoom:function(t,e,i,n){this._mapPane&&(i&&(this._animatingZoom=!0,this._animateToCenter=t,this._animateToZoom=e,t4(this._mapPane,"leaflet-zoom-anim")),this.fire("zoomanim",{center:t,zoom:e,noUpdate:n}),this._tempFireZoomEvent||(this._tempFireZoomEvent=this._zoom!==this._animateToZoom),this._move(this._animateToCenter,this._animateToZoom,void 0,!0),setTimeout(_(this._onZoomTransitionEnd,this),250))},_onZoomTransitionEnd:function(){this._animatingZoom&&(this._mapPane&&t9(this._mapPane,"leaflet-zoom-anim"),this._animatingZoom=!1,this._move(this._animateToCenter,this._animateToZoom,void 0,!0),this._tempFireZoomEvent&&this.fire("zoom"),delete this._tempFireZoomEvent,this.fire("move"),this._moveEnd(!0))}}),eE=R.extend({options:{position:"topright"},initialize:function(t){b(this,t)},getPosition:function(){return this.options.position},setPosition:function(t){var e=this._map;return e&&e.removeControl(this),this.options.position=t,e&&e.addControl(this),this},getContainer:function(){return this._container},addTo:function(t){this.remove(),this._map=t;var e=this._container=this.onAdd(t),i=this.getPosition(),n=t._controlCorners[i];return t4(e,"leaflet-control"),-1!==i.indexOf("bottom")?n.insertBefore(e,n.firstChild):n.appendChild(e),this._map.on("unload",this.remove,this),this},remove:function(){return this._map&&(t1(this._container),this.onRemove&&this.onRemove(this._map),this._map.off("unload",this.remove,this),this._map=null),this},_refocusOnMap:function(t){this._map&&t&&t.screenX>0&&t.screenY>0&&this._map.getContainer().focus()}}),ek=function(t){return new eE(t)};eZ.include({addControl:function(t){return t.addTo(this),this},removeControl:function(t){return t.remove(),this},_initControlPos:function(){var t=this._controlCorners={},e="leaflet-",i=this._controlContainer=t0("div",e+"control-container",this._container);function n(n,o){t[n+o]=t0("div",e+n+" "+e+o,i)}n("top","left"),n("top","right"),n("bottom","left"),n("bottom","right")},_clearControlPos:function(){for(var t in this._controlCorners)t1(this._controlCorners[t]);t1(this._controlContainer),delete this._controlCorners,delete this._controlContainer}});var eO=eE.extend({options:{collapsed:!0,position:"topright",autoZIndex:!0,hideSingleBase:!1,sortLayers:!1,sortFunction:function(t,e,i,n){return i1,this._baseLayersList.style.display=t?"":"none"),this._separator.style.display=e&&t?"":"none",this},_onLayerChange:function(t){this._handlingClick||this._update();var e=this._getLayer(m(t.target)),i=e.overlay?"add"===t.type?"overlayadd":"overlayremove":"add"===t.type?"baselayerchange":null;i&&this._map.fire(i,e)},_createRadioElement:function(t,e){var i=document.createElement("div");return i.innerHTML='",i.firstChild},_addItem:function(t){var e,i=document.createElement("label"),n=this._map.hasLayer(t.layer);t.overlay?((e=document.createElement("input")).type="checkbox",e.className="leaflet-control-layers-selector",e.defaultChecked=n):e=this._createRadioElement("leaflet-base-layers_"+m(this),n),this._layerControlInputs.push(e),e.layerId=m(t.layer),ed(e,"click",this._onInputClick,this);var o=document.createElement("span");o.innerHTML=" "+t.name;var s=document.createElement("span");return i.appendChild(s),s.appendChild(e),s.appendChild(o),(t.overlay?this._overlaysList:this._baseLayersList).appendChild(i),this._checkDisabledLayers(),i},_onInputClick:function(){if(!this._preventClick){var t,e,i=this._layerControlInputs,n=[],o=[];this._handlingClick=!0;for(var s=i.length-1;s>=0;s--)t=i[s],e=this._getLayer(t.layerId).layer,t.checked?n.push(e):t.checked||o.push(e);for(s=0;s=0;o--)t=i[o],e=this._getLayer(t.layerId).layer,t.disabled=void 0!==e.options.minZoom&&ne.options.maxZoom},_expandIfNotCollapsed:function(){return this._map&&!this.options.collapsed&&this.expand(),this},_expandSafely:function(){var t=this._section;this._preventClick=!0,ed(t,"click",eb),this.expand();var e=this;setTimeout(function(){ep(t,"click",eb),e._preventClick=!1})}}),eA=eE.extend({options:{position:"topleft",zoomInText:'',zoomInTitle:"Zoom in",zoomOutText:'',zoomOutTitle:"Zoom out"},onAdd:function(t){var e="leaflet-control-zoom",i=t0("div",e+" leaflet-bar"),n=this.options;return this._zoomInButton=this._createButton(n.zoomInText,n.zoomInTitle,e+"-in",i,this._zoomIn),this._zoomOutButton=this._createButton(n.zoomOutText,n.zoomOutTitle,e+"-out",i,this._zoomOut),this._updateDisabled(),t.on("zoomend zoomlevelschange",this._updateDisabled,this),i},onRemove:function(t){t.off("zoomend zoomlevelschange",this._updateDisabled,this)},disable:function(){return this._disabled=!0,this._updateDisabled(),this},enable:function(){return this._disabled=!1,this._updateDisabled(),this},_zoomIn:function(t){!this._disabled&&this._map._zoomthis._map.getMinZoom()&&this._map.zoomOut(this._map.options.zoomDelta*(t.shiftKey?3:1))},_createButton:function(t,e,i,n,o){var s=t0("a",i,n);return s.innerHTML=t,s.href="#",s.title=e,s.setAttribute("role","button"),s.setAttribute("aria-label",e),ew(s),ed(s,"click",eP),ed(s,"click",o,this),ed(s,"click",this._refocusOnMap,this),s},_updateDisabled:function(){var t=this._map,e="leaflet-disabled";t9(this._zoomInButton,e),t9(this._zoomOutButton,e),this._zoomInButton.setAttribute("aria-disabled","false"),this._zoomOutButton.setAttribute("aria-disabled","false"),(this._disabled||t._zoom===t.getMinZoom())&&(t4(this._zoomOutButton,e),this._zoomOutButton.setAttribute("aria-disabled","true")),(this._disabled||t._zoom===t.getMaxZoom())&&(t4(this._zoomInButton,e),this._zoomInButton.setAttribute("aria-disabled","true"))}});eZ.mergeOptions({zoomControl:!0}),eZ.addInitHook(function(){this.options.zoomControl&&(this.zoomControl=new eA,this.addControl(this.zoomControl))});var eI=eE.extend({options:{position:"bottomleft",maxWidth:100,metric:!0,imperial:!0},onAdd:function(t){var e="leaflet-control-scale",i=t0("div",e),n=this.options;return this._addScales(n,e+"-line",i),t.on(n.updateWhenIdle?"moveend":"move",this._update,this),t.whenReady(this._update,this),i},onRemove:function(t){t.off(this.options.updateWhenIdle?"moveend":"move",this._update,this)},_addScales:function(t,e,i){t.metric&&(this._mScale=t0("div",e,i)),t.imperial&&(this._iScale=t0("div",e,i))},_update:function(){var t=this._map,e=t.getSize().y/2,i=t.distance(t.containerPointToLatLng([0,e]),t.containerPointToLatLng([this.options.maxWidth,e]));this._updateScales(i)},_updateScales:function(t){this.options.metric&&t&&this._updateMetric(t),this.options.imperial&&t&&this._updateImperial(t)},_updateMetric:function(t){var e=this._getRoundNum(t);this._updateScale(this._mScale,e<1e3?e+" m":e/1e3+" km",e/t)},_updateImperial:function(t){var e,i,n,o=3.2808399*t;o>5280?(e=o/5280,i=this._getRoundNum(e),this._updateScale(this._iScale,i+" mi",i/e)):(n=this._getRoundNum(o),this._updateScale(this._iScale,n+" ft",n/o))},_updateScale:function(t,e,i){t.style.width=Math.round(this.options.maxWidth*i)+"px",t.innerHTML=e},_getRoundNum:function(t){var e=Math.pow(10,(Math.floor(t)+"").length-1),i=t/e;return e*(i=i>=10?10:i>=5?5:i>=3?3:i>=2?2:1)}}),eB=eE.extend({options:{position:"bottomright",prefix:''+(tB.inlineSvg?' ':"")+"Leaflet"},initialize:function(t){b(this,t),this._attributions={}},onAdd:function(t){for(var e in t.attributionControl=this,this._container=t0("div","leaflet-control-attribution"),ew(this._container),t._layers)t._layers[e].getAttribution&&this.addAttribution(t._layers[e].getAttribution());return this._update(),t.on("layeradd",this._addAttribution,this),this._container},onRemove:function(t){t.off("layeradd",this._addAttribution,this)},_addAttribution:function(t){t.layer.getAttribution&&(this.addAttribution(t.layer.getAttribution()),t.layer.once("remove",function(){this.removeAttribution(t.layer.getAttribution())},this))},setPrefix:function(t){return this.options.prefix=t,this._update(),this},addAttribution:function(t){return t&&(this._attributions[t]||(this._attributions[t]=0),this._attributions[t]++,this._update()),this},removeAttribution:function(t){return t&&this._attributions[t]&&(this._attributions[t]--,this._update()),this},_update:function(){if(this._map){var t=[];for(var e in this._attributions)this._attributions[e]&&t.push(e);var i=[];this.options.prefix&&i.push(this.options.prefix),t.length&&i.push(t.join(", ")),this._container.innerHTML=i.join(' ')}}});eZ.mergeOptions({attributionControl:!0}),eZ.addInitHook(function(){this.options.attributionControl&&new eB().addTo(this)}),eE.Layers=eO,eE.Zoom=eA,eE.Scale=eI,eE.Attribution=eB,ek.layers=function(t,e,i){return new eO(t,e,i)},ek.zoom=function(t){return new eA(t)},ek.scale=function(t){return new eI(t)},ek.attribution=function(t){return new eB(t)};var eR=R.extend({initialize:function(t){this._map=t},enable:function(){return this._enabled||(this._enabled=!0,this.addHooks()),this},disable:function(){return this._enabled&&(this._enabled=!1,this.removeHooks()),this},enabled:function(){return!!this._enabled}});eR.addTo=function(t,e){return t.addHandler(e,this),this};var eN=tB.touch?"touchstart mousedown":"mousedown",ej=j.extend({options:{clickTolerance:3},initialize:function(t,e,i,n){b(this,n),this._element=t,this._dragStartTarget=e||t,this._preventOutline=i},enable:function(){this._enabled||(ed(this._dragStartTarget,eN,this._onDown,this),this._enabled=!0)},disable:function(){this._enabled&&(ej._dragging===this&&this.finishDrag(!0),ep(this._dragStartTarget,eN,this._onDown,this),this._enabled=!1,this._moved=!1)},_onDown:function(t){if(!(!this._enabled||(this._moved=!1,t8(this._element,"leaflet-zoom-anim")))){if(t.touches&&1!==t.touches.length){ej._dragging===this&&this.finishDrag();return}if(!ej._dragging&&!t.shiftKey&&(1===t.which||1===t.button||t.touches)&&(ej._dragging=this,this._preventOutline&&eh(this._element),er(),i(),!this._moving)){this.fire("down");var e=t.touches?t.touches[0]:t,n=eu(this._element);this._startPoint=new D(e.clientX,e.clientY),this._startPos=eo(this._element),this._parentScale=ec(n);var o="mousedown"===t.type;ed(document,o?"mousemove":"touchmove",this._onMove,this),ed(document,o?"mouseup":"touchend touchcancel",this._onUp,this)}}},_onMove:function(t){if(this._enabled){if(t.touches&&t.touches.length>1){this._moved=!0;return}var e=t.touches&&1===t.touches.length?t.touches[0]:t,i=new D(e.clientX,e.clientY)._subtract(this._startPoint);(i.x||i.y)&&(Math.abs(i.x)+Math.abs(i.y)typeof Uint8Array?Uint8Array:Array)(i);n[0]=n[i-1]=1,function t(e,i,n,o,s){var r,a,h,l=0;for(a=o+1;a<=s-1;a++)(h=eK(e[a],e[o],e[s],!0))>l&&(r=a,l=h);l>n&&(i[r]=1,t(e,i,n,o,r),t(e,i,n,r,s))}(t,n,e,0,i-1);var o,s=[];for(o=0;oe&&(i.push(t[n]),o=n);return oe.max.x&&(i|=2),t.ye.max.y&&(i|=8),i}function eK(t,e,i,n){var o,s=e.x,r=e.y,a=i.x-s,h=i.y-r,l=a*a+h*h;return l>0&&((o=((t.x-s)*a+(t.y-r)*h)/l)>1?(s=i.x,r=i.y):o>0&&(s+=a*o,r+=h*o)),a=t.x-s,h=t.y-r,n?a*a+h*h:new D(s,r)}function eY(t){return!z(t[0])||"object"!=typeof t[0][0]&&void 0!==t[0][0]}function eJ(t){return console.warn("Deprecated use of _flat, please use L.LineUtil.isFlat instead."),eY(t)}function eX(t,e){if(!t||0===t.length)throw Error("latlngs not passed");eY(t)||(console.warn("latlngs are not flat! Only the first ring will be used"),t=t[0]);var i,n,o,s,r,a,h,l,u=K([0,0]),c=V(t);c.getNorthWest().distanceTo(c.getSouthWest())*c.getNorthEast().distanceTo(c.getNorthWest())<1700&&(u=eW(t));var d=t.length,_=[];for(i=0;in){h=(s-n)/o,l=[a.x-h*(a.x-r.x),a.y-h*(a.y-r.y)];break}var m=e.unproject(W(l));return K([m.lat+u.lat,m.lng+u.lng])}var e$={project:function(t){return new D(t.lng,t.lat)},unproject:function(t){return new G(t.y,t.x)},bounds:new F([-180,-90],[180,90])},eQ={R:6378137,R_MINOR:6356752.314245179,bounds:new F([-20037508.34279,-15496570.73972],[20037508.34279,18764656.23138]),project:function(t){var e=Math.PI/180,i=this.R,n=t.lat*e,o=this.R_MINOR/i,s=Math.sqrt(1-o*o),r=s*Math.sin(n);return n=-i*Math.log(Math.max(Math.tan(Math.PI/4-n/2)/Math.pow((1-r)/(1+r),s/2),1e-10)),new D(t.lng*e*i,n)},unproject:function(t){for(var e,i=180/Math.PI,n=this.R,o=this.R_MINOR/n,s=Math.sqrt(1-o*o),r=Math.exp(-t.y/n),a=Math.PI/2-2*Math.atan(r),h=0,l=.1;h<15&&Math.abs(l)>1e-7;h++)l=Math.PI/2-2*Math.atan(r*(e=Math.pow((1-(e=s*Math.sin(a)))/(1+e),s/2)))-a,a+=l;return new G(a*i,t.x*i/n)}},e0=e({},J,{code:"EPSG:3395",projection:eQ,transformation:Q(c=.5/(Math.PI*eQ.R),.5,-c,.5)}),e1=e({},J,{code:"EPSG:4326",projection:e$,transformation:Q(1/180,1,-1/180,.5)}),e2=e({},Y,{projection:e$,transformation:Q(1,0,-1,0),scale:function(t){return Math.pow(2,t)},zoom:function(t){return Math.log(t)/Math.LN2},distance:function(t,e){var i=e.lng-t.lng,n=e.lat-t.lat;return Math.sqrt(i*i+n*n)},infinite:!0});Y.Earth=J,Y.EPSG3395=e0,Y.EPSG3857=tt,Y.EPSG900913=te,Y.EPSG4326=e1,Y.Simple=e2;var e3=j.extend({options:{pane:"overlayPane",attribution:null,bubblingMouseEvents:!0},addTo:function(t){return t.addLayer(this),this},remove:function(){return this.removeFrom(this._map||this._mapToAdd)},removeFrom:function(t){return t&&t.removeLayer(this),this},getPane:function(t){return this._map.getPane(t?this.options[t]||t:this.options.pane)},addInteractiveTarget:function(t){return this._map._targets[m(t)]=this,this},removeInteractiveTarget:function(t){return delete this._map._targets[m(t)],this},getAttribution:function(){return this.options.attribution},_layerAdd:function(t){var e=t.target;if(e.hasLayer(this)){if(this._map=e,this._zoomAnimated=e._zoomAnimated,this.getEvents){var i=this.getEvents();e.on(i,this),this.once("remove",function(){e.off(i,this)},this)}this.onAdd(e),this.fire("add"),e.fire("layeradd",{layer:this})}}});eZ.include({addLayer:function(t){if(!t._layerAdd)throw Error("The provided object is not a Layer.");var e=m(t);return this._layers[e]||(this._layers[e]=t,t._mapToAdd=this,t.beforeAdd&&t.beforeAdd(this),this.whenReady(t._layerAdd,t)),this},removeLayer:function(t){var e=m(t);return this._layers[e]&&(this._loaded&&t.onRemove(this),delete this._layers[e],this._loaded&&(this.fire("layerremove",{layer:t}),t.fire("remove")),t._map=t._mapToAdd=null),this},hasLayer:function(t){return m(t)in this._layers},eachLayer:function(t,e){for(var i in this._layers)t.call(e,this._layers[i]);return this},_addLayers:function(t){t=t?z(t)?t:[t]:[];for(var e=0,i=t.length;ethis._layersMaxZoom&&this.setZoom(this._layersMaxZoom),void 0===this.options.minZoom&&this._layersMinZoom&&this.getZoom()=2&&e[0]instanceof G&&e[0].equals(e[i-1])&&e.pop(),e},_setLatLngs:function(t){io.prototype._setLatLngs.call(this,t),eY(this._latlngs)&&(this._latlngs=[this._latlngs])},_defaultShape:function(){return eY(this._latlngs[0])?this._latlngs[0]:this._latlngs[0][0]},_clipPoints:function(){var t=this._renderer._bounds,e=this.options.weight,i=new D(e,e);if(t=new F(t.min.subtract(i),t.max.add(i)),this._parts=[],this._pxBounds&&this._pxBounds.intersects(t)){if(this.options.noClip){this._parts=this._rings;return}for(var n,o=0,s=this._rings.length;ot.y!=n.y>t.y&&t.x<(n.x-i.x)*(t.y-i.y)/(n.y-i.y)+i.x&&(l=!l);return l||io.prototype._containsPoint.call(this,t,!0)}}),ir=e8.extend({initialize:function(t,e){b(this,e),this._layers={},t&&this.addData(t)},addData:function(t){var e,i,n,o=z(t)?t:t.features;if(o){for(e=0,i=o.length;e0&&o.push(o[0].slice()),o}function i_(t,i){return t.feature?e({},t.feature,{geometry:i}):ip(i)}function ip(t){return"Feature"===t.type||"FeatureCollection"===t.type?t:{type:"Feature",properties:{},geometry:t}}var im={toGeoJSON:function(t){return i_(this,{type:"Point",coordinates:ic(this.getLatLng(),t)})}};function ig(t,e){return new ir(t,e)}e7.include(im),ii.include(im),ie.include(im),io.include({toGeoJSON:function(t){var e=!eY(this._latlngs),i=id(this._latlngs,+!!e,!1,t);return i_(this,{type:(e?"Multi":"")+"LineString",coordinates:i})}}),is.include({toGeoJSON:function(t){var e=!eY(this._latlngs),i=e&&!eY(this._latlngs[0]),n=id(this._latlngs,i?2:+!!e,!0,t);return e||(n=[n]),i_(this,{type:(i?"Multi":"")+"Polygon",coordinates:n})}}),e5.include({toMultiPoint:function(t){var e=[];return this.eachLayer(function(i){e.push(i.toGeoJSON(t).geometry.coordinates)}),i_(this,{type:"MultiPoint",coordinates:e})},toGeoJSON:function(t){var e=this.feature&&this.feature.geometry&&this.feature.geometry.type;if("MultiPoint"===e)return this.toMultiPoint(t);var i="GeometryCollection"===e,n=[];return(this.eachLayer(function(e){if(e.toGeoJSON){var o=e.toGeoJSON(t);if(i)n.push(o.geometry);else{var s=ip(o);"FeatureCollection"===s.type?n.push.apply(n,s.features):n.push(s)}}}),i)?i_(this,{geometries:n,type:"GeometryCollection"}):{type:"FeatureCollection",features:n}}});var iv=e3.extend({options:{opacity:1,alt:"",interactive:!1,crossOrigin:!1,errorOverlayUrl:"",zIndex:1,className:""},initialize:function(t,e,i){this._url=t,this._bounds=V(e),b(this,i)},onAdd:function(){!this._image&&(this._initImage(),this.options.opacity<1&&this._updateOpacity()),this.options.interactive&&(t4(this._image,"leaflet-interactive"),this.addInteractiveTarget(this._image)),this.getPane().appendChild(this._image),this._reset()},onRemove:function(){t1(this._image),this.options.interactive&&this.removeInteractiveTarget(this._image)},setOpacity:function(t){return this.options.opacity=t,this._image&&this._updateOpacity(),this},setStyle:function(t){return t.opacity&&this.setOpacity(t.opacity),this},bringToFront:function(){return this._map&&t3(this._image),this},bringToBack:function(){return this._map&&t5(this._image),this},setUrl:function(t){return this._url=t,this._image&&(this._image.src=t),this},setBounds:function(t){return this._bounds=V(t),this._map&&this._reset(),this},getEvents:function(){var t={zoom:this._reset,viewreset:this._reset};return this._zoomAnimated&&(t.zoomanim=this._animateZoom),t},setZIndex:function(t){return this.options.zIndex=t,this._updateZIndex(),this},getBounds:function(){return this._bounds},getElement:function(){return this._image},_initImage:function(){var t="IMG"===this._url.tagName,e=this._image=t?this._url:t0("img");if(t4(e,"leaflet-image-layer"),this._zoomAnimated&&t4(e,"leaflet-zoom-animated"),this.options.className&&t4(e,this.options.className),e.onselectstart=v,e.onmousemove=v,e.onload=_(this.fire,this,"load"),e.onerror=_(this._overlayOnError,this,"error"),(this.options.crossOrigin||""===this.options.crossOrigin)&&(e.crossOrigin=!0===this.options.crossOrigin?"":this.options.crossOrigin),this.options.zIndex&&this._updateZIndex(),t){this._url=e.src;return}e.src=this._url,e.alt=this.options.alt},_animateZoom:function(t){var e=this._map.getZoomScale(t.zoom),i=this._map._latLngBoundsToNewLayerBounds(this._bounds,t.zoom,t.center).min;ei(this._image,i,e)},_reset:function(){var t=this._image,e=new F(this._map.latLngToLayerPoint(this._bounds.getNorthWest()),this._map.latLngToLayerPoint(this._bounds.getSouthEast())),i=e.getSize();en(t,e.min),t.style.width=i.x+"px",t.style.height=i.y+"px"},_updateOpacity:function(){et(this._image,this.options.opacity)},_updateZIndex:function(){this._image&&void 0!==this.options.zIndex&&null!==this.options.zIndex&&(this._image.style.zIndex=this.options.zIndex)},_overlayOnError:function(){this.fire("error");var t=this.options.errorOverlayUrl;t&&this._url!==t&&(this._url=t,this._image.src=t)},getCenter:function(){return this._bounds.getCenter()}}),iy=iv.extend({options:{autoplay:!0,loop:!0,keepAspectRatio:!0,muted:!1,playsInline:!0},_initImage:function(){var t="VIDEO"===this._url.tagName,e=this._image=t?this._url:t0("video");if(t4(e,"leaflet-image-layer"),this._zoomAnimated&&t4(e,"leaflet-zoom-animated"),this.options.className&&t4(e,this.options.className),e.onselectstart=v,e.onmousemove=v,e.onloadeddata=_(this.fire,this,"load"),t){for(var i=e.getElementsByTagName("source"),n=[],o=0;o0?n:[e.src];return}z(this._url)||(this._url=[this._url]),!this.options.keepAspectRatio&&Object.prototype.hasOwnProperty.call(e.style,"objectFit")&&(e.style.objectFit="fill"),e.autoplay=!!this.options.autoplay,e.loop=!!this.options.loop,e.muted=!!this.options.muted,e.playsInline=!!this.options.playsInline;for(var s=0;so?(e.height=o+"px",t4(t,s)):t9(t,s),this._containerWidth=this._container.offsetWidth},_animateZoom:function(t){var e=this._map._latLngToNewLayerPoint(this._latlng,t.zoom,t.center),i=this._getAnchor();en(this._container,e.add(i))},_adjustPan:function(){if(this.options.autoPan){if(this._map._panAnim&&this._map._panAnim.stop(),this._autopanning){this._autopanning=!1;return}var t=this._map,e=parseInt(tQ(this._container,"marginBottom"),10)||0,i=this._container.offsetHeight+e,n=this._containerWidth,o=new D(this._containerLeft,-i-this._containerBottom);o._add(eo(this._container));var s=t.layerPointToContainerPoint(o),r=W(this.options.autoPanPadding),a=W(this.options.autoPanPaddingTopLeft||r),h=W(this.options.autoPanPaddingBottomRight||r),l=t.getSize(),u=0,c=0;s.x+n+h.x>l.x&&(u=s.x+n-l.x+h.x),s.x-u-a.x<0&&(u=s.x-a.x),s.y+i+h.y>l.y&&(c=s.y+i-l.y+h.y),s.y-c-a.y<0&&(c=s.y-a.y),(u||c)&&(this.options.keepInView&&(this._autopanning=!0),t.fire("autopanstart").panBy([u,c]))}},_getAnchor:function(){return W(this._source&&this._source._getPopupAnchor?this._source._getPopupAnchor():[0,0])}});eZ.mergeOptions({closePopupOnClick:!0}),eZ.include({openPopup:function(t,e,i){return this._initOverlay(ib,t,e,i).openOn(this),this},closePopup:function(t){return t=arguments.length?t:this._popup,t&&t.close(),this}}),e3.include({bindPopup:function(t,e){return this._popup=this._initOverlay(ib,this._popup,t,e),this._popupHandlersAdded||(this.on({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!0),this},unbindPopup:function(){return this._popup&&(this.off({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!1,this._popup=null),this},openPopup:function(t){return this._popup&&(this instanceof e8||(this._popup._source=this),this._popup._prepareOpen(t||this._latlng)&&this._popup.openOn(this._map)),this},closePopup:function(){return this._popup&&this._popup.close(),this},togglePopup:function(){return this._popup&&this._popup.toggle(this),this},isPopupOpen:function(){return!!this._popup&&this._popup.isOpen()},setPopupContent:function(t){return this._popup&&this._popup.setContent(t),this},getPopup:function(){return this._popup},_openPopup:function(t){if(this._popup&&this._map){eP(t);var e=t.layer||t.target;if(this._popup._source===e&&!(e instanceof it))return void(this._map.hasLayer(this._popup)?this.closePopup():this.openPopup(t.latlng));this._popup._source=e,this.openPopup(t.latlng)}},_movePopup:function(t){this._popup.setLatLng(t.latlng)},_onKeyPress:function(t){13===t.originalEvent.keyCode&&this._openPopup(t)}});var iP=iw.extend({options:{pane:"tooltipPane",offset:[0,0],direction:"auto",permanent:!1,sticky:!1,opacity:.9},onAdd:function(t){iw.prototype.onAdd.call(this,t),this.setOpacity(this.options.opacity),t.fire("tooltipopen",{tooltip:this}),this._source&&(this.addEventParent(this._source),this._source.fire("tooltipopen",{tooltip:this},!0))},onRemove:function(t){iw.prototype.onRemove.call(this,t),t.fire("tooltipclose",{tooltip:this}),this._source&&(this.removeEventParent(this._source),this._source.fire("tooltipclose",{tooltip:this},!0))},getEvents:function(){var t=iw.prototype.getEvents.call(this);return this.options.permanent||(t.preclick=this.close),t},_initLayout:function(){var t="leaflet-tooltip "+(this.options.className||"")+" leaflet-zoom-"+(this._zoomAnimated?"animated":"hide");this._contentNode=this._container=t0("div",t),this._container.setAttribute("role","tooltip"),this._container.setAttribute("id","leaflet-tooltip-"+m(this))},_updateLayout:function(){},_adjustPan:function(){},_setPosition:function(t){var e,i,n=this._map,o=this._container,s=n.latLngToContainerPoint(n.getCenter()),r=n.layerPointToContainerPoint(t),a=this.options.direction,h=o.offsetWidth,l=o.offsetHeight,u=W(this.options.offset),c=this._getAnchor();"top"===a?(e=h/2,i=l):"bottom"===a?(e=h/2,i=0):("center"===a?e=h/2:"right"===a?e=0:"left"===a?e=h:r.xthis.options.maxZoom||in&&this._retainParent(o,s,r,n))},_retainChildren:function(t,e,i,n){for(var o=2*t;o<2*t+2;o++)for(var s=2*e;s<2*e+2;s++){var r=new D(o,s);r.z=i+1;var a=this._tileCoordsToKey(r),h=this._tiles[a];if(h&&h.active){h.retain=!0;continue}h&&h.loaded&&(h.retain=!0),i+1this.options.maxZoom||void 0!==this.options.minZoom&&o1)return void this._setView(t,i);for(var c=o.min.y;c<=o.max.y;c++)for(var d=o.min.x;d<=o.max.x;d++){var _=new D(d,c);if(_.z=this._tileZoom,this._isValidTile(_)){var p=this._tiles[this._tileCoordsToKey(_)];p?p.current=!0:r.push(_)}}if(r.sort(function(t,e){return t.distanceTo(s)-e.distanceTo(s)}),0!==r.length){this._loading||(this._loading=!0,this.fire("loading"));var m=document.createDocumentFragment();for(d=0;di.max.x)||!e.wrapLat&&(t.yi.max.y))return!1}if(!this.options.bounds)return!0;var n=this._tileCoordsToBounds(t);return V(this.options.bounds).overlaps(n)},_keyToBounds:function(t){return this._tileCoordsToBounds(this._keyToTileCoords(t))},_tileCoordsToNwSe:function(t){var e=this._map,i=this.getTileSize(),n=t.scaleBy(i),o=n.add(i);return[e.unproject(n,t.z),e.unproject(o,t.z)]},_tileCoordsToBounds:function(t){var e=this._tileCoordsToNwSe(t),i=new q(e[0],e[1]);return this.options.noWrap||(i=this._map.wrapLatLngBounds(i)),i},_tileCoordsToKey:function(t){return t.x+":"+t.y+":"+t.z},_keyToTileCoords:function(t){var e=t.split(":"),i=new D(+e[0],+e[1]);return i.z=+e[2],i},_removeTile:function(t){var e=this._tiles[t];e&&(t1(e.el),delete this._tiles[t],this.fire("tileunload",{tile:e.el,coords:this._keyToTileCoords(t)}))},_initTile:function(t){t4(t,"leaflet-tile");var e=this.getTileSize();t.style.width=e.x+"px",t.style.height=e.y+"px",t.onselectstart=v,t.onmousemove=v,tB.ielt9&&this.options.opacity<1&&et(t,this.options.opacity)},_addTile:function(t,e){var i=this._getTilePos(t),n=this._tileCoordsToKey(t),o=this.createTile(this._wrapCoords(t),_(this._tileReady,this,t));this._initTile(o),this.createTile.length<2&&I(_(this._tileReady,this,t,null,o)),en(o,i),this._tiles[n]={el:o,coords:t,current:!0},e.appendChild(o),this.fire("tileloadstart",{tile:o,coords:t})},_tileReady:function(t,e,i){e&&this.fire("tileerror",{error:e,tile:i,coords:t});var n=this._tileCoordsToKey(t);(i=this._tiles[n])&&(i.loaded=+new Date,this._map._fadeAnimated?(et(i.el,0),B(this._fadeFrame),this._fadeFrame=I(this._updateOpacity,this)):(i.active=!0,this._pruneTiles()),e||(t4(i.el,"leaflet-tile-loaded"),this.fire("tileload",{tile:i.el,coords:t})),this._noTilesToLoad()&&(this._loading=!1,this.fire("load"),tB.ielt9||!this._map._fadeAnimated?I(this._pruneTiles,this):setTimeout(_(this._pruneTiles,this),250)))},_getTilePos:function(t){return t.scaleBy(this.getTileSize()).subtract(this._level.origin)},_wrapCoords:function(t){var e=new D(this._wrapX?g(t.x,this._wrapX):t.x,this._wrapY?g(t.y,this._wrapY):t.y);return e.z=t.z,e},_pxBoundsToTileRange:function(t){var e=this.getTileSize();return new F(t.min.unscaleBy(e).floor(),t.max.unscaleBy(e).ceil().subtract([1,1]))},_noTilesToLoad:function(){for(var t in this._tiles)if(!this._tiles[t].loaded)return!1;return!0}}),iM=iT.extend({options:{minZoom:0,maxZoom:18,subdomains:"abc",errorTileUrl:"",zoomOffset:0,tms:!1,zoomReverse:!1,detectRetina:!1,crossOrigin:!1,referrerPolicy:!1},initialize:function(t,e){this._url=t,(e=b(this,e)).detectRetina&&tB.retina&&e.maxZoom>0?(e.tileSize=Math.floor(e.tileSize/2),e.zoomReverse?(e.zoomOffset--,e.minZoom=Math.min(e.maxZoom,e.minZoom+1)):(e.zoomOffset++,e.maxZoom=Math.max(e.minZoom,e.maxZoom-1)),e.minZoom=Math.max(0,e.minZoom)):e.zoomReverse?e.minZoom=Math.min(e.maxZoom,e.minZoom):e.maxZoom=Math.max(e.minZoom,e.maxZoom),"string"==typeof e.subdomains&&(e.subdomains=e.subdomains.split("")),this.on("tileunload",this._onTileRemove)},setUrl:function(t,e){return this._url===t&&void 0===e&&(e=!0),this._url=t,e||this.redraw(),this},createTile:function(t,e){var i=document.createElement("img");return ed(i,"load",_(this._tileOnLoad,this,e,i)),ed(i,"error",_(this._tileOnError,this,e,i)),(this.options.crossOrigin||""===this.options.crossOrigin)&&(i.crossOrigin=!0===this.options.crossOrigin?"":this.options.crossOrigin),"string"==typeof this.options.referrerPolicy&&(i.referrerPolicy=this.options.referrerPolicy),i.alt="",i.src=this.getTileUrl(t),i},getTileUrl:function(t){var i={r:tB.retina?"@2x":"",s:this._getSubdomain(t),x:t.x,y:t.y,z:this._getZoomForUrl()};if(this._map&&!this._map.options.crs.infinite){var n=this._globalTileRange.max.y-t.y;this.options.tms&&(i.y=n),i["-y"]=n}return M(this._url,e(i,this.options))},_tileOnLoad:function(t,e){tB.ielt9?setTimeout(_(t,this,null,e),0):t(null,e)},_tileOnError:function(t,e,i){var n=this.options.errorTileUrl;n&&e.getAttribute("src")!==n&&(e.src=n),t(i,e)},_onTileRemove:function(t){t.tile.onload=null},_getZoomForUrl:function(){var t=this._tileZoom,e=this.options.maxZoom,i=this.options.zoomReverse,n=this.options.zoomOffset;return i&&(t=e-t),t+n},_getSubdomain:function(t){var e=Math.abs(t.x+t.y)%this.options.subdomains.length;return this.options.subdomains[e]},_abortLoading:function(){var t,e;for(t in this._tiles)if(this._tiles[t].coords.z!==this._tileZoom&&((e=this._tiles[t].el).onload=v,e.onerror=v,!e.complete)){e.src=S;var i=this._tiles[t].coords;t1(e),delete this._tiles[t],this.fire("tileabort",{tile:e,coords:i})}},_removeTile:function(t){var e=this._tiles[t];if(e)return e.el.setAttribute("src",S),iT.prototype._removeTile.call(this,t)},_tileReady:function(t,e,i){if(this._map&&(!i||i.getAttribute("src")!==S))return iT.prototype._tileReady.call(this,t,e,i)}});function iz(t,e){return new iM(t,e)}var iC=iM.extend({defaultWmsParams:{service:"WMS",request:"GetMap",layers:"",styles:"",format:"image/jpeg",transparent:!1,version:"1.1.1"},options:{crs:null,uppercase:!1},initialize:function(t,i){this._url=t;var n=e({},this.defaultWmsParams);for(var o in i)o in this.options||(n[o]=i[o]);var s=(i=b(this,i)).detectRetina&&tB.retina?2:1,r=this.getTileSize();n.width=r.x*s,n.height=r.y*s,this.wmsParams=n},onAdd:function(t){this._crs=this.options.crs||t.options.crs,this._wmsVersion=parseFloat(this.wmsParams.version);var e=this._wmsVersion>=1.3?"crs":"srs";this.wmsParams[e]=this._crs.code,iM.prototype.onAdd.call(this,t)},getTileUrl:function(t){var e=this._tileCoordsToNwSe(t),i=this._crs,n=U(i.project(e[0]),i.project(e[1])),o=n.min,s=n.max,r=(this._wmsVersion>=1.3&&this._crs===e1?[o.y,o.x,s.y,s.x]:[o.x,o.y,s.x,s.y]).join(","),a=iM.prototype.getTileUrl.call(this,t);return a+P(this.wmsParams,a,this.options.uppercase)+(this.options.uppercase?"&BBOX=":"&bbox=")+r},setParams:function(t,i){return e(this.wmsParams,t),i||this.redraw(),this}});iM.WMS=iC,iz.wms=function(t,e){return new iC(t,e)};var iS=e3.extend({options:{padding:.1},initialize:function(t){b(this,t),m(this),this._layers=this._layers||{}},onAdd:function(){this._container||(this._initContainer(),t4(this._container,"leaflet-zoom-animated")),this.getPane().appendChild(this._container),this._update(),this.on("update",this._updatePaths,this)},onRemove:function(){this.off("update",this._updatePaths,this),this._destroyContainer()},getEvents:function(){var t={viewreset:this._reset,zoom:this._onZoom,moveend:this._update,zoomend:this._onZoomEnd};return this._zoomAnimated&&(t.zoomanim=this._onAnimZoom),t},_onAnimZoom:function(t){this._updateTransform(t.center,t.zoom)},_onZoom:function(){this._updateTransform(this._map.getCenter(),this._map.getZoom())},_updateTransform:function(t,e){var i=this._map.getZoomScale(e,this._zoom),n=this._map.getSize().multiplyBy(.5+this.options.padding),o=this._map.project(this._center,e),s=n.multiplyBy(-i).add(o).subtract(this._map._getNewPixelOrigin(t,e));tB.any3d?ei(this._container,s,i):en(this._container,s)},_reset:function(){for(var t in this._update(),this._updateTransform(this._center,this._zoom),this._layers)this._layers[t]._reset()},_onZoomEnd:function(){for(var t in this._layers)this._layers[t]._project()},_updatePaths:function(){for(var t in this._layers)this._layers[t]._update()},_update:function(){var t=this.options.padding,e=this._map.getSize(),i=this._map.containerPointToLayerPoint(e.multiplyBy(-t)).round();this._bounds=new F(i,i.add(e.multiplyBy(1+2*t)).round()),this._center=this._map.getCenter(),this._zoom=this._map.getZoom()}}),iZ=iS.extend({options:{tolerance:0},getEvents:function(){var t=iS.prototype.getEvents.call(this);return t.viewprereset=this._onViewPreReset,t},_onViewPreReset:function(){this._postponeUpdatePaths=!0},onAdd:function(){iS.prototype.onAdd.call(this),this._draw()},_initContainer:function(){var t=this._container=document.createElement("canvas");ed(t,"mousemove",this._onMouseMove,this),ed(t,"click dblclick mousedown mouseup contextmenu",this._onClick,this),ed(t,"mouseout",this._handleMouseOut,this),t._leaflet_disable_events=!0,this._ctx=t.getContext("2d")},_destroyContainer:function(){B(this._redrawRequest),delete this._ctx,t1(this._container),ep(this._container),delete this._container},_updatePaths:function(){if(!this._postponeUpdatePaths){for(var t in this._redrawBounds=null,this._layers)this._layers[t]._update();this._redraw()}},_update:function(){if(!this._map._animatingZoom||!this._bounds){iS.prototype._update.call(this);var t=this._bounds,e=this._container,i=t.getSize(),n=tB.retina?2:1;en(e,t.min),e.width=n*i.x,e.height=n*i.y,e.style.width=i.x+"px",e.style.height=i.y+"px",tB.retina&&this._ctx.scale(2,2),this._ctx.translate(-t.min.x,-t.min.y),this.fire("update")}},_reset:function(){iS.prototype._reset.call(this),this._postponeUpdatePaths&&(this._postponeUpdatePaths=!1,this._updatePaths())},_initPath:function(t){this._updateDashArray(t),this._layers[m(t)]=t;var e=t._order={layer:t,prev:this._drawLast,next:null};this._drawLast&&(this._drawLast.next=e),this._drawLast=e,this._drawFirst=this._drawFirst||this._drawLast},_addPath:function(t){this._requestRedraw(t)},_removePath:function(t){var e=t._order,i=e.next,n=e.prev;i?i.prev=n:this._drawLast=n,n?n.next=i:this._drawFirst=i,delete t._order,delete this._layers[m(t)],this._requestRedraw(t)},_updatePath:function(t){this._extendRedrawBounds(t),t._project(),t._update(),this._requestRedraw(t)},_updateStyle:function(t){this._updateDashArray(t),this._requestRedraw(t)},_updateDashArray:function(t){if("string"==typeof t.options.dashArray){var e,i,n=t.options.dashArray.split(/[, ]+/),o=[];for(i=0;i')}}catch(t){}return function(t){return document.createElement("<"+t+' xmlns="urn:schemas-microsoft.com:vml" class="lvml">')}}(),iO=tB.vml?ik:ti,iA=iS.extend({_initContainer:function(){this._container=iO("svg"),this._container.setAttribute("pointer-events","none"),this._rootGroup=iO("g"),this._container.appendChild(this._rootGroup)},_destroyContainer:function(){t1(this._container),ep(this._container),delete this._container,delete this._rootGroup,delete this._svgSize},_update:function(){if(!this._map._animatingZoom||!this._bounds){iS.prototype._update.call(this);var t=this._bounds,e=t.getSize(),i=this._container;this._svgSize&&this._svgSize.equals(e)||(this._svgSize=e,i.setAttribute("width",e.x),i.setAttribute("height",e.y)),en(i,t.min),i.setAttribute("viewBox",[t.min.x,t.min.y,e.x,e.y].join(" ")),this.fire("update")}},_initPath:function(t){var e=t._path=iO("path");t.options.className&&t4(e,t.options.className),t.options.interactive&&t4(e,"leaflet-interactive"),this._updateStyle(t),this._layers[m(t)]=t},_addPath:function(t){this._rootGroup||this._initContainer(),this._rootGroup.appendChild(t._path),t.addInteractiveTarget(t._path)},_removePath:function(t){t1(t._path),t.removeInteractiveTarget(t._path),delete this._layers[m(t)]},_updatePath:function(t){t._project(),t._update()},_updateStyle:function(t){var e=t._path,i=t.options;e&&(i.stroke?(e.setAttribute("stroke",i.color),e.setAttribute("stroke-opacity",i.opacity),e.setAttribute("stroke-width",i.weight),e.setAttribute("stroke-linecap",i.lineCap),e.setAttribute("stroke-linejoin",i.lineJoin),i.dashArray?e.setAttribute("stroke-dasharray",i.dashArray):e.removeAttribute("stroke-dasharray"),i.dashOffset?e.setAttribute("stroke-dashoffset",i.dashOffset):e.removeAttribute("stroke-dashoffset")):e.setAttribute("stroke","none"),i.fill?(e.setAttribute("fill",i.fillColor||i.color),e.setAttribute("fill-opacity",i.fillOpacity),e.setAttribute("fill-rule",i.fillRule||"evenodd")):e.setAttribute("fill","none"))},_updatePoly:function(t,e){this._setPath(t,tn(t._parts,e))},_updateCircle:function(t){var e=t._point,i=Math.max(Math.round(t._radius),1),n=Math.max(Math.round(t._radiusY),1)||i,o="a"+i+","+n+" 0 1,0 ",s=t._empty()?"M0 0":"M"+(e.x-i)+","+e.y+o+2*i+",0 "+o+-(2*i)+",0 ";this._setPath(t,s)},_setPath:function(t,e){t._path.setAttribute("d",e)},_bringToFront:function(t){t3(t._path)},_bringToBack:function(t){t5(t._path)}});function iI(t){return tB.svg||tB.vml?new iA(t):null}tB.vml&&iA.include({_initContainer:function(){this._container=t0("div","leaflet-vml-container")},_update:function(){this._map._animatingZoom||(iS.prototype._update.call(this),this.fire("update"))},_initPath:function(t){var e=t._container=ik("shape");t4(e,"leaflet-vml-shape "+(this.options.className||"")),e.coordsize="1 1",t._path=ik("path"),e.appendChild(t._path),this._updateStyle(t),this._layers[m(t)]=t},_addPath:function(t){var e=t._container;this._container.appendChild(e),t.options.interactive&&t.addInteractiveTarget(e)},_removePath:function(t){var e=t._container;t1(e),t.removeInteractiveTarget(e),delete this._layers[m(t)]},_updateStyle:function(t){var e=t._stroke,i=t._fill,n=t.options,o=t._container;o.stroked=!!n.stroke,o.filled=!!n.fill,n.stroke?(e||(e=t._stroke=ik("stroke")),o.appendChild(e),e.weight=n.weight+"px",e.color=n.color,e.opacity=n.opacity,n.dashArray?e.dashStyle=z(n.dashArray)?n.dashArray.join(" "):n.dashArray.replace(/( *, *)/g," "):e.dashStyle="",e.endcap=n.lineCap.replace("butt","flat"),e.joinstyle=n.lineJoin):e&&(o.removeChild(e),t._stroke=null),n.fill?(i||(i=t._fill=ik("fill")),o.appendChild(i),i.color=n.fillColor||n.color,i.opacity=n.fillOpacity):i&&(o.removeChild(i),t._fill=null)},_updateCircle:function(t){var e=t._point.round(),i=Math.round(t._radius),n=Math.round(t._radiusY||i);this._setPath(t,t._empty()?"M0 0":"AL "+e.x+","+e.y+" "+i+","+n+" 0,23592600")},_setPath:function(t,e){t._path.v=e},_bringToFront:function(t){t3(t._container)},_bringToBack:function(t){t5(t._container)}}),eZ.include({getRenderer:function(t){var e=t.options.renderer||this._getPaneRenderer(t.options.pane)||this.options.renderer||this._renderer;return e||(e=this._renderer=this._createRenderer()),this.hasLayer(e)||this.addLayer(e),e},_getPaneRenderer:function(t){if("overlayPane"===t||void 0===t)return!1;var e=this._paneRenderers[t];return void 0===e&&(e=this._createRenderer({pane:t}),this._paneRenderers[t]=e),e},_createRenderer:function(t){return this.options.preferCanvas&&iE(t)||iI(t)}});var iB=is.extend({initialize:function(t,e){is.prototype.initialize.call(this,this._boundsToLatLngs(t),e)},setBounds:function(t){return this.setLatLngs(this._boundsToLatLngs(t))},_boundsToLatLngs:function(t){return[(t=V(t)).getSouthWest(),t.getNorthWest(),t.getNorthEast(),t.getSouthEast()]}});iA.create=iO,iA.pointsToPath=tn,ir.geometryToLayer=ia,ir.coordsToLatLng=il,ir.coordsToLatLngs=iu,ir.latLngToCoords=ic,ir.latLngsToCoords=id,ir.getFeature=i_,ir.asFeature=ip,eZ.mergeOptions({boxZoom:!0});var iR=eR.extend({initialize:function(t){this._map=t,this._container=t._container,this._pane=t._panes.overlayPane,this._resetStateTimeout=0,t.on("unload",this._destroy,this)},addHooks:function(){ed(this._container,"mousedown",this._onMouseDown,this)},removeHooks:function(){ep(this._container,"mousedown",this._onMouseDown,this)},moved:function(){return this._moved},_destroy:function(){t1(this._pane),delete this._pane},_resetState:function(){this._resetStateTimeout=0,this._moved=!1},_clearDeferredResetState:function(){0!==this._resetStateTimeout&&(clearTimeout(this._resetStateTimeout),this._resetStateTimeout=0)},_onMouseDown:function(t){if(!t.shiftKey||1!==t.which&&1!==t.button)return!1;this._clearDeferredResetState(),this._resetState(),i(),er(),this._startPoint=this._map.mouseEventToContainerPoint(t),ed(document,{contextmenu:eP,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseMove:function(t){this._moved||(this._moved=!0,this._box=t0("div","leaflet-zoom-box",this._container),t4(this._container,"leaflet-crosshair"),this._map.fire("boxzoomstart")),this._point=this._map.mouseEventToContainerPoint(t);var e=new F(this._point,this._startPoint),i=e.getSize();en(this._box,e.min),this._box.style.width=i.x+"px",this._box.style.height=i.y+"px"},_finish:function(){this._moved&&(t1(this._box),t9(this._container,"leaflet-crosshair")),n(),ea(),ep(document,{contextmenu:eP,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseUp:function(t){if((1===t.which||1===t.button)&&(this._finish(),this._moved)){this._clearDeferredResetState(),this._resetStateTimeout=setTimeout(_(this._resetState,this),0);var e=new q(this._map.containerPointToLatLng(this._startPoint),this._map.containerPointToLatLng(this._point));this._map.fitBounds(e).fire("boxzoomend",{boxZoomBounds:e})}},_onKeyDown:function(t){27===t.keyCode&&(this._finish(),this._clearDeferredResetState(),this._resetState())}});eZ.addInitHook("addHandler","boxZoom",iR),eZ.mergeOptions({doubleClickZoom:!0});var iN=eR.extend({addHooks:function(){this._map.on("dblclick",this._onDoubleClick,this)},removeHooks:function(){this._map.off("dblclick",this._onDoubleClick,this)},_onDoubleClick:function(t){var e=this._map,i=e.getZoom(),n=e.options.zoomDelta,o=t.originalEvent.shiftKey?i-n:i+n;"center"===e.options.doubleClickZoom?e.setZoom(o):e.setZoomAround(t.containerPoint,o)}});eZ.addInitHook("addHandler","doubleClickZoom",iN),eZ.mergeOptions({dragging:!0,inertia:!0,inertiaDeceleration:3400,inertiaMaxSpeed:1/0,easeLinearity:.2,worldCopyJump:!1,maxBoundsViscosity:0});var ij=eR.extend({addHooks:function(){if(!this._draggable){var t=this._map;this._draggable=new ej(t._mapPane,t._container),this._draggable.on({dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this),this._draggable.on("predrag",this._onPreDragLimit,this),t.options.worldCopyJump&&(this._draggable.on("predrag",this._onPreDragWrap,this),t.on("zoomend",this._onZoomEnd,this),t.whenReady(this._onZoomEnd,this))}t4(this._map._container,"leaflet-grab leaflet-touch-drag"),this._draggable.enable(),this._positions=[],this._times=[]},removeHooks:function(){t9(this._map._container,"leaflet-grab"),t9(this._map._container,"leaflet-touch-drag"),this._draggable.disable()},moved:function(){return this._draggable&&this._draggable._moved},moving:function(){return this._draggable&&this._draggable._moving},_onDragStart:function(){var t=this._map;if(t._stop(),this._map.options.maxBounds&&this._map.options.maxBoundsViscosity){var e=V(this._map.options.maxBounds);this._offsetLimit=U(this._map.latLngToContainerPoint(e.getNorthWest()).multiplyBy(-1),this._map.latLngToContainerPoint(e.getSouthEast()).multiplyBy(-1).add(this._map.getSize())),this._viscosity=Math.min(1,Math.max(0,this._map.options.maxBoundsViscosity))}else this._offsetLimit=null;t.fire("movestart").fire("dragstart"),t.options.inertia&&(this._positions=[],this._times=[])},_onDrag:function(t){if(this._map.options.inertia){var e=this._lastTime=+new Date,i=this._lastPos=this._draggable._absPos||this._draggable._newPos;this._positions.push(i),this._times.push(e),this._prunePositions(e)}this._map.fire("move",t).fire("drag",t)},_prunePositions:function(t){for(;this._positions.length>1&&t-this._times[0]>50;)this._positions.shift(),this._times.shift()},_onZoomEnd:function(){var t=this._map.getSize().divideBy(2),e=this._map.latLngToLayerPoint([0,0]);this._initialWorldOffset=e.subtract(t).x,this._worldWidth=this._map.getPixelWorldBounds().getSize().x},_viscousLimit:function(t,e){return t-(t-e)*this._viscosity},_onPreDragLimit:function(){if(this._viscosity&&this._offsetLimit){var t=this._draggable._newPos.subtract(this._draggable._startPos),e=this._offsetLimit;t.xe.max.x&&(t.x=this._viscousLimit(t.x,e.max.x)),t.y>e.max.y&&(t.y=this._viscousLimit(t.y,e.max.y)),this._draggable._newPos=this._draggable._startPos.add(t)}},_onPreDragWrap:function(){var t=this._worldWidth,e=Math.round(t/2),i=this._initialWorldOffset,n=this._draggable._newPos.x,o=(n-e+i)%t+e-i,s=(n+e+i)%t-e-i,r=Math.abs(o+i)0?o:-o))-e;this._delta=0,this._startTime=null,s&&("center"===t.options.scrollWheelZoom?t.setZoom(e+s):t.setZoomAround(this._lastMousePos,e+s))}});eZ.addInitHook("addHandler","scrollWheelZoom",iH),eZ.mergeOptions({tapHold:tB.touchNative&&tB.safari&&tB.mobile,tapTolerance:15});var iW=eR.extend({addHooks:function(){ed(this._map._container,"touchstart",this._onDown,this)},removeHooks:function(){ep(this._map._container,"touchstart",this._onDown,this)},_onDown:function(t){if(clearTimeout(this._holdTimeout),1===t.touches.length){var e=t.touches[0];this._startPos=this._newPos=new D(e.clientX,e.clientY),this._holdTimeout=setTimeout(_(function(){this._cancel(),this._isTapValid()&&(ed(document,"touchend",eb),ed(document,"touchend touchcancel",this._cancelClickPrevent),this._simulateEvent("contextmenu",e))},this),600),ed(document,"touchend touchcancel contextmenu",this._cancel,this),ed(document,"touchmove",this._onMove,this)}},_cancelClickPrevent:function t(){ep(document,"touchend",eb),ep(document,"touchend touchcancel",t)},_cancel:function(){clearTimeout(this._holdTimeout),ep(document,"touchend touchcancel contextmenu",this._cancel,this),ep(document,"touchmove",this._onMove,this)},_onMove:function(t){var e=t.touches[0];this._newPos=new D(e.clientX,e.clientY)},_isTapValid:function(){return this._newPos.distanceTo(this._startPos)<=this._map.options.tapTolerance},_simulateEvent:function(t,e){var i=new MouseEvent(t,{bubbles:!0,cancelable:!0,view:window,screenX:e.screenX,screenY:e.screenY,clientX:e.clientX,clientY:e.clientY});i._simulated=!0,e.target.dispatchEvent(i)}});eZ.addInitHook("addHandler","tapHold",iW),eZ.mergeOptions({touchZoom:tB.touch,bounceAtZoomLimits:!0});var iF=eR.extend({addHooks:function(){t4(this._map._container,"leaflet-touch-zoom"),ed(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){t9(this._map._container,"leaflet-touch-zoom"),ep(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(t){var e=this._map;if(t.touches&&2===t.touches.length&&!e._animatingZoom&&!this._zooming){var i=e.mouseEventToContainerPoint(t.touches[0]),n=e.mouseEventToContainerPoint(t.touches[1]);this._centerPoint=e.getSize()._divideBy(2),this._startLatLng=e.containerPointToLatLng(this._centerPoint),"center"!==e.options.touchZoom&&(this._pinchStartLatLng=e.containerPointToLatLng(i.add(n)._divideBy(2))),this._startDist=i.distanceTo(n),this._startZoom=e.getZoom(),this._moved=!1,this._zooming=!0,e._stop(),ed(document,"touchmove",this._onTouchMove,this),ed(document,"touchend touchcancel",this._onTouchEnd,this),eb(t)}},_onTouchMove:function(t){if(t.touches&&2===t.touches.length&&this._zooming){var e=this._map,i=e.mouseEventToContainerPoint(t.touches[0]),n=e.mouseEventToContainerPoint(t.touches[1]),o=i.distanceTo(n)/this._startDist;if(this._zoom=e.getScaleZoom(o,this._startZoom),!e.options.bounceAtZoomLimits&&(this._zoome.getMaxZoom()&&o>1)&&(this._zoom=e._limitZoom(this._zoom)),"center"===e.options.touchZoom){if(this._center=this._startLatLng,1===o)return}else{var s=i._add(n)._divideBy(2)._subtract(this._centerPoint);if(1===o&&0===s.x&&0===s.y)return;this._center=e.unproject(e.project(this._pinchStartLatLng,this._zoom).subtract(s),this._zoom)}this._moved||(e._moveStart(!0,!1),this._moved=!0),B(this._animRequest);var r=_(e._move,e,this._center,this._zoom,{pinch:!0,round:!1},void 0);this._animRequest=I(r,this,!0),eb(t)}},_onTouchEnd:function(){if(!this._moved||!this._zooming){this._zooming=!1;return}this._zooming=!1,B(this._animRequest),ep(document,"touchmove",this._onTouchMove,this),ep(document,"touchend touchcancel",this._onTouchEnd,this),this._map.options.zoomAnimation?this._map._animateZoom(this._center,this._map._limitZoom(this._zoom),!0,this._map.options.zoomSnap):this._map._resetView(this._center,this._map._limitZoom(this._zoom))}});eZ.addInitHook("addHandler","touchZoom",iF),eZ.BoxZoom=iR,eZ.DoubleClickZoom=iN,eZ.Drag=ij,eZ.Keyboard=iD,eZ.ScrollWheelZoom=iH,eZ.TapHold=iW,eZ.TouchZoom=iF,t.Bounds=F,t.Browser=tB,t.CRS=Y,t.Canvas=iZ,t.Circle=ii,t.CircleMarker=ie,t.Class=R,t.Control=eE,t.DivIcon=iL,t.DivOverlay=iw,t.DomEvent={__proto__:null,on:ed,off:ep,stopPropagation:ey,disableScrollPropagation:ex,disableClickPropagation:ew,preventDefault:eb,stop:eP,getPropagationPath:eL,getMousePosition:eT,getWheelDelta:ez,isExternalTarget:eC,addListener:ed,removeListener:ep},t.DomUtil={__proto__:null,TRANSFORM:tY,TRANSITION:tJ,TRANSITION_END:tX,get:t$,getStyle:tQ,create:t0,remove:t1,empty:t2,toFront:t3,toBack:t5,hasClass:t8,addClass:t4,removeClass:t9,setClass:t6,getClass:t7,setOpacity:et,testProp:ee,setTransform:ei,setPosition:en,getPosition:eo,get disableTextSelection(){return i},get enableTextSelection(){return n},disableImageDrag:er,enableImageDrag:ea,preventOutline:eh,restoreOutline:el,getSizedParentNode:eu,getScale:ec},t.Draggable=ej,t.Evented=j,t.FeatureGroup=e8,t.GeoJSON=ir,t.GridLayer=iT,t.Handler=eR,t.Icon=e4,t.ImageOverlay=iv,t.LatLng=G,t.LatLngBounds=q,t.Layer=e3,t.LayerGroup=e5,t.LineUtil={__proto__:null,simplify:eF,pointToSegmentDistance:eU,closestPointOnSegment:function(t,e,i){return eK(t,e,i)},clipSegment:eq,_getEdgeIntersection:eV,_getBitCode:eG,_sqClosestPointOnSegment:eK,isFlat:eY,_flat:eJ,polylineCenter:eX},t.Map=eZ,t.Marker=e7,t.Mixin={Events:N},t.Path=it,t.Point=D,t.PolyUtil={__proto__:null,clipPolygon:eD,polygonCenter:eH,centroid:eW},t.Polygon=is,t.Polyline=io,t.Popup=ib,t.PosAnimation=eS,t.Projection={__proto__:null,LonLat:e$,Mercator:eQ,SphericalMercator:X},t.Rectangle=iB,t.Renderer=iS,t.SVG=iA,t.SVGOverlay=ix,t.TileLayer=iM,t.Tooltip=iP,t.Transformation=$,t.Util={__proto__:null,extend:e,create:d,bind:_,get lastId(){return p},stamp:m,throttle:f,wrapNum:g,falseFn:v,formatNum:y,trim:x,splitWords:w,setOptions:b,getParamString:P,template:M,isArray:z,indexOf:C,emptyImageUrl:S,requestFn:O,cancelFn:A,requestAnimFrame:I,cancelAnimFrame:B},t.VideoOverlay=iy,t.bind=_,t.bounds=U,t.canvas=iE,t.circle=function(t,e,i){return new ii(t,e,i)},t.circleMarker=function(t,e){return new ie(t,e)},t.control=ek,t.divIcon=function(t){return new iL(t)},t.extend=e,t.featureGroup=function(t,e){return new e8(t,e)},t.geoJSON=ig,t.geoJson=ig,t.gridLayer=function(t){return new iT(t)},t.icon=function(t){return new e4(t)},t.imageOverlay=function(t,e,i){return new iv(t,e,i)},t.latLng=K,t.latLngBounds=V,t.layerGroup=function(t,e){return new e5(t,e)},t.map=function(t,e){return new eZ(t,e)},t.marker=function(t,e){return new e7(t,e)},t.point=W,t.polygon=function(t,e){return new is(t,e)},t.polyline=function(t,e){return new io(t,e)},t.popup=function(t,e){return new ib(t,e)},t.rectangle=function(t,e){return new iB(t,e)},t.setOptions=b,t.stamp=m,t.svg=iI,t.svgOverlay=function(t,e,i){return new ix(t,e,i)},t.tileLayer=iz,t.tooltip=function(t,e){return new iP(t,e)},t.transformation=Q,t.version="1.9.4",t.videoOverlay=function(t,e,i){return new iy(t,e,i)};var iU=window.L;t.noConflict=function(){return window.L=iU,this},window.L=t}(i)},13958,t=>{"use strict";var e,i,n,o,s,r,a,h=t.i(43476),l=t.i(9409),u=t.i(71645),c=t.i(32322);let d=(0,u.createContext)(null);function _(){let t=(0,u.use)(d);if(null==t)throw Error("No context provided: useLeafletContext() can only be used in a descendant of ");return t}let p=(0,u.forwardRef)(function({bounds:t,boundsOptions:e,center:i,children:n,className:o,id:s,placeholder:r,style:a,whenReady:h,zoom:l,..._},p){let[m]=(0,u.useState)({className:o,id:s,style:a}),[f,g]=(0,u.useState)(null),v=(0,u.useRef)(void 0);(0,u.useImperativeHandle)(p,()=>f?.map??null,[f]);let y=(0,u.useCallback)(n=>{if(null!==n&&!v.current){let o=new c.Map(n,_);v.current=o,null!=i&&null!=l?o.setView(i,l):null!=t&&o.fitBounds(t,e),null!=h&&o.whenReady(h),g(Object.freeze({__version:1,map:o}))}},[]);(0,u.useEffect)(()=>()=>{f?.map.remove()},[f]);let x=f?u.default.createElement(d,{value:f},n):r??null;return u.default.createElement("div",{...m,ref:y},x)});function m(t,e,i){return Object.freeze({instance:t,context:e,container:i})}function f(t,e){return null==e?function(e,i){let n=(0,u.useRef)(void 0);return n.current||(n.current=t(e,i)),n}:function(i,n){let o=(0,u.useRef)(void 0);o.current||(o.current=t(i,n));let s=(0,u.useRef)(i),{instance:r}=o.current;return(0,u.useEffect)(function(){s.current!==i&&(e(r,i,s.current),s.current=i)},[r,i,e]),o}}var g=t.i(74080);function v(t){return(0,u.forwardRef)(function(e,i){let{instance:n}=t(e).current;return(0,u.useImperativeHandle)(i,()=>n),null})}function y(t,e){let i=(0,u.useRef)(e);(0,u.useEffect)(function(){e!==i.current&&null!=t.attributionControl&&(null!=i.current&&t.attributionControl.removeAttribution(i.current),null!=e&&t.attributionControl.addAttribution(e)),i.current=e},[t,e])}function x(t,e){let i=(0,u.useRef)(void 0);(0,u.useEffect)(function(){return null!=e&&t.instance.on(e),i.current=e,function(){null!=i.current&&t.instance.off(i.current),i.current=null}},[t,e])}function w(t,e){let i=t.pane??e.pane;return i?{...t,pane:i}:t}function b(t){return function(e){var i;let n=_(),o=t(w(e,n),n);return y(n.map,e.attribution),x(o.current,e.eventHandlers),i=o.current,(0,u.useEffect)(function(){return(n.layerContainer??n.map).addLayer(i.instance),function(){n.layerContainer?.removeLayer(i.instance),n.map.removeLayer(i.instance)}},[n,i]),o}}let P=(e=b(f(function({position:t,...e},i){var n;let o=new c.Marker(t,e);return m(o,(n={overlayContainer:o},Object.freeze({...i,...n})))},function(t,e,i){e.position!==i.position&&t.setLatLng(e.position),null!=e.icon&&e.icon!==i.icon&&t.setIcon(e.icon),null!=e.zIndexOffset&&e.zIndexOffset!==i.zIndexOffset&&t.setZIndexOffset(e.zIndexOffset),null!=e.opacity&&e.opacity!==i.opacity&&t.setOpacity(e.opacity),null!=t.dragging&&e.draggable!==i.draggable&&(!0===e.draggable?t.dragging.enable():t.dragging.disable())})),(0,u.forwardRef)(function(t,i){let{instance:n,context:o}=e(t).current;(0,u.useImperativeHandle)(i,()=>n);let{children:s}=t;return null==s?null:u.default.createElement(d,{value:o},s)})),T=(i=function(t,e){return m(new c.Popup(t,e.overlayContainer),e)},n=function(t,e,{position:i},n){(0,u.useEffect)(function(){let{instance:o}=t;function s(t){t.popup===o&&(o.update(),n(!0))}function r(t){t.popup===o&&n(!1)}return e.map.on({popupopen:s,popupclose:r}),null==e.overlayContainer?(null!=i&&o.setLatLng(i),o.openOn(e.map)):e.overlayContainer.bindPopup(o),function(){e.map.off({popupopen:s,popupclose:r}),e.overlayContainer?.unbindPopup(),e.map.removeLayer(o)}},[t,e,n,i])},o=f(i),s=function(t,e){let i=_(),s=o(w(t,i),i);return y(i.map,t.attribution),x(s.current,t.eventHandlers),n(s.current,i,t,e),s},(0,u.forwardRef)(function(t,e){let[i,n]=(0,u.useState)(!1),{instance:o}=s(t,n).current;(0,u.useImperativeHandle)(e,()=>o),(0,u.useEffect)(function(){i&&o.update()},[o,i,t.children]);let r=o._contentNode;return r?(0,g.createPortal)(t.children,r):null})),M=v(b(f(function({url:t,...e},i){return m(new c.TileLayer(t,w(e,i)),i)},function(t,e,i){!function(t,e,i){let{opacity:n,zIndex:o}=e;null!=n&&n!==i.opacity&&t.setOpacity(n),null!=o&&o!==i.zIndex&&t.setZIndex(o)}(t,e,i);let{url:n}=e;null!=n&&n!==i.url&&t.setUrl(n)}))),z=(r=function(t){return new c.Control.Zoom(t)},v((a=f(function(t,e){return m(r(t),e)}),function(t){let e=_(),i=a(t,e),{instance:n}=i.current,o=(0,u.useRef)(t.position),{position:s}=t;return(0,u.useEffect)(function(){return n.addTo(e.map),function(){n.remove()}},[e.map,n]),(0,u.useEffect)(function(){null!=s&&s!==o.current&&(n.setPosition(s),o.current=s)},[n,s]),i}))),C=[{id:"hyderabad",city:"Hyderabad",name:"Doormile Headquarters",shortLabel:"Hyderabad HQ",position:[17.4484,78.3573],isHeadquarters:!0},{id:"bengaluru",city:"Bengaluru",name:"Bengaluru Hub",shortLabel:"Bengaluru Hub",position:[12.9929351,77.6988599]},{id:"coimbatore",city:"Coimbatore",name:"Coimbatore Hub",shortLabel:"Coimbatore Hub",position:[11.0191,76.9883]}],S=C.find(t=>t.isHeadquarters)??C[0],Z=S.position;function E(t){return t?c.default.divIcon({className:l.default.markerIconHq,html:` + + + `,iconSize:[40,52],iconAnchor:[20,52],popupAnchor:[0,-46]}):c.default.divIcon({className:l.default.markerIcon,html:` - `,iconSize:[30,40],iconAnchor:[15,40],popupAnchor:[0,-36]}),[]),e=(0,u.useMemo)(()=>C.map(t=>t.position),[]),i=(0,u.useRef)({}),[n,o]=(0,u.useState)(null),s=(0,u.useCallback)(t=>{o(e=>({id:t,nonce:(e?.nonce??0)+1}))},[]),[r,a]=(0,u.useState)("loading"),d=(0,u.useRef)(!1),_=(0,u.useRef)(0),m=(0,u.useCallback)(()=>{d.current=!0,a("ready")},[]),f=(0,u.useCallback)(()=>{_.current+=1,!d.current&&_.current>=6&&a("error")},[]);return(0,u.useEffect)(()=>{let t=window.setTimeout(()=>{d.current||a("error")},12e3);return()=>window.clearTimeout(t)},[]),(0,h.jsxs)("div",{className:l.default.root,role:"region","aria-label":"Map of Doormile office locations",children:[(0,h.jsx)("ul",{className:l.default.srOnly,children:C.map(t=>(0,h.jsxs)("li",{children:[t.name," — latitude ",t.position[0],", longitude ",t.position[1]]},t.id))}),(0,h.jsx)("div",{className:l.default.controls,role:"group","aria-label":"Jump to an office location",children:C.map(t=>{let e=n?.id===t.id;return(0,h.jsx)("button",{type:"button",className:`${l.default.controlBtn} ${e?l.default.controlBtnActive:""}`,"aria-pressed":e,"aria-label":`Show ${t.name} on the map`,onClick:()=>s(t.id),children:t.city},t.id)})}),(0,h.jsxs)(p,{className:l.default.map,center:Z,zoom:5,scrollWheelZoom:!1,zoomControl:!1,attributionControl:!1,worldCopyJump:!0,children:[(0,h.jsx)(z,{position:"bottomleft"}),(0,h.jsx)(M,{url:"https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",attribution:'Imagery © Esri, Maxar, Earthstar Geographics & the GIS User Community',maxZoom:19,updateWhenIdle:!0,keepBuffer:2,eventHandlers:{load:m,tileerror:f}}),C.map(e=>(0,h.jsx)(P,{position:e.position,icon:t,keyboard:!0,title:e.name,alt:e.name,eventHandlers:{click:()=>s(e.id)},ref:t=>{t&&(i.current[e.id]=t)},children:(0,h.jsx)(T,{children:(0,h.jsxs)("span",{className:"office-popup__name",children:[(0,h.jsx)("span",{className:"office-popup__dot","aria-hidden":"true"}),e.name]})})},e.id)),(0,h.jsx)(E,{positions:e,focus:n,markerRefs:i})]}),"error"===r&&(0,h.jsxs)("div",{className:l.default.errorOverlay,role:"alert",children:[(0,h.jsx)("p",{className:l.default.errorTitle,children:"Map could not be loaded"}),(0,h.jsx)("p",{className:l.default.errorText,children:"Please check your connection. Our offices are located in:"}),(0,h.jsx)("ul",{className:l.default.errorList,children:C.map(t=>(0,h.jsx)("li",{children:t.name},t.id))})]})]})}],13958)},42391,t=>{t.n(t.i(13958))}]); \ No newline at end of file + `,iconSize:[30,40],iconAnchor:[15,40],popupAnchor:[0,-36]})}function k({focus:t,markerRefs:e}){let i=_().map,n=(0,u.useRef)(!1);return(0,u.useEffect)(()=>{let t=i.getContainer(),e=0,n=new ResizeObserver(()=>{cancelAnimationFrame(e),e=requestAnimationFrame(()=>i.invalidateSize())});return n.observe(t),()=>{cancelAnimationFrame(e),n.disconnect()}},[i]),(0,u.useEffect)(()=>{if(!t)return;let o=C.find(e=>e.id===t.id);if(!o)return;let s=()=>e.current[o.id]?.openPopup();if(!n.current){n.current=!0,i.invalidateSize(),i.setView(o.position,13,{animate:!1});let t=requestAnimationFrame(s);return()=>cancelAnimationFrame(t)}return i.flyTo(o.position,13,{duration:1.1}),i.once("moveend",s),()=>{i.off("moveend",s)}},[i,t,e]),null}t.s(["default",0,function(){let t=(0,u.useMemo)(()=>E(!1),[]),e=(0,u.useMemo)(()=>E(!0),[]),i=(0,u.useRef)({}),[n,o]=(0,u.useState)({id:S.id,nonce:0}),s=(0,u.useCallback)(t=>{o(e=>({id:t,nonce:(e?.nonce??0)+1}))},[]),[r,a]=(0,u.useState)("loading"),c=(0,u.useRef)(!1),d=(0,u.useRef)(0),_=(0,u.useCallback)(()=>{c.current=!0,a("ready")},[]),m=(0,u.useCallback)(()=>{d.current+=1,!c.current&&d.current>=6&&a("error")},[]);return(0,u.useEffect)(()=>{let t=window.setTimeout(()=>{c.current||a("error")},12e3);return()=>window.clearTimeout(t)},[]),(0,h.jsxs)("div",{className:l.default.root,role:"region","aria-label":"Map of Doormile office locations",children:[(0,h.jsx)("ul",{className:l.default.srOnly,children:C.map(t=>(0,h.jsxs)("li",{children:[t.name," — latitude ",t.position[0],", longitude ",t.position[1]]},t.id))}),(0,h.jsx)("div",{className:l.default.controls,role:"group","aria-label":"Jump to an office location",children:C.map(t=>{let e=n?.id===t.id;return(0,h.jsx)("button",{type:"button",className:`${l.default.controlBtn} ${e?l.default.controlBtnActive:""} ${t.isHeadquarters?l.default.controlBtnHq:""}`,"aria-pressed":e,"aria-label":`Show ${t.name} on the map`,onClick:()=>s(t.id),children:t.city},t.id)})}),(0,h.jsxs)(p,{className:l.default.map,center:Z,zoom:13,scrollWheelZoom:!1,zoomControl:!1,attributionControl:!1,worldCopyJump:!0,children:[(0,h.jsx)(z,{position:"bottomleft"}),(0,h.jsx)(M,{url:"https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",attribution:'Imagery © Esri, Maxar, Earthstar Geographics & the GIS User Community',maxZoom:19,updateWhenIdle:!0,keepBuffer:2,eventHandlers:{load:_,tileerror:m}}),C.map(n=>(0,h.jsx)(P,{position:n.position,icon:n.isHeadquarters?e:t,zIndexOffset:1e3*!!n.isHeadquarters,keyboard:!0,title:n.name,alt:n.name,eventHandlers:{click:()=>s(n.id),mouseover:t=>t.target.openPopup(),mouseout:t=>t.target.closePopup()},ref:t=>{t&&(i.current[n.id]=t)},children:(0,h.jsx)(T,{className:l.default.popup,autoPan:!1,closeButton:!1,minWidth:120,maxWidth:200,children:(0,h.jsx)("span",{className:l.default.tip,children:(0,h.jsxs)("span",{className:l.default.tipTitle,children:[(0,h.jsx)("span",{"aria-hidden":"true",children:"📍"})," ",n.shortLabel]})})})},n.id)),(0,h.jsx)(k,{focus:n,markerRefs:i})]}),"error"===r&&(0,h.jsxs)("div",{className:l.default.errorOverlay,role:"alert",children:[(0,h.jsx)("p",{className:l.default.errorTitle,children:"Map could not be loaded"}),(0,h.jsx)("p",{className:l.default.errorText,children:"Please check your connection. Our offices are located in:"}),(0,h.jsx)("ul",{className:l.default.errorList,children:C.map(t=>(0,h.jsx)("li",{children:t.name},t.id))})]})]})}],13958)},42391,t=>{t.n(t.i(13958))}]); \ No newline at end of file diff --git a/build/_next/static/chunks/09319k21oxyrj.js b/build/_next/static/chunks/09319k21oxyrj.js deleted file mode 100644 index 005d93c..0000000 --- a/build/_next/static/chunks/09319k21oxyrj.js +++ /dev/null @@ -1 +0,0 @@ -(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,94909,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var o={default:function(){return f},getImageProps:function(){return d}};for(var i in o)Object.defineProperty(r,i,{enumerable:!0,get:o[i]});let l=e.r(55682),n=e.r(8927),u=e.r(5500),a=l._(e.r(1948));function d(e){let{props:t}=(0,n.getImgProps)(e,{defaultLoader:a.default,imgConf:{deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!0}});for(let[e,r]of Object.entries(t))void 0===r&&delete t[e];return{props:t}}let f=u.Image},57688,(e,t,r)=>{t.exports=e.r(94909)}]); \ No newline at end of file diff --git a/build/_next/static/chunks/098a0lm-b~rn..js b/build/_next/static/chunks/098a0lm-b~rn..js new file mode 100644 index 0000000..bcac4a3 --- /dev/null +++ b/build/_next/static/chunks/098a0lm-b~rn..js @@ -0,0 +1,31 @@ +(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,35451,(e,t,r)=>{var n={229:function(e){var t,r,n,o=e.exports={};function i(){throw Error("setTimeout has not been defined")}function u(){throw Error("clearTimeout has not been defined")}try{t="function"==typeof setTimeout?setTimeout:i}catch(e){t=i}try{r="function"==typeof clearTimeout?clearTimeout:u}catch(e){r=u}function s(e){if(t===setTimeout)return setTimeout(e,0);if((t===i||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(r){try{return t.call(null,e,0)}catch(r){return t.call(this,e,0)}}}var a=[],l=!1,c=-1;function f(){l&&n&&(l=!1,n.length?a=n.concat(a):c=-1,a.length&&d())}function d(){if(!l){var e=s(f);l=!0;for(var t=a.length;t;){for(n=a,a=[];++c1)for(var r=1;r{"use strict";var n,o;t.exports=(null==(n=e.g.process)?void 0:n.env)&&"object"==typeof(null==(o=e.g.process)?void 0:o.env)?e.g.process:e.r(35451)},45689,(e,t,r)=>{"use strict";var n=Symbol.for("react.transitional.element");function o(e,t,r){var o=null;if(void 0!==r&&(o=""+r),void 0!==t.key&&(o=""+t.key),"key"in t)for(var i in r={},t)"key"!==i&&(r[i]=t[i]);else r=t;return{$$typeof:n,type:e,key:o,ref:void 0!==(t=r.ref)?t:null,props:r}}r.Fragment=Symbol.for("react.fragment"),r.jsx=o,r.jsxs=o},43476,(e,t,r)=>{"use strict";t.exports=e.r(45689)},50740,(e,t,r)=>{"use strict";var n=e.i(47167),o=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),u=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),l=Symbol.for("react.consumer"),c=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),p=Symbol.for("react.memo"),y=Symbol.for("react.lazy"),g=Symbol.for("react.activity"),h=Symbol.for("react.view_transition"),_=Symbol.iterator,b={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},v=Object.assign,m={};function x(e,t,r){this.props=e,this.context=t,this.refs=m,this.updater=r||b}function S(){}function O(e,t,r){this.props=e,this.context=t,this.refs=m,this.updater=r||b}x.prototype.isReactComponent={},x.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},x.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},S.prototype=x.prototype;var j=O.prototype=new S;j.constructor=O,v(j,x.prototype),j.isPureReactComponent=!0;var E=Array.isArray;function T(){}var R={H:null,A:null,T:null,S:null},w=Object.prototype.hasOwnProperty;function P(e,t,r){var n=r.ref;return{$$typeof:o,type:e,key:t,ref:void 0!==n?n:null,props:r}}function A(e){return"object"==typeof e&&null!==e&&e.$$typeof===o}var M=/\/+/g;function C(e,t){var r,n;return"object"==typeof e&&null!==e&&null!=e.key?(r=""+e.key,n={"=":"=0",":":"=2"},"$"+r.replace(/[=:]/g,function(e){return n[e]})):t.toString(36)}function H(e,t,r){if(null==e)return e;var n=[],u=0;return!function e(t,r,n,u,s){var a,l,c,f=typeof t;("undefined"===f||"boolean"===f)&&(t=null);var d=!1;if(null===t)d=!0;else switch(f){case"bigint":case"string":case"number":d=!0;break;case"object":switch(t.$$typeof){case o:case i:d=!0;break;case y:return e((d=t._init)(t._payload),r,n,u,s)}}if(d)return s=s(t),d=""===u?"."+C(t,0):u,E(s)?(n="",null!=d&&(n=d.replace(M,"$&/")+"/"),e(s,r,n,"",function(e){return e})):null!=s&&(A(s)&&(a=s,l=n+(null==s.key||t&&t.key===s.key?"":(""+s.key).replace(M,"$&/")+"/")+d,s=P(a.type,l,a.props)),r.push(s)),1;d=0;var p=""===u?".":u+":";if(E(t))for(var g=0;g{"use strict";t.exports=e.r(50740)},18800,(e,t,r)=>{"use strict";var n=e.r(71645);function o(e){var t="https://react.dev/errors/"+e;if(1{"use strict";!function e(){if("u">typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}(),t.exports=e.r(18800)},55682,(e,t,r)=>{"use strict";r._=function(e){return e&&e.__esModule?e:{default:e}}},90317,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={bindSnapshot:function(){return l},createAsyncLocalStorage:function(){return a},createSnapshot:function(){return c}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=Object.defineProperty(Error("Invariant: AsyncLocalStorage accessed in runtime where it is not available"),"__NEXT_ERROR_CODE",{value:"E504",enumerable:!1,configurable:!0});class u{disable(){throw i}getStore(){}run(){throw i}exit(){throw i}enterWith(){throw i}static bind(e){return e}}let s="u">typeof globalThis&&globalThis.AsyncLocalStorage;function a(){return s?new s:new u}function l(e){return s?s.bind(e):u.bind(e)}function c(){return s?s.snapshot():function(e,...t){return e(...t)}}},43369,(e,t,r)=>{"use strict";let n;Object.defineProperty(r,"__esModule",{value:!0});var o={getAssetToken:function(){return a},getAssetTokenQuery:function(){return l},getDeploymentId:function(){return u},getDeploymentIdQuery:function(){return s}};for(var i in o)Object.defineProperty(r,i,{enumerable:!0,get:o[i]});function u(){return n}function s(e=!1){let t=n;return t?`${e?"&":"?"}dpl=${t}`:""}function a(){return!1}function l(e=!1){return""}"u">typeof window?(n=document.documentElement.dataset.dplId,delete document.documentElement.dataset.dplId):n=void 0},42344,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"workAsyncStorageInstance",{enumerable:!0,get:function(){return n}});let n=(0,e.r(90317).createAsyncLocalStorage)()},63599,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"workAsyncStorage",{enumerable:!0,get:function(){return n.workAsyncStorageInstance}});let n=e.r(42344)},32061,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={BailoutToCSRError:function(){return u},isBailoutToCSRError:function(){return s}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i="BAILOUT_TO_CLIENT_SIDE_RENDERING";class u extends Error{constructor(e){super(`Bail out to client-side rendering: ${e}`),this.reason=e,this.digest=i}}function s(e){return"object"==typeof e&&null!==e&&"digest"in e&&e.digest===i}},12354,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"handleISRError",{enumerable:!0,get:function(){return o}});let n="u"{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useUntrackedPathname",{enumerable:!0,get:function(){return i}});let n=e.r(71645),o=e.r(61994);function i(){return!function(){if("u"0}}return!1}()?(0,n.useContext)(o.PathnameContext):null}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},78377,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={handleHardNavError:function(){return u},useNavFailureHandler:function(){return s}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});e.r(71645);let i=e.r(51191);function u(e){return!!(e&&"u">typeof window)&&!!window.next.__pendingUrl&&(0,i.createHrefFromUrl)(new URL(window.location.href))!==(0,i.createHrefFromUrl)(window.next.__pendingUrl)&&(console.error("Error occurred during navigation, falling back to hard navigation",e),window.location.href=window.next.__pendingUrl.toString(),!0)}function s(){}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},72383,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={ErrorBoundary:function(){return g},ErrorBoundaryHandler:function(){return y}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=e.r(90809),u=e.r(43476),s=i._(e.r(71645)),a=e.r(90373),l=e.r(65713);e.r(78377);let c=e.r(12354),f=e.r(82604),d=e.r(8372),p="u">typeof window&&(0,f.isBot)(window.navigator.userAgent);class y extends s.default.Component{static{this.contextType=d.AppRouterContext}constructor(e){super(e),this.reset=()=>{this.setState({error:null})},this.unstable_retry=()=>{(0,s.startTransition)(()=>{this.context?.refresh(),this.reset()})},this.state={error:null,previousPathname:this.props.pathname}}static getDerivedStateFromError(e){if((0,l.isNextRouterError)(e))throw e;return{error:e}}static getDerivedStateFromProps(e,t){let{error:r}=t;return e.pathname!==t.previousPathname&&t.error?{error:null,previousPathname:e.pathname}:{error:t.error,previousPathname:e.pathname}}render(){return this.state.error&&!p?((0,c.handleISRError)({error:this.state.error}),(0,u.jsxs)(u.Fragment,{children:[this.props.errorStyles,this.props.errorScripts,(0,u.jsx)(this.props.errorComponent,{error:this.state.error,reset:this.reset,unstable_retry:this.unstable_retry})]})):this.props.children}}function g({errorComponent:e,errorStyles:t,errorScripts:r,children:n}){let o=(0,a.useUntrackedPathname)();return e?(0,u.jsx)(y,{pathname:o,errorComponent:e,errorStyles:t,errorScripts:r,children:n}):(0,u.jsx)(u.Fragment,{children:n})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},58442,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={RedirectBoundary:function(){return p},RedirectErrorBoundary:function(){return d}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=e.r(90809),u=e.r(43476),s=i._(e.r(71645)),a=e.r(76562),l=e.r(24063),c=e.r(68391);function f({redirect:e,reset:t,redirectType:r}){let n=(0,a.useRouter)();return(0,s.useEffect)(()=>{s.default.startTransition(()=>{"push"===r?n.push(e,{}):n.replace(e,{}),t()})},[e,r,t,n]),null}class d extends s.default.Component{constructor(e){super(e),this.state={redirect:null,redirectType:null}}static getDerivedStateFromError(e){if((0,c.isRedirectError)(e)){let t=(0,l.getURLFromRedirectError)(e),r=(0,l.getRedirectTypeFromError)(e);return"handled"in e?{redirect:null,redirectType:null}:{redirect:t,redirectType:r}}throw e}render(){let{redirect:e,redirectType:t}=this.state;return null!==e&&null!==t?(0,u.jsx)(f,{redirect:e,redirectType:t,reset:()=>this.setState({redirect:null})}):this.props.children}}function p({children:e}){let t=(0,a.useRouter)();return(0,u.jsx)(d,{router:t,children:e})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},70725,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"createRouterCacheKey",{enumerable:!0,get:function(){return o}});let n=e.r(13258);function o(e,t=!1){return Array.isArray(e)?`${e[0]}|${e[1]}|${e[2]}`:t&&e.startsWith(n.PAGE_SEGMENT_KEY)?n.PAGE_SEGMENT_KEY:e}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},1244,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"unresolvedThenable",{enumerable:!0,get:function(){return n}});let n={then:()=>{}};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},97367,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={MetadataBoundary:function(){return s},OutletBoundary:function(){return l},RootLayoutBoundary:function(){return c},ViewportBoundary:function(){return a}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=e.r(54839),u={[i.METADATA_BOUNDARY_NAME]:function({children:e}){return e},[i.VIEWPORT_BOUNDARY_NAME]:function({children:e}){return e},[i.OUTLET_BOUNDARY_NAME]:function({children:e}){return e},[i.ROOT_LAYOUT_BOUNDARY_NAME]:function({children:e}){return e}},s=u[i.METADATA_BOUNDARY_NAME.slice(0)],a=u[i.VIEWPORT_BOUNDARY_NAME.slice(0)],l=u[i.OUTLET_BOUNDARY_NAME.slice(0)],c=u[i.ROOT_LAYOUT_BOUNDARY_NAME.slice(0)]},42732,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"HeadManagerContext",{enumerable:!0,get:function(){return n}});let n=e.r(55682)._(e.r(71645)).default.createContext({})},18576,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={WarningIcon:function(){return a},errorStyles:function(){return u},errorThemeCss:function(){return s}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});e.r(55682);let i=e.r(43476);e.r(71645);let u={container:{fontFamily:'system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"',height:"100vh",display:"flex",alignItems:"center",justifyContent:"center"},card:{marginTop:"-32px",maxWidth:"325px",padding:"32px 28px",textAlign:"left"},icon:{marginBottom:"24px"},title:{fontSize:"24px",fontWeight:500,letterSpacing:"-0.02em",lineHeight:"32px",margin:"0 0 12px 0",color:"var(--next-error-title)"},message:{fontSize:"14px",fontWeight:400,lineHeight:"21px",margin:"0 0 20px 0",color:"var(--next-error-message)"},form:{margin:0},buttonGroup:{display:"flex",gap:"8px",alignItems:"center"},button:{display:"inline-flex",alignItems:"center",justifyContent:"center",height:"32px",padding:"0 12px",fontSize:"14px",fontWeight:500,lineHeight:"20px",borderRadius:"6px",cursor:"pointer",color:"var(--next-error-btn-text)",background:"var(--next-error-btn-bg)",border:"var(--next-error-btn-border)"},buttonSecondary:{display:"inline-flex",alignItems:"center",justifyContent:"center",height:"32px",padding:"0 12px",fontSize:"14px",fontWeight:500,lineHeight:"20px",borderRadius:"6px",cursor:"pointer",color:"var(--next-error-btn-secondary-text)",background:"var(--next-error-btn-secondary-bg)",border:"var(--next-error-btn-secondary-border)"},digestFooter:{position:"fixed",bottom:"32px",left:"0",right:"0",textAlign:"center",fontFamily:'ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace',fontSize:"12px",lineHeight:"18px",fontWeight:400,margin:"0",color:"var(--next-error-digest)"}},s=` +:root { + --next-error-bg: #fff; + --next-error-text: #171717; + --next-error-title: #171717; + --next-error-message: #171717; + --next-error-digest: #666666; + --next-error-btn-text: #fff; + --next-error-btn-bg: #171717; + --next-error-btn-border: none; + --next-error-btn-secondary-text: #171717; + --next-error-btn-secondary-bg: transparent; + --next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08); +} +@media (prefers-color-scheme: dark) { + :root { + --next-error-bg: #0a0a0a; + --next-error-text: #ededed; + --next-error-title: #ededed; + --next-error-message: #ededed; + --next-error-digest: #a0a0a0; + --next-error-btn-text: #0a0a0a; + --next-error-btn-bg: #ededed; + --next-error-btn-border: none; + --next-error-btn-secondary-text: #ededed; + --next-error-btn-secondary-bg: transparent; + --next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14); + } +} +body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); } +`.replace(/\n\s*/g,"");function a(){return(0,i.jsx)("svg",{width:"32",height:"32",viewBox:"-0.2 -1.5 32 32",fill:"none",style:u.icon,children:(0,i.jsx)("path",{d:"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z",fill:"var(--next-error-title)"})})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},68027,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return u}}),e.r(55682);let n=e.r(43476);e.r(71645);let o=e.r(12354),i=e.r(18576),u=function({error:e}){let t=e?.digest,r=!!t;return(0,o.handleISRError)({error:e}),(0,n.jsxs)("html",{id:"__next_error__",children:[(0,n.jsx)("head",{children:(0,n.jsx)("style",{dangerouslySetInnerHTML:{__html:i.errorThemeCss}})}),(0,n.jsxs)("body",{children:[(0,n.jsx)("div",{style:i.errorStyles.container,children:(0,n.jsxs)("div",{style:i.errorStyles.card,children:[(0,n.jsx)(i.WarningIcon,{}),(0,n.jsx)("h1",{style:i.errorStyles.title,children:"This page couldn’t load"}),(0,n.jsx)("p",{style:i.errorStyles.message,children:r?"A server error occurred. Reload to try again.":"Reload to try again, or go back."}),(0,n.jsxs)("div",{style:i.errorStyles.buttonGroup,children:[(0,n.jsx)("form",{style:i.errorStyles.form,children:(0,n.jsx)("button",{type:"submit",style:i.errorStyles.button,children:"Reload"})}),!r&&(0,n.jsx)("button",{type:"button",style:i.errorStyles.buttonSecondary,onClick:()=>{window.history.length>1?window.history.back():window.location.href="/"},children:"Back"})]})]})}),t&&(0,n.jsxs)("p",{style:i.errorStyles.digestFooter,children:["ERROR ",t]})]})]})};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)}]); \ No newline at end of file diff --git a/build/_next/static/chunks/0a.~l01a83_pb.js b/build/_next/static/chunks/0a.~l01a83_pb.js deleted file mode 100644 index fae1389..0000000 --- a/build/_next/static/chunks/0a.~l01a83_pb.js +++ /dev/null @@ -1,1000 +0,0 @@ -(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,55838,(e,t,i)=>{"use strict";var n=e.r(71645),r="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},a=n.useState,s=n.useEffect,o=n.useLayoutEffect,l=n.useDebugValue;function u(e){var t=e.getSnapshot;e=e.value;try{var i=t();return!r(e,i)}catch(e){return!0}}var c="u"{"use strict";t.exports=e.r(55838)},52822,(e,t,i)=>{"use strict";var n=e.r(71645),r=e.r(2239),a="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},s=r.useSyncExternalStore,o=n.useRef,l=n.useEffect,u=n.useMemo,c=n.useDebugValue;i.useSyncExternalStoreWithSelector=function(e,t,i,n,r){var h=o(null);if(null===h.current){var d={hasValue:!1,value:null};h.current=d}else d=h.current;var f=s(e,(h=u(function(){function e(e){if(!l){if(l=!0,s=e,e=n(e),void 0!==r&&d.hasValue){var t=d.value;if(r(t,e))return o=t}return o=e}if(t=o,a(s,e))return t;var i=n(e);return void 0!==r&&r(t,i)?(s=e,t):(s=e,o=i)}var s,o,l=!1,u=void 0===i?null:i;return[function(){return e(t())},null===u?void 0:function(){return e(u())}]},[t,i,n,r]))[0],h[1]);return l(function(){d.hasValue=!0,d.value=f},[f]),c(f),f}},30224,(e,t,i)=>{"use strict";t.exports=e.r(52822)},66936,(e,t,i)=>{"use strict";function n(e,t){var i=e.length;for(e.push(t);0>>1,r=e[n];if(0>>1;ns(l,i))us(c,l)?(e[n]=c,e[u]=i,n=u):(e[n]=l,e[o]=i,n=o);else if(us(c,i))e[n]=c,e[u]=i,n=u;else break}}return t}function s(e,t){var i=e.sortIndex-t.sortIndex;return 0!==i?i:e.id-t.id}if(i.unstable_now=void 0,"object"==typeof performance&&"function"==typeof performance.now){var o,l=performance;i.unstable_now=function(){return l.now()}}else{var u=Date,c=u.now();i.unstable_now=function(){return u.now()-c}}var h=[],d=[],f=1,p=null,m=3,g=!1,v=!1,x=!1,y=!1,S="function"==typeof setTimeout?setTimeout:null,A="function"==typeof clearTimeout?clearTimeout:null,M="u">typeof setImmediate?setImmediate:null;function b(e){for(var t=r(d);null!==t;){if(null===t.callback)a(d);else if(t.startTime<=e)a(d),t.sortIndex=t.expirationTime,n(h,t);else break;t=r(d)}}function w(e){if(x=!1,b(e),!v)if(null!==r(h))v=!0,T||(T=!0,o());else{var t=r(d);null!==t&&L(w,t.startTime-e)}}var T=!1,E=-1,_=5,C=-1;function R(){return!!y||!(i.unstable_now()-C<_)}function P(){if(y=!1,T){var e=i.unstable_now();C=e;var t=!0;try{e:{v=!1,x&&(x=!1,A(E),E=-1),g=!0;var n=m;try{t:{for(b(e),p=r(h);null!==p&&!(p.expirationTime>e&&R());){var s=p.callback;if("function"==typeof s){p.callback=null,m=p.priorityLevel;var l=s(p.expirationTime<=e);if(e=i.unstable_now(),"function"==typeof l){p.callback=l,b(e),t=!0;break t}p===r(h)&&a(h),b(e)}else a(h);p=r(h)}if(null!==p)t=!0;else{var u=r(d);null!==u&&L(w,u.startTime-e),t=!1}}break e}finally{p=null,m=n,g=!1}}}finally{t?o():T=!1}}}if("function"==typeof M)o=function(){M(P)};else if("u">typeof MessageChannel){var D=new MessageChannel,I=D.port2;D.port1.onmessage=P,o=function(){I.postMessage(null)}}else o=function(){S(P,0)};function L(e,t){E=S(function(){e(i.unstable_now())},t)}i.unstable_IdlePriority=5,i.unstable_ImmediatePriority=1,i.unstable_LowPriority=4,i.unstable_NormalPriority=3,i.unstable_Profiling=null,i.unstable_UserBlockingPriority=2,i.unstable_cancelCallback=function(e){e.callback=null},i.unstable_forceFrameRate=function(e){0>e||125s?(e.sortIndex=a,n(d,e),null===r(h)&&e===r(d)&&(x?(A(E),E=-1):x=!0,L(w,a-s))):(e.sortIndex=l,n(h,e),v||g||(v=!0,T||(T=!0,o()))),e},i.unstable_shouldYield=R,i.unstable_wrapCallback=function(e){var t=m;return function(){var i=m;m=t;try{return e.apply(this,arguments)}finally{m=i}}}},89499,(e,t,i)=>{"use strict";t.exports=e.r(66936)},75056,90072,8560,1950,25234,28600,67335,e=>{"use strict";let t,i,n,r,a,s,o,l,u,c,h,d,f,p,m,g,v,x;var y,S,A,M,b,w,T=e.i(47167),E=e.i(71645);let _={LEFT:0,MIDDLE:1,RIGHT:2,ROTATE:0,DOLLY:1,PAN:2},C={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3},R="attached",P="detached",D="srgb",I="srgb-linear",L="linear",B="srgb",U="300 es";class N{addEventListener(e,t){void 0===this._listeners&&(this._listeners={});let i=this._listeners;void 0===i[e]&&(i[e]=[]),-1===i[e].indexOf(t)&&i[e].push(t)}hasEventListener(e,t){if(void 0===this._listeners)return!1;let i=this._listeners;return void 0!==i[e]&&-1!==i[e].indexOf(t)}removeEventListener(e,t){if(void 0===this._listeners)return;let i=this._listeners[e];if(void 0!==i){let e=i.indexOf(t);-1!==e&&i.splice(e,1)}}dispatchEvent(e){if(void 0===this._listeners)return;let t=this._listeners[e.type];if(void 0!==t){e.target=this;let i=t.slice(0);for(let t=0,n=i.length;t>8&255]+F[e>>16&255]+F[e>>24&255]+"-"+F[255&t]+F[t>>8&255]+"-"+F[t>>16&15|64]+F[t>>24&255]+"-"+F[63&i|128]+F[i>>8&255]+"-"+F[i>>16&255]+F[i>>24&255]+F[255&n]+F[n>>8&255]+F[n>>16&255]+F[n>>24&255]).toLowerCase()}function G(e,t,i){return Math.max(t,Math.min(i,e))}function V(e,t){return(e%t+t)%t}function W(e,t,i){return(1-i)*e+i*t}function j(e,t){switch(t.constructor){case Float32Array:return e;case Uint32Array:return e/0xffffffff;case Uint16Array:return e/65535;case Uint8Array:return e/255;case Int32Array:return Math.max(e/0x7fffffff,-1);case Int16Array:return Math.max(e/32767,-1);case Int8Array:return Math.max(e/127,-1);default:throw Error("Invalid component type.")}}function X(e,t){switch(t.constructor){case Float32Array:return e;case Uint32Array:return Math.round(0xffffffff*e);case Uint16Array:return Math.round(65535*e);case Uint8Array:return Math.round(255*e);case Int32Array:return Math.round(0x7fffffff*e);case Int16Array:return Math.round(32767*e);case Int8Array:return Math.round(127*e);default:throw Error("Invalid component type.")}}let Y={DEG2RAD:z,RAD2DEG:k,generateUUID:H,clamp:G,euclideanModulo:V,mapLinear:function(e,t,i,n,r){return n+(e-t)*(r-n)/(i-t)},inverseLerp:function(e,t,i){return e!==t?(i-e)/(t-e):0},lerp:W,damp:function(e,t,i,n){return W(e,t,1-Math.exp(-i*n))},pingpong:function(e,t=1){return t-Math.abs(V(e,2*t)-t)},smoothstep:function(e,t,i){return e<=t?0:e>=i?1:(e=(e-t)/(i-t))*e*(3-2*e)},smootherstep:function(e,t,i){return e<=t?0:e>=i?1:(e=(e-t)/(i-t))*e*e*(e*(6*e-15)+10)},randInt:function(e,t){return e+Math.floor(Math.random()*(t-e+1))},randFloat:function(e,t){return e+Math.random()*(t-e)},randFloatSpread:function(e){return e*(.5-Math.random())},seededRandom:function(e){void 0!==e&&(O=e);let t=O+=0x6d2b79f5;return t=Math.imul(t^t>>>15,1|t),(((t^=t+Math.imul(t^t>>>7,61|t))^t>>>14)>>>0)/0x100000000},degToRad:function(e){return e*z},radToDeg:function(e){return e*k},isPowerOfTwo:function(e){return(e&e-1)==0&&0!==e},ceilPowerOfTwo:function(e){return Math.pow(2,Math.ceil(Math.log(e)/Math.LN2))},floorPowerOfTwo:function(e){return Math.pow(2,Math.floor(Math.log(e)/Math.LN2))},setQuaternionFromProperEuler:function(e,t,i,n,r){let a=Math.cos,s=Math.sin,o=a(i/2),l=s(i/2),u=a((t+n)/2),c=s((t+n)/2),h=a((t-n)/2),d=s((t-n)/2),f=a((n-t)/2),p=s((n-t)/2);switch(r){case"XYX":e.set(o*c,l*h,l*d,o*u);break;case"YZY":e.set(l*d,o*c,l*h,o*u);break;case"ZXZ":e.set(l*h,l*d,o*c,o*u);break;case"XZX":e.set(o*c,l*p,l*f,o*u);break;case"YXY":e.set(l*f,o*c,l*p,o*u);break;case"ZYZ":e.set(l*p,l*f,o*c,o*u);break;default:console.warn("THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: "+r)}},normalize:X,denormalize:j};class Q{constructor(e=0,t=0){Q.prototype.isVector2=!0,this.x=e,this.y=t}get width(){return this.x}set width(e){this.x=e}get height(){return this.y}set height(e){this.y=e}set(e,t){return this.x=e,this.y=t,this}setScalar(e){return this.x=e,this.y=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;default:throw Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;default:throw Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y)}copy(e){return this.x=e.x,this.y=e.y,this}add(e){return this.x+=e.x,this.y+=e.y,this}addScalar(e){return this.x+=e,this.y+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this}subScalar(e){return this.x-=e,this.y-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this}multiply(e){return this.x*=e.x,this.y*=e.y,this}multiplyScalar(e){return this.x*=e,this.y*=e,this}divide(e){return this.x/=e.x,this.y/=e.y,this}divideScalar(e){return this.multiplyScalar(1/e)}applyMatrix3(e){let t=this.x,i=this.y,n=e.elements;return this.x=n[0]*t+n[3]*i+n[6],this.y=n[1]*t+n[4]*i+n[7],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this}clamp(e,t){return this.x=G(this.x,e.x,t.x),this.y=G(this.y,e.y,t.y),this}clampScalar(e,t){return this.x=G(this.x,e,t),this.y=G(this.y,e,t),this}clampLength(e,t){let i=this.length();return this.divideScalar(i||1).multiplyScalar(G(i,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(e){return this.x*e.x+this.y*e.y}cross(e){return this.x*e.y-this.y*e.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}angleTo(e){let t=Math.sqrt(this.lengthSq()*e.lengthSq());return 0===t?Math.PI/2:Math.acos(G(this.dot(e)/t,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let t=this.x-e.x,i=this.y-e.y;return t*t+i*i}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this}lerpVectors(e,t,i){return this.x=e.x+(t.x-e.x)*i,this.y=e.y+(t.y-e.y)*i,this}equals(e){return e.x===this.x&&e.y===this.y}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this}rotateAround(e,t){let i=Math.cos(t),n=Math.sin(t),r=this.x-e.x,a=this.y-e.y;return this.x=r*i-a*n+e.x,this.y=r*n+a*i+e.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}}class q{constructor(e,t,i,n,r,a,s,o,l){q.prototype.isMatrix3=!0,this.elements=[1,0,0,0,1,0,0,0,1],void 0!==e&&this.set(e,t,i,n,r,a,s,o,l)}set(e,t,i,n,r,a,s,o,l){let u=this.elements;return u[0]=e,u[1]=n,u[2]=s,u[3]=t,u[4]=r,u[5]=o,u[6]=i,u[7]=a,u[8]=l,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(e){let t=this.elements,i=e.elements;return t[0]=i[0],t[1]=i[1],t[2]=i[2],t[3]=i[3],t[4]=i[4],t[5]=i[5],t[6]=i[6],t[7]=i[7],t[8]=i[8],this}extractBasis(e,t,i){return e.setFromMatrix3Column(this,0),t.setFromMatrix3Column(this,1),i.setFromMatrix3Column(this,2),this}setFromMatrix4(e){let t=e.elements;return this.set(t[0],t[4],t[8],t[1],t[5],t[9],t[2],t[6],t[10]),this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){let i=e.elements,n=t.elements,r=this.elements,a=i[0],s=i[3],o=i[6],l=i[1],u=i[4],c=i[7],h=i[2],d=i[5],f=i[8],p=n[0],m=n[3],g=n[6],v=n[1],x=n[4],y=n[7],S=n[2],A=n[5],M=n[8];return r[0]=a*p+s*v+o*S,r[3]=a*m+s*x+o*A,r[6]=a*g+s*y+o*M,r[1]=l*p+u*v+c*S,r[4]=l*m+u*x+c*A,r[7]=l*g+u*y+c*M,r[2]=h*p+d*v+f*S,r[5]=h*m+d*x+f*A,r[8]=h*g+d*y+f*M,this}multiplyScalar(e){let t=this.elements;return t[0]*=e,t[3]*=e,t[6]*=e,t[1]*=e,t[4]*=e,t[7]*=e,t[2]*=e,t[5]*=e,t[8]*=e,this}determinant(){let e=this.elements,t=e[0],i=e[1],n=e[2],r=e[3],a=e[4],s=e[5],o=e[6],l=e[7],u=e[8];return t*a*u-t*s*l-i*r*u+i*s*o+n*r*l-n*a*o}invert(){let e=this.elements,t=e[0],i=e[1],n=e[2],r=e[3],a=e[4],s=e[5],o=e[6],l=e[7],u=e[8],c=u*a-s*l,h=s*o-u*r,d=l*r-a*o,f=t*c+i*h+n*d;if(0===f)return this.set(0,0,0,0,0,0,0,0,0);let p=1/f;return e[0]=c*p,e[1]=(n*l-u*i)*p,e[2]=(s*i-n*a)*p,e[3]=h*p,e[4]=(u*t-n*o)*p,e[5]=(n*r-s*t)*p,e[6]=d*p,e[7]=(i*o-l*t)*p,e[8]=(a*t-i*r)*p,this}transpose(){let e,t=this.elements;return e=t[1],t[1]=t[3],t[3]=e,e=t[2],t[2]=t[6],t[6]=e,e=t[5],t[5]=t[7],t[7]=e,this}getNormalMatrix(e){return this.setFromMatrix4(e).invert().transpose()}transposeIntoArray(e){let t=this.elements;return e[0]=t[0],e[1]=t[3],e[2]=t[6],e[3]=t[1],e[4]=t[4],e[5]=t[7],e[6]=t[2],e[7]=t[5],e[8]=t[8],this}setUvTransform(e,t,i,n,r,a,s){let o=Math.cos(r),l=Math.sin(r);return this.set(i*o,i*l,-i*(o*a+l*s)+a+e,-n*l,n*o,-n*(-l*a+o*s)+s+t,0,0,1),this}scale(e,t){return this.premultiply(K.makeScale(e,t)),this}rotate(e){return this.premultiply(K.makeRotation(-e)),this}translate(e,t){return this.premultiply(K.makeTranslation(e,t)),this}makeTranslation(e,t){return e.isVector2?this.set(1,0,e.x,0,1,e.y,0,0,1):this.set(1,0,e,0,1,t,0,0,1),this}makeRotation(e){let t=Math.cos(e),i=Math.sin(e);return this.set(t,-i,0,i,t,0,0,0,1),this}makeScale(e,t){return this.set(e,0,0,0,t,0,0,0,1),this}equals(e){let t=this.elements,i=e.elements;for(let e=0;e<9;e++)if(t[e]!==i[e])return!1;return!0}fromArray(e,t=0){for(let i=0;i<9;i++)this.elements[i]=e[i+t];return this}toArray(e=[],t=0){let i=this.elements;return e[t]=i[0],e[t+1]=i[1],e[t+2]=i[2],e[t+3]=i[3],e[t+4]=i[4],e[t+5]=i[5],e[t+6]=i[6],e[t+7]=i[7],e[t+8]=i[8],e}clone(){return new this.constructor().fromArray(this.elements)}}let K=new q;function Z(e){for(let t=e.length-1;t>=0;--t)if(e[t]>=65535)return!0;return!1}let J={Int8Array:Int8Array,Uint8Array:Uint8Array,Uint8ClampedArray:Uint8ClampedArray,Int16Array:Int16Array,Uint16Array:Uint16Array,Int32Array:Int32Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array};function $(e,t){return new J[e](t)}function ee(e){return document.createElementNS("http://www.w3.org/1999/xhtml",e)}function et(){let e=ee("canvas");return e.style.display="block",e}let ei={};function en(e){e in ei||(ei[e]=!0,console.warn(e))}function er(e,t,i){return new Promise(function(n,r){setTimeout(function a(){switch(e.clientWaitSync(t,e.SYNC_FLUSH_COMMANDS_BIT,0)){case e.WAIT_FAILED:r();break;case e.TIMEOUT_EXPIRED:setTimeout(a,i);break;default:n()}},i)})}function ea(e){let t=e.elements;t[2]=.5*t[2]+.5*t[3],t[6]=.5*t[6]+.5*t[7],t[10]=.5*t[10]+.5*t[11],t[14]=.5*t[14]+.5*t[15]}function es(e){let t=e.elements;-1===t[11]?(t[10]=-t[10]-1,t[14]=-t[14]):(t[10]=-t[10],t[14]=-t[14]+1)}let eo=new q().set(.4123908,.3575843,.1804808,.212639,.7151687,.0721923,.0193308,.1191948,.9505322),el=new q().set(3.2409699,-1.5373832,-.4986108,-.9692436,1.8759675,.0415551,.0556301,-.203977,1.0569715),eu=(d=[.64,.33,.3,.6,.15,.06],f=[.2126,.7152,.0722],p=[.3127,.329],(h={enabled:!0,workingColorSpace:I,spaces:{},convert:function(e,t,i){return!1!==this.enabled&&t!==i&&t&&i&&(this.spaces[t].transfer===B&&(e.r=ec(e.r),e.g=ec(e.g),e.b=ec(e.b)),this.spaces[t].primaries!==this.spaces[i].primaries&&(e.applyMatrix3(this.spaces[t].toXYZ),e.applyMatrix3(this.spaces[i].fromXYZ)),this.spaces[i].transfer===B&&(e.r=eh(e.r),e.g=eh(e.g),e.b=eh(e.b))),e},fromWorkingColorSpace:function(e,t){return this.convert(e,this.workingColorSpace,t)},toWorkingColorSpace:function(e,t){return this.convert(e,t,this.workingColorSpace)},getPrimaries:function(e){return this.spaces[e].primaries},getTransfer:function(e){return""===e?L:this.spaces[e].transfer},getLuminanceCoefficients:function(e,t=this.workingColorSpace){return e.fromArray(this.spaces[t].luminanceCoefficients)},define:function(e){Object.assign(this.spaces,e)},_getMatrix:function(e,t,i){return e.copy(this.spaces[t].toXYZ).multiply(this.spaces[i].fromXYZ)},_getDrawingBufferColorSpace:function(e){return this.spaces[e].outputColorSpaceConfig.drawingBufferColorSpace},_getUnpackColorSpace:function(e=this.workingColorSpace){return this.spaces[e].workingColorSpaceConfig.unpackColorSpace}}).define({[I]:{primaries:d,whitePoint:p,transfer:L,toXYZ:eo,fromXYZ:el,luminanceCoefficients:f,workingColorSpaceConfig:{unpackColorSpace:D},outputColorSpaceConfig:{drawingBufferColorSpace:D}},[D]:{primaries:d,whitePoint:p,transfer:B,toXYZ:eo,fromXYZ:el,luminanceCoefficients:f,outputColorSpaceConfig:{drawingBufferColorSpace:D}}}),h);function ec(e){return e<.04045?.0773993808*e:Math.pow(.9478672986*e+.0521327014,2.4)}function eh(e){return e<.0031308?12.92*e:1.055*Math.pow(e,.41666)-.055}class ed{static getDataURL(e){let i;if(/^data:/i.test(e.src)||"u"2048||i.height>2048?(console.warn("THREE.ImageUtils.getDataURL: Image converted to jpg for performance reasons",e),i.toDataURL("image/jpeg",.6)):i.toDataURL("image/png")}static sRGBToLinear(e){if("u">typeof HTMLImageElement&&e instanceof HTMLImageElement||"u">typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement||"u">typeof ImageBitmap&&e instanceof ImageBitmap){let t=ee("canvas");t.width=e.width,t.height=e.height;let i=t.getContext("2d");i.drawImage(e,0,0,e.width,e.height);let n=i.getImageData(0,0,e.width,e.height),r=n.data;for(let e=0;etypeof HTMLImageElement&&e instanceof HTMLImageElement||"u">typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement||"u">typeof ImageBitmap&&e instanceof ImageBitmap?ed.getDataURL(e):e.data?{data:Array.from(e.data),width:e.width,height:e.height,type:e.data.constructor.name}:(console.warn("THREE.Texture: Unable to serialize Texture."),{})}let eg=0;class ev extends N{constructor(e=ev.DEFAULT_IMAGE,t=ev.DEFAULT_MAPPING,i=1001,n=1001,r=1006,a=1008,s=1023,o=1009,l=ev.DEFAULT_ANISOTROPY,u=""){super(),this.isTexture=!0,Object.defineProperty(this,"id",{value:eg++}),this.uuid=H(),this.name="",this.source=new ep(e),this.mipmaps=[],this.mapping=t,this.channel=0,this.wrapS=i,this.wrapT=n,this.magFilter=r,this.minFilter=a,this.anisotropy=l,this.format=s,this.internalFormat=null,this.type=o,this.offset=new Q(0,0),this.repeat=new Q(1,1),this.center=new Q(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new q,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,this.colorSpace=u,this.userData={},this.version=0,this.onUpdate=null,this.isRenderTargetTexture=!1,this.pmremVersion=0}get image(){return this.source.data}set image(e=null){this.source.data=e}updateMatrix(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)}clone(){return new this.constructor().copy(this)}copy(e){return this.name=e.name,this.source=e.source,this.mipmaps=e.mipmaps.slice(0),this.mapping=e.mapping,this.channel=e.channel,this.wrapS=e.wrapS,this.wrapT=e.wrapT,this.magFilter=e.magFilter,this.minFilter=e.minFilter,this.anisotropy=e.anisotropy,this.format=e.format,this.internalFormat=e.internalFormat,this.type=e.type,this.offset.copy(e.offset),this.repeat.copy(e.repeat),this.center.copy(e.center),this.rotation=e.rotation,this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrix.copy(e.matrix),this.generateMipmaps=e.generateMipmaps,this.premultiplyAlpha=e.premultiplyAlpha,this.flipY=e.flipY,this.unpackAlignment=e.unpackAlignment,this.colorSpace=e.colorSpace,this.userData=JSON.parse(JSON.stringify(e.userData)),this.needsUpdate=!0,this}toJSON(e){let t=void 0===e||"string"==typeof e;if(!t&&void 0!==e.textures[this.uuid])return e.textures[this.uuid];let i={metadata:{version:4.6,type:"Texture",generator:"Texture.toJSON"},uuid:this.uuid,name:this.name,image:this.source.toJSON(e).uuid,mapping:this.mapping,channel:this.channel,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,internalFormat:this.internalFormat,type:this.type,colorSpace:this.colorSpace,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,generateMipmaps:this.generateMipmaps,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};return Object.keys(this.userData).length>0&&(i.userData=this.userData),t||(e.textures[this.uuid]=i),i}dispose(){this.dispatchEvent({type:"dispose"})}transformUv(e){if(300!==this.mapping)return e;if(e.applyMatrix3(this.matrix),e.x<0||e.x>1)switch(this.wrapS){case 1e3:e.x=e.x-Math.floor(e.x);break;case 1001:e.x=e.x<0?0:1;break;case 1002:1===Math.abs(Math.floor(e.x)%2)?e.x=Math.ceil(e.x)-e.x:e.x=e.x-Math.floor(e.x)}if(e.y<0||e.y>1)switch(this.wrapT){case 1e3:e.y=e.y-Math.floor(e.y);break;case 1001:e.y=e.y<0?0:1;break;case 1002:1===Math.abs(Math.floor(e.y)%2)?e.y=Math.ceil(e.y)-e.y:e.y=e.y-Math.floor(e.y)}return this.flipY&&(e.y=1-e.y),e}set needsUpdate(e){!0===e&&(this.version++,this.source.needsUpdate=!0)}set needsPMREMUpdate(e){!0===e&&this.pmremVersion++}}ev.DEFAULT_IMAGE=null,ev.DEFAULT_MAPPING=300,ev.DEFAULT_ANISOTROPY=1;class ex{constructor(e=0,t=0,i=0,n=1){ex.prototype.isVector4=!0,this.x=e,this.y=t,this.z=i,this.w=n}get width(){return this.z}set width(e){this.z=e}get height(){return this.w}set height(e){this.w=e}set(e,t,i,n){return this.x=e,this.y=t,this.z=i,this.w=n,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this.w=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setW(e){return this.w=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;case 3:this.w=t;break;default:throw Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this.w=void 0!==e.w?e.w:1,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this.w+=e.w,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this.w+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this.w=e.w+t.w,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this.w+=e.w*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this.w-=e.w,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this.w-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this.w=e.w-t.w,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this.w*=e.w,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this.w*=e,this}applyMatrix4(e){let t=this.x,i=this.y,n=this.z,r=this.w,a=e.elements;return this.x=a[0]*t+a[4]*i+a[8]*n+a[12]*r,this.y=a[1]*t+a[5]*i+a[9]*n+a[13]*r,this.z=a[2]*t+a[6]*i+a[10]*n+a[14]*r,this.w=a[3]*t+a[7]*i+a[11]*n+a[15]*r,this}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this.w/=e.w,this}divideScalar(e){return this.multiplyScalar(1/e)}setAxisAngleFromQuaternion(e){this.w=2*Math.acos(e.w);let t=Math.sqrt(1-e.w*e.w);return t<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=e.x/t,this.y=e.y/t,this.z=e.z/t),this}setAxisAngleFromRotationMatrix(e){let t,i,n,r,a=e.elements,s=a[0],o=a[4],l=a[8],u=a[1],c=a[5],h=a[9],d=a[2],f=a[6],p=a[10];if(.01>Math.abs(o-u)&&.01>Math.abs(l-d)&&.01>Math.abs(h-f)){if(.1>Math.abs(o+u)&&.1>Math.abs(l+d)&&.1>Math.abs(h+f)&&.1>Math.abs(s+c+p-3))return this.set(1,0,0,0),this;t=Math.PI;let e=(s+1)/2,a=(c+1)/2,m=(p+1)/2,g=(o+u)/4,v=(l+d)/4,x=(h+f)/4;return e>a&&e>m?e<.01?(i=0,n=.707106781,r=.707106781):(n=g/(i=Math.sqrt(e)),r=v/i):a>m?a<.01?(i=.707106781,n=0,r=.707106781):(i=g/(n=Math.sqrt(a)),r=x/n):m<.01?(i=.707106781,n=.707106781,r=0):(i=v/(r=Math.sqrt(m)),n=x/r),this.set(i,n,r,t),this}let m=Math.sqrt((f-h)*(f-h)+(l-d)*(l-d)+(u-o)*(u-o));return .001>Math.abs(m)&&(m=1),this.x=(f-h)/m,this.y=(l-d)/m,this.z=(u-o)/m,this.w=Math.acos((s+c+p-1)/2),this}setFromMatrixPosition(e){let t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this.w=t[15],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this.w=Math.min(this.w,e.w),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this.w=Math.max(this.w,e.w),this}clamp(e,t){return this.x=G(this.x,e.x,t.x),this.y=G(this.y,e.y,t.y),this.z=G(this.z,e.z,t.z),this.w=G(this.w,e.w,t.w),this}clampScalar(e,t){return this.x=G(this.x,e,t),this.y=G(this.y,e,t),this.z=G(this.z,e,t),this.w=G(this.w,e,t),this}clampLength(e,t){let i=this.length();return this.divideScalar(i||1).multiplyScalar(G(i,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this.w=Math.trunc(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z+this.w*e.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this.w+=(e.w-this.w)*t,this}lerpVectors(e,t,i){return this.x=e.x+(t.x-e.x)*i,this.y=e.y+(t.y-e.y)*i,this.z=e.z+(t.z-e.z)*i,this.w=e.w+(t.w-e.w)*i,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z&&e.w===this.w}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this.w=e[t+3],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e[t+3]=this.w,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this.z=e.getZ(t),this.w=e.getW(t),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}}class ey extends N{constructor(e=1,t=1,i={}){super(),this.isRenderTarget=!0,this.width=e,this.height=t,this.depth=1,this.scissor=new ex(0,0,e,t),this.scissorTest=!1,this.viewport=new ex(0,0,e,t);const n=new ev({width:e,height:t,depth:1},(i=Object.assign({generateMipmaps:!1,internalFormat:null,minFilter:1006,depthBuffer:!0,stencilBuffer:!1,resolveDepthBuffer:!0,resolveStencilBuffer:!0,depthTexture:null,samples:0,count:1},i)).mapping,i.wrapS,i.wrapT,i.magFilter,i.minFilter,i.format,i.type,i.anisotropy,i.colorSpace);n.flipY=!1,n.generateMipmaps=i.generateMipmaps,n.internalFormat=i.internalFormat,this.textures=[];const r=i.count;for(let e=0;e=0?1:-1,n=1-t*t;if(n>Number.EPSILON){let r=Math.sqrt(n),a=Math.atan2(r,t*i);e=Math.sin(e*a)/r,s=Math.sin(s*a)/r}let r=s*i;if(o=o*e+h*r,l=l*e+d*r,u=u*e+f*r,c=c*e+p*r,e===1-s){let e=1/Math.sqrt(o*o+l*l+u*u+c*c);o*=e,l*=e,u*=e,c*=e}}e[t]=o,e[t+1]=l,e[t+2]=u,e[t+3]=c}static multiplyQuaternionsFlat(e,t,i,n,r,a){let s=i[n],o=i[n+1],l=i[n+2],u=i[n+3],c=r[a],h=r[a+1],d=r[a+2],f=r[a+3];return e[t]=s*f+u*c+o*d-l*h,e[t+1]=o*f+u*h+l*c-s*d,e[t+2]=l*f+u*d+s*h-o*c,e[t+3]=u*f-s*c-o*h-l*d,e}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get w(){return this._w}set w(e){this._w=e,this._onChangeCallback()}set(e,t,i,n){return this._x=e,this._y=t,this._z=i,this._w=n,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(e){return this._x=e.x,this._y=e.y,this._z=e.z,this._w=e.w,this._onChangeCallback(),this}setFromEuler(e,t=!0){let i=e._x,n=e._y,r=e._z,a=e._order,s=Math.cos,o=Math.sin,l=s(i/2),u=s(n/2),c=s(r/2),h=o(i/2),d=o(n/2),f=o(r/2);switch(a){case"XYZ":this._x=h*u*c+l*d*f,this._y=l*d*c-h*u*f,this._z=l*u*f+h*d*c,this._w=l*u*c-h*d*f;break;case"YXZ":this._x=h*u*c+l*d*f,this._y=l*d*c-h*u*f,this._z=l*u*f-h*d*c,this._w=l*u*c+h*d*f;break;case"ZXY":this._x=h*u*c-l*d*f,this._y=l*d*c+h*u*f,this._z=l*u*f+h*d*c,this._w=l*u*c-h*d*f;break;case"ZYX":this._x=h*u*c-l*d*f,this._y=l*d*c+h*u*f,this._z=l*u*f-h*d*c,this._w=l*u*c+h*d*f;break;case"YZX":this._x=h*u*c+l*d*f,this._y=l*d*c+h*u*f,this._z=l*u*f-h*d*c,this._w=l*u*c-h*d*f;break;case"XZY":this._x=h*u*c-l*d*f,this._y=l*d*c-h*u*f,this._z=l*u*f+h*d*c,this._w=l*u*c+h*d*f;break;default:console.warn("THREE.Quaternion: .setFromEuler() encountered an unknown order: "+a)}return!0===t&&this._onChangeCallback(),this}setFromAxisAngle(e,t){let i=t/2,n=Math.sin(i);return this._x=e.x*n,this._y=e.y*n,this._z=e.z*n,this._w=Math.cos(i),this._onChangeCallback(),this}setFromRotationMatrix(e){let t=e.elements,i=t[0],n=t[4],r=t[8],a=t[1],s=t[5],o=t[9],l=t[2],u=t[6],c=t[10],h=i+s+c;if(h>0){let e=.5/Math.sqrt(h+1);this._w=.25/e,this._x=(u-o)*e,this._y=(r-l)*e,this._z=(a-n)*e}else if(i>s&&i>c){let e=2*Math.sqrt(1+i-s-c);this._w=(u-o)/e,this._x=.25*e,this._y=(n+a)/e,this._z=(r+l)/e}else if(s>c){let e=2*Math.sqrt(1+s-i-c);this._w=(r-l)/e,this._x=(n+a)/e,this._y=.25*e,this._z=(o+u)/e}else{let e=2*Math.sqrt(1+c-i-s);this._w=(a-n)/e,this._x=(r+l)/e,this._y=(o+u)/e,this._z=.25*e}return this._onChangeCallback(),this}setFromUnitVectors(e,t){let i=e.dot(t)+1;return iMath.abs(e.z)?(this._x=-e.y,this._y=e.x,this._z=0):(this._x=0,this._y=-e.z,this._z=e.y)):(this._x=e.y*t.z-e.z*t.y,this._y=e.z*t.x-e.x*t.z,this._z=e.x*t.y-e.y*t.x),this._w=i,this.normalize()}angleTo(e){return 2*Math.acos(Math.abs(G(this.dot(e),-1,1)))}rotateTowards(e,t){let i=this.angleTo(e);if(0===i)return this;let n=Math.min(1,t/i);return this.slerp(e,n),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(e){return this._x*e._x+this._y*e._y+this._z*e._z+this._w*e._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let e=this.length();return 0===e?(this._x=0,this._y=0,this._z=0,this._w=1):(e=1/e,this._x=this._x*e,this._y=this._y*e,this._z=this._z*e,this._w=this._w*e),this._onChangeCallback(),this}multiply(e){return this.multiplyQuaternions(this,e)}premultiply(e){return this.multiplyQuaternions(e,this)}multiplyQuaternions(e,t){let i=e._x,n=e._y,r=e._z,a=e._w,s=t._x,o=t._y,l=t._z,u=t._w;return this._x=i*u+a*s+n*l-r*o,this._y=n*u+a*o+r*s-i*l,this._z=r*u+a*l+i*o-n*s,this._w=a*u-i*s-n*o-r*l,this._onChangeCallback(),this}slerp(e,t){if(0===t)return this;if(1===t)return this.copy(e);let i=this._x,n=this._y,r=this._z,a=this._w,s=a*e._w+i*e._x+n*e._y+r*e._z;if(s<0?(this._w=-e._w,this._x=-e._x,this._y=-e._y,this._z=-e._z,s=-s):this.copy(e),s>=1)return this._w=a,this._x=i,this._y=n,this._z=r,this;let o=1-s*s;if(o<=Number.EPSILON){let e=1-t;return this._w=e*a+t*this._w,this._x=e*i+t*this._x,this._y=e*n+t*this._y,this._z=e*r+t*this._z,this.normalize(),this}let l=Math.sqrt(o),u=Math.atan2(l,s),c=Math.sin((1-t)*u)/l,h=Math.sin(t*u)/l;return this._w=a*c+this._w*h,this._x=i*c+this._x*h,this._y=n*c+this._y*h,this._z=r*c+this._z*h,this._onChangeCallback(),this}slerpQuaternions(e,t,i){return this.copy(e).slerp(t,i)}random(){let e=2*Math.PI*Math.random(),t=2*Math.PI*Math.random(),i=Math.random(),n=Math.sqrt(1-i),r=Math.sqrt(i);return this.set(n*Math.sin(e),n*Math.cos(e),r*Math.sin(t),r*Math.cos(t))}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._w===this._w}fromArray(e,t=0){return this._x=e[t],this._y=e[t+1],this._z=e[t+2],this._w=e[t+3],this._onChangeCallback(),this}toArray(e=[],t=0){return e[t]=this._x,e[t+1]=this._y,e[t+2]=this._z,e[t+3]=this._w,e}fromBufferAttribute(e,t){return this._x=e.getX(t),this._y=e.getY(t),this._z=e.getZ(t),this._w=e.getW(t),this._onChangeCallback(),this}toJSON(){return this.toArray()}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}}class eE{constructor(e=0,t=0,i=0){eE.prototype.isVector3=!0,this.x=e,this.y=t,this.z=i}set(e,t,i){return void 0===i&&(i=this.z),this.x=e,this.y=t,this.z=i,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;default:throw Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this}multiplyVectors(e,t){return this.x=e.x*t.x,this.y=e.y*t.y,this.z=e.z*t.z,this}applyEuler(e){return this.applyQuaternion(eC.setFromEuler(e))}applyAxisAngle(e,t){return this.applyQuaternion(eC.setFromAxisAngle(e,t))}applyMatrix3(e){let t=this.x,i=this.y,n=this.z,r=e.elements;return this.x=r[0]*t+r[3]*i+r[6]*n,this.y=r[1]*t+r[4]*i+r[7]*n,this.z=r[2]*t+r[5]*i+r[8]*n,this}applyNormalMatrix(e){return this.applyMatrix3(e).normalize()}applyMatrix4(e){let t=this.x,i=this.y,n=this.z,r=e.elements,a=1/(r[3]*t+r[7]*i+r[11]*n+r[15]);return this.x=(r[0]*t+r[4]*i+r[8]*n+r[12])*a,this.y=(r[1]*t+r[5]*i+r[9]*n+r[13])*a,this.z=(r[2]*t+r[6]*i+r[10]*n+r[14])*a,this}applyQuaternion(e){let t=this.x,i=this.y,n=this.z,r=e.x,a=e.y,s=e.z,o=e.w,l=2*(a*n-s*i),u=2*(s*t-r*n),c=2*(r*i-a*t);return this.x=t+o*l+a*c-s*u,this.y=i+o*u+s*l-r*c,this.z=n+o*c+r*u-a*l,this}project(e){return this.applyMatrix4(e.matrixWorldInverse).applyMatrix4(e.projectionMatrix)}unproject(e){return this.applyMatrix4(e.projectionMatrixInverse).applyMatrix4(e.matrixWorld)}transformDirection(e){let t=this.x,i=this.y,n=this.z,r=e.elements;return this.x=r[0]*t+r[4]*i+r[8]*n,this.y=r[1]*t+r[5]*i+r[9]*n,this.z=r[2]*t+r[6]*i+r[10]*n,this.normalize()}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this}divideScalar(e){return this.multiplyScalar(1/e)}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this}clamp(e,t){return this.x=G(this.x,e.x,t.x),this.y=G(this.y,e.y,t.y),this.z=G(this.z,e.z,t.z),this}clampScalar(e,t){return this.x=G(this.x,e,t),this.y=G(this.y,e,t),this.z=G(this.z,e,t),this}clampLength(e,t){let i=this.length();return this.divideScalar(i||1).multiplyScalar(G(i,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this}lerpVectors(e,t,i){return this.x=e.x+(t.x-e.x)*i,this.y=e.y+(t.y-e.y)*i,this.z=e.z+(t.z-e.z)*i,this}cross(e){return this.crossVectors(this,e)}crossVectors(e,t){let i=e.x,n=e.y,r=e.z,a=t.x,s=t.y,o=t.z;return this.x=n*o-r*s,this.y=r*a-i*o,this.z=i*s-n*a,this}projectOnVector(e){let t=e.lengthSq();if(0===t)return this.set(0,0,0);let i=e.dot(this)/t;return this.copy(e).multiplyScalar(i)}projectOnPlane(e){return e_.copy(this).projectOnVector(e),this.sub(e_)}reflect(e){return this.sub(e_.copy(e).multiplyScalar(2*this.dot(e)))}angleTo(e){let t=Math.sqrt(this.lengthSq()*e.lengthSq());return 0===t?Math.PI/2:Math.acos(G(this.dot(e)/t,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let t=this.x-e.x,i=this.y-e.y,n=this.z-e.z;return t*t+i*i+n*n}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)+Math.abs(this.z-e.z)}setFromSpherical(e){return this.setFromSphericalCoords(e.radius,e.phi,e.theta)}setFromSphericalCoords(e,t,i){let n=Math.sin(t)*e;return this.x=n*Math.sin(i),this.y=Math.cos(t)*e,this.z=n*Math.cos(i),this}setFromCylindrical(e){return this.setFromCylindricalCoords(e.radius,e.theta,e.y)}setFromCylindricalCoords(e,t,i){return this.x=e*Math.sin(t),this.y=i,this.z=e*Math.cos(t),this}setFromMatrixPosition(e){let t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this}setFromMatrixScale(e){let t=this.setFromMatrixColumn(e,0).length(),i=this.setFromMatrixColumn(e,1).length(),n=this.setFromMatrixColumn(e,2).length();return this.x=t,this.y=i,this.z=n,this}setFromMatrixColumn(e,t){return this.fromArray(e.elements,4*t)}setFromMatrix3Column(e,t){return this.fromArray(e.elements,3*t)}setFromEuler(e){return this.x=e._x,this.y=e._y,this.z=e._z,this}setFromColor(e){return this.x=e.r,this.y=e.g,this.z=e.b,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this.z=e.getZ(t),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){let e=Math.random()*Math.PI*2,t=2*Math.random()-1,i=Math.sqrt(1-t*t);return this.x=i*Math.cos(e),this.y=t,this.z=i*Math.sin(e),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}}let e_=new eE,eC=new eT;class eR{constructor(e=new eE(Infinity,Infinity,Infinity),t=new eE(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=e,this.max=t}set(e,t){return this.min.copy(e),this.max.copy(t),this}setFromArray(e){this.makeEmpty();for(let t=0,i=e.length;t=this.min.x&&e.x<=this.max.x&&e.y>=this.min.y&&e.y<=this.max.y&&e.z>=this.min.z&&e.z<=this.max.z}containsBox(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y&&this.min.z<=e.min.z&&e.max.z<=this.max.z}getParameter(e,t){return t.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y),(e.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(e){return e.max.x>=this.min.x&&e.min.x<=this.max.x&&e.max.y>=this.min.y&&e.min.y<=this.max.y&&e.max.z>=this.min.z&&e.min.z<=this.max.z}intersectsSphere(e){return this.clampPoint(e.center,eD),eD.distanceToSquared(e.center)<=e.radius*e.radius}intersectsPlane(e){let t,i;return e.normal.x>0?(t=e.normal.x*this.min.x,i=e.normal.x*this.max.x):(t=e.normal.x*this.max.x,i=e.normal.x*this.min.x),e.normal.y>0?(t+=e.normal.y*this.min.y,i+=e.normal.y*this.max.y):(t+=e.normal.y*this.max.y,i+=e.normal.y*this.min.y),e.normal.z>0?(t+=e.normal.z*this.min.z,i+=e.normal.z*this.max.z):(t+=e.normal.z*this.max.z,i+=e.normal.z*this.min.z),t<=-e.constant&&i>=-e.constant}intersectsTriangle(e){if(this.isEmpty())return!1;this.getCenter(ez),ek.subVectors(this.max,ez),eL.subVectors(e.a,ez),eB.subVectors(e.b,ez),eU.subVectors(e.c,ez),eN.subVectors(eB,eL),eF.subVectors(eU,eB),eO.subVectors(eL,eU);let t=[0,-eN.z,eN.y,0,-eF.z,eF.y,0,-eO.z,eO.y,eN.z,0,-eN.x,eF.z,0,-eF.x,eO.z,0,-eO.x,-eN.y,eN.x,0,-eF.y,eF.x,0,-eO.y,eO.x,0];return!!eV(t,eL,eB,eU,ek)&&!!eV(t=[1,0,0,0,1,0,0,0,1],eL,eB,eU,ek)&&(eH.crossVectors(eN,eF),eV(t=[eH.x,eH.y,eH.z],eL,eB,eU,ek))}clampPoint(e,t){return t.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return this.clampPoint(e,eD).distanceTo(e)}getBoundingSphere(e){return this.isEmpty()?e.makeEmpty():(this.getCenter(e.center),e.radius=.5*this.getSize(eD).length()),e}intersect(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this}union(e){return this.min.min(e.min),this.max.max(e.max),this}applyMatrix4(e){return this.isEmpty()||(eP[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(e),eP[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(e),eP[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(e),eP[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(e),eP[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(e),eP[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(e),eP[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(e),eP[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(e),this.setFromPoints(eP)),this}translate(e){return this.min.add(e),this.max.add(e),this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}}let eP=[new eE,new eE,new eE,new eE,new eE,new eE,new eE,new eE],eD=new eE,eI=new eR,eL=new eE,eB=new eE,eU=new eE,eN=new eE,eF=new eE,eO=new eE,ez=new eE,ek=new eE,eH=new eE,eG=new eE;function eV(e,t,i,n,r){for(let a=0,s=e.length-3;a<=s;a+=3){eG.fromArray(e,a);let s=r.x*Math.abs(eG.x)+r.y*Math.abs(eG.y)+r.z*Math.abs(eG.z),o=t.dot(eG),l=i.dot(eG),u=n.dot(eG);if(Math.max(-Math.max(o,l,u),Math.min(o,l,u))>s)return!1}return!0}let eW=new eR,ej=new eE,eX=new eE;class eY{constructor(e=new eE,t=-1){this.isSphere=!0,this.center=e,this.radius=t}set(e,t){return this.center.copy(e),this.radius=t,this}setFromPoints(e,t){let i=this.center;void 0!==t?i.copy(t):eW.setFromPoints(e).getCenter(i);let n=0;for(let t=0,r=e.length;tthis.radius*this.radius&&(t.sub(this.center).normalize(),t.multiplyScalar(this.radius).add(this.center)),t}getBoundingBox(e){return this.isEmpty()?e.makeEmpty():(e.set(this.center,this.center),e.expandByScalar(this.radius)),e}applyMatrix4(e){return this.center.applyMatrix4(e),this.radius=this.radius*e.getMaxScaleOnAxis(),this}translate(e){return this.center.add(e),this}expandByPoint(e){if(this.isEmpty())return this.center.copy(e),this.radius=0,this;ej.subVectors(e,this.center);let t=ej.lengthSq();if(t>this.radius*this.radius){let e=Math.sqrt(t),i=(e-this.radius)*.5;this.center.addScaledVector(ej,i/e),this.radius+=i}return this}union(e){return e.isEmpty()||(this.isEmpty()?this.copy(e):!0===this.center.equals(e.center)?this.radius=Math.max(this.radius,e.radius):(eX.subVectors(e.center,this.center).setLength(e.radius),this.expandByPoint(ej.copy(e.center).add(eX)),this.expandByPoint(ej.copy(e.center).sub(eX)))),this}equals(e){return e.center.equals(this.center)&&e.radius===this.radius}clone(){return new this.constructor().copy(this)}}let eQ=new eE,eq=new eE,eK=new eE,eZ=new eE,eJ=new eE,e$=new eE,e0=new eE;class e1{constructor(e=new eE,t=new eE(0,0,-1)){this.origin=e,this.direction=t}set(e,t){return this.origin.copy(e),this.direction.copy(t),this}copy(e){return this.origin.copy(e.origin),this.direction.copy(e.direction),this}at(e,t){return t.copy(this.origin).addScaledVector(this.direction,e)}lookAt(e){return this.direction.copy(e).sub(this.origin).normalize(),this}recast(e){return this.origin.copy(this.at(e,eQ)),this}closestPointToPoint(e,t){t.subVectors(e,this.origin);let i=t.dot(this.direction);return i<0?t.copy(this.origin):t.copy(this.origin).addScaledVector(this.direction,i)}distanceToPoint(e){return Math.sqrt(this.distanceSqToPoint(e))}distanceSqToPoint(e){let t=eQ.subVectors(e,this.origin).dot(this.direction);return t<0?this.origin.distanceToSquared(e):(eQ.copy(this.origin).addScaledVector(this.direction,t),eQ.distanceToSquared(e))}distanceSqToSegment(e,t,i,n){let r,a,s,o;eq.copy(e).add(t).multiplyScalar(.5),eK.copy(t).sub(e).normalize(),eZ.copy(this.origin).sub(eq);let l=.5*e.distanceTo(t),u=-this.direction.dot(eK),c=eZ.dot(this.direction),h=-eZ.dot(eK),d=eZ.lengthSq(),f=Math.abs(1-u*u);if(f>0)if(r=u*h-c,a=u*c-h,o=l*f,r>=0)if(a>=-o)if(a<=o){let e=1/f;r*=e,a*=e,s=r*(r+u*a+2*c)+a*(u*r+a+2*h)+d}else s=-(r=Math.max(0,-(u*(a=l)+c)))*r+a*(a+2*h)+d;else s=-(r=Math.max(0,-(u*(a=-l)+c)))*r+a*(a+2*h)+d;else a<=-o?(a=(r=Math.max(0,-(-u*l+c)))>0?-l:Math.min(Math.max(-l,-h),l),s=-r*r+a*(a+2*h)+d):a<=o?(r=0,s=(a=Math.min(Math.max(-l,-h),l))*(a+2*h)+d):(a=(r=Math.max(0,-(u*l+c)))>0?l:Math.min(Math.max(-l,-h),l),s=-r*r+a*(a+2*h)+d);else a=u>0?-l:l,s=-(r=Math.max(0,-(u*a+c)))*r+a*(a+2*h)+d;return i&&i.copy(this.origin).addScaledVector(this.direction,r),n&&n.copy(eq).addScaledVector(eK,a),s}intersectSphere(e,t){eQ.subVectors(e.center,this.origin);let i=eQ.dot(this.direction),n=eQ.dot(eQ)-i*i,r=e.radius*e.radius;if(n>r)return null;let a=Math.sqrt(r-n),s=i-a,o=i+a;return o<0?null:s<0?this.at(o,t):this.at(s,t)}intersectsSphere(e){return this.distanceSqToPoint(e.center)<=e.radius*e.radius}distanceToPlane(e){let t=e.normal.dot(this.direction);if(0===t)return 0===e.distanceToPoint(this.origin)?0:null;let i=-(this.origin.dot(e.normal)+e.constant)/t;return i>=0?i:null}intersectPlane(e,t){let i=this.distanceToPlane(e);return null===i?null:this.at(i,t)}intersectsPlane(e){let t=e.distanceToPoint(this.origin);return!!(0===t||e.normal.dot(this.direction)*t<0)}intersectBox(e,t){let i,n,r,a,s,o,l=1/this.direction.x,u=1/this.direction.y,c=1/this.direction.z,h=this.origin;return(l>=0?(i=(e.min.x-h.x)*l,n=(e.max.x-h.x)*l):(i=(e.max.x-h.x)*l,n=(e.min.x-h.x)*l),u>=0?(r=(e.min.y-h.y)*u,a=(e.max.y-h.y)*u):(r=(e.max.y-h.y)*u,a=(e.min.y-h.y)*u),i>a||r>n||((r>i||isNaN(i))&&(i=r),(a=0?(s=(e.min.z-h.z)*c,o=(e.max.z-h.z)*c):(s=(e.max.z-h.z)*c,o=(e.min.z-h.z)*c),i>o||s>n||((s>i||i!=i)&&(i=s),(o=0?i:n,t)}intersectsBox(e){return null!==this.intersectBox(e,eQ)}intersectTriangle(e,t,i,n,r){let a;eJ.subVectors(t,e),e$.subVectors(i,e),e0.crossVectors(eJ,e$);let s=this.direction.dot(e0);if(s>0){if(n)return null;a=1}else{if(!(s<0))return null;a=-1,s=-s}eZ.subVectors(this.origin,e);let o=a*this.direction.dot(e$.crossVectors(eZ,e$));if(o<0)return null;let l=a*this.direction.dot(eJ.cross(eZ));if(l<0||o+l>s)return null;let u=-a*eZ.dot(e0);return u<0?null:this.at(u/s,r)}applyMatrix4(e){return this.origin.applyMatrix4(e),this.direction.transformDirection(e),this}equals(e){return e.origin.equals(this.origin)&&e.direction.equals(this.direction)}clone(){return new this.constructor().copy(this)}}class e2{constructor(e,t,i,n,r,a,s,o,l,u,c,h,d,f,p,m){e2.prototype.isMatrix4=!0,this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],void 0!==e&&this.set(e,t,i,n,r,a,s,o,l,u,c,h,d,f,p,m)}set(e,t,i,n,r,a,s,o,l,u,c,h,d,f,p,m){let g=this.elements;return g[0]=e,g[4]=t,g[8]=i,g[12]=n,g[1]=r,g[5]=a,g[9]=s,g[13]=o,g[2]=l,g[6]=u,g[10]=c,g[14]=h,g[3]=d,g[7]=f,g[11]=p,g[15]=m,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return new e2().fromArray(this.elements)}copy(e){let t=this.elements,i=e.elements;return t[0]=i[0],t[1]=i[1],t[2]=i[2],t[3]=i[3],t[4]=i[4],t[5]=i[5],t[6]=i[6],t[7]=i[7],t[8]=i[8],t[9]=i[9],t[10]=i[10],t[11]=i[11],t[12]=i[12],t[13]=i[13],t[14]=i[14],t[15]=i[15],this}copyPosition(e){let t=this.elements,i=e.elements;return t[12]=i[12],t[13]=i[13],t[14]=i[14],this}setFromMatrix3(e){let t=e.elements;return this.set(t[0],t[3],t[6],0,t[1],t[4],t[7],0,t[2],t[5],t[8],0,0,0,0,1),this}extractBasis(e,t,i){return e.setFromMatrixColumn(this,0),t.setFromMatrixColumn(this,1),i.setFromMatrixColumn(this,2),this}makeBasis(e,t,i){return this.set(e.x,t.x,i.x,0,e.y,t.y,i.y,0,e.z,t.z,i.z,0,0,0,0,1),this}extractRotation(e){let t=this.elements,i=e.elements,n=1/e3.setFromMatrixColumn(e,0).length(),r=1/e3.setFromMatrixColumn(e,1).length(),a=1/e3.setFromMatrixColumn(e,2).length();return t[0]=i[0]*n,t[1]=i[1]*n,t[2]=i[2]*n,t[3]=0,t[4]=i[4]*r,t[5]=i[5]*r,t[6]=i[6]*r,t[7]=0,t[8]=i[8]*a,t[9]=i[9]*a,t[10]=i[10]*a,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,this}makeRotationFromEuler(e){let t=this.elements,i=e.x,n=e.y,r=e.z,a=Math.cos(i),s=Math.sin(i),o=Math.cos(n),l=Math.sin(n),u=Math.cos(r),c=Math.sin(r);if("XYZ"===e.order){let e=a*u,i=a*c,n=s*u,r=s*c;t[0]=o*u,t[4]=-o*c,t[8]=l,t[1]=i+n*l,t[5]=e-r*l,t[9]=-s*o,t[2]=r-e*l,t[6]=n+i*l,t[10]=a*o}else if("YXZ"===e.order){let e=o*u,i=o*c,n=l*u,r=l*c;t[0]=e+r*s,t[4]=n*s-i,t[8]=a*l,t[1]=a*c,t[5]=a*u,t[9]=-s,t[2]=i*s-n,t[6]=r+e*s,t[10]=a*o}else if("ZXY"===e.order){let e=o*u,i=o*c,n=l*u,r=l*c;t[0]=e-r*s,t[4]=-a*c,t[8]=n+i*s,t[1]=i+n*s,t[5]=a*u,t[9]=r-e*s,t[2]=-a*l,t[6]=s,t[10]=a*o}else if("ZYX"===e.order){let e=a*u,i=a*c,n=s*u,r=s*c;t[0]=o*u,t[4]=n*l-i,t[8]=e*l+r,t[1]=o*c,t[5]=r*l+e,t[9]=i*l-n,t[2]=-l,t[6]=s*o,t[10]=a*o}else if("YZX"===e.order){let e=a*o,i=a*l,n=s*o,r=s*l;t[0]=o*u,t[4]=r-e*c,t[8]=n*c+i,t[1]=c,t[5]=a*u,t[9]=-s*u,t[2]=-l*u,t[6]=i*c+n,t[10]=e-r*c}else if("XZY"===e.order){let e=a*o,i=a*l,n=s*o,r=s*l;t[0]=o*u,t[4]=-c,t[8]=l*u,t[1]=e*c+r,t[5]=a*u,t[9]=i*c-n,t[2]=n*c-i,t[6]=s*u,t[10]=r*c+e}return t[3]=0,t[7]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,this}makeRotationFromQuaternion(e){return this.compose(e5,e,e6)}lookAt(e,t,i){let n=this.elements;return e7.subVectors(e,t),0===e7.lengthSq()&&(e7.z=1),e7.normalize(),e8.crossVectors(i,e7),0===e8.lengthSq()&&(1===Math.abs(i.z)?e7.x+=1e-4:e7.z+=1e-4,e7.normalize(),e8.crossVectors(i,e7)),e8.normalize(),e9.crossVectors(e7,e8),n[0]=e8.x,n[4]=e9.x,n[8]=e7.x,n[1]=e8.y,n[5]=e9.y,n[9]=e7.y,n[2]=e8.z,n[6]=e9.z,n[10]=e7.z,this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){let i=e.elements,n=t.elements,r=this.elements,a=i[0],s=i[4],o=i[8],l=i[12],u=i[1],c=i[5],h=i[9],d=i[13],f=i[2],p=i[6],m=i[10],g=i[14],v=i[3],x=i[7],y=i[11],S=i[15],A=n[0],M=n[4],b=n[8],w=n[12],T=n[1],E=n[5],_=n[9],C=n[13],R=n[2],P=n[6],D=n[10],I=n[14],L=n[3],B=n[7],U=n[11],N=n[15];return r[0]=a*A+s*T+o*R+l*L,r[4]=a*M+s*E+o*P+l*B,r[8]=a*b+s*_+o*D+l*U,r[12]=a*w+s*C+o*I+l*N,r[1]=u*A+c*T+h*R+d*L,r[5]=u*M+c*E+h*P+d*B,r[9]=u*b+c*_+h*D+d*U,r[13]=u*w+c*C+h*I+d*N,r[2]=f*A+p*T+m*R+g*L,r[6]=f*M+p*E+m*P+g*B,r[10]=f*b+p*_+m*D+g*U,r[14]=f*w+p*C+m*I+g*N,r[3]=v*A+x*T+y*R+S*L,r[7]=v*M+x*E+y*P+S*B,r[11]=v*b+x*_+y*D+S*U,r[15]=v*w+x*C+y*I+S*N,this}multiplyScalar(e){let t=this.elements;return t[0]*=e,t[4]*=e,t[8]*=e,t[12]*=e,t[1]*=e,t[5]*=e,t[9]*=e,t[13]*=e,t[2]*=e,t[6]*=e,t[10]*=e,t[14]*=e,t[3]*=e,t[7]*=e,t[11]*=e,t[15]*=e,this}determinant(){let e=this.elements,t=e[0],i=e[4],n=e[8],r=e[12],a=e[1],s=e[5],o=e[9],l=e[13],u=e[2],c=e[6],h=e[10],d=e[14];return e[3]*(r*o*c-n*l*c-r*s*h+i*l*h+n*s*d-i*o*d)+e[7]*(t*o*d-t*l*h+r*a*h-n*a*d+n*l*u-r*o*u)+e[11]*(t*l*c-t*s*d-r*a*c+i*a*d+r*s*u-i*l*u)+e[15]*(-n*s*u-t*o*c+t*s*h+n*a*c-i*a*h+i*o*u)}transpose(){let e,t=this.elements;return e=t[1],t[1]=t[4],t[4]=e,e=t[2],t[2]=t[8],t[8]=e,e=t[6],t[6]=t[9],t[9]=e,e=t[3],t[3]=t[12],t[12]=e,e=t[7],t[7]=t[13],t[13]=e,e=t[11],t[11]=t[14],t[14]=e,this}setPosition(e,t,i){let n=this.elements;return e.isVector3?(n[12]=e.x,n[13]=e.y,n[14]=e.z):(n[12]=e,n[13]=t,n[14]=i),this}invert(){let e=this.elements,t=e[0],i=e[1],n=e[2],r=e[3],a=e[4],s=e[5],o=e[6],l=e[7],u=e[8],c=e[9],h=e[10],d=e[11],f=e[12],p=e[13],m=e[14],g=e[15],v=c*m*l-p*h*l+p*o*d-s*m*d-c*o*g+s*h*g,x=f*h*l-u*m*l-f*o*d+a*m*d+u*o*g-a*h*g,y=u*p*l-f*c*l+f*s*d-a*p*d-u*s*g+a*c*g,S=f*c*o-u*p*o-f*s*h+a*p*h+u*s*m-a*c*m,A=t*v+i*x+n*y+r*S;if(0===A)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);let M=1/A;return e[0]=v*M,e[1]=(p*h*r-c*m*r-p*n*d+i*m*d+c*n*g-i*h*g)*M,e[2]=(s*m*r-p*o*r+p*n*l-i*m*l-s*n*g+i*o*g)*M,e[3]=(c*o*r-s*h*r-c*n*l+i*h*l+s*n*d-i*o*d)*M,e[4]=x*M,e[5]=(u*m*r-f*h*r+f*n*d-t*m*d-u*n*g+t*h*g)*M,e[6]=(f*o*r-a*m*r-f*n*l+t*m*l+a*n*g-t*o*g)*M,e[7]=(a*h*r-u*o*r+u*n*l-t*h*l-a*n*d+t*o*d)*M,e[8]=y*M,e[9]=(f*c*r-u*p*r-f*i*d+t*p*d+u*i*g-t*c*g)*M,e[10]=(a*p*r-f*s*r+f*i*l-t*p*l-a*i*g+t*s*g)*M,e[11]=(u*s*r-a*c*r-u*i*l+t*c*l+a*i*d-t*s*d)*M,e[12]=S*M,e[13]=(u*p*n-f*c*n+f*i*h-t*p*h-u*i*m+t*c*m)*M,e[14]=(f*s*n-a*p*n-f*i*o+t*p*o+a*i*m-t*s*m)*M,e[15]=(a*c*n-u*s*n+u*i*o-t*c*o-a*i*h+t*s*h)*M,this}scale(e){let t=this.elements,i=e.x,n=e.y,r=e.z;return t[0]*=i,t[4]*=n,t[8]*=r,t[1]*=i,t[5]*=n,t[9]*=r,t[2]*=i,t[6]*=n,t[10]*=r,t[3]*=i,t[7]*=n,t[11]*=r,this}getMaxScaleOnAxis(){let e=this.elements;return Math.sqrt(Math.max(e[0]*e[0]+e[1]*e[1]+e[2]*e[2],e[4]*e[4]+e[5]*e[5]+e[6]*e[6],e[8]*e[8]+e[9]*e[9]+e[10]*e[10]))}makeTranslation(e,t,i){return e.isVector3?this.set(1,0,0,e.x,0,1,0,e.y,0,0,1,e.z,0,0,0,1):this.set(1,0,0,e,0,1,0,t,0,0,1,i,0,0,0,1),this}makeRotationX(e){let t=Math.cos(e),i=Math.sin(e);return this.set(1,0,0,0,0,t,-i,0,0,i,t,0,0,0,0,1),this}makeRotationY(e){let t=Math.cos(e),i=Math.sin(e);return this.set(t,0,i,0,0,1,0,0,-i,0,t,0,0,0,0,1),this}makeRotationZ(e){let t=Math.cos(e),i=Math.sin(e);return this.set(t,-i,0,0,i,t,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(e,t){let i=Math.cos(t),n=Math.sin(t),r=1-i,a=e.x,s=e.y,o=e.z,l=r*a,u=r*s;return this.set(l*a+i,l*s-n*o,l*o+n*s,0,l*s+n*o,u*s+i,u*o-n*a,0,l*o-n*s,u*o+n*a,r*o*o+i,0,0,0,0,1),this}makeScale(e,t,i){return this.set(e,0,0,0,0,t,0,0,0,0,i,0,0,0,0,1),this}makeShear(e,t,i,n,r,a){return this.set(1,i,r,0,e,1,a,0,t,n,1,0,0,0,0,1),this}compose(e,t,i){let n=this.elements,r=t._x,a=t._y,s=t._z,o=t._w,l=r+r,u=a+a,c=s+s,h=r*l,d=r*u,f=r*c,p=a*u,m=a*c,g=s*c,v=o*l,x=o*u,y=o*c,S=i.x,A=i.y,M=i.z;return n[0]=(1-(p+g))*S,n[1]=(d+y)*S,n[2]=(f-x)*S,n[3]=0,n[4]=(d-y)*A,n[5]=(1-(h+g))*A,n[6]=(m+v)*A,n[7]=0,n[8]=(f+x)*M,n[9]=(m-v)*M,n[10]=(1-(h+p))*M,n[11]=0,n[12]=e.x,n[13]=e.y,n[14]=e.z,n[15]=1,this}decompose(e,t,i){let n=this.elements,r=e3.set(n[0],n[1],n[2]).length(),a=e3.set(n[4],n[5],n[6]).length(),s=e3.set(n[8],n[9],n[10]).length();0>this.determinant()&&(r=-r),e.x=n[12],e.y=n[13],e.z=n[14],e4.copy(this);let o=1/r,l=1/a,u=1/s;return e4.elements[0]*=o,e4.elements[1]*=o,e4.elements[2]*=o,e4.elements[4]*=l,e4.elements[5]*=l,e4.elements[6]*=l,e4.elements[8]*=u,e4.elements[9]*=u,e4.elements[10]*=u,t.setFromRotationMatrix(e4),i.x=r,i.y=a,i.z=s,this}makePerspective(e,t,i,n,r,a,s=2e3){let o,l,u=this.elements;if(2e3===s)o=-(a+r)/(a-r),l=-2*a*r/(a-r);else if(2001===s)o=-a/(a-r),l=-a*r/(a-r);else throw Error("THREE.Matrix4.makePerspective(): Invalid coordinate system: "+s);return u[0]=2*r/(t-e),u[4]=0,u[8]=(t+e)/(t-e),u[12]=0,u[1]=0,u[5]=2*r/(i-n),u[9]=(i+n)/(i-n),u[13]=0,u[2]=0,u[6]=0,u[10]=o,u[14]=l,u[3]=0,u[7]=0,u[11]=-1,u[15]=0,this}makeOrthographic(e,t,i,n,r,a,s=2e3){let o,l,u=this.elements,c=1/(t-e),h=1/(i-n),d=1/(a-r);if(2e3===s)o=(a+r)*d,l=-2*d;else if(2001===s)o=r*d,l=-1*d;else throw Error("THREE.Matrix4.makeOrthographic(): Invalid coordinate system: "+s);return u[0]=2*c,u[4]=0,u[8]=0,u[12]=-((t+e)*c),u[1]=0,u[5]=2*h,u[9]=0,u[13]=-((i+n)*h),u[2]=0,u[6]=0,u[10]=l,u[14]=-o,u[3]=0,u[7]=0,u[11]=0,u[15]=1,this}equals(e){let t=this.elements,i=e.elements;for(let e=0;e<16;e++)if(t[e]!==i[e])return!1;return!0}fromArray(e,t=0){for(let i=0;i<16;i++)this.elements[i]=e[i+t];return this}toArray(e=[],t=0){let i=this.elements;return e[t]=i[0],e[t+1]=i[1],e[t+2]=i[2],e[t+3]=i[3],e[t+4]=i[4],e[t+5]=i[5],e[t+6]=i[6],e[t+7]=i[7],e[t+8]=i[8],e[t+9]=i[9],e[t+10]=i[10],e[t+11]=i[11],e[t+12]=i[12],e[t+13]=i[13],e[t+14]=i[14],e[t+15]=i[15],e}}let e3=new eE,e4=new e2,e5=new eE(0,0,0),e6=new eE(1,1,1),e8=new eE,e9=new eE,e7=new eE,te=new e2,tt=new eT;class ti{constructor(e=0,t=0,i=0,n=ti.DEFAULT_ORDER){this.isEuler=!0,this._x=e,this._y=t,this._z=i,this._order=n}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get order(){return this._order}set order(e){this._order=e,this._onChangeCallback()}set(e,t,i,n=this._order){return this._x=e,this._y=t,this._z=i,this._order=n,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(e){return this._x=e._x,this._y=e._y,this._z=e._z,this._order=e._order,this._onChangeCallback(),this}setFromRotationMatrix(e,t=this._order,i=!0){let n=e.elements,r=n[0],a=n[4],s=n[8],o=n[1],l=n[5],u=n[9],c=n[2],h=n[6],d=n[10];switch(t){case"XYZ":this._y=Math.asin(G(s,-1,1)),.9999999>Math.abs(s)?(this._x=Math.atan2(-u,d),this._z=Math.atan2(-a,r)):(this._x=Math.atan2(h,l),this._z=0);break;case"YXZ":this._x=Math.asin(-G(u,-1,1)),.9999999>Math.abs(u)?(this._y=Math.atan2(s,d),this._z=Math.atan2(o,l)):(this._y=Math.atan2(-c,r),this._z=0);break;case"ZXY":this._x=Math.asin(G(h,-1,1)),.9999999>Math.abs(h)?(this._y=Math.atan2(-c,d),this._z=Math.atan2(-a,l)):(this._y=0,this._z=Math.atan2(o,r));break;case"ZYX":this._y=Math.asin(-G(c,-1,1)),.9999999>Math.abs(c)?(this._x=Math.atan2(h,d),this._z=Math.atan2(o,r)):(this._x=0,this._z=Math.atan2(-a,l));break;case"YZX":this._z=Math.asin(G(o,-1,1)),.9999999>Math.abs(o)?(this._x=Math.atan2(-u,l),this._y=Math.atan2(-c,r)):(this._x=0,this._y=Math.atan2(s,d));break;case"XZY":this._z=Math.asin(-G(a,-1,1)),.9999999>Math.abs(a)?(this._x=Math.atan2(h,l),this._y=Math.atan2(s,r)):(this._x=Math.atan2(-u,d),this._y=0);break;default:console.warn("THREE.Euler: .setFromRotationMatrix() encountered an unknown order: "+t)}return this._order=t,!0===i&&this._onChangeCallback(),this}setFromQuaternion(e,t,i){return te.makeRotationFromQuaternion(e),this.setFromRotationMatrix(te,t,i)}setFromVector3(e,t=this._order){return this.set(e.x,e.y,e.z,t)}reorder(e){return tt.setFromEuler(this),this.setFromQuaternion(tt,e)}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._order===this._order}fromArray(e){return this._x=e[0],this._y=e[1],this._z=e[2],void 0!==e[3]&&(this._order=e[3]),this._onChangeCallback(),this}toArray(e=[],t=0){return e[t]=this._x,e[t+1]=this._y,e[t+2]=this._z,e[t+3]=this._order,e}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._order}}ti.DEFAULT_ORDER="XYZ";class tn{constructor(){this.mask=1}set(e){this.mask=1<>>0}enable(e){this.mask|=1<1){for(let e=0;e1){for(let e=0;e0&&(n.userData=this.userData),n.layers=this.layers.mask,n.matrix=this.matrix.toArray(),n.up=this.up.toArray(),!1===this.matrixAutoUpdate&&(n.matrixAutoUpdate=!1),this.isInstancedMesh&&(n.type="InstancedMesh",n.count=this.count,n.instanceMatrix=this.instanceMatrix.toJSON(),null!==this.instanceColor&&(n.instanceColor=this.instanceColor.toJSON())),this.isBatchedMesh&&(n.type="BatchedMesh",n.perObjectFrustumCulled=this.perObjectFrustumCulled,n.sortObjects=this.sortObjects,n.drawRanges=this._drawRanges,n.reservedRanges=this._reservedRanges,n.visibility=this._visibility,n.active=this._active,n.bounds=this._bounds.map(e=>({boxInitialized:e.boxInitialized,boxMin:e.box.min.toArray(),boxMax:e.box.max.toArray(),sphereInitialized:e.sphereInitialized,sphereRadius:e.sphere.radius,sphereCenter:e.sphere.center.toArray()})),n.maxInstanceCount=this._maxInstanceCount,n.maxVertexCount=this._maxVertexCount,n.maxIndexCount=this._maxIndexCount,n.geometryInitialized=this._geometryInitialized,n.geometryCount=this._geometryCount,n.matricesTexture=this._matricesTexture.toJSON(e),null!==this._colorsTexture&&(n.colorsTexture=this._colorsTexture.toJSON(e)),null!==this.boundingSphere&&(n.boundingSphere={center:n.boundingSphere.center.toArray(),radius:n.boundingSphere.radius}),null!==this.boundingBox&&(n.boundingBox={min:n.boundingBox.min.toArray(),max:n.boundingBox.max.toArray()})),this.isScene)this.background&&(this.background.isColor?n.background=this.background.toJSON():this.background.isTexture&&(n.background=this.background.toJSON(e).uuid)),this.environment&&this.environment.isTexture&&!0!==this.environment.isRenderTargetTexture&&(n.environment=this.environment.toJSON(e).uuid);else if(this.isMesh||this.isLine||this.isPoints){n.geometry=r(e.geometries,this.geometry);let t=this.geometry.parameters;if(void 0!==t&&void 0!==t.shapes){let i=t.shapes;if(Array.isArray(i))for(let t=0,n=i.length;t0){n.children=[];for(let t=0;t0){n.animations=[];for(let t=0;t0&&(i.geometries=t),n.length>0&&(i.materials=n),r.length>0&&(i.textures=r),s.length>0&&(i.images=s),o.length>0&&(i.shapes=o),l.length>0&&(i.skeletons=l),u.length>0&&(i.animations=u),c.length>0&&(i.nodes=c)}return i.object=n,i;function a(e){let t=[];for(let i in e){let n=e[i];delete n.metadata,t.push(n)}return t}}clone(e){return new this.constructor().copy(this,e)}copy(e,t=!0){if(this.name=e.name,this.up.copy(e.up),this.position.copy(e.position),this.rotation.order=e.rotation.order,this.quaternion.copy(e.quaternion),this.scale.copy(e.scale),this.matrix.copy(e.matrix),this.matrixWorld.copy(e.matrixWorld),this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrixWorldAutoUpdate=e.matrixWorldAutoUpdate,this.matrixWorldNeedsUpdate=e.matrixWorldNeedsUpdate,this.layers.mask=e.layers.mask,this.visible=e.visible,this.castShadow=e.castShadow,this.receiveShadow=e.receiveShadow,this.frustumCulled=e.frustumCulled,this.renderOrder=e.renderOrder,this.animations=e.animations.slice(),this.userData=JSON.parse(JSON.stringify(e.userData)),!0===t)for(let t=0;t0?n.multiplyScalar(1/Math.sqrt(r)):n.set(0,0,0)}static getBarycoord(e,t,i,n,r){tS.subVectors(n,t),tA.subVectors(i,t),tM.subVectors(e,t);let a=tS.dot(tS),s=tS.dot(tA),o=tS.dot(tM),l=tA.dot(tA),u=tA.dot(tM),c=a*l-s*s;if(0===c)return r.set(0,0,0),null;let h=1/c,d=(l*o-s*u)*h,f=(a*u-s*o)*h;return r.set(1-d-f,f,d)}static containsPoint(e,t,i,n){return null!==this.getBarycoord(e,t,i,n,tb)&&tb.x>=0&&tb.y>=0&&tb.x+tb.y<=1}static getInterpolation(e,t,i,n,r,a,s,o){return null===this.getBarycoord(e,t,i,n,tb)?(o.x=0,o.y=0,"z"in o&&(o.z=0),"w"in o&&(o.w=0),null):(o.setScalar(0),o.addScaledVector(r,tb.x),o.addScaledVector(a,tb.y),o.addScaledVector(s,tb.z),o)}static getInterpolatedAttribute(e,t,i,n,r,a){return tP.setScalar(0),tD.setScalar(0),tI.setScalar(0),tP.fromBufferAttribute(e,t),tD.fromBufferAttribute(e,i),tI.fromBufferAttribute(e,n),a.setScalar(0),a.addScaledVector(tP,r.x),a.addScaledVector(tD,r.y),a.addScaledVector(tI,r.z),a}static isFrontFacing(e,t,i,n){return tS.subVectors(i,t),tA.subVectors(e,t),0>tS.cross(tA).dot(n)}set(e,t,i){return this.a.copy(e),this.b.copy(t),this.c.copy(i),this}setFromPointsAndIndices(e,t,i,n){return this.a.copy(e[t]),this.b.copy(e[i]),this.c.copy(e[n]),this}setFromAttributeAndIndices(e,t,i,n){return this.a.fromBufferAttribute(e,t),this.b.fromBufferAttribute(e,i),this.c.fromBufferAttribute(e,n),this}clone(){return new this.constructor().copy(this)}copy(e){return this.a.copy(e.a),this.b.copy(e.b),this.c.copy(e.c),this}getArea(){return tS.subVectors(this.c,this.b),tA.subVectors(this.a,this.b),.5*tS.cross(tA).length()}getMidpoint(e){return e.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(e){return tL.getNormal(this.a,this.b,this.c,e)}getPlane(e){return e.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(e,t){return tL.getBarycoord(e,this.a,this.b,this.c,t)}getInterpolation(e,t,i,n,r){return tL.getInterpolation(e,this.a,this.b,this.c,t,i,n,r)}containsPoint(e){return tL.containsPoint(e,this.a,this.b,this.c)}isFrontFacing(e){return tL.isFrontFacing(this.a,this.b,this.c,e)}intersectsBox(e){return e.intersectsTriangle(this)}closestPointToPoint(e,t){let i,n,r=this.a,a=this.b,s=this.c;tw.subVectors(a,r),tT.subVectors(s,r),t_.subVectors(e,r);let o=tw.dot(t_),l=tT.dot(t_);if(o<=0&&l<=0)return t.copy(r);tC.subVectors(e,a);let u=tw.dot(tC),c=tT.dot(tC);if(u>=0&&c<=u)return t.copy(a);let h=o*c-u*l;if(h<=0&&o>=0&&u<=0)return i=o/(o-u),t.copy(r).addScaledVector(tw,i);tR.subVectors(e,s);let d=tw.dot(tR),f=tT.dot(tR);if(f>=0&&d<=f)return t.copy(s);let p=d*l-o*f;if(p<=0&&l>=0&&f<=0)return n=l/(l-f),t.copy(r).addScaledVector(tT,n);let m=u*f-d*c;if(m<=0&&c-u>=0&&d-f>=0)return tE.subVectors(s,a),n=(c-u)/(c-u+(d-f)),t.copy(a).addScaledVector(tE,n);let g=1/(m+p+h);return i=p*g,n=h*g,t.copy(r).addScaledVector(tw,i).addScaledVector(tT,n)}equals(e){return e.a.equals(this.a)&&e.b.equals(this.b)&&e.c.equals(this.c)}}let tB={aliceblue:0xf0f8ff,antiquewhite:0xfaebd7,aqua:65535,aquamarine:8388564,azure:0xf0ffff,beige:0xf5f5dc,bisque:0xffe4c4,black:0,blanchedalmond:0xffebcd,blue:255,blueviolet:9055202,brown:0xa52a2a,burlywood:0xdeb887,cadetblue:6266528,chartreuse:8388352,chocolate:0xd2691e,coral:0xff7f50,cornflowerblue:6591981,cornsilk:0xfff8dc,crimson:0xdc143c,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:0xb8860b,darkgray:0xa9a9a9,darkgreen:25600,darkgrey:0xa9a9a9,darkkhaki:0xbdb76b,darkmagenta:9109643,darkolivegreen:5597999,darkorange:0xff8c00,darkorchid:0x9932cc,darkred:9109504,darksalmon:0xe9967a,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:0xff1493,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:0xb22222,floralwhite:0xfffaf0,forestgreen:2263842,fuchsia:0xff00ff,gainsboro:0xdcdcdc,ghostwhite:0xf8f8ff,gold:0xffd700,goldenrod:0xdaa520,gray:8421504,green:32768,greenyellow:0xadff2f,grey:8421504,honeydew:0xf0fff0,hotpink:0xff69b4,indianred:0xcd5c5c,indigo:4915330,ivory:0xfffff0,khaki:0xf0e68c,lavender:0xe6e6fa,lavenderblush:0xfff0f5,lawngreen:8190976,lemonchiffon:0xfffacd,lightblue:0xadd8e6,lightcoral:0xf08080,lightcyan:0xe0ffff,lightgoldenrodyellow:0xfafad2,lightgray:0xd3d3d3,lightgreen:9498256,lightgrey:0xd3d3d3,lightpink:0xffb6c1,lightsalmon:0xffa07a,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:0xb0c4de,lightyellow:0xffffe0,lime:65280,limegreen:3329330,linen:0xfaf0e6,magenta:0xff00ff,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:0xba55d3,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:0xc71585,midnightblue:1644912,mintcream:0xf5fffa,mistyrose:0xffe4e1,moccasin:0xffe4b5,navajowhite:0xffdead,navy:128,oldlace:0xfdf5e6,olive:8421376,olivedrab:7048739,orange:0xffa500,orangered:0xff4500,orchid:0xda70d6,palegoldenrod:0xeee8aa,palegreen:0x98fb98,paleturquoise:0xafeeee,palevioletred:0xdb7093,papayawhip:0xffefd5,peachpuff:0xffdab9,peru:0xcd853f,pink:0xffc0cb,plum:0xdda0dd,powderblue:0xb0e0e6,purple:8388736,rebeccapurple:6697881,red:0xff0000,rosybrown:0xbc8f8f,royalblue:4286945,saddlebrown:9127187,salmon:0xfa8072,sandybrown:0xf4a460,seagreen:3050327,seashell:0xfff5ee,sienna:0xa0522d,silver:0xc0c0c0,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:0xfffafa,springgreen:65407,steelblue:4620980,tan:0xd2b48c,teal:32896,thistle:0xd8bfd8,tomato:0xff6347,turquoise:4251856,violet:0xee82ee,wheat:0xf5deb3,white:0xffffff,whitesmoke:0xf5f5f5,yellow:0xffff00,yellowgreen:0x9acd32},tU={h:0,s:0,l:0},tN={h:0,s:0,l:0};function tF(e,t,i){return(i<0&&(i+=1),i>1&&(i-=1),i<1/6)?e+(t-e)*6*i:i<.5?t:i<2/3?e+(t-e)*6*(2/3-i):e}class tO{constructor(e,t,i){return this.isColor=!0,this.r=1,this.g=1,this.b=1,this.set(e,t,i)}set(e,t,i){return void 0===t&&void 0===i?e&&e.isColor?this.copy(e):"number"==typeof e?this.setHex(e):"string"==typeof e&&this.setStyle(e):this.setRGB(e,t,i),this}setScalar(e){return this.r=e,this.g=e,this.b=e,this}setHex(e,t=D){return e=Math.floor(e),this.r=(e>>16&255)/255,this.g=(e>>8&255)/255,this.b=(255&e)/255,eu.toWorkingColorSpace(this,t),this}setRGB(e,t,i,n=eu.workingColorSpace){return this.r=e,this.g=t,this.b=i,eu.toWorkingColorSpace(this,n),this}setHSL(e,t,i,n=eu.workingColorSpace){if(e=V(e,1),t=G(t,0,1),i=G(i,0,1),0===t)this.r=this.g=this.b=i;else{let n=i<=.5?i*(1+t):i+t-i*t,r=2*i-n;this.r=tF(r,n,e+1/3),this.g=tF(r,n,e),this.b=tF(r,n,e-1/3)}return eu.toWorkingColorSpace(this,n),this}setStyle(e,t=D){let i;function n(t){void 0!==t&&1>parseFloat(t)&&console.warn("THREE.Color: Alpha component of "+e+" will be ignored.")}if(i=/^(\w+)\(([^\)]*)\)/.exec(e)){let r,a=i[1],s=i[2];switch(a){case"rgb":case"rgba":if(r=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(s))return n(r[4]),this.setRGB(Math.min(255,parseInt(r[1],10))/255,Math.min(255,parseInt(r[2],10))/255,Math.min(255,parseInt(r[3],10))/255,t);if(r=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(s))return n(r[4]),this.setRGB(Math.min(100,parseInt(r[1],10))/100,Math.min(100,parseInt(r[2],10))/100,Math.min(100,parseInt(r[3],10))/100,t);break;case"hsl":case"hsla":if(r=/^\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\%\s*,\s*(\d*\.?\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(s))return n(r[4]),this.setHSL(parseFloat(r[1])/360,parseFloat(r[2])/100,parseFloat(r[3])/100,t);break;default:console.warn("THREE.Color: Unknown color model "+e)}}else if(i=/^\#([A-Fa-f\d]+)$/.exec(e)){let n=i[1],r=n.length;if(3===r)return this.setRGB(parseInt(n.charAt(0),16)/15,parseInt(n.charAt(1),16)/15,parseInt(n.charAt(2),16)/15,t);if(6===r)return this.setHex(parseInt(n,16),t);console.warn("THREE.Color: Invalid hex color "+e)}else if(e&&e.length>0)return this.setColorName(e,t);return this}setColorName(e,t=D){let i=tB[e.toLowerCase()];return void 0!==i?this.setHex(i,t):console.warn("THREE.Color: Unknown color "+e),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(e){return this.r=e.r,this.g=e.g,this.b=e.b,this}copySRGBToLinear(e){return this.r=ec(e.r),this.g=ec(e.g),this.b=ec(e.b),this}copyLinearToSRGB(e){return this.r=eh(e.r),this.g=eh(e.g),this.b=eh(e.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(e=D){return eu.fromWorkingColorSpace(tz.copy(this),e),65536*Math.round(G(255*tz.r,0,255))+256*Math.round(G(255*tz.g,0,255))+Math.round(G(255*tz.b,0,255))}getHexString(e=D){return("000000"+this.getHex(e).toString(16)).slice(-6)}getHSL(e,t=eu.workingColorSpace){let i,n;eu.fromWorkingColorSpace(tz.copy(this),t);let r=tz.r,a=tz.g,s=tz.b,o=Math.max(r,a,s),l=Math.min(r,a,s),u=(l+o)/2;if(l===o)i=0,n=0;else{let e=o-l;switch(n=u<=.5?e/(o+l):e/(2-o-l),o){case r:i=(a-s)/e+6*(a0!=e>0&&this.version++,this._alphaTest=e}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(e){if(void 0!==e)for(let t in e){let i=e[t];if(void 0===i){console.warn(`THREE.Material: parameter '${t}' has value of undefined.`);continue}let n=this[t];if(void 0===n){console.warn(`THREE.Material: '${t}' is not a property of THREE.${this.type}.`);continue}n&&n.isColor?n.set(i):n&&n.isVector3&&i&&i.isVector3?n.copy(i):this[t]=i}}toJSON(e){let t=void 0===e||"string"==typeof e;t&&(e={textures:{},images:{}});let i={metadata:{version:4.6,type:"Material",generator:"Material.toJSON"}};function n(e){let t=[];for(let i in e){let n=e[i];delete n.metadata,t.push(n)}return t}if(i.uuid=this.uuid,i.type=this.type,""!==this.name&&(i.name=this.name),this.color&&this.color.isColor&&(i.color=this.color.getHex()),void 0!==this.roughness&&(i.roughness=this.roughness),void 0!==this.metalness&&(i.metalness=this.metalness),void 0!==this.sheen&&(i.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(i.sheenColor=this.sheenColor.getHex()),void 0!==this.sheenRoughness&&(i.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(i.emissive=this.emissive.getHex()),void 0!==this.emissiveIntensity&&1!==this.emissiveIntensity&&(i.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(i.specular=this.specular.getHex()),void 0!==this.specularIntensity&&(i.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(i.specularColor=this.specularColor.getHex()),void 0!==this.shininess&&(i.shininess=this.shininess),void 0!==this.clearcoat&&(i.clearcoat=this.clearcoat),void 0!==this.clearcoatRoughness&&(i.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(i.clearcoatMap=this.clearcoatMap.toJSON(e).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(i.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(e).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(i.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(e).uuid,i.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),void 0!==this.dispersion&&(i.dispersion=this.dispersion),void 0!==this.iridescence&&(i.iridescence=this.iridescence),void 0!==this.iridescenceIOR&&(i.iridescenceIOR=this.iridescenceIOR),void 0!==this.iridescenceThicknessRange&&(i.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(i.iridescenceMap=this.iridescenceMap.toJSON(e).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(i.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(e).uuid),void 0!==this.anisotropy&&(i.anisotropy=this.anisotropy),void 0!==this.anisotropyRotation&&(i.anisotropyRotation=this.anisotropyRotation),this.anisotropyMap&&this.anisotropyMap.isTexture&&(i.anisotropyMap=this.anisotropyMap.toJSON(e).uuid),this.map&&this.map.isTexture&&(i.map=this.map.toJSON(e).uuid),this.matcap&&this.matcap.isTexture&&(i.matcap=this.matcap.toJSON(e).uuid),this.alphaMap&&this.alphaMap.isTexture&&(i.alphaMap=this.alphaMap.toJSON(e).uuid),this.lightMap&&this.lightMap.isTexture&&(i.lightMap=this.lightMap.toJSON(e).uuid,i.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(i.aoMap=this.aoMap.toJSON(e).uuid,i.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(i.bumpMap=this.bumpMap.toJSON(e).uuid,i.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(i.normalMap=this.normalMap.toJSON(e).uuid,i.normalMapType=this.normalMapType,i.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(i.displacementMap=this.displacementMap.toJSON(e).uuid,i.displacementScale=this.displacementScale,i.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(i.roughnessMap=this.roughnessMap.toJSON(e).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(i.metalnessMap=this.metalnessMap.toJSON(e).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(i.emissiveMap=this.emissiveMap.toJSON(e).uuid),this.specularMap&&this.specularMap.isTexture&&(i.specularMap=this.specularMap.toJSON(e).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(i.specularIntensityMap=this.specularIntensityMap.toJSON(e).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(i.specularColorMap=this.specularColorMap.toJSON(e).uuid),this.envMap&&this.envMap.isTexture&&(i.envMap=this.envMap.toJSON(e).uuid,void 0!==this.combine&&(i.combine=this.combine)),void 0!==this.envMapRotation&&(i.envMapRotation=this.envMapRotation.toArray()),void 0!==this.envMapIntensity&&(i.envMapIntensity=this.envMapIntensity),void 0!==this.reflectivity&&(i.reflectivity=this.reflectivity),void 0!==this.refractionRatio&&(i.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(i.gradientMap=this.gradientMap.toJSON(e).uuid),void 0!==this.transmission&&(i.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(i.transmissionMap=this.transmissionMap.toJSON(e).uuid),void 0!==this.thickness&&(i.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(i.thicknessMap=this.thicknessMap.toJSON(e).uuid),void 0!==this.attenuationDistance&&this.attenuationDistance!==1/0&&(i.attenuationDistance=this.attenuationDistance),void 0!==this.attenuationColor&&(i.attenuationColor=this.attenuationColor.getHex()),void 0!==this.size&&(i.size=this.size),null!==this.shadowSide&&(i.shadowSide=this.shadowSide),void 0!==this.sizeAttenuation&&(i.sizeAttenuation=this.sizeAttenuation),1!==this.blending&&(i.blending=this.blending),0!==this.side&&(i.side=this.side),!0===this.vertexColors&&(i.vertexColors=!0),this.opacity<1&&(i.opacity=this.opacity),!0===this.transparent&&(i.transparent=!0),204!==this.blendSrc&&(i.blendSrc=this.blendSrc),205!==this.blendDst&&(i.blendDst=this.blendDst),100!==this.blendEquation&&(i.blendEquation=this.blendEquation),null!==this.blendSrcAlpha&&(i.blendSrcAlpha=this.blendSrcAlpha),null!==this.blendDstAlpha&&(i.blendDstAlpha=this.blendDstAlpha),null!==this.blendEquationAlpha&&(i.blendEquationAlpha=this.blendEquationAlpha),this.blendColor&&this.blendColor.isColor&&(i.blendColor=this.blendColor.getHex()),0!==this.blendAlpha&&(i.blendAlpha=this.blendAlpha),3!==this.depthFunc&&(i.depthFunc=this.depthFunc),!1===this.depthTest&&(i.depthTest=this.depthTest),!1===this.depthWrite&&(i.depthWrite=this.depthWrite),!1===this.colorWrite&&(i.colorWrite=this.colorWrite),255!==this.stencilWriteMask&&(i.stencilWriteMask=this.stencilWriteMask),519!==this.stencilFunc&&(i.stencilFunc=this.stencilFunc),0!==this.stencilRef&&(i.stencilRef=this.stencilRef),255!==this.stencilFuncMask&&(i.stencilFuncMask=this.stencilFuncMask),7680!==this.stencilFail&&(i.stencilFail=this.stencilFail),7680!==this.stencilZFail&&(i.stencilZFail=this.stencilZFail),7680!==this.stencilZPass&&(i.stencilZPass=this.stencilZPass),!0===this.stencilWrite&&(i.stencilWrite=this.stencilWrite),void 0!==this.rotation&&0!==this.rotation&&(i.rotation=this.rotation),!0===this.polygonOffset&&(i.polygonOffset=!0),0!==this.polygonOffsetFactor&&(i.polygonOffsetFactor=this.polygonOffsetFactor),0!==this.polygonOffsetUnits&&(i.polygonOffsetUnits=this.polygonOffsetUnits),void 0!==this.linewidth&&1!==this.linewidth&&(i.linewidth=this.linewidth),void 0!==this.dashSize&&(i.dashSize=this.dashSize),void 0!==this.gapSize&&(i.gapSize=this.gapSize),void 0!==this.scale&&(i.scale=this.scale),!0===this.dithering&&(i.dithering=!0),this.alphaTest>0&&(i.alphaTest=this.alphaTest),!0===this.alphaHash&&(i.alphaHash=!0),!0===this.alphaToCoverage&&(i.alphaToCoverage=!0),!0===this.premultipliedAlpha&&(i.premultipliedAlpha=!0),!0===this.forceSinglePass&&(i.forceSinglePass=!0),!0===this.wireframe&&(i.wireframe=!0),this.wireframeLinewidth>1&&(i.wireframeLinewidth=this.wireframeLinewidth),"round"!==this.wireframeLinecap&&(i.wireframeLinecap=this.wireframeLinecap),"round"!==this.wireframeLinejoin&&(i.wireframeLinejoin=this.wireframeLinejoin),!0===this.flatShading&&(i.flatShading=!0),!1===this.visible&&(i.visible=!1),!1===this.toneMapped&&(i.toneMapped=!1),!1===this.fog&&(i.fog=!1),Object.keys(this.userData).length>0&&(i.userData=this.userData),t){let t=n(e.textures),r=n(e.images);t.length>0&&(i.textures=t),r.length>0&&(i.images=r)}return i}clone(){return new this.constructor().copy(this)}copy(e){this.name=e.name,this.blending=e.blending,this.side=e.side,this.vertexColors=e.vertexColors,this.opacity=e.opacity,this.transparent=e.transparent,this.blendSrc=e.blendSrc,this.blendDst=e.blendDst,this.blendEquation=e.blendEquation,this.blendSrcAlpha=e.blendSrcAlpha,this.blendDstAlpha=e.blendDstAlpha,this.blendEquationAlpha=e.blendEquationAlpha,this.blendColor.copy(e.blendColor),this.blendAlpha=e.blendAlpha,this.depthFunc=e.depthFunc,this.depthTest=e.depthTest,this.depthWrite=e.depthWrite,this.stencilWriteMask=e.stencilWriteMask,this.stencilFunc=e.stencilFunc,this.stencilRef=e.stencilRef,this.stencilFuncMask=e.stencilFuncMask,this.stencilFail=e.stencilFail,this.stencilZFail=e.stencilZFail,this.stencilZPass=e.stencilZPass,this.stencilWrite=e.stencilWrite;let t=e.clippingPlanes,i=null;if(null!==t){let e=t.length;i=Array(e);for(let n=0;n!==e;++n)i[n]=t[n].clone()}return this.clippingPlanes=i,this.clipIntersection=e.clipIntersection,this.clipShadows=e.clipShadows,this.shadowSide=e.shadowSide,this.colorWrite=e.colorWrite,this.precision=e.precision,this.polygonOffset=e.polygonOffset,this.polygonOffsetFactor=e.polygonOffsetFactor,this.polygonOffsetUnits=e.polygonOffsetUnits,this.dithering=e.dithering,this.alphaTest=e.alphaTest,this.alphaHash=e.alphaHash,this.alphaToCoverage=e.alphaToCoverage,this.premultipliedAlpha=e.premultipliedAlpha,this.forceSinglePass=e.forceSinglePass,this.visible=e.visible,this.toneMapped=e.toneMapped,this.userData=JSON.parse(JSON.stringify(e.userData)),this}dispose(){this.dispatchEvent({type:"dispose"})}set needsUpdate(e){!0===e&&this.version++}onBuild(){console.warn("Material: onBuild() has been removed.")}}class tG extends tH{constructor(e){super(),this.isMeshBasicMaterial=!0,this.type="MeshBasicMaterial",this.color=new tO(0xffffff),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new ti,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.fog=e.fog,this}}let tV=function(){let e=new ArrayBuffer(4),t=new Float32Array(e),i=new Uint32Array(e),n=new Uint32Array(512),r=new Uint32Array(512);for(let e=0;e<256;++e){let t=e-127;t<-27?(n[e]=0,n[256|e]=32768,r[e]=24,r[256|e]=24):t<-14?(n[e]=1024>>-t-14,n[256|e]=1024>>-t-14|32768,r[e]=-t-1,r[256|e]=-t-1):t<=15?(n[e]=t+15<<10,n[256|e]=t+15<<10|32768,r[e]=13,r[256|e]=13):t<128?(n[e]=31744,n[256|e]=64512,r[e]=24,r[256|e]=24):(n[e]=31744,n[256|e]=64512,r[e]=13,r[256|e]=13)}let a=new Uint32Array(2048),s=new Uint32Array(64),o=new Uint32Array(64);for(let e=1;e<1024;++e){let t=e<<13,i=0;for(;(8388608&t)==0;)t<<=1,i-=8388608;t&=-8388609,i+=0x38800000,a[e]=t|i}for(let e=1024;e<2048;++e)a[e]=0x38000000+(e-1024<<13);for(let e=1;e<31;++e)s[e]=e<<23;s[31]=0x47800000,s[32]=0x80000000;for(let e=33;e<63;++e)s[e]=0x80000000+(e-32<<23);s[63]=0xc7800000;for(let e=1;e<64;++e)32!==e&&(o[e]=1024);return{floatView:t,uint32View:i,baseTable:n,shiftTable:r,mantissaTable:a,exponentTable:s,offsetTable:o}}();function tW(e){Math.abs(e)>65504&&console.warn("THREE.DataUtils.toHalfFloat(): Value out of range."),e=G(e,-65504,65504),tV.floatView[0]=e;let t=tV.uint32View[0],i=t>>23&511;return tV.baseTable[i]+((8388607&t)>>tV.shiftTable[i])}function tj(e){let t=e>>10;return tV.uint32View[0]=tV.mantissaTable[tV.offsetTable[t]+(1023&e)]+tV.exponentTable[t],tV.floatView[0]}let tX={toHalfFloat:tW,fromHalfFloat:tj},tY=new eE,tQ=new Q;class tq{constructor(e,t,i=!1){if(Array.isArray(e))throw TypeError("THREE.BufferAttribute: array should be a Typed Array.");this.isBufferAttribute=!0,this.name="",this.array=e,this.itemSize=t,this.count=void 0!==e?e.length/t:0,this.normalized=i,this.usage=35044,this.updateRanges=[],this.gpuType=1015,this.version=0}onUploadCallback(){}set needsUpdate(e){!0===e&&this.version++}setUsage(e){return this.usage=e,this}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}copy(e){return this.name=e.name,this.array=new e.array.constructor(e.array),this.itemSize=e.itemSize,this.count=e.count,this.normalized=e.normalized,this.usage=e.usage,this.gpuType=e.gpuType,this}copyAt(e,t,i){e*=this.itemSize,i*=t.itemSize;for(let n=0,r=this.itemSize;nt.count&&console.warn("THREE.BufferGeometry: Buffer size too small for points data. Use .dispose() and create a new geometry."),t.needsUpdate=!0}return this}computeBoundingBox(){null===this.boundingBox&&(this.boundingBox=new eR);let e=this.attributes.position,t=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){console.error("THREE.BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box.",this),this.boundingBox.set(new eE(-1/0,-1/0,-1/0),new eE(Infinity,Infinity,Infinity));return}if(void 0!==e){if(this.boundingBox.setFromBufferAttribute(e),t)for(let e=0,i=t.length;e0&&(e.userData=this.userData),void 0!==this.parameters){let t=this.parameters;for(let i in t)void 0!==t[i]&&(e[i]=t[i]);return e}e.data={attributes:{}};let t=this.index;null!==t&&(e.data.index={type:t.array.constructor.name,array:Array.prototype.slice.call(t.array)});let i=this.attributes;for(let t in i){let n=i[t];e.data.attributes[t]=n.toJSON(e.data)}let n={},r=!1;for(let t in this.morphAttributes){let i=this.morphAttributes[t],a=[];for(let t=0,n=i.length;t0&&(n[t]=a,r=!0)}r&&(e.data.morphAttributes=n,e.data.morphTargetsRelative=this.morphTargetsRelative);let a=this.groups;a.length>0&&(e.data.groups=JSON.parse(JSON.stringify(a)));let s=this.boundingSphere;return null!==s&&(e.data.boundingSphere={center:s.center.toArray(),radius:s.radius}),e}clone(){return new this.constructor().copy(this)}copy(e){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;let t={};this.name=e.name;let i=e.index;null!==i&&this.setIndex(i.clone(t));let n=e.attributes;for(let e in n){let i=n[e];this.setAttribute(e,i.clone(t))}let r=e.morphAttributes;for(let e in r){let i=[],n=r[e];for(let e=0,r=n.length;e0){let i=e[t[0]];if(void 0!==i){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=i.length;e(e.far-e.near)**2)||(ir.copy(r).invert(),ia.copy(e.ray).applyMatrix4(ir),(null===i.boundingBox||!1!==ia.intersectsBox(i.boundingBox))&&this._computeIntersections(e,t,ia)))}_computeIntersections(e,t,i){let n,r=this.geometry,a=this.material,s=r.index,o=r.attributes.position,l=r.attributes.uv,u=r.attributes.uv1,c=r.attributes.normal,h=r.groups,d=r.drawRange;if(null!==s)if(Array.isArray(a))for(let r=0,o=h.length;ri.far?null:{distance:l,point:im.clone(),object:e}}(e,t,i,n,il,iu,ic,ip);if(c){let e=new eE;tL.getBarycoord(ip,il,iu,ic,e),r&&(c.uv=tL.getInterpolatedAttribute(r,o,l,u,e,new Q)),a&&(c.uv1=tL.getInterpolatedAttribute(a,o,l,u,e,new Q)),s&&(c.normal=tL.getInterpolatedAttribute(s,o,l,u,e,new eE),c.normal.dot(n.direction)>0&&c.normal.multiplyScalar(-1));let t={a:o,b:l,c:u,normal:new eE,materialIndex:0};tL.getNormal(il,iu,ic,t.normal),c.face=t,c.barycoord=e}return c}class ix extends ii{constructor(e=1,t=1,i=1,n=1,r=1,a=1){super(),this.type="BoxGeometry",this.parameters={width:e,height:t,depth:i,widthSegments:n,heightSegments:r,depthSegments:a};const s=this;n=Math.floor(n),r=Math.floor(r);const o=[],l=[],u=[],c=[];let h=0,d=0;function f(e,t,i,n,r,a,f,p,m,g,v){let x=a/m,y=f/g,S=a/2,A=f/2,M=p/2,b=m+1,w=g+1,T=0,E=0,_=new eE;for(let a=0;a0?1:-1,u.push(_.x,_.y,_.z),c.push(o/m),c.push(1-a/g),T+=1}}for(let e=0;e0&&(t.defines=this.defines),t.vertexShader=this.vertexShader,t.fragmentShader=this.fragmentShader,t.lights=this.lights,t.clipping=this.clipping;let i={};for(let e in this.extensions)!0===this.extensions[e]&&(i[e]=!0);return Object.keys(i).length>0&&(t.extensions=i),t}}class iw extends ty{constructor(){super(),this.isCamera=!0,this.type="Camera",this.matrixWorldInverse=new e2,this.projectionMatrix=new e2,this.projectionMatrixInverse=new e2,this.coordinateSystem=2e3}copy(e,t){return super.copy(e,t),this.matrixWorldInverse.copy(e.matrixWorldInverse),this.projectionMatrix.copy(e.projectionMatrix),this.projectionMatrixInverse.copy(e.projectionMatrixInverse),this.coordinateSystem=e.coordinateSystem,this}getWorldDirection(e){return super.getWorldDirection(e).negate()}updateMatrixWorld(e){super.updateMatrixWorld(e),this.matrixWorldInverse.copy(this.matrixWorld).invert()}updateWorldMatrix(e,t){super.updateWorldMatrix(e,t),this.matrixWorldInverse.copy(this.matrixWorld).invert()}clone(){return new this.constructor().copy(this)}}let iT=new eE,iE=new Q,i_=new Q;class iC extends iw{constructor(e=50,t=1,i=.1,n=2e3){super(),this.isPerspectiveCamera=!0,this.type="PerspectiveCamera",this.fov=e,this.zoom=1,this.near=i,this.far=n,this.focus=10,this.aspect=t,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}copy(e,t){return super.copy(e,t),this.fov=e.fov,this.zoom=e.zoom,this.near=e.near,this.far=e.far,this.focus=e.focus,this.aspect=e.aspect,this.view=null===e.view?null:Object.assign({},e.view),this.filmGauge=e.filmGauge,this.filmOffset=e.filmOffset,this}setFocalLength(e){let t=.5*this.getFilmHeight()/e;this.fov=2*k*Math.atan(t),this.updateProjectionMatrix()}getFocalLength(){let e=Math.tan(.5*z*this.fov);return .5*this.getFilmHeight()/e}getEffectiveFOV(){return 2*k*Math.atan(Math.tan(.5*z*this.fov)/this.zoom)}getFilmWidth(){return this.filmGauge*Math.min(this.aspect,1)}getFilmHeight(){return this.filmGauge/Math.max(this.aspect,1)}getViewBounds(e,t,i){iT.set(-1,-1,.5).applyMatrix4(this.projectionMatrixInverse),t.set(iT.x,iT.y).multiplyScalar(-e/iT.z),iT.set(1,1,.5).applyMatrix4(this.projectionMatrixInverse),i.set(iT.x,iT.y).multiplyScalar(-e/iT.z)}getViewSize(e,t){return this.getViewBounds(e,iE,i_),t.subVectors(i_,iE)}setViewOffset(e,t,i,n,r,a){this.aspect=e/t,null===this.view&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=e,this.view.fullHeight=t,this.view.offsetX=i,this.view.offsetY=n,this.view.width=r,this.view.height=a,this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){let e=this.near,t=e*Math.tan(.5*z*this.fov)/this.zoom,i=2*t,n=this.aspect*i,r=-.5*n,a=this.view;if(null!==this.view&&this.view.enabled){let e=a.fullWidth,s=a.fullHeight;r+=a.offsetX*n/e,t-=a.offsetY*i/s,n*=a.width/e,i*=a.height/s}let s=this.filmOffset;0!==s&&(r+=e*s/this.getFilmWidth()),this.projectionMatrix.makePerspective(r,r+n,t,t-i,e,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(e){let t=super.toJSON(e);return t.object.fov=this.fov,t.object.zoom=this.zoom,t.object.near=this.near,t.object.far=this.far,t.object.focus=this.focus,t.object.aspect=this.aspect,null!==this.view&&(t.object.view=Object.assign({},this.view)),t.object.filmGauge=this.filmGauge,t.object.filmOffset=this.filmOffset,t}}class iR extends ty{constructor(e,t,i){super(),this.type="CubeCamera",this.renderTarget=i,this.coordinateSystem=null,this.activeMipmapLevel=0;const n=new iC(-90,1,e,t);n.layers=this.layers,this.add(n);const r=new iC(-90,1,e,t);r.layers=this.layers,this.add(r);const a=new iC(-90,1,e,t);a.layers=this.layers,this.add(a);const s=new iC(-90,1,e,t);s.layers=this.layers,this.add(s);const o=new iC(-90,1,e,t);o.layers=this.layers,this.add(o);const l=new iC(-90,1,e,t);l.layers=this.layers,this.add(l)}updateCoordinateSystem(){let e=this.coordinateSystem,t=this.children.concat(),[i,n,r,a,s,o]=t;for(let e of t)this.remove(e);if(2e3===e)i.up.set(0,1,0),i.lookAt(1,0,0),n.up.set(0,1,0),n.lookAt(-1,0,0),r.up.set(0,0,-1),r.lookAt(0,1,0),a.up.set(0,0,1),a.lookAt(0,-1,0),s.up.set(0,1,0),s.lookAt(0,0,1),o.up.set(0,1,0),o.lookAt(0,0,-1);else if(2001===e)i.up.set(0,-1,0),i.lookAt(-1,0,0),n.up.set(0,-1,0),n.lookAt(1,0,0),r.up.set(0,0,1),r.lookAt(0,1,0),a.up.set(0,0,-1),a.lookAt(0,-1,0),s.up.set(0,-1,0),s.lookAt(0,0,1),o.up.set(0,-1,0),o.lookAt(0,0,-1);else throw Error("THREE.CubeCamera.updateCoordinateSystem(): Invalid coordinate system: "+e);for(let e of t)this.add(e),e.updateMatrixWorld()}update(e,t){null===this.parent&&this.updateMatrixWorld();let{renderTarget:i,activeMipmapLevel:n}=this;this.coordinateSystem!==e.coordinateSystem&&(this.coordinateSystem=e.coordinateSystem,this.updateCoordinateSystem());let[r,a,s,o,l,u]=this.children,c=e.getRenderTarget(),h=e.getActiveCubeFace(),d=e.getActiveMipmapLevel(),f=e.xr.enabled;e.xr.enabled=!1;let p=i.texture.generateMipmaps;i.texture.generateMipmaps=!1,e.setRenderTarget(i,0,n),e.render(t,r),e.setRenderTarget(i,1,n),e.render(t,a),e.setRenderTarget(i,2,n),e.render(t,s),e.setRenderTarget(i,3,n),e.render(t,o),e.setRenderTarget(i,4,n),e.render(t,l),i.texture.generateMipmaps=p,e.setRenderTarget(i,5,n),e.render(t,u),e.setRenderTarget(c,h,d),e.xr.enabled=f,i.texture.needsPMREMUpdate=!0}}class iP extends ev{constructor(e,t,i,n,r,a,s,o,l,u){super(e=void 0!==e?e:[],t=void 0!==t?t:301,i,n,r,a,s,o,l,u),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(e){this.image=e}}class iD extends eS{constructor(e=1,t={}){super(e,e,t),this.isWebGLCubeRenderTarget=!0;const i={width:e,height:e,depth:1};this.texture=new iP([i,i,i,i,i,i],t.mapping,t.wrapS,t.wrapT,t.magFilter,t.minFilter,t.format,t.type,t.anisotropy,t.colorSpace),this.texture.isRenderTargetTexture=!0,this.texture.generateMipmaps=void 0!==t.generateMipmaps&&t.generateMipmaps,this.texture.minFilter=void 0!==t.minFilter?t.minFilter:1006}fromEquirectangularTexture(e,t){this.texture.type=t.type,this.texture.colorSpace=t.colorSpace,this.texture.generateMipmaps=t.generateMipmaps,this.texture.minFilter=t.minFilter,this.texture.magFilter=t.magFilter;let i={uniforms:{tEquirect:{value:null}},vertexShader:` - - varying vec3 vWorldDirection; - - vec3 transformDirection( in vec3 dir, in mat4 matrix ) { - - return normalize( ( matrix * vec4( dir, 0.0 ) ).xyz ); - - } - - void main() { - - vWorldDirection = transformDirection( position, modelMatrix ); - - #include - #include - - } - `,fragmentShader:` - - uniform sampler2D tEquirect; - - varying vec3 vWorldDirection; - - #include - - void main() { - - vec3 direction = normalize( vWorldDirection ); - - vec2 sampleUV = equirectUv( direction ); - - gl_FragColor = texture2D( tEquirect, sampleUV ); - - } - `},n=new ix(5,5,5),r=new ib({name:"CubemapFromEquirect",uniforms:iy(i.uniforms),vertexShader:i.vertexShader,fragmentShader:i.fragmentShader,side:1,blending:0});r.uniforms.tEquirect.value=t;let a=new ig(n,r),s=t.minFilter;return 1008===t.minFilter&&(t.minFilter=1006),new iR(1,10,this).update(e,a),t.minFilter=s,a.geometry.dispose(),a.material.dispose(),this}clear(e,t,i,n){let r=e.getRenderTarget();for(let r=0;r<6;r++)e.setRenderTarget(this,r),e.clear(t,i,n);e.setRenderTarget(r)}}class iI{constructor(e,t=25e-5){this.isFogExp2=!0,this.name="",this.color=new tO(e),this.density=t}clone(){return new iI(this.color,this.density)}toJSON(){return{type:"FogExp2",name:this.name,color:this.color.getHex(),density:this.density}}}class iL{constructor(e,t=1,i=1e3){this.isFog=!0,this.name="",this.color=new tO(e),this.near=t,this.far=i}clone(){return new iL(this.color,this.near,this.far)}toJSON(){return{type:"Fog",name:this.name,color:this.color.getHex(),near:this.near,far:this.far}}}class iB extends ty{constructor(){super(),this.isScene=!0,this.type="Scene",this.background=null,this.environment=null,this.fog=null,this.backgroundBlurriness=0,this.backgroundIntensity=1,this.backgroundRotation=new ti,this.environmentIntensity=1,this.environmentRotation=new ti,this.overrideMaterial=null,"u">typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}copy(e,t){return super.copy(e,t),null!==e.background&&(this.background=e.background.clone()),null!==e.environment&&(this.environment=e.environment.clone()),null!==e.fog&&(this.fog=e.fog.clone()),this.backgroundBlurriness=e.backgroundBlurriness,this.backgroundIntensity=e.backgroundIntensity,this.backgroundRotation.copy(e.backgroundRotation),this.environmentIntensity=e.environmentIntensity,this.environmentRotation.copy(e.environmentRotation),null!==e.overrideMaterial&&(this.overrideMaterial=e.overrideMaterial.clone()),this.matrixAutoUpdate=e.matrixAutoUpdate,this}toJSON(e){let t=super.toJSON(e);return null!==this.fog&&(t.object.fog=this.fog.toJSON()),this.backgroundBlurriness>0&&(t.object.backgroundBlurriness=this.backgroundBlurriness),1!==this.backgroundIntensity&&(t.object.backgroundIntensity=this.backgroundIntensity),t.object.backgroundRotation=this.backgroundRotation.toArray(),1!==this.environmentIntensity&&(t.object.environmentIntensity=this.environmentIntensity),t.object.environmentRotation=this.environmentRotation.toArray(),t}}class iU{constructor(e,t){this.isInterleavedBuffer=!0,this.array=e,this.stride=t,this.count=void 0!==e?e.length/t:0,this.usage=35044,this.updateRanges=[],this.version=0,this.uuid=H()}onUploadCallback(){}set needsUpdate(e){!0===e&&this.version++}setUsage(e){return this.usage=e,this}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}copy(e){return this.array=new e.array.constructor(e.array),this.count=e.count,this.stride=e.stride,this.usage=e.usage,this}copyAt(e,t,i){e*=this.stride,i*=t.stride;for(let n=0,r=this.stride;ne.far||t.push({distance:o,point:iz.clone(),uv:tL.getInterpolation(iz,ij,iX,iY,iQ,iq,iK,new Q),face:null,object:this})}copy(e,t){return super.copy(e,t),void 0!==e.center&&this.center.copy(e.center),this.material=e.material,this}}function iJ(e,t,i,n,r,a){iG.subVectors(e,i).addScalar(.5).multiply(n),void 0!==r?(iV.x=a*iG.x-r*iG.y,iV.y=r*iG.x+a*iG.y):iV.copy(iG),e.copy(t),e.x+=iV.x,e.y+=iV.y,e.applyMatrix4(iW)}let i$=new eE,i0=new eE;class i1 extends ty{constructor(){super(),this._currentLevel=0,this.type="LOD",Object.defineProperties(this,{levels:{enumerable:!0,value:[]},isLOD:{value:!0}}),this.autoUpdate=!0}copy(e){super.copy(e,!1);let t=e.levels;for(let e=0,i=t.length;e0){let i,n;for(i=1,n=t.length;i0){i$.setFromMatrixPosition(this.matrixWorld);let i=e.ray.origin.distanceTo(i$);this.getObjectForDistance(i).raycast(e,t)}}update(e){let t=this.levels;if(t.length>1){let i,n;i$.setFromMatrixPosition(e.matrixWorld),i0.setFromMatrixPosition(this.matrixWorld);let r=i$.distanceTo(i0)/e.zoom;for(i=1,t[0].object.visible=!0,n=t.length;i=e)t[i-1].object.visible=!1,t[i].object.visible=!0;else break}for(this._currentLevel=i-1;i1?null:t.copy(e.start).addScaledVector(i,r)}intersectsLine(e){let t=this.distanceToPoint(e.start),i=this.distanceToPoint(e.end);return t<0&&i>0||i<0&&t>0}intersectsBox(e){return e.intersectsPlane(this)}intersectsSphere(e){return e.intersectsPlane(this)}coplanarPoint(e){return e.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(e,t){let i=t||nx.getNormalMatrix(e),n=this.coplanarPoint(ng).applyMatrix4(e),r=this.normal.applyMatrix3(i).normalize();return this.constant=-n.dot(r),this}translate(e){return this.constant-=e.dot(this.normal),this}equals(e){return e.normal.equals(this.normal)&&e.constant===this.constant}clone(){return new this.constructor().copy(this)}}let nS=new eY,nA=new eE;class nM{constructor(e=new ny,t=new ny,i=new ny,n=new ny,r=new ny,a=new ny){this.planes=[e,t,i,n,r,a]}set(e,t,i,n,r,a){let s=this.planes;return s[0].copy(e),s[1].copy(t),s[2].copy(i),s[3].copy(n),s[4].copy(r),s[5].copy(a),this}copy(e){let t=this.planes;for(let i=0;i<6;i++)t[i].copy(e.planes[i]);return this}setFromProjectionMatrix(e,t=2e3){let i=this.planes,n=e.elements,r=n[0],a=n[1],s=n[2],o=n[3],l=n[4],u=n[5],c=n[6],h=n[7],d=n[8],f=n[9],p=n[10],m=n[11],g=n[12],v=n[13],x=n[14],y=n[15];if(i[0].setComponents(o-r,h-l,m-d,y-g).normalize(),i[1].setComponents(o+r,h+l,m+d,y+g).normalize(),i[2].setComponents(o+a,h+u,m+f,y+v).normalize(),i[3].setComponents(o-a,h-u,m-f,y-v).normalize(),i[4].setComponents(o-s,h-c,m-p,y-x).normalize(),2e3===t)i[5].setComponents(o+s,h+c,m+p,y+x).normalize();else if(2001===t)i[5].setComponents(s,c,p,x).normalize();else throw Error("THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: "+t);return this}intersectsObject(e){if(void 0!==e.boundingSphere)null===e.boundingSphere&&e.computeBoundingSphere(),nS.copy(e.boundingSphere).applyMatrix4(e.matrixWorld);else{let t=e.geometry;null===t.boundingSphere&&t.computeBoundingSphere(),nS.copy(t.boundingSphere).applyMatrix4(e.matrixWorld)}return this.intersectsSphere(nS)}intersectsSprite(e){return nS.center.set(0,0,0),nS.radius=.7071067811865476,nS.applyMatrix4(e.matrixWorld),this.intersectsSphere(nS)}intersectsSphere(e){let t=this.planes,i=e.center,n=-e.radius;for(let e=0;e<6;e++)if(t[e].distanceToPoint(i)0?e.max.x:e.min.x,nA.y=n.normal.y>0?e.max.y:e.min.y,nA.z=n.normal.z>0?e.max.z:e.min.z,0>n.distanceToPoint(nA))return!1}return!0}containsPoint(e){let t=this.planes;for(let i=0;i<6;i++)if(0>t[i].distanceToPoint(e))return!1;return!0}clone(){return new this.constructor().copy(this)}}function nb(e,t){return e-t}function nw(e,t){return e.z-t.z}function nT(e,t){return t.z-e.z}let nE=new e2,n_=new tO(1,1,1),nC=new nM,nR=new eR,nP=new eY,nD=new eE,nI=new eE,nL=new eE,nB=new class{constructor(){this.index=0,this.pool=[],this.list=[]}push(e,t,i,n){let r=this.pool,a=this.list;this.index>=r.length&&r.push({start:-1,count:-1,z:-1,index:-1});let s=r[this.index];a.push(s),this.index++,s.start=e,s.count=t,s.z=i,s.index=n}reset(){this.list.length=0,this.index=0}},nU=new ig,nN=[];function nF(e,t){if(e.constructor!==t.constructor){let i=Math.min(e.length,t.length);for(let n=0;n65535?new Uint32Array(n):new Uint16Array(n);t.setIndex(new tq(e,1))}this._geometryInitialized=!0}}_validateGeometry(e){let t=this.geometry;if(!!e.getIndex()!=!!t.getIndex())throw Error('THREE.BatchedMesh: All geometries must consistently have "index".');for(let i in t.attributes){if(!e.hasAttribute(i))throw Error(`THREE.BatchedMesh: Added geometry missing "${i}". All geometries must have consistent attributes.`);let n=e.getAttribute(i),r=t.getAttribute(i);if(n.itemSize!==r.itemSize||n.normalized!==r.normalized)throw Error("THREE.BatchedMesh: All attributes must have a consistent itemSize and normalized value.")}}validateInstanceId(e){let t=this._instanceInfo;if(e<0||e>=t.length||!1===t[e].active)throw Error(`THREE.BatchedMesh: Invalid instanceId ${e}. Instance is either out of range or has been deleted.`)}validateGeometryId(e){let t=this._geometryInfo;if(e<0||e>=t.length||!1===t[e].active)throw Error(`THREE.BatchedMesh: Invalid geometryId ${e}. Geometry is either out of range or has been deleted.`)}setCustomSort(e){return this.customSort=e,this}computeBoundingBox(){null===this.boundingBox&&(this.boundingBox=new eR);let e=this.boundingBox,t=this._instanceInfo;e.makeEmpty();for(let i=0,n=t.length;i=this.maxInstanceCount&&0===this._availableInstanceIds.length)throw Error("THREE.BatchedMesh: Maximum item count reached.");let t={visible:!0,active:!0,geometryIndex:e},i=null;this._availableInstanceIds.length>0?(this._availableInstanceIds.sort(nb),i=this._availableInstanceIds.shift(),this._instanceInfo[i]=t):(i=this._instanceInfo.length,this._instanceInfo.push(t));let n=this._matricesTexture;nE.identity().toArray(n.image.data,16*i),n.needsUpdate=!0;let r=this._colorsTexture;return r&&(n_.toArray(r.image.data,4*i),r.needsUpdate=!0),this._visibilityChanged=!0,i}addGeometry(e,t=-1,i=-1){let n;this._initializeGeometry(e),this._validateGeometry(e);let r={vertexStart:-1,vertexCount:-1,reservedVertexCount:-1,indexStart:-1,indexCount:-1,reservedIndexCount:-1,start:-1,count:-1,boundingBox:null,boundingSphere:null,active:!0},a=this._geometryInfo;r.vertexStart=this._nextVertexStart,r.reservedVertexCount=-1===t?e.getAttribute("position").count:t;let s=e.getIndex();if(null!==s&&(r.indexStart=this._nextIndexStart,r.reservedIndexCount=-1===i?s.count:i),-1!==r.indexStart&&r.indexStart+r.reservedIndexCount>this._maxIndexCount||r.vertexStart+r.reservedVertexCount>this._maxVertexCount)throw Error("THREE.BatchedMesh: Reserved space request exceeds the maximum buffer size.");return this._availableGeometryIds.length>0?(this._availableGeometryIds.sort(nb),a[n=this._availableGeometryIds.shift()]=r):(n=this._geometryCount,this._geometryCount++,a.push(r)),this.setGeometryAt(n,e),this._nextIndexStart=r.indexStart+r.reservedIndexCount,this._nextVertexStart=r.vertexStart+r.reservedVertexCount,n}setGeometryAt(e,t){if(e>=this._geometryCount)throw Error("THREE.BatchedMesh: Maximum geometry count reached.");this._validateGeometry(t);let i=this.geometry,n=null!==i.getIndex(),r=i.getIndex(),a=t.getIndex(),s=this._geometryInfo[e];if(n&&a.count>s.reservedIndexCount||t.attributes.position.count>s.reservedVertexCount)throw Error("THREE.BatchedMesh: Reserved space not large enough for provided geometry.");let o=s.vertexStart,l=s.reservedVertexCount;for(let e in s.vertexCount=t.getAttribute("position").count,i.attributes){let n=t.getAttribute(e),r=i.getAttribute(e);!function(e,t,i=0){let n=t.itemSize;if(e.isInterleavedBufferAttribute||e.array.constructor!==t.array.constructor){let r=e.count;for(let a=0;a=t.length||!1===t[e].active)return this;let i=this._instanceInfo;for(let t=0,n=i.length;tt).sort((e,t)=>i[e].vertexStart-i[t].vertexStart),r=this.geometry;for(let a=0,s=i.length;a=this._geometryCount)return null;let i=this.geometry,n=this._geometryInfo[e];if(null===n.boundingBox){let e=new eR,t=i.index,r=i.attributes.position;for(let i=n.start,a=n.start+n.count;i=this._geometryCount)return null;let i=this.geometry,n=this._geometryInfo[e];if(null===n.boundingSphere){let t=new eY;this.getBoundingBoxAt(e,nR),nR.getCenter(t.center);let r=i.index,a=i.attributes.position,s=0;for(let e=n.start,i=n.start+n.count;ee.active);if(Math.max(...i.map(e=>e.vertexStart+e.reservedVertexCount))>e)throw Error(`BatchedMesh: Geometry vertex values are being used outside the range ${t}. Cannot shrink further.`);if(this.geometry.index&&Math.max(...i.map(e=>e.indexStart+e.reservedIndexCount))>t)throw Error(`BatchedMesh: Geometry index values are being used outside the range ${t}. Cannot shrink further.`);let n=this.geometry;n.dispose(),this._maxVertexCount=e,this._maxIndexCount=t,this._geometryInitialized&&(this._geometryInitialized=!1,this.geometry=new ii,this._initializeGeometry(n));let r=this.geometry;for(let e in n.index&&nF(n.index.array,r.index.array),n.attributes)nF(n.attributes[e].array,r.attributes[e].array)}raycast(e,t){let i=this._instanceInfo,n=this._geometryInfo,r=this.matrixWorld,a=this.geometry;nU.material=this.material,nU.geometry.index=a.index,nU.geometry.attributes=a.attributes,null===nU.geometry.boundingBox&&(nU.geometry.boundingBox=new eR),null===nU.geometry.boundingSphere&&(nU.geometry.boundingSphere=new eY);for(let a=0,s=i.length;a({...e,boundingBox:null!==e.boundingBox?e.boundingBox.clone():null,boundingSphere:null!==e.boundingSphere?e.boundingSphere.clone():null})),this._instanceInfo=e._instanceInfo.map(e=>({...e})),this._maxInstanceCount=e._maxInstanceCount,this._maxVertexCount=e._maxVertexCount,this._maxIndexCount=e._maxIndexCount,this._geometryInitialized=e._geometryInitialized,this._geometryCount=e._geometryCount,this._multiDrawCounts=e._multiDrawCounts.slice(),this._multiDrawStarts=e._multiDrawStarts.slice(),this._matricesTexture=e._matricesTexture.clone(),this._matricesTexture.image.data=this._matricesTexture.image.data.slice(),null!==this._colorsTexture&&(this._colorsTexture=e._colorsTexture.clone(),this._colorsTexture.image.data=this._colorsTexture.image.data.slice()),this}dispose(){return this.geometry.dispose(),this._matricesTexture.dispose(),this._matricesTexture=null,this._indirectTexture.dispose(),this._indirectTexture=null,null!==this._colorsTexture&&(this._colorsTexture.dispose(),this._colorsTexture=null),this}onBeforeRender(e,t,i,n,r){if(!this._visibilityChanged&&!this.perObjectFrustumCulled&&!this.sortObjects)return;let a=n.getIndex(),s=null===a?1:a.array.BYTES_PER_ELEMENT,o=this._instanceInfo,l=this._multiDrawStarts,u=this._multiDrawCounts,c=this._geometryInfo,h=this.perObjectFrustumCulled,d=this._indirectTexture,f=d.image.data;h&&(nE.multiplyMatrices(i.projectionMatrix,i.matrixWorldInverse).multiply(this.matrixWorld),nC.setFromProjectionMatrix(nE,e.coordinateSystem));let p=0;if(this.sortObjects){nE.copy(this.matrixWorld).invert(),nD.setFromMatrixPosition(i.matrixWorld).applyMatrix4(nE),nI.set(0,0,-1).transformDirection(i.matrixWorld).transformDirection(nE);for(let e=0,t=o.length;e0){let i=e[t[0]];if(void 0!==i){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=i.length;en)return;nj.applyMatrix4(e.matrixWorld);let o=t.ray.origin.distanceTo(nj);if(!(ot.far))return{distance:o,point:nX.clone().applyMatrix4(e.matrixWorld),index:r,face:null,faceIndex:null,barycoord:null,object:e}}let nq=new eE,nK=new eE;class nZ extends nY{constructor(e,t){super(e,t),this.isLineSegments=!0,this.type="LineSegments"}computeLineDistances(){let e=this.geometry;if(null===e.index){let t=e.attributes.position,i=[];for(let e=0,n=t.count;e0){let i=e[t[0]];if(void 0!==i){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=i.length;er.far)return;a.push({distance:l,distanceToRay:Math.sqrt(o),point:i,index:t,face:null,faceIndex:null,barycoord:null,object:s})}}class n6 extends ty{constructor(){super(),this.isGroup=!0,this.type="Group"}}class n8 extends ev{constructor(e,t,i,n,r,a,s,o,l){super(e,t,i,n,r,a,s,o,l),this.isVideoTexture=!0,this.minFilter=void 0!==a?a:1006,this.magFilter=void 0!==r?r:1006,this.generateMipmaps=!1;const u=this;"requestVideoFrameCallback"in e&&e.requestVideoFrameCallback(function t(){u.needsUpdate=!0,e.requestVideoFrameCallback(t)})}clone(){return new this.constructor(this.image).copy(this)}update(){let e=this.image;!1=="requestVideoFrameCallback"in e&&e.readyState>=e.HAVE_CURRENT_DATA&&(this.needsUpdate=!0)}}class n9 extends ev{constructor(e,t){super({width:e,height:t}),this.isFramebufferTexture=!0,this.magFilter=1003,this.minFilter=1003,this.generateMipmaps=!1,this.needsUpdate=!0}}class n7 extends ev{constructor(e,t,i,n,r,a,s,o,l,u,c,h){super(null,a,s,o,l,u,n,r,c,h),this.isCompressedTexture=!0,this.image={width:t,height:i},this.mipmaps=e,this.flipY=!1,this.generateMipmaps=!1}}class re extends n7{constructor(e,t,i,n,r,a){super(e,t,i,r,a),this.isCompressedArrayTexture=!0,this.image.depth=n,this.wrapR=1001,this.layerUpdates=new Set}addLayerUpdate(e){this.layerUpdates.add(e)}clearLayerUpdates(){this.layerUpdates.clear()}}class rt extends n7{constructor(e,t,i){super(void 0,e[0].width,e[0].height,t,i,301),this.isCompressedCubeTexture=!0,this.isCubeTexture=!0,this.image=e}}class ri extends ev{constructor(e,t,i,n,r,a,s,o,l){super(e,t,i,n,r,a,s,o,l),this.isCanvasTexture=!0,this.needsUpdate=!0}}class rn extends ev{constructor(e,t,i,n,r,a,s,o,l,u=1026){if(1026!==u&&1027!==u)throw Error("DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat");void 0===i&&1026===u&&(i=1014),void 0===i&&1027===u&&(i=1020),super(null,n,r,a,s,o,u,i,l),this.isDepthTexture=!0,this.image={width:e,height:t},this.magFilter=void 0!==s?s:1003,this.minFilter=void 0!==o?o:1003,this.flipY=!1,this.generateMipmaps=!1,this.compareFunction=null}copy(e){return super.copy(e),this.compareFunction=e.compareFunction,this}toJSON(e){let t=super.toJSON(e);return null!==this.compareFunction&&(t.compareFunction=this.compareFunction),t}}class rr{constructor(){this.type="Curve",this.arcLengthDivisions=200}getPoint(){return console.warn("THREE.Curve: .getPoint() not implemented."),null}getPointAt(e,t){let i=this.getUtoTmapping(e);return this.getPoint(i,t)}getPoints(e=5){let t=[];for(let i=0;i<=e;i++)t.push(this.getPoint(i/e));return t}getSpacedPoints(e=5){let t=[];for(let i=0;i<=e;i++)t.push(this.getPointAt(i/e));return t}getLength(){let e=this.getLengths();return e[e.length-1]}getLengths(e=this.arcLengthDivisions){if(this.cacheArcLengths&&this.cacheArcLengths.length===e+1&&!this.needsUpdate)return this.cacheArcLengths;this.needsUpdate=!1;let t=[],i,n=this.getPoint(0),r=0;t.push(0);for(let a=1;a<=e;a++)t.push(r+=(i=this.getPoint(a/e)).distanceTo(n)),n=i;return this.cacheArcLengths=t,t}updateArcLengths(){this.needsUpdate=!0,this.getLengths()}getUtoTmapping(e,t){let i,n=this.getLengths(),r=0,a=n.length;i=t||e*n[a-1];let s=0,o=a-1,l;for(;s<=o;)if((l=n[r=Math.floor(s+(o-s)/2)]-i)<0)s=r+1;else if(l>0)o=r-1;else{o=r;break}if(n[r=o]===i)return r/(a-1);let u=n[r],c=n[r+1];return(r+(i-u)/(c-u))/(a-1)}getTangent(e,t){let i=e-1e-4,n=e+1e-4;i<0&&(i=0),n>1&&(n=1);let r=this.getPoint(i),a=this.getPoint(n),s=t||(r.isVector2?new Q:new eE);return s.copy(a).sub(r).normalize(),s}getTangentAt(e,t){let i=this.getUtoTmapping(e);return this.getTangent(i,t)}computeFrenetFrames(e,t){let i=new eE,n=[],r=[],a=[],s=new eE,o=new e2;for(let t=0;t<=e;t++){let i=t/e;n[t]=this.getTangentAt(i,new eE)}r[0]=new eE,a[0]=new eE;let l=Number.MAX_VALUE,u=Math.abs(n[0].x),c=Math.abs(n[0].y),h=Math.abs(n[0].z);u<=l&&(l=u,i.set(1,0,0)),c<=l&&(l=c,i.set(0,1,0)),h<=l&&i.set(0,0,1),s.crossVectors(n[0],i).normalize(),r[0].crossVectors(n[0],s),a[0].crossVectors(n[0],r[0]);for(let t=1;t<=e;t++){if(r[t]=r[t-1].clone(),a[t]=a[t-1].clone(),s.crossVectors(n[t-1],n[t]),s.length()>Number.EPSILON){s.normalize();let e=Math.acos(G(n[t-1].dot(n[t]),-1,1));r[t].applyMatrix4(o.makeRotationAxis(s,e))}a[t].crossVectors(n[t],r[t])}if(!0===t){let t=Math.acos(G(r[0].dot(r[e]),-1,1));t/=e,n[0].dot(s.crossVectors(r[0],r[e]))>0&&(t=-t);for(let i=1;i<=e;i++)r[i].applyMatrix4(o.makeRotationAxis(n[i],t*i)),a[i].crossVectors(n[i],r[i])}return{tangents:n,normals:r,binormals:a}}clone(){return new this.constructor().copy(this)}copy(e){return this.arcLengthDivisions=e.arcLengthDivisions,this}toJSON(){let e={metadata:{version:4.6,type:"Curve",generator:"Curve.toJSON"}};return e.arcLengthDivisions=this.arcLengthDivisions,e.type=this.type,e}fromJSON(e){return this.arcLengthDivisions=e.arcLengthDivisions,this}}class ra extends rr{constructor(e=0,t=0,i=1,n=1,r=0,a=2*Math.PI,s=!1,o=0){super(),this.isEllipseCurve=!0,this.type="EllipseCurve",this.aX=e,this.aY=t,this.xRadius=i,this.yRadius=n,this.aStartAngle=r,this.aEndAngle=a,this.aClockwise=s,this.aRotation=o}getPoint(e,t=new Q){let i=2*Math.PI,n=this.aEndAngle-this.aStartAngle,r=Math.abs(n)i;)n-=i;n0?0:(Math.floor(Math.abs(o)/a)+1)*a:0===l&&o===a-1&&(o=a-2,l=1),this.closed||o>0?i=r[(o-1)%a]:(rl.subVectors(r[0],r[1]).add(r[0]),i=rl);let u=r[o%a],c=r[(o+1)%a];if(this.closed||o+2i.length-2?i.length-1:r+1],u=i[r>i.length-3?i.length-1:r+2];return t.set(rf(a,s.x,o.x,l.x,u.x),rf(a,s.y,o.y,l.y,u.y)),t}copy(e){super.copy(e),this.points=[];for(let t=0,i=e.points.length;t=i){let e=n[r]-i,a=this.curves[r],s=a.getLength(),o=0===s?0:1-e/s;return a.getPointAt(o,t)}r++}return null}getLength(){let e=this.getCurveLengths();return e[e.length-1]}updateArcLengths(){this.needsUpdate=!0,this.cacheLengths=null,this.getCurveLengths()}getCurveLengths(){if(this.cacheLengths&&this.cacheLengths.length===this.curves.length)return this.cacheLengths;let e=[],t=0;for(let i=0,n=this.curves.length;i1&&!i[i.length-1].equals(i[0])&&i.push(i[0]),i}copy(e){super.copy(e),this.curves=[];for(let t=0,i=e.curves.length;t0){let e=l.getPoint(0);e.equals(this.currentPoint)||this.lineTo(e.x,e.y)}this.curves.push(l);let u=l.getPoint(1);return this.currentPoint.copy(u),this}copy(e){return super.copy(e),this.currentPoint.copy(e.currentPoint),this}toJSON(){let e=super.toJSON();return e.currentPoint=this.currentPoint.toArray(),e}fromJSON(e){return super.fromJSON(e),this.currentPoint.fromArray(e.currentPoint),this}}class rE extends ii{constructor(e=[new Q(0,-.5),new Q(.5,0),new Q(0,.5)],t=12,i=0,n=2*Math.PI){super(),this.type="LatheGeometry",this.parameters={points:e,segments:t,phiStart:i,phiLength:n},t=Math.floor(t),n=G(n,0,2*Math.PI);const r=[],a=[],s=[],o=[],l=[],u=1/t,c=new eE,h=new Q,d=new eE,f=new eE,p=new eE;let m=0,g=0;for(let t=0;t<=e.length-1;t++)switch(t){case 0:m=e[t+1].x-e[t].x,d.x=+(g=e[t+1].y-e[t].y),d.y=-m,d.z=0*g,p.copy(d),d.normalize(),o.push(d.x,d.y,d.z);break;case e.length-1:o.push(p.x,p.y,p.z);break;default:m=e[t+1].x-e[t].x,d.x=+(g=e[t+1].y-e[t].y),d.y=-m,d.z=0*g,f.copy(d),d.x+=p.x,d.y+=p.y,d.z+=p.z,d.normalize(),o.push(d.x,d.y,d.z),p.copy(f)}for(let r=0;r<=t;r++){const d=i+r*u*n,f=Math.sin(d),p=Math.cos(d);for(let i=0;i<=e.length-1;i++){c.x=e[i].x*f,c.y=e[i].y,c.z=e[i].x*p,a.push(c.x,c.y,c.z),h.x=r/t,h.y=i/(e.length-1),s.push(h.x,h.y);const n=o[3*i+0]*f,u=o[3*i+1],d=o[3*i+0]*p;l.push(n,u,d)}}for(let i=0;i0||0!==n)&&(u.push(a,s,l),x+=3),(t>0||n!==r-1)&&(u.push(s,o,l),x+=3)}l.addGroup(g,x,0),g+=x})(),!1===a&&(e>0&&v(!0),t>0&&v(!1)),this.setIndex(u),this.setAttribute("position",new t4(c,3)),this.setAttribute("normal",new t4(h,3)),this.setAttribute("uv",new t4(d,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new rR(e.radiusTop,e.radiusBottom,e.height,e.radialSegments,e.heightSegments,e.openEnded,e.thetaStart,e.thetaLength)}}class rP extends rR{constructor(e=1,t=1,i=32,n=1,r=!1,a=0,s=2*Math.PI){super(0,e,t,i,n,r,a,s),this.type="ConeGeometry",this.parameters={radius:e,height:t,radialSegments:i,heightSegments:n,openEnded:r,thetaStart:a,thetaLength:s}}static fromJSON(e){return new rP(e.radius,e.height,e.radialSegments,e.heightSegments,e.openEnded,e.thetaStart,e.thetaLength)}}class rD extends ii{constructor(e=[],t=[],i=1,n=0){super(),this.type="PolyhedronGeometry",this.parameters={vertices:e,indices:t,radius:i,detail:n};const r=[],a=[];function s(e){r.push(e.x,e.y,e.z)}function o(t,i){let n=3*t;i.x=e[n+0],i.y=e[n+1],i.z=e[n+2]}function l(e,t,i,n){n<0&&1===e.x&&(a[t]=e.x-1),0===i.x&&0===i.z&&(a[t]=n/2/Math.PI+.5)}function u(e){return Math.atan2(e.z,-e.x)}(function(e){let i=new eE,n=new eE,r=new eE;for(let a=0;a.9&&s<.1&&(t<.2&&(a[e+0]+=1),i<.2&&(a[e+2]+=1),n<.2&&(a[e+4]+=1))}}()}(),this.setAttribute("position",new t4(r,3)),this.setAttribute("normal",new t4(r.slice(),3)),this.setAttribute("uv",new t4(a,2)),0===n?this.computeVertexNormals():this.normalizeNormals()}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new rD(e.vertices,e.indices,e.radius,e.details)}}class rI extends rD{constructor(e=1,t=0){const i=(1+Math.sqrt(5))/2,n=1/i;super([-1,-1,-1,-1,-1,1,-1,1,-1,-1,1,1,1,-1,-1,1,-1,1,1,1,-1,1,1,1,0,-n,-i,0,-n,i,0,n,-i,0,n,i,-n,-i,0,-n,i,0,n,-i,0,n,i,0,-i,0,-n,i,0,-n,-i,0,n,i,0,n],[3,11,7,3,7,15,3,15,13,7,19,17,7,17,6,7,6,15,17,4,8,17,8,10,17,10,6,8,0,16,8,16,2,8,2,10,0,12,1,0,1,18,0,18,16,6,10,2,6,2,13,6,13,15,2,16,18,2,18,3,2,3,13,18,1,9,18,9,11,18,11,3,4,14,12,4,12,0,4,0,8,11,9,5,11,5,19,11,19,7,19,5,14,19,14,4,19,4,17,1,12,14,1,14,5,1,5,9],e,t),this.type="DodecahedronGeometry",this.parameters={radius:e,detail:t}}static fromJSON(e){return new rI(e.radius,e.detail)}}let rL=new eE,rB=new eE,rU=new eE,rN=new tL;class rF extends ii{constructor(e=null,t=1){if(super(),this.type="EdgesGeometry",this.parameters={geometry:e,thresholdAngle:t},null!==e){const i=Math.cos(z*t),n=e.getIndex(),r=e.getAttribute("position"),a=n?n.count:r.count,s=[0,0,0],o=["a","b","c"],l=[,,,],u={},c=[];for(let e=0;e=i.next.y&&i.next.y!==i.y){let e=i.x+(s-i.y)*(i.next.x-i.x)/(i.next.y-i.y);if(e<=a&&e>n&&(n=e,r=i.x=i.x&&i.x>=l&&a!==i.x&&rW(sr.x||i.x===r.x&&(d=r,f=i,0>rj(d.prev,d,f.prev)&&0>rj(f.next,d,d.next))))&&(r=i,c=h)),i=i.next}while(i!==o)return r}(e,t);if(!i)return t;let n=rZ(i,e);return rH(n,n.next),rH(i,i.next)}(u[r],i);return i}(e,t,d,i)),e.length>80*i){n=a=e[0],r=s=e[1];for(let t=i;ta&&(a=o),l>s&&(s=l);u=0!==(u=Math.max(a-n,s-r))?32767/u:0}return function e(t,i,n,r,a,s,o){if(!t)return;!o&&s&&function(e,t,i,n){let r=e;do 0===r.z&&(r.z=rV(r.x,r.y,t,i,n)),r.prevZ=r.prev,r.nextZ=r.next,r=r.next;while(r!==e)r.prevZ.nextZ=null,r.prevZ=null,function(e){let t,i,n,r,a,s,o,l,u=1;do{for(i=e,e=null,a=null,s=0;i;){for(s++,n=i,o=0,t=0;t0||l>0&&n;)0!==o&&(0===l||!n||i.z<=n.z)?(r=i,i=i.nextZ,o--):(r=n,n=n.nextZ,l--),a?a.nextZ=r:e=r,r.prevZ=a,a=r;i=n}a.nextZ=null,u*=2}while(s>1)}(r)}(t,r,a,s);let l=t,u,c;for(;t.prev!==t.next;){if(u=t.prev,c=t.next,s?function(e,t,i,n){let r=e.prev,a=e.next;if(rj(r,e,a)>=0)return!1;let s=r.x,o=e.x,l=a.x,u=r.y,c=e.y,h=a.y,d=so?s>l?s:l:o>l?o:l,m=u>c?u>h?u:h:c>h?c:h,g=rV(d,f,t,i,n),v=rV(p,m,t,i,n),x=e.prevZ,y=e.nextZ;for(;x&&x.z>=g&&y&&y.z<=v;){if(x.x>=d&&x.x<=p&&x.y>=f&&x.y<=m&&x!==r&&x!==a&&rW(s,u,o,c,l,h,x.x,x.y)&&rj(x.prev,x,x.next)>=0||(x=x.prevZ,y.x>=d&&y.x<=p&&y.y>=f&&y.y<=m&&y!==r&&y!==a&&rW(s,u,o,c,l,h,y.x,y.y)&&rj(y.prev,y,y.next)>=0))return!1;y=y.nextZ}for(;x&&x.z>=g;){if(x.x>=d&&x.x<=p&&x.y>=f&&x.y<=m&&x!==r&&x!==a&&rW(s,u,o,c,l,h,x.x,x.y)&&rj(x.prev,x,x.next)>=0)return!1;x=x.prevZ}for(;y&&y.z<=v;){if(y.x>=d&&y.x<=p&&y.y>=f&&y.y<=m&&y!==r&&y!==a&&rW(s,u,o,c,l,h,y.x,y.y)&&rj(y.prev,y,y.next)>=0)return!1;y=y.nextZ}return!0}(t,r,a,s):function(e){let t=e.prev,i=e.next;if(rj(t,e,i)>=0)return!1;let n=t.x,r=e.x,a=i.x,s=t.y,o=e.y,l=i.y,u=nr?n>a?n:a:r>a?r:a,d=s>o?s>l?s:l:o>l?o:l,f=i.next;for(;f!==t;){if(f.x>=u&&f.x<=h&&f.y>=c&&f.y<=d&&rW(n,s,r,o,a,l,f.x,f.y)&&rj(f.prev,f,f.next)>=0)return!1;f=f.next}return!0}(t)){i.push(u.i/n|0),i.push(t.i/n|0),i.push(c.i/n|0),r$(t),t=c.next,l=c.next;continue}if((t=c)===l){o?1===o?e(t=function(e,t,i){let n=e;do{let r=n.prev,a=n.next.next;!rX(r,a)&&rY(r,n,n.next,a)&&rK(r,a)&&rK(a,r)&&(t.push(r.i/i|0),t.push(n.i/i|0),t.push(a.i/i|0),r$(n),r$(n.next),n=e=a),n=n.next}while(n!==e)return rH(n)}(rH(t),i,n),i,n,r,a,s,2):2===o&&function(t,i,n,r,a,s){let o=t;do{let t=o.next.next;for(;t!==o.prev;){var l,u;if(o.i!==t.i&&(l=o,u=t,l.next.i!==u.i&&l.prev.i!==u.i&&!function(e,t){let i=e;do{if(i.i!==e.i&&i.next.i!==e.i&&i.i!==t.i&&i.next.i!==t.i&&rY(i,i.next,e,t))return!0;i=i.next}while(i!==e)return!1}(l,u)&&(rK(l,u)&&rK(u,l)&&function(e,t){let i=e,n=!1,r=(e.x+t.x)/2,a=(e.y+t.y)/2;do i.y>a!=i.next.y>a&&i.next.y!==i.y&&r<(i.next.x-i.x)*(a-i.y)/(i.next.y-i.y)+i.x&&(n=!n),i=i.next;while(i!==e)return n}(l,u)&&(rj(l.prev,l,u.prev)||rj(l,u.prev,u))||rX(l,u)&&rj(l.prev,l,l.next)>0&&rj(u.prev,u,u.next)>0))){let l=rZ(o,t);o=rH(o,o.next),l=rH(l,l.next),e(o,i,n,r,a,s,0),e(l,i,n,r,a,s,0);return}t=t.next}o=o.next}while(o!==t)}(t,i,n,r,a,s):e(rH(t),i,n,r,a,s,1);break}}}(d,f,i,n,r,u,0),f};function rk(e,t,i,n,r){let a,s;if(r===function(e,t,i,n){let r=0;for(let a=t,s=i-n;a0)for(a=t;a=t;a-=n)s=rJ(a,e[a],e[a+1],s);return s&&rX(s,s.next)&&(r$(s),s=s.next),s}function rH(e,t){if(!e)return e;t||(t=e);let i=e,n;do if(n=!1,!i.steiner&&(rX(i,i.next)||0===rj(i.prev,i,i.next))){if(r$(i),(i=t=i.prev)===i.next)break;n=!0}else i=i.next;while(n||i!==t)return t}function rG(e,t){return e.x-t.x}function rV(e,t,i,n,r){return(e=((e=((e=((e=((e=(e-i)*r|0)|e<<8)&0xff00ff)|e<<4)&0xf0f0f0f)|e<<2)&0x33333333)|e<<1)&0x55555555)|(t=((t=((t=((t=((t=(t-n)*r|0)|t<<8)&0xff00ff)|t<<4)&0xf0f0f0f)|t<<2)&0x33333333)|t<<1)&0x55555555)<<1}function rW(e,t,i,n,r,a,s,o){return(r-s)*(t-o)>=(e-s)*(a-o)&&(e-s)*(n-o)>=(i-s)*(t-o)&&(i-s)*(a-o)>=(r-s)*(n-o)}function rj(e,t,i){return(t.y-e.y)*(i.x-t.x)-(t.x-e.x)*(i.y-t.y)}function rX(e,t){return e.x===t.x&&e.y===t.y}function rY(e,t,i,n){let r=rq(rj(e,t,i)),a=rq(rj(e,t,n)),s=rq(rj(i,n,e)),o=rq(rj(i,n,t));return!!(r!==a&&s!==o||0===r&&rQ(e,i,t)||0===a&&rQ(e,n,t)||0===s&&rQ(i,e,n)||0===o&&rQ(i,t,n))}function rQ(e,t,i){return t.x<=Math.max(e.x,i.x)&&t.x>=Math.min(e.x,i.x)&&t.y<=Math.max(e.y,i.y)&&t.y>=Math.min(e.y,i.y)}function rq(e){return e>0?1:e<0?-1:0}function rK(e,t){return 0>rj(e.prev,e,e.next)?rj(e,t,e.next)>=0&&rj(e,e.prev,t)>=0:0>rj(e,t,e.prev)||0>rj(e,e.next,t)}function rZ(e,t){let i=new r0(e.i,e.x,e.y),n=new r0(t.i,t.x,t.y),r=e.next,a=t.prev;return e.next=t,t.prev=e,i.next=r,r.prev=i,n.next=i,i.prev=n,a.next=n,n.prev=a,n}function rJ(e,t,i,n){let r=new r0(e,t,i);return n?(r.next=n.next,r.prev=n,n.next.prev=r,n.next=r):(r.prev=r,r.next=r),r}function r$(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function r0(e,t,i){this.i=e,this.x=t,this.y=i,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}class r1{static area(e){let t=e.length,i=0;for(let n=t-1,r=0;rr1.area(e)}static triangulateShape(e,t){let i=[],n=[],r=[];r2(e),r3(i,e);let a=e.length;t.forEach(r2);for(let e=0;e2&&e[t-1].equals(e[0])&&e.pop()}function r3(e,t){for(let i=0;iNumber.EPSILON){let h=Math.sqrt(c),d=Math.sqrt(l*l+u*u),f=t.x-o/h,p=t.y+s/h,m=((i.x-u/d-f)*u-(i.y+l/d-p)*l)/(s*u-o*l),g=(n=f+s*m-e.x)*n+(r=p+o*m-e.y)*r;if(g<=2)return new Q(n,r);a=Math.sqrt(g/2)}else{let e=!1;s>Number.EPSILON?l>Number.EPSILON&&(e=!0):s<-Number.EPSILON?l<-Number.EPSILON&&(e=!0):Math.sign(o)===Math.sign(u)&&(e=!0),e?(n=-o,r=s,a=Math.sqrt(c)):(n=s,r=o,a=Math.sqrt(c/2))}return new Q(n/a,r/a)}let D=[];for(let e=0,t=E.length,i=t-1,n=e+1;e=0;e--){let t=e/v,i=p*Math.cos(t*Math.PI/2),n=m*Math.sin(t*Math.PI/2)+g;for(let e=0,t=E.length;e=0;){let a=r,s=r-1;s<0&&(s=e.length-1);for(let e=0,r=h+2*v;e0)&&d.push(t,r,l),(e!==i-1||o0!=e>0&&this.version++,this._anisotropy=e}get clearcoat(){return this._clearcoat}set clearcoat(e){this._clearcoat>0!=e>0&&this.version++,this._clearcoat=e}get iridescence(){return this._iridescence}set iridescence(e){this._iridescence>0!=e>0&&this.version++,this._iridescence=e}get dispersion(){return this._dispersion}set dispersion(e){this._dispersion>0!=e>0&&this.version++,this._dispersion=e}get sheen(){return this._sheen}set sheen(e){this._sheen>0!=e>0&&this.version++,this._sheen=e}get transmission(){return this._transmission}set transmission(e){this._transmission>0!=e>0&&this.version++,this._transmission=e}copy(e){return super.copy(e),this.defines={STANDARD:"",PHYSICAL:""},this.anisotropy=e.anisotropy,this.anisotropyRotation=e.anisotropyRotation,this.anisotropyMap=e.anisotropyMap,this.clearcoat=e.clearcoat,this.clearcoatMap=e.clearcoatMap,this.clearcoatRoughness=e.clearcoatRoughness,this.clearcoatRoughnessMap=e.clearcoatRoughnessMap,this.clearcoatNormalMap=e.clearcoatNormalMap,this.clearcoatNormalScale.copy(e.clearcoatNormalScale),this.dispersion=e.dispersion,this.ior=e.ior,this.iridescence=e.iridescence,this.iridescenceMap=e.iridescenceMap,this.iridescenceIOR=e.iridescenceIOR,this.iridescenceThicknessRange=[...e.iridescenceThicknessRange],this.iridescenceThicknessMap=e.iridescenceThicknessMap,this.sheen=e.sheen,this.sheenColor.copy(e.sheenColor),this.sheenColorMap=e.sheenColorMap,this.sheenRoughness=e.sheenRoughness,this.sheenRoughnessMap=e.sheenRoughnessMap,this.transmission=e.transmission,this.transmissionMap=e.transmissionMap,this.thickness=e.thickness,this.thicknessMap=e.thicknessMap,this.attenuationDistance=e.attenuationDistance,this.attenuationColor.copy(e.attenuationColor),this.specularIntensity=e.specularIntensity,this.specularIntensityMap=e.specularIntensityMap,this.specularColor.copy(e.specularColor),this.specularColorMap=e.specularColorMap,this}}class af extends tH{constructor(e){super(),this.isMeshPhongMaterial=!0,this.type="MeshPhongMaterial",this.color=new tO(0xffffff),this.specular=new tO(1118481),this.shininess=30,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new tO(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new Q(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new ti,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.specular.copy(e.specular),this.shininess=e.shininess,this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.flatShading=e.flatShading,this.fog=e.fog,this}}class ap extends tH{constructor(e){super(),this.isMeshToonMaterial=!0,this.defines={TOON:""},this.type="MeshToonMaterial",this.color=new tO(0xffffff),this.map=null,this.gradientMap=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new tO(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new Q(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.gradientMap=e.gradientMap,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.alphaMap=e.alphaMap,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.fog=e.fog,this}}class am extends tH{constructor(e){super(),this.isMeshNormalMaterial=!0,this.type="MeshNormalMaterial",this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new Q(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.flatShading=!1,this.setValues(e)}copy(e){return super.copy(e),this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.flatShading=e.flatShading,this}}class ag extends tH{constructor(e){super(),this.isMeshLambertMaterial=!0,this.type="MeshLambertMaterial",this.color=new tO(0xffffff),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new tO(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new Q(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new ti,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.flatShading=e.flatShading,this.fog=e.fog,this}}class av extends tH{constructor(e){super(),this.isMeshDepthMaterial=!0,this.type="MeshDepthMaterial",this.depthPacking=3200,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.setValues(e)}copy(e){return super.copy(e),this.depthPacking=e.depthPacking,this.map=e.map,this.alphaMap=e.alphaMap,this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this}}class ax extends tH{constructor(e){super(),this.isMeshDistanceMaterial=!0,this.type="MeshDistanceMaterial",this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.setValues(e)}copy(e){return super.copy(e),this.map=e.map,this.alphaMap=e.alphaMap,this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this}}class ay extends tH{constructor(e){super(),this.isMeshMatcapMaterial=!0,this.defines={MATCAP:""},this.type="MeshMatcapMaterial",this.color=new tO(0xffffff),this.matcap=null,this.map=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new Q(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.defines={MATCAP:""},this.color.copy(e.color),this.matcap=e.matcap,this.map=e.map,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.alphaMap=e.alphaMap,this.flatShading=e.flatShading,this.fog=e.fog,this}}class aS extends nz{constructor(e){super(),this.isLineDashedMaterial=!0,this.type="LineDashedMaterial",this.scale=1,this.dashSize=3,this.gapSize=1,this.setValues(e)}copy(e){return super.copy(e),this.scale=e.scale,this.dashSize=e.dashSize,this.gapSize=e.gapSize,this}}function aA(e,t,i){return e&&(i||e.constructor!==t)?"number"==typeof t.BYTES_PER_ELEMENT?new t(e):Array.prototype.slice.call(e):e}function aM(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function ab(e){let t=e.length,i=Array(t);for(let e=0;e!==t;++e)i[e]=e;return i.sort(function(t,i){return e[t]-e[i]}),i}function aw(e,t,i){let n=e.length,r=new e.constructor(n);for(let a=0,s=0;s!==n;++a){let n=i[a]*t;for(let i=0;i!==t;++i)r[s++]=e[n+i]}return r}function aT(e,t,i,n){let r=1,a=e[0];for(;void 0!==a&&void 0===a[n];)a=e[r++];if(void 0===a)return;let s=a[n];if(void 0!==s)if(Array.isArray(s))do void 0!==(s=a[n])&&(t.push(a.time),i.push.apply(i,s)),a=e[r++];while(void 0!==a)else if(void 0!==s.toArray)do void 0!==(s=a[n])&&(t.push(a.time),s.toArray(i,i.length)),a=e[r++];while(void 0!==a)else do void 0!==(s=a[n])&&(t.push(a.time),i.push(s)),a=e[r++];while(void 0!==a)}let aE={convertArray:aA,isTypedArray:aM,getKeyframeOrder:ab,sortedArray:aw,flattenJSON:aT,subclip:function(e,t,i,n,r=30){let a=e.clone();a.name=t;let s=[];for(let e=0;e=n)){l.push(t.times[e]);for(let i=0;ia.tracks[e].times[0]&&(o=a.tracks[e].times[0]);for(let e=0;e=r.times[d]){let e=d*u+l,t=e+u-l;n=r.values.slice(e,t)}else{let e=r.createInterpolant(),t=l,i=u-l;e.evaluate(a),n=e.resultBuffer.slice(t,i)}"quaternion"===s&&new eT().fromArray(n).normalize().conjugate().toArray(n);let f=o.times.length;for(let e=0;e=r)){let s=t[1];e=(r=t[--i-1]))break n}a=i,i=0;break r}break i}for(;i>>1;et;)--a;if(++a,0!==r||a!==n){r>=a&&(r=(a=Math.max(a,1))-1);let e=this.getValueSize();this.times=i.slice(r,a),this.values=this.values.slice(r*e,a*e)}return this}validate(){let e=!0,t=this.getValueSize();t-Math.floor(t)!=0&&(console.error("THREE.KeyframeTrack: Invalid value size in track.",this),e=!1);let i=this.times,n=this.values,r=i.length;0===r&&(console.error("THREE.KeyframeTrack: Track is empty.",this),e=!1);let a=null;for(let t=0;t!==r;t++){let n=i[t];if("number"==typeof n&&isNaN(n)){console.error("THREE.KeyframeTrack: Time is not a valid number.",this,t,n),e=!1;break}if(null!==a&&a>n){console.error("THREE.KeyframeTrack: Out of order keys.",this,t,n,a),e=!1;break}a=n}if(void 0!==n&&aM(n))for(let t=0,i=n.length;t!==i;++t){let i=n[t];if(isNaN(i)){console.error("THREE.KeyframeTrack: Value is not a valid number.",this,t,i),e=!1;break}}return e}optimize(){let e=this.times.slice(),t=this.values.slice(),i=this.getValueSize(),n=2302===this.getInterpolation(),r=e.length-1,a=1;for(let s=1;s0){e[a]=e[r];for(let e=r*i,n=a*i,s=0;s!==i;++s)t[n+s]=t[e+s];++a}return a!==e.length?(this.times=e.slice(0,a),this.values=t.slice(0,a*i)):(this.times=e,this.values=t),this}clone(){let e=this.times.slice(),t=this.values.slice(),i=new this.constructor(this.name,e,t);return i.createInterpolant=this.createInterpolant,i}}aD.prototype.TimeBufferType=Float32Array,aD.prototype.ValueBufferType=Float32Array,aD.prototype.DefaultInterpolation=2301;class aI extends aD{constructor(e,t,i){super(e,t,i)}}aI.prototype.ValueTypeName="bool",aI.prototype.ValueBufferType=Array,aI.prototype.DefaultInterpolation=2300,aI.prototype.InterpolantFactoryMethodLinear=void 0,aI.prototype.InterpolantFactoryMethodSmooth=void 0;class aL extends aD{}aL.prototype.ValueTypeName="color";class aB extends aD{}aB.prototype.ValueTypeName="number";class aU extends a_{constructor(e,t,i,n){super(e,t,i,n)}interpolate_(e,t,i,n){let r=this.resultBuffer,a=this.sampleValues,s=this.valueSize,o=(i-t)/(n-t),l=e*s;for(let e=l+s;l!==e;l+=4)eT.slerpFlat(r,0,a,l-s,a,l,o);return r}}class aN extends aD{InterpolantFactoryMethodLinear(e){return new aU(this.times,this.values,this.getValueSize(),e)}}aN.prototype.ValueTypeName="quaternion",aN.prototype.InterpolantFactoryMethodSmooth=void 0;class aF extends aD{constructor(e,t,i){super(e,t,i)}}aF.prototype.ValueTypeName="string",aF.prototype.ValueBufferType=Array,aF.prototype.DefaultInterpolation=2300,aF.prototype.InterpolantFactoryMethodLinear=void 0,aF.prototype.InterpolantFactoryMethodSmooth=void 0;class aO extends aD{}aO.prototype.ValueTypeName="vector";class az{constructor(e="",t=-1,i=[],n=2500){this.name=e,this.tracks=i,this.duration=t,this.blendMode=n,this.uuid=H(),this.duration<0&&this.resetDuration()}static parse(e){let t=[],i=e.tracks,n=1/(e.fps||1);for(let e=0,r=i.length;e!==r;++e)t.push((function(e){if(void 0===e.type)throw Error("THREE.KeyframeTrack: track type undefined, can not parse");let t=function(e){switch(e.toLowerCase()){case"scalar":case"double":case"float":case"number":case"integer":return aB;case"vector":case"vector2":case"vector3":case"vector4":return aO;case"color":return aL;case"quaternion":return aN;case"bool":case"boolean":return aI;case"string":return aF}throw Error("THREE.KeyframeTrack: Unsupported typeName: "+e)}(e.type);if(void 0===e.times){let t=[],i=[];aT(e.keys,t,i,"value"),e.times=t,e.values=i}return void 0!==t.parse?t.parse(e):new t(e.name,e.times,e.values,e.interpolation)})(i[e]).scale(n));let r=new this(e.name,e.duration,t,e.blendMode);return r.uuid=e.uuid,r}static toJSON(e){let t=[],i=e.tracks,n={name:e.name,duration:e.duration,tracks:t,uuid:e.uuid,blendMode:e.blendMode};for(let e=0,n=i.length;e!==n;++e)t.push(aD.toJSON(i[e]));return n}static CreateFromMorphTargetSequence(e,t,i,n){let r=t.length,a=[];for(let e=0;e1){let e=a[1],t=n[e];t||(n[e]=t=[]),t.push(i)}}let a=[];for(let e in n)a.push(this.CreateFromMorphTargetSequence(e,n[e],t,i));return a}static parseAnimation(e,t){if(!e)return console.error("THREE.AnimationClip: No animation in JSONLoader data."),null;let i=function(e,t,i,n,r){if(0!==i.length){let a=[],s=[];aT(i,a,s,n),0!==a.length&&r.push(new e(t,a,s))}},n=[],r=e.name||"default",a=e.fps||30,s=e.blendMode,o=e.length||-1,l=e.hierarchy||[];for(let e=0;e{t&&t(r),this.manager.itemEnd(e)},0),r;if(void 0!==aW[e])return void aW[e].push({onLoad:t,onProgress:i,onError:n});aW[e]=[],aW[e].push({onLoad:t,onProgress:i,onError:n});let a=new Request(e,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?"include":"same-origin"}),s=this.mimeType,o=this.responseType;fetch(a).then(t=>{if(200===t.status||0===t.status){if(0===t.status&&console.warn("THREE.FileLoader: HTTP Status 0 received."),"u"{if(n)e.close();else{let n=new ProgressEvent("progress",{lengthComputable:s,loaded:o+=r.byteLength,total:a});for(let e=0,t=i.length;e{e.error(t)})}()}}))}throw new aj(`fetch for "${t.url}" responded with ${t.status}: ${t.statusText}`,t)}).then(e=>{switch(o){case"arraybuffer":return e.arrayBuffer();case"blob":return e.blob();case"document":return e.text().then(e=>new DOMParser().parseFromString(e,s));case"json":return e.json();default:if(void 0===s)return e.text();{let t=/charset="?([^;"\s]*)"?/i.exec(s),i=new TextDecoder(t&&t[1]?t[1].toLowerCase():void 0);return e.arrayBuffer().then(e=>i.decode(e))}}}).then(t=>{ak.add(e,t);let i=aW[e];delete aW[e];for(let e=0,n=i.length;e{let i=aW[e];if(void 0===i)throw this.manager.itemError(e),t;delete aW[e];for(let e=0,n=i.length;e{this.manager.itemEnd(e)}),this.manager.itemStart(e)}setResponseType(e){return this.responseType=e,this}setMimeType(e){return this.mimeType=e,this}}class aY extends aV{constructor(e){super(e)}load(e,t,i,n){let r=this,a=new aX(this.manager);a.setPath(this.path),a.setRequestHeader(this.requestHeader),a.setWithCredentials(this.withCredentials),a.load(e,function(i){try{t(r.parse(JSON.parse(i)))}catch(t){n?n(t):console.error(t),r.manager.itemError(e)}},i,n)}parse(e){let t=[];for(let i=0;i0:n.vertexColors=e.vertexColors),void 0!==e.uniforms)for(let t in e.uniforms){let r=e.uniforms[t];switch(n.uniforms[t]={},r.type){case"t":n.uniforms[t].value=i(r.value);break;case"c":n.uniforms[t].value=new tO().setHex(r.value);break;case"v2":n.uniforms[t].value=new Q().fromArray(r.value);break;case"v3":n.uniforms[t].value=new eE().fromArray(r.value);break;case"v4":n.uniforms[t].value=new ex().fromArray(r.value);break;case"m3":n.uniforms[t].value=new q().fromArray(r.value);break;case"m4":n.uniforms[t].value=new e2().fromArray(r.value);break;default:n.uniforms[t].value=r.value}}if(void 0!==e.defines&&(n.defines=e.defines),void 0!==e.vertexShader&&(n.vertexShader=e.vertexShader),void 0!==e.fragmentShader&&(n.fragmentShader=e.fragmentShader),void 0!==e.glslVersion&&(n.glslVersion=e.glslVersion),void 0!==e.extensions)for(let t in e.extensions)n.extensions[t]=e.extensions[t];if(void 0!==e.lights&&(n.lights=e.lights),void 0!==e.clipping&&(n.clipping=e.clipping),void 0!==e.size&&(n.size=e.size),void 0!==e.sizeAttenuation&&(n.sizeAttenuation=e.sizeAttenuation),void 0!==e.map&&(n.map=i(e.map)),void 0!==e.matcap&&(n.matcap=i(e.matcap)),void 0!==e.alphaMap&&(n.alphaMap=i(e.alphaMap)),void 0!==e.bumpMap&&(n.bumpMap=i(e.bumpMap)),void 0!==e.bumpScale&&(n.bumpScale=e.bumpScale),void 0!==e.normalMap&&(n.normalMap=i(e.normalMap)),void 0!==e.normalMapType&&(n.normalMapType=e.normalMapType),void 0!==e.normalScale){let t=e.normalScale;!1===Array.isArray(t)&&(t=[t,t]),n.normalScale=new Q().fromArray(t)}return void 0!==e.displacementMap&&(n.displacementMap=i(e.displacementMap)),void 0!==e.displacementScale&&(n.displacementScale=e.displacementScale),void 0!==e.displacementBias&&(n.displacementBias=e.displacementBias),void 0!==e.roughnessMap&&(n.roughnessMap=i(e.roughnessMap)),void 0!==e.metalnessMap&&(n.metalnessMap=i(e.metalnessMap)),void 0!==e.emissiveMap&&(n.emissiveMap=i(e.emissiveMap)),void 0!==e.emissiveIntensity&&(n.emissiveIntensity=e.emissiveIntensity),void 0!==e.specularMap&&(n.specularMap=i(e.specularMap)),void 0!==e.specularIntensityMap&&(n.specularIntensityMap=i(e.specularIntensityMap)),void 0!==e.specularColorMap&&(n.specularColorMap=i(e.specularColorMap)),void 0!==e.envMap&&(n.envMap=i(e.envMap)),void 0!==e.envMapRotation&&n.envMapRotation.fromArray(e.envMapRotation),void 0!==e.envMapIntensity&&(n.envMapIntensity=e.envMapIntensity),void 0!==e.reflectivity&&(n.reflectivity=e.reflectivity),void 0!==e.refractionRatio&&(n.refractionRatio=e.refractionRatio),void 0!==e.lightMap&&(n.lightMap=i(e.lightMap)),void 0!==e.lightMapIntensity&&(n.lightMapIntensity=e.lightMapIntensity),void 0!==e.aoMap&&(n.aoMap=i(e.aoMap)),void 0!==e.aoMapIntensity&&(n.aoMapIntensity=e.aoMapIntensity),void 0!==e.gradientMap&&(n.gradientMap=i(e.gradientMap)),void 0!==e.clearcoatMap&&(n.clearcoatMap=i(e.clearcoatMap)),void 0!==e.clearcoatRoughnessMap&&(n.clearcoatRoughnessMap=i(e.clearcoatRoughnessMap)),void 0!==e.clearcoatNormalMap&&(n.clearcoatNormalMap=i(e.clearcoatNormalMap)),void 0!==e.clearcoatNormalScale&&(n.clearcoatNormalScale=new Q().fromArray(e.clearcoatNormalScale)),void 0!==e.iridescenceMap&&(n.iridescenceMap=i(e.iridescenceMap)),void 0!==e.iridescenceThicknessMap&&(n.iridescenceThicknessMap=i(e.iridescenceThicknessMap)),void 0!==e.transmissionMap&&(n.transmissionMap=i(e.transmissionMap)),void 0!==e.thicknessMap&&(n.thicknessMap=i(e.thicknessMap)),void 0!==e.anisotropyMap&&(n.anisotropyMap=i(e.anisotropyMap)),void 0!==e.sheenColorMap&&(n.sheenColorMap=i(e.sheenColorMap)),void 0!==e.sheenRoughnessMap&&(n.sheenRoughnessMap=i(e.sheenRoughnessMap)),n}setTextures(e){return this.textures=e,this}createMaterialFromType(e){return su.createMaterialFromType(e)}static createMaterialFromType(e){return new({ShadowMaterial:au,SpriteMaterial:iO,RawShaderMaterial:ac,ShaderMaterial:ib,PointsMaterial:n$,MeshPhysicalMaterial:ad,MeshStandardMaterial:ah,MeshPhongMaterial:af,MeshToonMaterial:ap,MeshNormalMaterial:am,MeshLambertMaterial:ag,MeshDepthMaterial:av,MeshDistanceMaterial:ax,MeshBasicMaterial:tG,MeshMatcapMaterial:ay,LineDashedMaterial:aS,LineBasicMaterial:nz,Material:tH})[e]}}class sc{static decodeText(e){if(console.warn("THREE.LoaderUtils: decodeText() has been deprecated with r165 and will be removed with r175. Use TextDecoder instead."),"u">typeof TextDecoder)return new TextDecoder().decode(e);let t="";for(let i=0,n=e.length;i0){(i=new aq(new aH(t))).setCrossOrigin(this.crossOrigin);for(let t=0,i=e.length;t0){(t=new aq(this.manager)).setCrossOrigin(this.crossOrigin);for(let t=0,i=e.length;t{let t=new eR;t.min.fromArray(e.boxMin),t.max.fromArray(e.boxMax);let i=new eY;return i.radius=e.sphereRadius,i.center.fromArray(e.sphereCenter),{boxInitialized:e.boxInitialized,box:t,sphereInitialized:e.sphereInitialized,sphere:i}}),a._maxInstanceCount=e.maxInstanceCount,a._maxVertexCount=e.maxVertexCount,a._maxIndexCount=e.maxIndexCount,a._geometryInitialized=e.geometryInitialized,a._geometryCount=e.geometryCount,a._matricesTexture=c(e.matricesTexture.uuid),void 0!==e.colorsTexture&&(a._colorsTexture=c(e.colorsTexture.uuid));break;case"LOD":a=new i1;break;case"Line":a=new nY(l(e.geometry),u(e.material));break;case"LineLoop":a=new nJ(l(e.geometry),u(e.material));break;case"LineSegments":a=new nZ(l(e.geometry),u(e.material));break;case"PointCloud":case"Points":a=new n4(l(e.geometry),u(e.material));break;case"Sprite":a=new iZ(u(e.material));break;case"Group":a=new n6;break;case"Bone":a=new ni;break;default:a=new ty}if(a.uuid=e.uuid,void 0!==e.name&&(a.name=e.name),void 0!==e.matrix?(a.matrix.fromArray(e.matrix),void 0!==e.matrixAutoUpdate&&(a.matrixAutoUpdate=e.matrixAutoUpdate),a.matrixAutoUpdate&&a.matrix.decompose(a.position,a.quaternion,a.scale)):(void 0!==e.position&&a.position.fromArray(e.position),void 0!==e.rotation&&a.rotation.fromArray(e.rotation),void 0!==e.quaternion&&a.quaternion.fromArray(e.quaternion),void 0!==e.scale&&a.scale.fromArray(e.scale)),void 0!==e.up&&a.up.fromArray(e.up),void 0!==e.castShadow&&(a.castShadow=e.castShadow),void 0!==e.receiveShadow&&(a.receiveShadow=e.receiveShadow),e.shadow&&(void 0!==e.shadow.intensity&&(a.shadow.intensity=e.shadow.intensity),void 0!==e.shadow.bias&&(a.shadow.bias=e.shadow.bias),void 0!==e.shadow.normalBias&&(a.shadow.normalBias=e.shadow.normalBias),void 0!==e.shadow.radius&&(a.shadow.radius=e.shadow.radius),void 0!==e.shadow.mapSize&&a.shadow.mapSize.fromArray(e.shadow.mapSize),void 0!==e.shadow.camera&&(a.shadow.camera=this.parseObject(e.shadow.camera))),void 0!==e.visible&&(a.visible=e.visible),void 0!==e.frustumCulled&&(a.frustumCulled=e.frustumCulled),void 0!==e.renderOrder&&(a.renderOrder=e.renderOrder),void 0!==e.userData&&(a.userData=e.userData),void 0!==e.layers&&(a.layers.mask=e.layers),void 0!==e.children){let s=e.children;for(let e=0;e{t&&t(i),r.manager.itemEnd(e)}).catch(e=>{n&&n(e)}):(setTimeout(function(){t&&t(a),r.manager.itemEnd(e)},0),a);let s={};s.credentials="anonymous"===this.crossOrigin?"same-origin":"include",s.headers=this.requestHeader;let o=fetch(e,s).then(function(e){return e.blob()}).then(function(e){return createImageBitmap(e,Object.assign(r.options,{colorSpaceConversion:"none"}))}).then(function(i){return ak.add(e,i),t&&t(i),r.manager.itemEnd(e),i}).catch(function(t){n&&n(t),ak.remove(e),r.manager.itemError(e),r.manager.itemEnd(e)});ak.add(e,o),r.manager.itemStart(e)}}class sx{static getContext(){return void 0===n&&(n=new(window.AudioContext||window.webkitAudioContext)),n}static setContext(e){n=e}}class sy extends aV{constructor(e){super(e)}load(e,t,i,n){let r=this,a=new aX(this.manager);function s(t){n?n(t):console.error(t),r.manager.itemError(e)}a.setResponseType("arraybuffer"),a.setPath(this.path),a.setRequestHeader(this.requestHeader),a.setWithCredentials(this.withCredentials),a.load(e,function(e){try{let i=e.slice(0);sx.getContext().decodeAudioData(i,function(e){t(e)}).catch(s)}catch(e){s(e)}},i,n)}}let sS=new e2,sA=new e2,sM=new e2;class sb{constructor(){this.type="StereoCamera",this.aspect=1,this.eyeSep=.064,this.cameraL=new iC,this.cameraL.layers.enable(1),this.cameraL.matrixAutoUpdate=!1,this.cameraR=new iC,this.cameraR.layers.enable(2),this.cameraR.matrixAutoUpdate=!1,this._cache={focus:null,fov:null,aspect:null,near:null,far:null,zoom:null,eyeSep:null}}update(e){let t=this._cache;if(t.focus!==e.focus||t.fov!==e.fov||t.aspect!==e.aspect*this.aspect||t.near!==e.near||t.far!==e.far||t.zoom!==e.zoom||t.eyeSep!==this.eyeSep){let i,n;t.focus=e.focus,t.fov=e.fov,t.aspect=e.aspect*this.aspect,t.near=e.near,t.far=e.far,t.zoom=e.zoom,t.eyeSep=this.eyeSep,sM.copy(e.projectionMatrix);let r=t.eyeSep/2,a=r*t.near/t.focus,s=t.near*Math.tan(z*t.fov*.5)/t.zoom;sA.elements[12]=-r,sS.elements[12]=r,i=-s*t.aspect+a,n=s*t.aspect+a,sM.elements[0]=2*t.near/(n-i),sM.elements[8]=(n+i)/(n-i),this.cameraL.projectionMatrix.copy(sM),i=-s*t.aspect-a,n=s*t.aspect-a,sM.elements[0]=2*t.near/(n-i),sM.elements[8]=(n+i)/(n-i),this.cameraR.projectionMatrix.copy(sM)}this.cameraL.matrixWorld.copy(e.matrixWorld).multiply(sA),this.cameraR.matrixWorld.copy(e.matrixWorld).multiply(sS)}}class sw extends iC{constructor(e=[]){super(),this.isArrayCamera=!0,this.cameras=e}}class sT{constructor(e=!0){this.autoStart=e,this.startTime=0,this.oldTime=0,this.elapsedTime=0,this.running=!1}start(){this.startTime=sE(),this.oldTime=this.startTime,this.elapsedTime=0,this.running=!0}stop(){this.getElapsedTime(),this.running=!1,this.autoStart=!1}getElapsedTime(){return this.getDelta(),this.elapsedTime}getDelta(){let e=0;if(this.autoStart&&!this.running)return this.start(),0;if(this.running){let t=sE();e=(t-this.oldTime)/1e3,this.oldTime=t,this.elapsedTime+=e}return e}}function sE(){return performance.now()}let s_=new eE,sC=new eT,sR=new eE,sP=new eE;class sD extends ty{constructor(){super(),this.type="AudioListener",this.context=sx.getContext(),this.gain=this.context.createGain(),this.gain.connect(this.context.destination),this.filter=null,this.timeDelta=0,this._clock=new sT}getInput(){return this.gain}removeFilter(){return null!==this.filter&&(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination),this.gain.connect(this.context.destination),this.filter=null),this}getFilter(){return this.filter}setFilter(e){return null!==this.filter?(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination)):this.gain.disconnect(this.context.destination),this.filter=e,this.gain.connect(this.filter),this.filter.connect(this.context.destination),this}getMasterVolume(){return this.gain.gain.value}setMasterVolume(e){return this.gain.gain.setTargetAtTime(e,this.context.currentTime,.01),this}updateMatrixWorld(e){super.updateMatrixWorld(e);let t=this.context.listener,i=this.up;if(this.timeDelta=this._clock.getDelta(),this.matrixWorld.decompose(s_,sC,sR),sP.set(0,0,-1).applyQuaternion(sC),t.positionX){let e=this.context.currentTime+this.timeDelta;t.positionX.linearRampToValueAtTime(s_.x,e),t.positionY.linearRampToValueAtTime(s_.y,e),t.positionZ.linearRampToValueAtTime(s_.z,e),t.forwardX.linearRampToValueAtTime(sP.x,e),t.forwardY.linearRampToValueAtTime(sP.y,e),t.forwardZ.linearRampToValueAtTime(sP.z,e),t.upX.linearRampToValueAtTime(i.x,e),t.upY.linearRampToValueAtTime(i.y,e),t.upZ.linearRampToValueAtTime(i.z,e)}else t.setPosition(s_.x,s_.y,s_.z),t.setOrientation(sP.x,sP.y,sP.z,i.x,i.y,i.z)}}class sI extends ty{constructor(e){super(),this.type="Audio",this.listener=e,this.context=e.context,this.gain=this.context.createGain(),this.gain.connect(e.getInput()),this.autoplay=!1,this.buffer=null,this.detune=0,this.loop=!1,this.loopStart=0,this.loopEnd=0,this.offset=0,this.duration=void 0,this.playbackRate=1,this.isPlaying=!1,this.hasPlaybackControl=!0,this.source=null,this.sourceType="empty",this._startedAt=0,this._progress=0,this._connected=!1,this.filters=[]}getOutput(){return this.gain}setNodeSource(e){return this.hasPlaybackControl=!1,this.sourceType="audioNode",this.source=e,this.connect(),this}setMediaElementSource(e){return this.hasPlaybackControl=!1,this.sourceType="mediaNode",this.source=this.context.createMediaElementSource(e),this.connect(),this}setMediaStreamSource(e){return this.hasPlaybackControl=!1,this.sourceType="mediaStreamNode",this.source=this.context.createMediaStreamSource(e),this.connect(),this}setBuffer(e){return this.buffer=e,this.sourceType="buffer",this.autoplay&&this.play(),this}play(e=0){if(!0===this.isPlaying)return void console.warn("THREE.Audio: Audio is already playing.");if(!1===this.hasPlaybackControl)return void console.warn("THREE.Audio: this Audio has no playback control.");this._startedAt=this.context.currentTime+e;let t=this.context.createBufferSource();return t.buffer=this.buffer,t.loop=this.loop,t.loopStart=this.loopStart,t.loopEnd=this.loopEnd,t.onended=this.onEnded.bind(this),t.start(this._startedAt,this._progress+this.offset,this.duration),this.isPlaying=!0,this.source=t,this.setDetune(this.detune),this.setPlaybackRate(this.playbackRate),this.connect()}pause(){return!1===this.hasPlaybackControl?void console.warn("THREE.Audio: this Audio has no playback control."):(!0===this.isPlaying&&(this._progress+=Math.max(this.context.currentTime-this._startedAt,0)*this.playbackRate,!0===this.loop&&(this._progress=this._progress%(this.duration||this.buffer.duration)),this.source.stop(),this.source.onended=null,this.isPlaying=!1),this)}stop(e=0){return!1===this.hasPlaybackControl?void console.warn("THREE.Audio: this Audio has no playback control."):(this._progress=0,null!==this.source&&(this.source.stop(this.context.currentTime+e),this.source.onended=null),this.isPlaying=!1,this)}connect(){if(this.filters.length>0){this.source.connect(this.filters[0]);for(let e=1,t=this.filters.length;e0){this.source.disconnect(this.filters[0]);for(let e=1,t=this.filters.length;e0&&this._mixBufferRegionAdditive(i,n,this._addIndex*t,1,t);for(let e=t,r=t+t;e!==r;++e)if(i[e]!==i[e+t]){s.setValue(i,n);break}}saveOriginalState(){let e=this.binding,t=this.buffer,i=this.valueSize,n=i*this._origIndex;e.getValue(t,n);for(let e=i;e!==n;++e)t[e]=t[n+e%i];this._setIdentity(),this.cumulativeWeight=0,this.cumulativeWeightAdditive=0}restoreOriginalState(){let e=3*this.valueSize;this.binding.setValue(this.buffer,e)}_setAdditiveIdentityNumeric(){let e=this._addIndex*this.valueSize,t=e+this.valueSize;for(let i=e;i=.5)for(let n=0;n!==r;++n)e[t+n]=e[i+n]}_slerp(e,t,i,n){eT.slerpFlat(e,t,e,t,e,i,n)}_slerpAdditive(e,t,i,n,r){let a=this._workIndex*r;eT.multiplyQuaternionsFlat(e,a,e,t,e,i),eT.slerpFlat(e,t,e,t,e,a,n)}_lerp(e,t,i,n,r){let a=1-n;for(let s=0;s!==r;++s){let r=t+s;e[r]=e[r]*a+e[i+s]*n}}_lerpAdditive(e,t,i,n,r){for(let a=0;a!==r;++a){let r=t+a;e[r]=e[r]+e[i+a]*n}}}let sk="\\[\\]\\.:\\/",sH=RegExp("["+sk+"]","g"),sG="[^"+sk+"]",sV="[^"+sk.replace("\\.","")+"]",sW=RegExp("^"+/((?:WC+[\/:])*)/.source.replace("WC",sG)+/(WCOD+)?/.source.replace("WCOD",sV)+/(?:\.(WC+)(?:\[(.+)\])?)?/.source.replace("WC",sG)+/\.(WC+)(?:\[(.+)\])?/.source.replace("WC",sG)+"$"),sj=["material","materials","bones","map"];class sX{constructor(e,t,i){this.path=t,this.parsedPath=i||sX.parseTrackName(t),this.node=sX.findNode(e,this.parsedPath.nodeName),this.rootNode=e,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(e,t,i){return e&&e.isAnimationObjectGroup?new sX.Composite(e,t,i):new sX(e,t,i)}static sanitizeNodeName(e){return e.replace(/\s/g,"_").replace(sH,"")}static parseTrackName(e){let t=sW.exec(e);if(null===t)throw Error("PropertyBinding: Cannot parse trackName: "+e);let i={nodeName:t[2],objectName:t[3],objectIndex:t[4],propertyName:t[5],propertyIndex:t[6]},n=i.nodeName&&i.nodeName.lastIndexOf(".");if(void 0!==n&&-1!==n){let e=i.nodeName.substring(n+1);-1!==sj.indexOf(e)&&(i.nodeName=i.nodeName.substring(0,n),i.objectName=e)}if(null===i.propertyName||0===i.propertyName.length)throw Error("PropertyBinding: can not parse propertyName from trackName: "+e);return i}static findNode(e,t){if(void 0===t||""===t||"."===t||-1===t||t===e.name||t===e.uuid)return e;if(e.skeleton){let i=e.skeleton.getBoneByName(t);if(void 0!==i)return i}if(e.children){let i=function(e){for(let n=0;n=r){let a=r++,u=e[a];t[u.uuid]=l,e[l]=u,t[o]=a,e[a]=s;for(let e=0;e!==n;++e){let t=i[e],n=t[a],r=t[l];t[l]=n,t[a]=r}}}this.nCachedObjects_=r}uncache(){let e=this._objects,t=this._indicesByUUID,i=this._bindings,n=i.length,r=this.nCachedObjects_,a=e.length;for(let s=0,o=arguments.length;s!==o;++s){let o=arguments[s],l=o.uuid,u=t[l];if(void 0!==u)if(delete t[l],u0&&(t[s.uuid]=u),e[u]=s,e.pop();for(let e=0;e!==n;++e){let t=i[e];t[u]=t[r],t.pop()}}}this.nCachedObjects_=r}subscribe_(e,t){let i=this._bindingsIndicesByPath,n=i[e],r=this._bindings;if(void 0!==n)return r[n];let a=this._paths,s=this._parsedPaths,o=this._objects,l=o.length,u=this.nCachedObjects_,c=Array(l);n=r.length,i[e]=n,a.push(e),s.push(t),r.push(c);for(let i=u,n=o.length;i!==n;++i){let n=o[i];c[i]=new sX(n,e,t)}return c}unsubscribe_(e){let t=this._bindingsIndicesByPath,i=t[e];if(void 0!==i){let n=this._paths,r=this._parsedPaths,a=this._bindings,s=a.length-1,o=a[s];t[e[s]]=i,a[i]=o,a.pop(),r[i]=r[s],r.pop(),n[i]=n[s],n.pop()}}}class sQ{constructor(e,t,i=null,n=t.blendMode){this._mixer=e,this._clip=t,this._localRoot=i,this.blendMode=n;const r=t.tracks,a=r.length,s=Array(a),o={endingStart:2400,endingEnd:2400};for(let e=0;e!==a;++e){const t=r[e].createInterpolant(null);s[e]=t,t.settings=o}this._interpolantSettings=o,this._interpolants=s,this._propertyBindings=Array(a),this._cacheIndex=null,this._byClipCacheIndex=null,this._timeScaleInterpolant=null,this._weightInterpolant=null,this.loop=2201,this._loopCount=-1,this._startTime=null,this.time=0,this.timeScale=1,this._effectiveTimeScale=1,this.weight=1,this._effectiveWeight=1,this.repetitions=1/0,this.paused=!1,this.enabled=!0,this.clampWhenFinished=!1,this.zeroSlopeAtStart=!0,this.zeroSlopeAtEnd=!0}play(){return this._mixer._activateAction(this),this}stop(){return this._mixer._deactivateAction(this),this.reset()}reset(){return this.paused=!1,this.enabled=!0,this.time=0,this._loopCount=-1,this._startTime=null,this.stopFading().stopWarping()}isRunning(){return this.enabled&&!this.paused&&0!==this.timeScale&&null===this._startTime&&this._mixer._isActiveAction(this)}isScheduled(){return this._mixer._isActiveAction(this)}startAt(e){return this._startTime=e,this}setLoop(e,t){return this.loop=e,this.repetitions=t,this}setEffectiveWeight(e){return this.weight=e,this._effectiveWeight=this.enabled?e:0,this.stopFading()}getEffectiveWeight(){return this._effectiveWeight}fadeIn(e){return this._scheduleFading(e,0,1)}fadeOut(e){return this._scheduleFading(e,1,0)}crossFadeFrom(e,t,i){if(e.fadeOut(t),this.fadeIn(t),i){let i=this._clip.duration,n=e._clip.duration;e.warp(1,n/i,t),this.warp(i/n,1,t)}return this}crossFadeTo(e,t,i){return e.crossFadeFrom(this,t,i)}stopFading(){let e=this._weightInterpolant;return null!==e&&(this._weightInterpolant=null,this._mixer._takeBackControlInterpolant(e)),this}setEffectiveTimeScale(e){return this.timeScale=e,this._effectiveTimeScale=this.paused?0:e,this.stopWarping()}getEffectiveTimeScale(){return this._effectiveTimeScale}setDuration(e){return this.timeScale=this._clip.duration/e,this.stopWarping()}syncWith(e){return this.time=e.time,this.timeScale=e.timeScale,this.stopWarping()}halt(e){return this.warp(this._effectiveTimeScale,0,e)}warp(e,t,i){let n=this._mixer,r=n.time,a=this.timeScale,s=this._timeScaleInterpolant;null===s&&(s=n._lendControlInterpolant(),this._timeScaleInterpolant=s);let o=s.parameterPositions,l=s.sampleValues;return o[0]=r,o[1]=r+i,l[0]=e/a,l[1]=t/a,this}stopWarping(){let e=this._timeScaleInterpolant;return null!==e&&(this._timeScaleInterpolant=null,this._mixer._takeBackControlInterpolant(e)),this}getMixer(){return this._mixer}getClip(){return this._clip}getRoot(){return this._localRoot||this._mixer._root}_update(e,t,i,n){if(!this.enabled)return void this._updateWeight(e);let r=this._startTime;if(null!==r){let n=(e-r)*i;n<0||0===i?t=0:(this._startTime=null,t=i*n)}t*=this._updateTimeScale(e);let a=this._updateTime(t),s=this._updateWeight(e);if(s>0){let e=this._interpolants,t=this._propertyBindings;if(2501===this.blendMode)for(let i=0,n=e.length;i!==n;++i)e[i].evaluate(a),t[i].accumulateAdditive(s);else for(let i=0,r=e.length;i!==r;++i)e[i].evaluate(a),t[i].accumulate(n,s)}}_updateWeight(e){let t=0;if(this.enabled){t=this.weight;let i=this._weightInterpolant;if(null!==i){let n=i.evaluate(e)[0];t*=n,e>i.parameterPositions[1]&&(this.stopFading(),0===n&&(this.enabled=!1))}}return this._effectiveWeight=t,t}_updateTimeScale(e){let t=0;if(!this.paused){t=this.timeScale;let i=this._timeScaleInterpolant;null!==i&&(t*=i.evaluate(e)[0],e>i.parameterPositions[1]&&(this.stopWarping(),0===t?this.paused=!0:this.timeScale=t))}return this._effectiveTimeScale=t,t}_updateTime(e){let t=this._clip.duration,i=this.loop,n=this.time+e,r=this._loopCount,a=2202===i;if(0===e)return -1===r?n:a&&(1&r)==1?t-n:n;if(2200===i){-1===r&&(this._loopCount=0,this._setEndings(!0,!0,!1));s:{if(n>=t)n=t;else if(n<0)n=0;else{this.time=n;break s}this.clampWhenFinished?this.paused=!0:this.enabled=!1,this.time=n,this._mixer.dispatchEvent({type:"finished",action:this,direction:e<0?-1:1})}}else{if(-1===r&&(e>=0?(r=0,this._setEndings(!0,0===this.repetitions,a)):this._setEndings(0===this.repetitions,!0,a)),n>=t||n<0){let i=Math.floor(n/t);n-=t*i,r+=Math.abs(i);let s=this.repetitions-r;if(s<=0)this.clampWhenFinished?this.paused=!0:this.enabled=!1,n=e>0?t:0,this.time=n,this._mixer.dispatchEvent({type:"finished",action:this,direction:e>0?1:-1});else{if(1===s){let t=e<0;this._setEndings(t,!t,a)}else this._setEndings(!1,!1,a);this._loopCount=r,this.time=n,this._mixer.dispatchEvent({type:"loop",action:this,loopDelta:i})}}else this.time=n;if(a&&(1&r)==1)return t-n}return n}_setEndings(e,t,i){let n=this._interpolantSettings;i?(n.endingStart=2401,n.endingEnd=2401):(e?n.endingStart=this.zeroSlopeAtStart?2401:2400:n.endingStart=2402,t?n.endingEnd=this.zeroSlopeAtEnd?2401:2400:n.endingEnd=2402)}_scheduleFading(e,t,i){let n=this._mixer,r=n.time,a=this._weightInterpolant;null===a&&(a=n._lendControlInterpolant(),this._weightInterpolant=a);let s=a.parameterPositions,o=a.sampleValues;return s[0]=r,o[0]=t,s[1]=r+e,o[1]=i,this}}let sq=new Float32Array(1);class sK extends N{constructor(e){super(),this._root=e,this._initMemoryManager(),this._accuIndex=0,this.time=0,this.timeScale=1}_bindAction(e,t){let i=e._localRoot||this._root,n=e._clip.tracks,r=n.length,a=e._propertyBindings,s=e._interpolants,o=i.uuid,l=this._bindingsByRootAndName,u=l[o];void 0===u&&(u={},l[o]=u);for(let e=0;e!==r;++e){let r=n[e],l=r.name,c=u[l];if(void 0!==c)++c.referenceCount,a[e]=c;else{if(void 0!==(c=a[e])){null===c._cacheIndex&&(++c.referenceCount,this._addInactiveBinding(c,o,l));continue}let n=t&&t._propertyBindings[e].binding.parsedPath;c=new sz(sX.create(i,l,n),r.ValueTypeName,r.getValueSize()),++c.referenceCount,this._addInactiveBinding(c,o,l),a[e]=c}s[e].resultBuffer=c.buffer}}_activateAction(e){if(!this._isActiveAction(e)){if(null===e._cacheIndex){let t=(e._localRoot||this._root).uuid,i=e._clip.uuid,n=this._actionsByClip[i];this._bindAction(e,n&&n.knownActions[0]),this._addInactiveAction(e,i,t)}let t=e._propertyBindings;for(let e=0,i=t.length;e!==i;++e){let i=t[e];0==i.useCount++&&(this._lendBinding(i),i.saveOriginalState())}this._lendAction(e)}}_deactivateAction(e){if(this._isActiveAction(e)){let t=e._propertyBindings;for(let e=0,i=t.length;e!==i;++e){let i=t[e];0==--i.useCount&&(i.restoreOriginalState(),this._takeBackBinding(i))}this._takeBackAction(e)}}_initMemoryManager(){this._actions=[],this._nActiveActions=0,this._actionsByClip={},this._bindings=[],this._nActiveBindings=0,this._bindingsByRootAndName={},this._controlInterpolants=[],this._nActiveControlInterpolants=0;let e=this;this.stats={actions:{get total(){return e._actions.length},get inUse(){return e._nActiveActions}},bindings:{get total(){return e._bindings.length},get inUse(){return e._nActiveBindings}},controlInterpolants:{get total(){return e._controlInterpolants.length},get inUse(){return e._nActiveControlInterpolants}}}}_isActiveAction(e){let t=e._cacheIndex;return null!==t&&t=0;--i)e[i].stop();return this}update(e){e*=this.timeScale;let t=this._actions,i=this._nActiveActions,n=this.time+=e,r=Math.sign(e),a=this._accuIndex^=1;for(let s=0;s!==i;++s)t[s]._update(n,e,r,a);let s=this._bindings,o=this._nActiveBindings;for(let e=0;e!==o;++e)s[e].apply(a);return this}setTime(e){this.time=0;for(let e=0;e=this.min.x&&e.x<=this.max.x&&e.y>=this.min.y&&e.y<=this.max.y}containsBox(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y}getParameter(e,t){return t.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y))}intersectsBox(e){return e.max.x>=this.min.x&&e.min.x<=this.max.x&&e.max.y>=this.min.y&&e.min.y<=this.max.y}clampPoint(e,t){return t.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return this.clampPoint(e,s7).distanceTo(e)}intersect(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this}union(e){return this.min.min(e.min),this.max.max(e.max),this}translate(e){return this.min.add(e),this.max.add(e),this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}}let ot=new eE,oi=new eE;class on{constructor(e=new eE,t=new eE){this.start=e,this.end=t}set(e,t){return this.start.copy(e),this.end.copy(t),this}copy(e){return this.start.copy(e.start),this.end.copy(e.end),this}getCenter(e){return e.addVectors(this.start,this.end).multiplyScalar(.5)}delta(e){return e.subVectors(this.end,this.start)}distanceSq(){return this.start.distanceToSquared(this.end)}distance(){return this.start.distanceTo(this.end)}at(e,t){return this.delta(t).multiplyScalar(e).add(this.start)}closestPointToPointParameter(e,t){ot.subVectors(e,this.start),oi.subVectors(this.end,this.start);let i=oi.dot(oi),n=oi.dot(ot)/i;return t&&(n=G(n,0,1)),n}closestPointToPoint(e,t,i){let n=this.closestPointToPointParameter(e,t);return this.delta(i).multiplyScalar(n).add(this.start)}applyMatrix4(e){return this.start.applyMatrix4(e),this.end.applyMatrix4(e),this}equals(e){return e.start.equals(this.start)&&e.end.equals(this.end)}clone(){return new this.constructor().copy(this)}}let or=new eE;class oa extends ty{constructor(e,t){super(),this.light=e,this.matrixAutoUpdate=!1,this.color=t,this.type="SpotLightHelper";const i=new ii,n=[0,0,0,0,0,1,0,0,0,1,0,1,0,0,0,-1,0,1,0,0,0,0,1,1,0,0,0,0,-1,1];for(let e=0,t=1;e<32;e++,t++){const i=e/32*Math.PI*2,r=t/32*Math.PI*2;n.push(Math.cos(i),Math.sin(i),1,Math.cos(r),Math.sin(r),1)}i.setAttribute("position",new t4(n,3));const r=new nz({fog:!1,toneMapped:!1});this.cone=new nZ(i,r),this.add(this.cone),this.update()}dispose(){this.cone.geometry.dispose(),this.cone.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.light.target.updateWorldMatrix(!0,!1),this.parent?(this.parent.updateWorldMatrix(!0),this.matrix.copy(this.parent.matrixWorld).invert().multiply(this.light.matrixWorld)):this.matrix.copy(this.light.matrixWorld),this.matrixWorld.copy(this.light.matrixWorld);let e=this.light.distance?this.light.distance:1e3,t=e*Math.tan(this.light.angle);this.cone.scale.set(t,t,e),or.setFromMatrixPosition(this.light.target.matrixWorld),this.cone.lookAt(or),void 0!==this.color?this.cone.material.color.set(this.color):this.cone.material.color.copy(this.light.color)}}let os=new eE,oo=new e2,ol=new e2;class ou extends nZ{constructor(e){const t=function e(t){let i=[];!0===t.isBone&&i.push(t);for(let n=0;n1)for(let i=0;i.99999)this.quaternion.set(0,0,0,1);else if(e.y<-.99999)this.quaternion.set(1,0,0,0);else{oR.set(e.z,0,-e.x).normalize();let t=Math.acos(e.y);this.quaternion.setFromAxisAngle(oR,t)}}setLength(e,t=.2*e,i=.2*t){this.line.scale.set(1,Math.max(1e-4,e-t),1),this.line.updateMatrix(),this.cone.scale.set(i,t,i),this.cone.position.y=e,this.cone.updateMatrix()}setColor(e){this.line.material.color.set(e),this.cone.material.color.set(e)}copy(e){return super.copy(e,!1),this.line.copy(e.line),this.cone.copy(e.cone),this}dispose(){this.line.geometry.dispose(),this.line.material.dispose(),this.cone.geometry.dispose(),this.cone.material.dispose()}}class oD extends nZ{constructor(e=1){const t=new ii;t.setAttribute("position",new t4([0,0,0,e,0,0,0,0,0,0,e,0,0,0,0,0,0,e],3)),t.setAttribute("color",new t4([1,0,0,1,.6,0,0,1,0,.6,1,0,0,0,1,0,.6,1],3)),super(t,new nz({vertexColors:!0,toneMapped:!1})),this.type="AxesHelper"}setColors(e,t,i){let n=new tO,r=this.geometry.attributes.color.array;return n.set(e),n.toArray(r,0),n.toArray(r,3),n.set(t),n.toArray(r,6),n.toArray(r,9),n.set(i),n.toArray(r,12),n.toArray(r,15),this.geometry.attributes.color.needsUpdate=!0,this}dispose(){this.geometry.dispose(),this.material.dispose()}}class oI{constructor(){this.type="ShapePath",this.color=new tO,this.subPaths=[],this.currentPath=null}moveTo(e,t){return this.currentPath=new rT,this.subPaths.push(this.currentPath),this.currentPath.moveTo(e,t),this}lineTo(e,t){return this.currentPath.lineTo(e,t),this}quadraticCurveTo(e,t,i,n){return this.currentPath.quadraticCurveTo(e,t,i,n),this}bezierCurveTo(e,t,i,n,r,a){return this.currentPath.bezierCurveTo(e,t,i,n,r,a),this}splineThru(e){return this.currentPath.splineThru(e),this}toShapes(e){let t,i,n,r,a,s=r1.isClockWise,o=this.subPaths;if(0===o.length)return[];let l=[];if(1===o.length)return i=o[0],(n=new rO).curves=i.curves,l.push(n),l;let u=!s(o[0].getPoints());u=e?!u:u;let c=[],h=[],d=[],f=0;h[0]=void 0,d[f]=[];for(let n=0,a=o.length;n1){let e=!1,t=0;for(let e=0,t=h.length;eNumber.EPSILON){if(l<0&&(i=t[a],o=-o,s=t[r],l=-l),e.ys.y)continue;if(e.y===i.y){if(e.x===i.x)return!0}else{let t=l*(e.x-i.x)-o*(e.y-i.y);if(0===t)return!0;if(t<0)continue;n=!n}}else{if(e.y!==i.y)continue;if(s.x<=e.x&&e.x<=i.x||i.x<=e.x&&e.x<=s.x)return!0}}return n})(a.p,h[n].p)&&(i!==n&&t++,s?(s=!1,c[n].push(a)):e=!0);s&&c[i].push(a)}}t>0&&!1===e&&(d=c)}for(let e=0,t=h.length;et?(e.repeat.x=1,e.repeat.y=i/t,e.offset.x=0,e.offset.y=(1-e.repeat.y)/2):(e.repeat.x=t/i,e.repeat.y=1,e.offset.x=(1-e.repeat.x)/2,e.offset.y=0),e},cover:function(e,t){let i=e.image&&e.image.width?e.image.width/e.image.height:1;return i>t?(e.repeat.x=t/i,e.repeat.y=1,e.offset.x=(1-e.repeat.x)/2,e.offset.y=0):(e.repeat.x=1,e.repeat.y=i/t,e.offset.x=0,e.offset.y=(1-e.repeat.y)/2),e},fill:function(e){return e.repeat.x=1,e.repeat.y=1,e.offset.x=0,e.offset.y=0,e},getByteLength:oB};class oN extends eS{constructor(e=1,t=1,i=1,n={}){console.warn('THREE.WebGLMultipleRenderTargets has been deprecated and will be removed in r172. Use THREE.WebGLRenderTarget and set the "count" parameter to enable MRT.'),super(e,t,{...n,count:i}),this.isWebGLMultipleRenderTargets=!0}get texture(){return this.textures}}function oF(){let e=null,t=!1,i=null,n=null;function r(t,a){i(t,a),n=e.requestAnimationFrame(r)}return{start:function(){!0===t||null!==i&&(n=e.requestAnimationFrame(r),t=!0)},stop:function(){e.cancelAnimationFrame(n),t=!1},setAnimationLoop:function(e){i=e},setContext:function(t){e=t}}}function oO(e){let t=new WeakMap;return{get:function(e){return e.isInterleavedBufferAttribute&&(e=e.data),t.get(e)},remove:function(i){i.isInterleavedBufferAttribute&&(i=i.data);let n=t.get(i);n&&(e.deleteBuffer(n.buffer),t.delete(i))},update:function(i,n){if(i.isInterleavedBufferAttribute&&(i=i.data),i.isGLBufferAttribute){let e=t.get(i);(!e||e.versione.start-t.start);let t=0;for(let e=1;etypeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("register",{detail:{revision:"171"}})),"u">typeof window&&(window.__THREE__?console.warn("WARNING: Multiple instances of Three.js being imported."):window.__THREE__="171"),e.s(["ACESFilmicToneMapping",0,4,"AddEquation",0,100,"AddOperation",0,2,"AdditiveAnimationBlendMode",0,2501,"AdditiveBlending",0,2,"AgXToneMapping",0,6,"AlphaFormat",0,1021,"AlwaysCompare",0,519,"AlwaysDepth",0,1,"AlwaysStencilFunc",0,519,"AmbientLight",0,sa,"AnimationAction",0,sQ,"AnimationClip",0,az,"AnimationLoader",0,aY,"AnimationMixer",0,sK,"AnimationObjectGroup",0,sY,"AnimationUtils",0,aE,"ArcCurve",0,rs,"ArrayCamera",0,sw,"ArrowHelper",0,oP,"AttachedBindMode",0,R,"Audio",0,sI,"AudioAnalyser",0,sO,"AudioContext",0,sx,"AudioListener",0,sD,"AudioLoader",0,sy,"AxesHelper",0,oD,"BackSide",0,1,"BasicDepthPacking",0,3200,"BasicShadowMap",0,0,"BatchedMesh",0,nO,"Bone",0,ni,"BooleanKeyframeTrack",0,aI,"Box2",0,oe,"Box3",0,eR,"Box3Helper",0,o_,"BoxGeometry",0,ix,"BoxHelper",0,oE,"BufferAttribute",0,tq,"BufferGeometry",0,ii,"BufferGeometryLoader",0,sd,"ByteType",0,1010,"Cache",0,ak,"Camera",0,iw,"CameraHelper",0,ob,"CanvasTexture",0,ri,"CapsuleGeometry",0,r_,"CatmullRomCurve3",0,rd,"CineonToneMapping",0,3,"CircleGeometry",0,rC,"ClampToEdgeWrapping",0,1001,"Clock",0,sT,"Color",0,tO,"ColorKeyframeTrack",0,aL,"ColorManagement",0,eu,"CompressedArrayTexture",0,re,"CompressedCubeTexture",0,rt,"CompressedTexture",0,n7,"CompressedTextureLoader",0,aQ,"ConeGeometry",0,rP,"ConstantAlphaFactor",0,213,"ConstantColorFactor",0,211,"Controls",0,oL,"CubeCamera",0,iR,"CubeReflectionMapping",0,301,"CubeRefractionMapping",0,302,"CubeTexture",0,iP,"CubeTextureLoader",0,aK,"CubeUVReflectionMapping",0,306,"CubicBezierCurve",0,rg,"CubicBezierCurve3",0,rv,"CubicInterpolant",0,aC,"CullFaceBack",0,1,"CullFaceFront",0,2,"CullFaceFrontBack",0,3,"CullFaceNone",0,0,"Curve",0,rr,"CurvePath",0,rw,"CustomBlending",0,5,"CustomToneMapping",0,5,"CylinderGeometry",0,rR,"Cylindrical",0,s8,"Data3DTexture",0,eb,"DataArrayTexture",0,eA,"DataTexture",0,nn,"DataTextureLoader",0,aZ,"DataUtils",0,tX,"DecrementStencilOp",0,7683,"DecrementWrapStencilOp",0,34056,"DefaultLoadingManager",0,aG,"DepthFormat",0,1026,"DepthStencilFormat",0,1027,"DepthTexture",0,rn,"DetachedBindMode",0,P,"DirectionalLight",0,sr,"DirectionalLightHelper",0,oS,"DiscreteInterpolant",0,aP,"DodecahedronGeometry",0,rI,"DoubleSide",0,2,"DstAlphaFactor",0,206,"DstColorFactor",0,208,"DynamicCopyUsage",0,35050,"DynamicDrawUsage",0,35048,"DynamicReadUsage",0,35049,"EdgesGeometry",0,rF,"EllipseCurve",0,ra,"EqualCompare",0,514,"EqualDepth",0,4,"EqualStencilFunc",0,514,"EquirectangularReflectionMapping",0,303,"EquirectangularRefractionMapping",0,304,"Euler",0,ti,"EventDispatcher",0,N,"ExtrudeGeometry",0,r4,"FileLoader",0,aX,"Float16BufferAttribute",0,t3,"Float32BufferAttribute",0,t4,"FloatType",0,1015,"Fog",0,iL,"FogExp2",0,iI,"FramebufferTexture",0,n9,"FrontSide",0,0,"Frustum",0,nM,"GLBufferAttribute",0,s1,"GLSL1",0,"100","GLSL3",0,U,"GreaterCompare",0,516,"GreaterDepth",0,6,"GreaterEqualCompare",0,518,"GreaterEqualDepth",0,5,"GreaterEqualStencilFunc",0,518,"GreaterStencilFunc",0,516,"GridHelper",0,om,"Group",0,n6,"HalfFloatType",0,1016,"HemisphereLight",0,a0,"HemisphereLightHelper",0,op,"IcosahedronGeometry",0,r6,"ImageBitmapLoader",0,sv,"ImageLoader",0,aq,"ImageUtils",0,ed,"IncrementStencilOp",0,7682,"IncrementWrapStencilOp",0,34055,"InstancedBufferAttribute",0,no,"InstancedBufferGeometry",0,sh,"InstancedInterleavedBuffer",0,s0,"InstancedMesh",0,nm,"Int16BufferAttribute",0,t$,"Int32BufferAttribute",0,t1,"Int8BufferAttribute",0,tK,"IntType",0,1013,"InterleavedBuffer",0,iU,"InterleavedBufferAttribute",0,iF,"Interpolant",0,a_,"InterpolateDiscrete",0,2300,"InterpolateLinear",0,2301,"InterpolateSmooth",0,2302,"InvertStencilOp",0,5386,"KeepStencilOp",0,7680,"KeyframeTrack",0,aD,"LOD",0,i1,"LatheGeometry",0,rE,"Layers",0,tn,"LessCompare",0,513,"LessDepth",0,2,"LessEqualCompare",0,515,"LessEqualDepth",0,3,"LessEqualStencilFunc",0,515,"LessStencilFunc",0,513,"Light",0,a$,"LightProbe",0,sl,"Line",0,nY,"Line3",0,on,"LineBasicMaterial",0,nz,"LineCurve",0,rx,"LineCurve3",0,ry,"LineDashedMaterial",0,aS,"LineLoop",0,nJ,"LineSegments",0,nZ,"LinearFilter",0,1006,"LinearInterpolant",0,aR,"LinearMipMapLinearFilter",0,1008,"LinearMipMapNearestFilter",0,1007,"LinearMipmapLinearFilter",0,1008,"LinearMipmapNearestFilter",0,1007,"LinearSRGBColorSpace",0,I,"LinearToneMapping",0,1,"LinearTransfer",0,L,"Loader",0,aV,"LoaderUtils",0,sc,"LoadingManager",0,aH,"LoopOnce",0,2200,"LoopPingPong",0,2202,"LoopRepeat",0,2201,"LuminanceAlphaFormat",0,1025,"LuminanceFormat",0,1024,"MOUSE",0,_,"Material",0,tH,"MaterialLoader",0,su,"MathUtils",0,Y,"Matrix2",0,s9,"Matrix3",0,q,"Matrix4",0,e2,"MaxEquation",0,104,"Mesh",0,ig,"MeshBasicMaterial",0,tG,"MeshDepthMaterial",0,av,"MeshDistanceMaterial",0,ax,"MeshLambertMaterial",0,ag,"MeshMatcapMaterial",0,ay,"MeshNormalMaterial",0,am,"MeshPhongMaterial",0,af,"MeshPhysicalMaterial",0,ad,"MeshStandardMaterial",0,ah,"MeshToonMaterial",0,ap,"MinEquation",0,103,"MirroredRepeatWrapping",0,1002,"MixOperation",0,1,"MultiplyBlending",0,4,"MultiplyOperation",0,0,"NearestFilter",0,1003,"NearestMipMapLinearFilter",0,1005,"NearestMipMapNearestFilter",0,1004,"NearestMipmapLinearFilter",0,1005,"NearestMipmapNearestFilter",0,1004,"NeutralToneMapping",0,7,"NeverCompare",0,512,"NeverDepth",0,0,"NeverStencilFunc",0,512,"NoBlending",0,0,"NoColorSpace",0,"","NoToneMapping",0,0,"NormalAnimationBlendMode",0,2500,"NormalBlending",0,1,"NotEqualCompare",0,517,"NotEqualDepth",0,7,"NotEqualStencilFunc",0,517,"NumberKeyframeTrack",0,aB,"Object3D",0,ty,"ObjectLoader",0,sf,"ObjectSpaceNormalMap",0,1,"OctahedronGeometry",0,r8,"OneFactor",0,201,"OneMinusConstantAlphaFactor",0,214,"OneMinusConstantColorFactor",0,212,"OneMinusDstAlphaFactor",0,207,"OneMinusDstColorFactor",0,209,"OneMinusSrcAlphaFactor",0,205,"OneMinusSrcColorFactor",0,203,"OrthographicCamera",0,si,"PCFShadowMap",0,1,"PCFSoftShadowMap",0,2,"Path",0,rT,"PerspectiveCamera",0,iC,"Plane",0,ny,"PlaneGeometry",0,r9,"PlaneHelper",0,oC,"PointLight",0,st,"PointLightHelper",0,oc,"Points",0,n4,"PointsMaterial",0,n$,"PolarGridHelper",0,og,"PolyhedronGeometry",0,rD,"PositionalAudio",0,sF,"PropertyBinding",0,sX,"PropertyMixer",0,sz,"QuadraticBezierCurve",0,rS,"QuadraticBezierCurve3",0,rA,"Quaternion",0,eT,"QuaternionKeyframeTrack",0,aN,"QuaternionLinearInterpolant",0,aU,"RAD2DEG",0,k,"RED_GREEN_RGTC2_Format",0,36285,"RED_RGTC1_Format",0,36283,"REVISION",0,"171","RGBADepthPacking",0,3201,"RGBAFormat",0,1023,"RGBAIntegerFormat",0,1033,"RGBA_ASTC_10x10_Format",0,37819,"RGBA_ASTC_10x5_Format",0,37816,"RGBA_ASTC_10x6_Format",0,37817,"RGBA_ASTC_10x8_Format",0,37818,"RGBA_ASTC_12x10_Format",0,37820,"RGBA_ASTC_12x12_Format",0,37821,"RGBA_ASTC_4x4_Format",0,37808,"RGBA_ASTC_5x4_Format",0,37809,"RGBA_ASTC_5x5_Format",0,37810,"RGBA_ASTC_6x5_Format",0,37811,"RGBA_ASTC_6x6_Format",0,37812,"RGBA_ASTC_8x5_Format",0,37813,"RGBA_ASTC_8x6_Format",0,37814,"RGBA_ASTC_8x8_Format",0,37815,"RGBA_BPTC_Format",0,36492,"RGBA_ETC2_EAC_Format",0,37496,"RGBA_PVRTC_2BPPV1_Format",0,35843,"RGBA_PVRTC_4BPPV1_Format",0,35842,"RGBA_S3TC_DXT1_Format",0,33777,"RGBA_S3TC_DXT3_Format",0,33778,"RGBA_S3TC_DXT5_Format",0,33779,"RGBDepthPacking",0,3202,"RGBFormat",0,1022,"RGBIntegerFormat",0,1032,"RGB_BPTC_SIGNED_Format",0,36494,"RGB_BPTC_UNSIGNED_Format",0,36495,"RGB_ETC1_Format",0,36196,"RGB_ETC2_Format",0,37492,"RGB_PVRTC_2BPPV1_Format",0,35841,"RGB_PVRTC_4BPPV1_Format",0,35840,"RGB_S3TC_DXT1_Format",0,33776,"RGDepthPacking",0,3203,"RGFormat",0,1030,"RGIntegerFormat",0,1031,"RawShaderMaterial",0,ac,"Ray",0,e1,"Raycaster",0,s3,"RectAreaLight",0,ss,"RedFormat",0,1028,"RedIntegerFormat",0,1029,"ReinhardToneMapping",0,2,"RenderTarget",0,ey,"RepeatWrapping",0,1e3,"ReplaceStencilOp",0,7681,"ReverseSubtractEquation",0,102,"RingGeometry",0,r7,"SIGNED_RED_GREEN_RGTC2_Format",0,36286,"SIGNED_RED_RGTC1_Format",0,36284,"SRGBColorSpace",0,D,"SRGBTransfer",0,B,"Scene",0,iB,"ShaderMaterial",0,ib,"ShadowMaterial",0,au,"Shape",0,rO,"ShapeGeometry",0,ae,"ShapePath",0,oI,"ShapeUtils",0,r1,"ShortType",0,1011,"Skeleton",0,ns,"SkeletonHelper",0,ou,"SkinnedMesh",0,nt,"Source",0,ep,"Sphere",0,eY,"SphereGeometry",0,at,"Spherical",0,s6,"SphericalHarmonics3",0,so,"SplineCurve",0,rM,"SpotLight",0,a6,"SpotLightHelper",0,oa,"Sprite",0,iZ,"SpriteMaterial",0,iO,"SrcAlphaFactor",0,204,"SrcAlphaSaturateFactor",0,210,"SrcColorFactor",0,202,"StaticCopyUsage",0,35046,"StaticDrawUsage",0,35044,"StaticReadUsage",0,35045,"StereoCamera",0,sb,"StreamCopyUsage",0,35042,"StreamDrawUsage",0,35040,"StreamReadUsage",0,35041,"StringKeyframeTrack",0,aF,"SubtractEquation",0,101,"SubtractiveBlending",0,3,"TOUCH",0,C,"TangentSpaceNormalMap",0,0,"TetrahedronGeometry",0,ai,"Texture",0,ev,"TextureLoader",0,aJ,"TextureUtils",0,oU,"TorusGeometry",0,an,"TorusKnotGeometry",0,ar,"Triangle",0,tL,"TriangleFanDrawMode",0,2,"TriangleStripDrawMode",0,1,"TrianglesDrawMode",0,0,"TubeGeometry",0,aa,"UVMapping",0,300,"Uint16BufferAttribute",0,t0,"Uint32BufferAttribute",0,t2,"Uint8BufferAttribute",0,tZ,"Uint8ClampedBufferAttribute",0,tJ,"Uniform",0,sZ,"UniformsGroup",0,s$,"UniformsUtils",0,iM,"UnsignedByteType",0,1009,"UnsignedInt248Type",0,1020,"UnsignedInt5999Type",0,35902,"UnsignedIntType",0,1014,"UnsignedShort4444Type",0,1017,"UnsignedShort5551Type",0,1018,"UnsignedShortType",0,1012,"VSMShadowMap",0,3,"Vector2",0,Q,"Vector3",0,eE,"Vector4",0,ex,"VectorKeyframeTrack",0,aO,"VideoTexture",0,n8,"WebGL3DRenderTarget",0,ew,"WebGLArrayRenderTarget",0,eM,"WebGLCoordinateSystem",0,2e3,"WebGLCubeRenderTarget",0,iD,"WebGLMultipleRenderTargets",0,oN,"WebGLRenderTarget",0,eS,"WebGPUCoordinateSystem",0,2001,"WireframeGeometry",0,as,"WrapAroundEnding",0,2402,"ZeroCurvatureEnding",0,2400,"ZeroFactor",0,200,"ZeroSlopeEnding",0,2401,"ZeroStencilOp",0,0,"arrayNeedsUint32",0,Z,"cloneUniforms",0,iy,"createCanvasElement",0,et,"createElementNS",0,ee,"getByteLength",0,oB,"getUnlitUniformColorSpace",0,iA,"mergeUniforms",0,iS,"probeAsync",0,er,"toNormalizedProjectionMatrix",0,ea,"toReversedProjectionMatrix",0,es,"warnOnce",0,en],90072);let oz={alphahash_fragment:"#ifdef USE_ALPHAHASH\n if ( diffuseColor.a < getAlphaHashThreshold( vPosition ) ) discard;\n#endif",alphahash_pars_fragment:"#ifdef USE_ALPHAHASH\n const float ALPHA_HASH_SCALE = 0.05;\n float hash2D( vec2 value ) {\n return fract( 1.0e4 * sin( 17.0 * value.x + 0.1 * value.y ) * ( 0.1 + abs( sin( 13.0 * value.y + value.x ) ) ) );\n }\n float hash3D( vec3 value ) {\n return hash2D( vec2( hash2D( value.xy ), value.z ) );\n }\n float getAlphaHashThreshold( vec3 position ) {\n float maxDeriv = max(\n length( dFdx( position.xyz ) ),\n length( dFdy( position.xyz ) )\n );\n float pixScale = 1.0 / ( ALPHA_HASH_SCALE * maxDeriv );\n vec2 pixScales = vec2(\n exp2( floor( log2( pixScale ) ) ),\n exp2( ceil( log2( pixScale ) ) )\n );\n vec2 alpha = vec2(\n hash3D( floor( pixScales.x * position.xyz ) ),\n hash3D( floor( pixScales.y * position.xyz ) )\n );\n float lerpFactor = fract( log2( pixScale ) );\n float x = ( 1.0 - lerpFactor ) * alpha.x + lerpFactor * alpha.y;\n float a = min( lerpFactor, 1.0 - lerpFactor );\n vec3 cases = vec3(\n x * x / ( 2.0 * a * ( 1.0 - a ) ),\n ( x - 0.5 * a ) / ( 1.0 - a ),\n 1.0 - ( ( 1.0 - x ) * ( 1.0 - x ) / ( 2.0 * a * ( 1.0 - a ) ) )\n );\n float threshold = ( x < ( 1.0 - a ) )\n ? ( ( x < a ) ? cases.x : cases.y )\n : cases.z;\n return clamp( threshold , 1.0e-6, 1.0 );\n }\n#endif",alphamap_fragment:"#ifdef USE_ALPHAMAP\n diffuseColor.a *= texture2D( alphaMap, vAlphaMapUv ).g;\n#endif",alphamap_pars_fragment:"#ifdef USE_ALPHAMAP\n uniform sampler2D alphaMap;\n#endif",alphatest_fragment:"#ifdef USE_ALPHATEST\n #ifdef ALPHA_TO_COVERAGE\n diffuseColor.a = smoothstep( alphaTest, alphaTest + fwidth( diffuseColor.a ), diffuseColor.a );\n if ( diffuseColor.a == 0.0 ) discard;\n #else\n if ( diffuseColor.a < alphaTest ) discard;\n #endif\n#endif",alphatest_pars_fragment:"#ifdef USE_ALPHATEST\n uniform float alphaTest;\n#endif",aomap_fragment:"#ifdef USE_AOMAP\n float ambientOcclusion = ( texture2D( aoMap, vAoMapUv ).r - 1.0 ) * aoMapIntensity + 1.0;\n reflectedLight.indirectDiffuse *= ambientOcclusion;\n #if defined( USE_CLEARCOAT ) \n clearcoatSpecularIndirect *= ambientOcclusion;\n #endif\n #if defined( USE_SHEEN ) \n sheenSpecularIndirect *= ambientOcclusion;\n #endif\n #if defined( USE_ENVMAP ) && defined( STANDARD )\n float dotNV = saturate( dot( geometryNormal, geometryViewDir ) );\n reflectedLight.indirectSpecular *= computeSpecularOcclusion( dotNV, ambientOcclusion, material.roughness );\n #endif\n#endif",aomap_pars_fragment:"#ifdef USE_AOMAP\n uniform sampler2D aoMap;\n uniform float aoMapIntensity;\n#endif",batching_pars_vertex:"#ifdef USE_BATCHING\n #if ! defined( GL_ANGLE_multi_draw )\n #define gl_DrawID _gl_DrawID\n uniform int _gl_DrawID;\n #endif\n uniform highp sampler2D batchingTexture;\n uniform highp usampler2D batchingIdTexture;\n mat4 getBatchingMatrix( const in float i ) {\n int size = textureSize( batchingTexture, 0 ).x;\n int j = int( i ) * 4;\n int x = j % size;\n int y = j / size;\n vec4 v1 = texelFetch( batchingTexture, ivec2( x, y ), 0 );\n vec4 v2 = texelFetch( batchingTexture, ivec2( x + 1, y ), 0 );\n vec4 v3 = texelFetch( batchingTexture, ivec2( x + 2, y ), 0 );\n vec4 v4 = texelFetch( batchingTexture, ivec2( x + 3, y ), 0 );\n return mat4( v1, v2, v3, v4 );\n }\n float getIndirectIndex( const in int i ) {\n int size = textureSize( batchingIdTexture, 0 ).x;\n int x = i % size;\n int y = i / size;\n return float( texelFetch( batchingIdTexture, ivec2( x, y ), 0 ).r );\n }\n#endif\n#ifdef USE_BATCHING_COLOR\n uniform sampler2D batchingColorTexture;\n vec3 getBatchingColor( const in float i ) {\n int size = textureSize( batchingColorTexture, 0 ).x;\n int j = int( i );\n int x = j % size;\n int y = j / size;\n return texelFetch( batchingColorTexture, ivec2( x, y ), 0 ).rgb;\n }\n#endif",batching_vertex:"#ifdef USE_BATCHING\n mat4 batchingMatrix = getBatchingMatrix( getIndirectIndex( gl_DrawID ) );\n#endif",begin_vertex:"vec3 transformed = vec3( position );\n#ifdef USE_ALPHAHASH\n vPosition = vec3( position );\n#endif",beginnormal_vertex:"vec3 objectNormal = vec3( normal );\n#ifdef USE_TANGENT\n vec3 objectTangent = vec3( tangent.xyz );\n#endif",bsdfs:"float G_BlinnPhong_Implicit( ) {\n return 0.25;\n}\nfloat D_BlinnPhong( const in float shininess, const in float dotNH ) {\n return RECIPROCAL_PI * ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess );\n}\nvec3 BRDF_BlinnPhong( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in vec3 specularColor, const in float shininess ) {\n vec3 halfDir = normalize( lightDir + viewDir );\n float dotNH = saturate( dot( normal, halfDir ) );\n float dotVH = saturate( dot( viewDir, halfDir ) );\n vec3 F = F_Schlick( specularColor, 1.0, dotVH );\n float G = G_BlinnPhong_Implicit( );\n float D = D_BlinnPhong( shininess, dotNH );\n return F * ( G * D );\n} // validated",iridescence_fragment:"#ifdef USE_IRIDESCENCE\n const mat3 XYZ_TO_REC709 = mat3(\n 3.2404542, -0.9692660, 0.0556434,\n -1.5371385, 1.8760108, -0.2040259,\n -0.4985314, 0.0415560, 1.0572252\n );\n vec3 Fresnel0ToIor( vec3 fresnel0 ) {\n vec3 sqrtF0 = sqrt( fresnel0 );\n return ( vec3( 1.0 ) + sqrtF0 ) / ( vec3( 1.0 ) - sqrtF0 );\n }\n vec3 IorToFresnel0( vec3 transmittedIor, float incidentIor ) {\n return pow2( ( transmittedIor - vec3( incidentIor ) ) / ( transmittedIor + vec3( incidentIor ) ) );\n }\n float IorToFresnel0( float transmittedIor, float incidentIor ) {\n return pow2( ( transmittedIor - incidentIor ) / ( transmittedIor + incidentIor ));\n }\n vec3 evalSensitivity( float OPD, vec3 shift ) {\n float phase = 2.0 * PI * OPD * 1.0e-9;\n vec3 val = vec3( 5.4856e-13, 4.4201e-13, 5.2481e-13 );\n vec3 pos = vec3( 1.6810e+06, 1.7953e+06, 2.2084e+06 );\n vec3 var = vec3( 4.3278e+09, 9.3046e+09, 6.6121e+09 );\n vec3 xyz = val * sqrt( 2.0 * PI * var ) * cos( pos * phase + shift ) * exp( - pow2( phase ) * var );\n xyz.x += 9.7470e-14 * sqrt( 2.0 * PI * 4.5282e+09 ) * cos( 2.2399e+06 * phase + shift[ 0 ] ) * exp( - 4.5282e+09 * pow2( phase ) );\n xyz /= 1.0685e-7;\n vec3 rgb = XYZ_TO_REC709 * xyz;\n return rgb;\n }\n vec3 evalIridescence( float outsideIOR, float eta2, float cosTheta1, float thinFilmThickness, vec3 baseF0 ) {\n vec3 I;\n float iridescenceIOR = mix( outsideIOR, eta2, smoothstep( 0.0, 0.03, thinFilmThickness ) );\n float sinTheta2Sq = pow2( outsideIOR / iridescenceIOR ) * ( 1.0 - pow2( cosTheta1 ) );\n float cosTheta2Sq = 1.0 - sinTheta2Sq;\n if ( cosTheta2Sq < 0.0 ) {\n return vec3( 1.0 );\n }\n float cosTheta2 = sqrt( cosTheta2Sq );\n float R0 = IorToFresnel0( iridescenceIOR, outsideIOR );\n float R12 = F_Schlick( R0, 1.0, cosTheta1 );\n float T121 = 1.0 - R12;\n float phi12 = 0.0;\n if ( iridescenceIOR < outsideIOR ) phi12 = PI;\n float phi21 = PI - phi12;\n vec3 baseIOR = Fresnel0ToIor( clamp( baseF0, 0.0, 0.9999 ) ); vec3 R1 = IorToFresnel0( baseIOR, iridescenceIOR );\n vec3 R23 = F_Schlick( R1, 1.0, cosTheta2 );\n vec3 phi23 = vec3( 0.0 );\n if ( baseIOR[ 0 ] < iridescenceIOR ) phi23[ 0 ] = PI;\n if ( baseIOR[ 1 ] < iridescenceIOR ) phi23[ 1 ] = PI;\n if ( baseIOR[ 2 ] < iridescenceIOR ) phi23[ 2 ] = PI;\n float OPD = 2.0 * iridescenceIOR * thinFilmThickness * cosTheta2;\n vec3 phi = vec3( phi21 ) + phi23;\n vec3 R123 = clamp( R12 * R23, 1e-5, 0.9999 );\n vec3 r123 = sqrt( R123 );\n vec3 Rs = pow2( T121 ) * R23 / ( vec3( 1.0 ) - R123 );\n vec3 C0 = R12 + Rs;\n I = C0;\n vec3 Cm = Rs - T121;\n for ( int m = 1; m <= 2; ++ m ) {\n Cm *= r123;\n vec3 Sm = 2.0 * evalSensitivity( float( m ) * OPD, float( m ) * phi );\n I += Cm * Sm;\n }\n return max( I, vec3( 0.0 ) );\n }\n#endif",bumpmap_pars_fragment:"#ifdef USE_BUMPMAP\n uniform sampler2D bumpMap;\n uniform float bumpScale;\n vec2 dHdxy_fwd() {\n vec2 dSTdx = dFdx( vBumpMapUv );\n vec2 dSTdy = dFdy( vBumpMapUv );\n float Hll = bumpScale * texture2D( bumpMap, vBumpMapUv ).x;\n float dBx = bumpScale * texture2D( bumpMap, vBumpMapUv + dSTdx ).x - Hll;\n float dBy = bumpScale * texture2D( bumpMap, vBumpMapUv + dSTdy ).x - Hll;\n return vec2( dBx, dBy );\n }\n vec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy, float faceDirection ) {\n vec3 vSigmaX = normalize( dFdx( surf_pos.xyz ) );\n vec3 vSigmaY = normalize( dFdy( surf_pos.xyz ) );\n vec3 vN = surf_norm;\n vec3 R1 = cross( vSigmaY, vN );\n vec3 R2 = cross( vN, vSigmaX );\n float fDet = dot( vSigmaX, R1 ) * faceDirection;\n vec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 );\n return normalize( abs( fDet ) * surf_norm - vGrad );\n }\n#endif",clipping_planes_fragment:"#if NUM_CLIPPING_PLANES > 0\n vec4 plane;\n #ifdef ALPHA_TO_COVERAGE\n float distanceToPlane, distanceGradient;\n float clipOpacity = 1.0;\n #pragma unroll_loop_start\n for ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\n plane = clippingPlanes[ i ];\n distanceToPlane = - dot( vClipPosition, plane.xyz ) + plane.w;\n distanceGradient = fwidth( distanceToPlane ) / 2.0;\n clipOpacity *= smoothstep( - distanceGradient, distanceGradient, distanceToPlane );\n if ( clipOpacity == 0.0 ) discard;\n }\n #pragma unroll_loop_end\n #if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\n float unionClipOpacity = 1.0;\n #pragma unroll_loop_start\n for ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\n plane = clippingPlanes[ i ];\n distanceToPlane = - dot( vClipPosition, plane.xyz ) + plane.w;\n distanceGradient = fwidth( distanceToPlane ) / 2.0;\n unionClipOpacity *= 1.0 - smoothstep( - distanceGradient, distanceGradient, distanceToPlane );\n }\n #pragma unroll_loop_end\n clipOpacity *= 1.0 - unionClipOpacity;\n #endif\n diffuseColor.a *= clipOpacity;\n if ( diffuseColor.a == 0.0 ) discard;\n #else\n #pragma unroll_loop_start\n for ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\n plane = clippingPlanes[ i ];\n if ( dot( vClipPosition, plane.xyz ) > plane.w ) discard;\n }\n #pragma unroll_loop_end\n #if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\n bool clipped = true;\n #pragma unroll_loop_start\n for ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\n plane = clippingPlanes[ i ];\n clipped = ( dot( vClipPosition, plane.xyz ) > plane.w ) && clipped;\n }\n #pragma unroll_loop_end\n if ( clipped ) discard;\n #endif\n #endif\n#endif",clipping_planes_pars_fragment:"#if NUM_CLIPPING_PLANES > 0\n varying vec3 vClipPosition;\n uniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];\n#endif",clipping_planes_pars_vertex:"#if NUM_CLIPPING_PLANES > 0\n varying vec3 vClipPosition;\n#endif",clipping_planes_vertex:"#if NUM_CLIPPING_PLANES > 0\n vClipPosition = - mvPosition.xyz;\n#endif",color_fragment:"#if defined( USE_COLOR_ALPHA )\n diffuseColor *= vColor;\n#elif defined( USE_COLOR )\n diffuseColor.rgb *= vColor;\n#endif",color_pars_fragment:"#if defined( USE_COLOR_ALPHA )\n varying vec4 vColor;\n#elif defined( USE_COLOR )\n varying vec3 vColor;\n#endif",color_pars_vertex:"#if defined( USE_COLOR_ALPHA )\n varying vec4 vColor;\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) || defined( USE_BATCHING_COLOR )\n varying vec3 vColor;\n#endif",color_vertex:"#if defined( USE_COLOR_ALPHA )\n vColor = vec4( 1.0 );\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) || defined( USE_BATCHING_COLOR )\n vColor = vec3( 1.0 );\n#endif\n#ifdef USE_COLOR\n vColor *= color;\n#endif\n#ifdef USE_INSTANCING_COLOR\n vColor.xyz *= instanceColor.xyz;\n#endif\n#ifdef USE_BATCHING_COLOR\n vec3 batchingColor = getBatchingColor( getIndirectIndex( gl_DrawID ) );\n vColor.xyz *= batchingColor.xyz;\n#endif",common:"#define PI 3.141592653589793\n#define PI2 6.283185307179586\n#define PI_HALF 1.5707963267948966\n#define RECIPROCAL_PI 0.3183098861837907\n#define RECIPROCAL_PI2 0.15915494309189535\n#define EPSILON 1e-6\n#ifndef saturate\n#define saturate( a ) clamp( a, 0.0, 1.0 )\n#endif\n#define whiteComplement( a ) ( 1.0 - saturate( a ) )\nfloat pow2( const in float x ) { return x*x; }\nvec3 pow2( const in vec3 x ) { return x*x; }\nfloat pow3( const in float x ) { return x*x*x; }\nfloat pow4( const in float x ) { float x2 = x*x; return x2*x2; }\nfloat max3( const in vec3 v ) { return max( max( v.x, v.y ), v.z ); }\nfloat average( const in vec3 v ) { return dot( v, vec3( 0.3333333 ) ); }\nhighp float rand( const in vec2 uv ) {\n const highp float a = 12.9898, b = 78.233, c = 43758.5453;\n highp float dt = dot( uv.xy, vec2( a,b ) ), sn = mod( dt, PI );\n return fract( sin( sn ) * c );\n}\n#ifdef HIGH_PRECISION\n float precisionSafeLength( vec3 v ) { return length( v ); }\n#else\n float precisionSafeLength( vec3 v ) {\n float maxComponent = max3( abs( v ) );\n return length( v / maxComponent ) * maxComponent;\n }\n#endif\nstruct IncidentLight {\n vec3 color;\n vec3 direction;\n bool visible;\n};\nstruct ReflectedLight {\n vec3 directDiffuse;\n vec3 directSpecular;\n vec3 indirectDiffuse;\n vec3 indirectSpecular;\n};\n#ifdef USE_ALPHAHASH\n varying vec3 vPosition;\n#endif\nvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\n return normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\n}\nvec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) {\n return normalize( ( vec4( dir, 0.0 ) * matrix ).xyz );\n}\nmat3 transposeMat3( const in mat3 m ) {\n mat3 tmp;\n tmp[ 0 ] = vec3( m[ 0 ].x, m[ 1 ].x, m[ 2 ].x );\n tmp[ 1 ] = vec3( m[ 0 ].y, m[ 1 ].y, m[ 2 ].y );\n tmp[ 2 ] = vec3( m[ 0 ].z, m[ 1 ].z, m[ 2 ].z );\n return tmp;\n}\nbool isPerspectiveMatrix( mat4 m ) {\n return m[ 2 ][ 3 ] == - 1.0;\n}\nvec2 equirectUv( in vec3 dir ) {\n float u = atan( dir.z, dir.x ) * RECIPROCAL_PI2 + 0.5;\n float v = asin( clamp( dir.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\n return vec2( u, v );\n}\nvec3 BRDF_Lambert( const in vec3 diffuseColor ) {\n return RECIPROCAL_PI * diffuseColor;\n}\nvec3 F_Schlick( const in vec3 f0, const in float f90, const in float dotVH ) {\n float fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );\n return f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );\n}\nfloat F_Schlick( const in float f0, const in float f90, const in float dotVH ) {\n float fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH );\n return f0 * ( 1.0 - fresnel ) + ( f90 * fresnel );\n} // validated",cube_uv_reflection_fragment:"#ifdef ENVMAP_TYPE_CUBE_UV\n #define cubeUV_minMipLevel 4.0\n #define cubeUV_minTileSize 16.0\n float getFace( vec3 direction ) {\n vec3 absDirection = abs( direction );\n float face = - 1.0;\n if ( absDirection.x > absDirection.z ) {\n if ( absDirection.x > absDirection.y )\n face = direction.x > 0.0 ? 0.0 : 3.0;\n else\n face = direction.y > 0.0 ? 1.0 : 4.0;\n } else {\n if ( absDirection.z > absDirection.y )\n face = direction.z > 0.0 ? 2.0 : 5.0;\n else\n face = direction.y > 0.0 ? 1.0 : 4.0;\n }\n return face;\n }\n vec2 getUV( vec3 direction, float face ) {\n vec2 uv;\n if ( face == 0.0 ) {\n uv = vec2( direction.z, direction.y ) / abs( direction.x );\n } else if ( face == 1.0 ) {\n uv = vec2( - direction.x, - direction.z ) / abs( direction.y );\n } else if ( face == 2.0 ) {\n uv = vec2( - direction.x, direction.y ) / abs( direction.z );\n } else if ( face == 3.0 ) {\n uv = vec2( - direction.z, direction.y ) / abs( direction.x );\n } else if ( face == 4.0 ) {\n uv = vec2( - direction.x, direction.z ) / abs( direction.y );\n } else {\n uv = vec2( direction.x, direction.y ) / abs( direction.z );\n }\n return 0.5 * ( uv + 1.0 );\n }\n vec3 bilinearCubeUV( sampler2D envMap, vec3 direction, float mipInt ) {\n float face = getFace( direction );\n float filterInt = max( cubeUV_minMipLevel - mipInt, 0.0 );\n mipInt = max( mipInt, cubeUV_minMipLevel );\n float faceSize = exp2( mipInt );\n highp vec2 uv = getUV( direction, face ) * ( faceSize - 2.0 ) + 1.0;\n if ( face > 2.0 ) {\n uv.y += faceSize;\n face -= 3.0;\n }\n uv.x += face * faceSize;\n uv.x += filterInt * 3.0 * cubeUV_minTileSize;\n uv.y += 4.0 * ( exp2( CUBEUV_MAX_MIP ) - faceSize );\n uv.x *= CUBEUV_TEXEL_WIDTH;\n uv.y *= CUBEUV_TEXEL_HEIGHT;\n #ifdef texture2DGradEXT\n return texture2DGradEXT( envMap, uv, vec2( 0.0 ), vec2( 0.0 ) ).rgb;\n #else\n return texture2D( envMap, uv ).rgb;\n #endif\n }\n #define cubeUV_r0 1.0\n #define cubeUV_m0 - 2.0\n #define cubeUV_r1 0.8\n #define cubeUV_m1 - 1.0\n #define cubeUV_r4 0.4\n #define cubeUV_m4 2.0\n #define cubeUV_r5 0.305\n #define cubeUV_m5 3.0\n #define cubeUV_r6 0.21\n #define cubeUV_m6 4.0\n float roughnessToMip( float roughness ) {\n float mip = 0.0;\n if ( roughness >= cubeUV_r1 ) {\n mip = ( cubeUV_r0 - roughness ) * ( cubeUV_m1 - cubeUV_m0 ) / ( cubeUV_r0 - cubeUV_r1 ) + cubeUV_m0;\n } else if ( roughness >= cubeUV_r4 ) {\n mip = ( cubeUV_r1 - roughness ) * ( cubeUV_m4 - cubeUV_m1 ) / ( cubeUV_r1 - cubeUV_r4 ) + cubeUV_m1;\n } else if ( roughness >= cubeUV_r5 ) {\n mip = ( cubeUV_r4 - roughness ) * ( cubeUV_m5 - cubeUV_m4 ) / ( cubeUV_r4 - cubeUV_r5 ) + cubeUV_m4;\n } else if ( roughness >= cubeUV_r6 ) {\n mip = ( cubeUV_r5 - roughness ) * ( cubeUV_m6 - cubeUV_m5 ) / ( cubeUV_r5 - cubeUV_r6 ) + cubeUV_m5;\n } else {\n mip = - 2.0 * log2( 1.16 * roughness ); }\n return mip;\n }\n vec4 textureCubeUV( sampler2D envMap, vec3 sampleDir, float roughness ) {\n float mip = clamp( roughnessToMip( roughness ), cubeUV_m0, CUBEUV_MAX_MIP );\n float mipF = fract( mip );\n float mipInt = floor( mip );\n vec3 color0 = bilinearCubeUV( envMap, sampleDir, mipInt );\n if ( mipF == 0.0 ) {\n return vec4( color0, 1.0 );\n } else {\n vec3 color1 = bilinearCubeUV( envMap, sampleDir, mipInt + 1.0 );\n return vec4( mix( color0, color1, mipF ), 1.0 );\n }\n }\n#endif",defaultnormal_vertex:"vec3 transformedNormal = objectNormal;\n#ifdef USE_TANGENT\n vec3 transformedTangent = objectTangent;\n#endif\n#ifdef USE_BATCHING\n mat3 bm = mat3( batchingMatrix );\n transformedNormal /= vec3( dot( bm[ 0 ], bm[ 0 ] ), dot( bm[ 1 ], bm[ 1 ] ), dot( bm[ 2 ], bm[ 2 ] ) );\n transformedNormal = bm * transformedNormal;\n #ifdef USE_TANGENT\n transformedTangent = bm * transformedTangent;\n #endif\n#endif\n#ifdef USE_INSTANCING\n mat3 im = mat3( instanceMatrix );\n transformedNormal /= vec3( dot( im[ 0 ], im[ 0 ] ), dot( im[ 1 ], im[ 1 ] ), dot( im[ 2 ], im[ 2 ] ) );\n transformedNormal = im * transformedNormal;\n #ifdef USE_TANGENT\n transformedTangent = im * transformedTangent;\n #endif\n#endif\ntransformedNormal = normalMatrix * transformedNormal;\n#ifdef FLIP_SIDED\n transformedNormal = - transformedNormal;\n#endif\n#ifdef USE_TANGENT\n transformedTangent = ( modelViewMatrix * vec4( transformedTangent, 0.0 ) ).xyz;\n #ifdef FLIP_SIDED\n transformedTangent = - transformedTangent;\n #endif\n#endif",displacementmap_pars_vertex:"#ifdef USE_DISPLACEMENTMAP\n uniform sampler2D displacementMap;\n uniform float displacementScale;\n uniform float displacementBias;\n#endif",displacementmap_vertex:"#ifdef USE_DISPLACEMENTMAP\n transformed += normalize( objectNormal ) * ( texture2D( displacementMap, vDisplacementMapUv ).x * displacementScale + displacementBias );\n#endif",emissivemap_fragment:"#ifdef USE_EMISSIVEMAP\n vec4 emissiveColor = texture2D( emissiveMap, vEmissiveMapUv );\n #ifdef DECODE_VIDEO_TEXTURE_EMISSIVE\n emissiveColor = sRGBTransferEOTF( emissiveColor );\n #endif\n totalEmissiveRadiance *= emissiveColor.rgb;\n#endif",emissivemap_pars_fragment:"#ifdef USE_EMISSIVEMAP\n uniform sampler2D emissiveMap;\n#endif",colorspace_fragment:"gl_FragColor = linearToOutputTexel( gl_FragColor );",colorspace_pars_fragment:"vec4 LinearTransferOETF( in vec4 value ) {\n return value;\n}\nvec4 sRGBTransferEOTF( in vec4 value ) {\n return vec4( mix( pow( value.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), value.rgb * 0.0773993808, vec3( lessThanEqual( value.rgb, vec3( 0.04045 ) ) ) ), value.a );\n}\nvec4 sRGBTransferOETF( in vec4 value ) {\n return vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.a );\n}",envmap_fragment:"#ifdef USE_ENVMAP\n #ifdef ENV_WORLDPOS\n vec3 cameraToFrag;\n if ( isOrthographic ) {\n cameraToFrag = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\n } else {\n cameraToFrag = normalize( vWorldPosition - cameraPosition );\n }\n vec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n #ifdef ENVMAP_MODE_REFLECTION\n vec3 reflectVec = reflect( cameraToFrag, worldNormal );\n #else\n vec3 reflectVec = refract( cameraToFrag, worldNormal, refractionRatio );\n #endif\n #else\n vec3 reflectVec = vReflect;\n #endif\n #ifdef ENVMAP_TYPE_CUBE\n vec4 envColor = textureCube( envMap, envMapRotation * vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );\n #else\n vec4 envColor = vec4( 0.0 );\n #endif\n #ifdef ENVMAP_BLENDING_MULTIPLY\n outgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );\n #elif defined( ENVMAP_BLENDING_MIX )\n outgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );\n #elif defined( ENVMAP_BLENDING_ADD )\n outgoingLight += envColor.xyz * specularStrength * reflectivity;\n #endif\n#endif",envmap_common_pars_fragment:"#ifdef USE_ENVMAP\n uniform float envMapIntensity;\n uniform float flipEnvMap;\n uniform mat3 envMapRotation;\n #ifdef ENVMAP_TYPE_CUBE\n uniform samplerCube envMap;\n #else\n uniform sampler2D envMap;\n #endif\n \n#endif",envmap_pars_fragment:"#ifdef USE_ENVMAP\n uniform float reflectivity;\n #if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT )\n #define ENV_WORLDPOS\n #endif\n #ifdef ENV_WORLDPOS\n varying vec3 vWorldPosition;\n uniform float refractionRatio;\n #else\n varying vec3 vReflect;\n #endif\n#endif",envmap_pars_vertex:"#ifdef USE_ENVMAP\n #if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT )\n #define ENV_WORLDPOS\n #endif\n #ifdef ENV_WORLDPOS\n \n varying vec3 vWorldPosition;\n #else\n varying vec3 vReflect;\n uniform float refractionRatio;\n #endif\n#endif",envmap_physical_pars_fragment:"#ifdef USE_ENVMAP\n vec3 getIBLIrradiance( const in vec3 normal ) {\n #ifdef ENVMAP_TYPE_CUBE_UV\n vec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n vec4 envMapColor = textureCubeUV( envMap, envMapRotation * worldNormal, 1.0 );\n return PI * envMapColor.rgb * envMapIntensity;\n #else\n return vec3( 0.0 );\n #endif\n }\n vec3 getIBLRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness ) {\n #ifdef ENVMAP_TYPE_CUBE_UV\n vec3 reflectVec = reflect( - viewDir, normal );\n reflectVec = normalize( mix( reflectVec, normal, roughness * roughness) );\n reflectVec = inverseTransformDirection( reflectVec, viewMatrix );\n vec4 envMapColor = textureCubeUV( envMap, envMapRotation * reflectVec, roughness );\n return envMapColor.rgb * envMapIntensity;\n #else\n return vec3( 0.0 );\n #endif\n }\n #ifdef USE_ANISOTROPY\n vec3 getIBLAnisotropyRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness, const in vec3 bitangent, const in float anisotropy ) {\n #ifdef ENVMAP_TYPE_CUBE_UV\n vec3 bentNormal = cross( bitangent, viewDir );\n bentNormal = normalize( cross( bentNormal, bitangent ) );\n bentNormal = normalize( mix( bentNormal, normal, pow2( pow2( 1.0 - anisotropy * ( 1.0 - roughness ) ) ) ) );\n return getIBLRadiance( viewDir, bentNormal, roughness );\n #else\n return vec3( 0.0 );\n #endif\n }\n #endif\n#endif",envmap_vertex:"#ifdef USE_ENVMAP\n #ifdef ENV_WORLDPOS\n vWorldPosition = worldPosition.xyz;\n #else\n vec3 cameraToVertex;\n if ( isOrthographic ) {\n cameraToVertex = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\n } else {\n cameraToVertex = normalize( worldPosition.xyz - cameraPosition );\n }\n vec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\n #ifdef ENVMAP_MODE_REFLECTION\n vReflect = reflect( cameraToVertex, worldNormal );\n #else\n vReflect = refract( cameraToVertex, worldNormal, refractionRatio );\n #endif\n #endif\n#endif",fog_vertex:"#ifdef USE_FOG\n vFogDepth = - mvPosition.z;\n#endif",fog_pars_vertex:"#ifdef USE_FOG\n varying float vFogDepth;\n#endif",fog_fragment:"#ifdef USE_FOG\n #ifdef FOG_EXP2\n float fogFactor = 1.0 - exp( - fogDensity * fogDensity * vFogDepth * vFogDepth );\n #else\n float fogFactor = smoothstep( fogNear, fogFar, vFogDepth );\n #endif\n gl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor );\n#endif",fog_pars_fragment:"#ifdef USE_FOG\n uniform vec3 fogColor;\n varying float vFogDepth;\n #ifdef FOG_EXP2\n uniform float fogDensity;\n #else\n uniform float fogNear;\n uniform float fogFar;\n #endif\n#endif",gradientmap_pars_fragment:"#ifdef USE_GRADIENTMAP\n uniform sampler2D gradientMap;\n#endif\nvec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) {\n float dotNL = dot( normal, lightDirection );\n vec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 );\n #ifdef USE_GRADIENTMAP\n return vec3( texture2D( gradientMap, coord ).r );\n #else\n vec2 fw = fwidth( coord ) * 0.5;\n return mix( vec3( 0.7 ), vec3( 1.0 ), smoothstep( 0.7 - fw.x, 0.7 + fw.x, coord.x ) );\n #endif\n}",lightmap_pars_fragment:"#ifdef USE_LIGHTMAP\n uniform sampler2D lightMap;\n uniform float lightMapIntensity;\n#endif",lights_lambert_fragment:"LambertMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularStrength = specularStrength;",lights_lambert_pars_fragment:"varying vec3 vViewPosition;\nstruct LambertMaterial {\n vec3 diffuseColor;\n float specularStrength;\n};\nvoid RE_Direct_Lambert( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in LambertMaterial material, inout ReflectedLight reflectedLight ) {\n float dotNL = saturate( dot( geometryNormal, directLight.direction ) );\n vec3 irradiance = dotNL * directLight.color;\n reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Lambert( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in LambertMaterial material, inout ReflectedLight reflectedLight ) {\n reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\n#define RE_Direct RE_Direct_Lambert\n#define RE_IndirectDiffuse RE_IndirectDiffuse_Lambert",lights_pars_begin:"uniform bool receiveShadow;\nuniform vec3 ambientLightColor;\n#if defined( USE_LIGHT_PROBES )\n uniform vec3 lightProbe[ 9 ];\n#endif\nvec3 shGetIrradianceAt( in vec3 normal, in vec3 shCoefficients[ 9 ] ) {\n float x = normal.x, y = normal.y, z = normal.z;\n vec3 result = shCoefficients[ 0 ] * 0.886227;\n result += shCoefficients[ 1 ] * 2.0 * 0.511664 * y;\n result += shCoefficients[ 2 ] * 2.0 * 0.511664 * z;\n result += shCoefficients[ 3 ] * 2.0 * 0.511664 * x;\n result += shCoefficients[ 4 ] * 2.0 * 0.429043 * x * y;\n result += shCoefficients[ 5 ] * 2.0 * 0.429043 * y * z;\n result += shCoefficients[ 6 ] * ( 0.743125 * z * z - 0.247708 );\n result += shCoefficients[ 7 ] * 2.0 * 0.429043 * x * z;\n result += shCoefficients[ 8 ] * 0.429043 * ( x * x - y * y );\n return result;\n}\nvec3 getLightProbeIrradiance( const in vec3 lightProbe[ 9 ], const in vec3 normal ) {\n vec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n vec3 irradiance = shGetIrradianceAt( worldNormal, lightProbe );\n return irradiance;\n}\nvec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {\n vec3 irradiance = ambientLightColor;\n return irradiance;\n}\nfloat getDistanceAttenuation( const in float lightDistance, const in float cutoffDistance, const in float decayExponent ) {\n float distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 );\n if ( cutoffDistance > 0.0 ) {\n distanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) );\n }\n return distanceFalloff;\n}\nfloat getSpotAttenuation( const in float coneCosine, const in float penumbraCosine, const in float angleCosine ) {\n return smoothstep( coneCosine, penumbraCosine, angleCosine );\n}\n#if NUM_DIR_LIGHTS > 0\n struct DirectionalLight {\n vec3 direction;\n vec3 color;\n };\n uniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ];\n void getDirectionalLightInfo( const in DirectionalLight directionalLight, out IncidentLight light ) {\n light.color = directionalLight.color;\n light.direction = directionalLight.direction;\n light.visible = true;\n }\n#endif\n#if NUM_POINT_LIGHTS > 0\n struct PointLight {\n vec3 position;\n vec3 color;\n float distance;\n float decay;\n };\n uniform PointLight pointLights[ NUM_POINT_LIGHTS ];\n void getPointLightInfo( const in PointLight pointLight, const in vec3 geometryPosition, out IncidentLight light ) {\n vec3 lVector = pointLight.position - geometryPosition;\n light.direction = normalize( lVector );\n float lightDistance = length( lVector );\n light.color = pointLight.color;\n light.color *= getDistanceAttenuation( lightDistance, pointLight.distance, pointLight.decay );\n light.visible = ( light.color != vec3( 0.0 ) );\n }\n#endif\n#if NUM_SPOT_LIGHTS > 0\n struct SpotLight {\n vec3 position;\n vec3 direction;\n vec3 color;\n float distance;\n float decay;\n float coneCos;\n float penumbraCos;\n };\n uniform SpotLight spotLights[ NUM_SPOT_LIGHTS ];\n void getSpotLightInfo( const in SpotLight spotLight, const in vec3 geometryPosition, out IncidentLight light ) {\n vec3 lVector = spotLight.position - geometryPosition;\n light.direction = normalize( lVector );\n float angleCos = dot( light.direction, spotLight.direction );\n float spotAttenuation = getSpotAttenuation( spotLight.coneCos, spotLight.penumbraCos, angleCos );\n if ( spotAttenuation > 0.0 ) {\n float lightDistance = length( lVector );\n light.color = spotLight.color * spotAttenuation;\n light.color *= getDistanceAttenuation( lightDistance, spotLight.distance, spotLight.decay );\n light.visible = ( light.color != vec3( 0.0 ) );\n } else {\n light.color = vec3( 0.0 );\n light.visible = false;\n }\n }\n#endif\n#if NUM_RECT_AREA_LIGHTS > 0\n struct RectAreaLight {\n vec3 color;\n vec3 position;\n vec3 halfWidth;\n vec3 halfHeight;\n };\n uniform sampler2D ltc_1; uniform sampler2D ltc_2;\n uniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ];\n#endif\n#if NUM_HEMI_LIGHTS > 0\n struct HemisphereLight {\n vec3 direction;\n vec3 skyColor;\n vec3 groundColor;\n };\n uniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ];\n vec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in vec3 normal ) {\n float dotNL = dot( normal, hemiLight.direction );\n float hemiDiffuseWeight = 0.5 * dotNL + 0.5;\n vec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight );\n return irradiance;\n }\n#endif",lights_toon_fragment:"ToonMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;",lights_toon_pars_fragment:"varying vec3 vViewPosition;\nstruct ToonMaterial {\n vec3 diffuseColor;\n};\nvoid RE_Direct_Toon( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\n vec3 irradiance = getGradientIrradiance( geometryNormal, directLight.direction ) * directLight.color;\n reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\n reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\n#define RE_Direct RE_Direct_Toon\n#define RE_IndirectDiffuse RE_IndirectDiffuse_Toon",lights_phong_fragment:"BlinnPhongMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularColor = specular;\nmaterial.specularShininess = shininess;\nmaterial.specularStrength = specularStrength;",lights_phong_pars_fragment:"varying vec3 vViewPosition;\nstruct BlinnPhongMaterial {\n vec3 diffuseColor;\n vec3 specularColor;\n float specularShininess;\n float specularStrength;\n};\nvoid RE_Direct_BlinnPhong( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n float dotNL = saturate( dot( geometryNormal, directLight.direction ) );\n vec3 irradiance = dotNL * directLight.color;\n reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n reflectedLight.directSpecular += irradiance * BRDF_BlinnPhong( directLight.direction, geometryViewDir, geometryNormal, material.specularColor, material.specularShininess ) * material.specularStrength;\n}\nvoid RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\n#define RE_Direct RE_Direct_BlinnPhong\n#define RE_IndirectDiffuse RE_IndirectDiffuse_BlinnPhong",lights_physical_fragment:"PhysicalMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor );\nvec3 dxy = max( abs( dFdx( nonPerturbedNormal ) ), abs( dFdy( nonPerturbedNormal ) ) );\nfloat geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z );\nmaterial.roughness = max( roughnessFactor, 0.0525 );material.roughness += geometryRoughness;\nmaterial.roughness = min( material.roughness, 1.0 );\n#ifdef IOR\n material.ior = ior;\n #ifdef USE_SPECULAR\n float specularIntensityFactor = specularIntensity;\n vec3 specularColorFactor = specularColor;\n #ifdef USE_SPECULAR_COLORMAP\n specularColorFactor *= texture2D( specularColorMap, vSpecularColorMapUv ).rgb;\n #endif\n #ifdef USE_SPECULAR_INTENSITYMAP\n specularIntensityFactor *= texture2D( specularIntensityMap, vSpecularIntensityMapUv ).a;\n #endif\n material.specularF90 = mix( specularIntensityFactor, 1.0, metalnessFactor );\n #else\n float specularIntensityFactor = 1.0;\n vec3 specularColorFactor = vec3( 1.0 );\n material.specularF90 = 1.0;\n #endif\n material.specularColor = mix( min( pow2( ( material.ior - 1.0 ) / ( material.ior + 1.0 ) ) * specularColorFactor, vec3( 1.0 ) ) * specularIntensityFactor, diffuseColor.rgb, metalnessFactor );\n#else\n material.specularColor = mix( vec3( 0.04 ), diffuseColor.rgb, metalnessFactor );\n material.specularF90 = 1.0;\n#endif\n#ifdef USE_CLEARCOAT\n material.clearcoat = clearcoat;\n material.clearcoatRoughness = clearcoatRoughness;\n material.clearcoatF0 = vec3( 0.04 );\n material.clearcoatF90 = 1.0;\n #ifdef USE_CLEARCOATMAP\n material.clearcoat *= texture2D( clearcoatMap, vClearcoatMapUv ).x;\n #endif\n #ifdef USE_CLEARCOAT_ROUGHNESSMAP\n material.clearcoatRoughness *= texture2D( clearcoatRoughnessMap, vClearcoatRoughnessMapUv ).y;\n #endif\n material.clearcoat = saturate( material.clearcoat ); material.clearcoatRoughness = max( material.clearcoatRoughness, 0.0525 );\n material.clearcoatRoughness += geometryRoughness;\n material.clearcoatRoughness = min( material.clearcoatRoughness, 1.0 );\n#endif\n#ifdef USE_DISPERSION\n material.dispersion = dispersion;\n#endif\n#ifdef USE_IRIDESCENCE\n material.iridescence = iridescence;\n material.iridescenceIOR = iridescenceIOR;\n #ifdef USE_IRIDESCENCEMAP\n material.iridescence *= texture2D( iridescenceMap, vIridescenceMapUv ).r;\n #endif\n #ifdef USE_IRIDESCENCE_THICKNESSMAP\n material.iridescenceThickness = (iridescenceThicknessMaximum - iridescenceThicknessMinimum) * texture2D( iridescenceThicknessMap, vIridescenceThicknessMapUv ).g + iridescenceThicknessMinimum;\n #else\n material.iridescenceThickness = iridescenceThicknessMaximum;\n #endif\n#endif\n#ifdef USE_SHEEN\n material.sheenColor = sheenColor;\n #ifdef USE_SHEEN_COLORMAP\n material.sheenColor *= texture2D( sheenColorMap, vSheenColorMapUv ).rgb;\n #endif\n material.sheenRoughness = clamp( sheenRoughness, 0.07, 1.0 );\n #ifdef USE_SHEEN_ROUGHNESSMAP\n material.sheenRoughness *= texture2D( sheenRoughnessMap, vSheenRoughnessMapUv ).a;\n #endif\n#endif\n#ifdef USE_ANISOTROPY\n #ifdef USE_ANISOTROPYMAP\n mat2 anisotropyMat = mat2( anisotropyVector.x, anisotropyVector.y, - anisotropyVector.y, anisotropyVector.x );\n vec3 anisotropyPolar = texture2D( anisotropyMap, vAnisotropyMapUv ).rgb;\n vec2 anisotropyV = anisotropyMat * normalize( 2.0 * anisotropyPolar.rg - vec2( 1.0 ) ) * anisotropyPolar.b;\n #else\n vec2 anisotropyV = anisotropyVector;\n #endif\n material.anisotropy = length( anisotropyV );\n if( material.anisotropy == 0.0 ) {\n anisotropyV = vec2( 1.0, 0.0 );\n } else {\n anisotropyV /= material.anisotropy;\n material.anisotropy = saturate( material.anisotropy );\n }\n material.alphaT = mix( pow2( material.roughness ), 1.0, pow2( material.anisotropy ) );\n material.anisotropyT = tbn[ 0 ] * anisotropyV.x + tbn[ 1 ] * anisotropyV.y;\n material.anisotropyB = tbn[ 1 ] * anisotropyV.x - tbn[ 0 ] * anisotropyV.y;\n#endif",lights_physical_pars_fragment:"struct PhysicalMaterial {\n vec3 diffuseColor;\n float roughness;\n vec3 specularColor;\n float specularF90;\n float dispersion;\n #ifdef USE_CLEARCOAT\n float clearcoat;\n float clearcoatRoughness;\n vec3 clearcoatF0;\n float clearcoatF90;\n #endif\n #ifdef USE_IRIDESCENCE\n float iridescence;\n float iridescenceIOR;\n float iridescenceThickness;\n vec3 iridescenceFresnel;\n vec3 iridescenceF0;\n #endif\n #ifdef USE_SHEEN\n vec3 sheenColor;\n float sheenRoughness;\n #endif\n #ifdef IOR\n float ior;\n #endif\n #ifdef USE_TRANSMISSION\n float transmission;\n float transmissionAlpha;\n float thickness;\n float attenuationDistance;\n vec3 attenuationColor;\n #endif\n #ifdef USE_ANISOTROPY\n float anisotropy;\n float alphaT;\n vec3 anisotropyT;\n vec3 anisotropyB;\n #endif\n};\nvec3 clearcoatSpecularDirect = vec3( 0.0 );\nvec3 clearcoatSpecularIndirect = vec3( 0.0 );\nvec3 sheenSpecularDirect = vec3( 0.0 );\nvec3 sheenSpecularIndirect = vec3(0.0 );\nvec3 Schlick_to_F0( const in vec3 f, const in float f90, const in float dotVH ) {\n float x = clamp( 1.0 - dotVH, 0.0, 1.0 );\n float x2 = x * x;\n float x5 = clamp( x * x2 * x2, 0.0, 0.9999 );\n return ( f - vec3( f90 ) * x5 ) / ( 1.0 - x5 );\n}\nfloat V_GGX_SmithCorrelated( const in float alpha, const in float dotNL, const in float dotNV ) {\n float a2 = pow2( alpha );\n float gv = dotNL * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\n float gl = dotNV * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\n return 0.5 / max( gv + gl, EPSILON );\n}\nfloat D_GGX( const in float alpha, const in float dotNH ) {\n float a2 = pow2( alpha );\n float denom = pow2( dotNH ) * ( a2 - 1.0 ) + 1.0;\n return RECIPROCAL_PI * a2 / pow2( denom );\n}\n#ifdef USE_ANISOTROPY\n float V_GGX_SmithCorrelated_Anisotropic( const in float alphaT, const in float alphaB, const in float dotTV, const in float dotBV, const in float dotTL, const in float dotBL, const in float dotNV, const in float dotNL ) {\n float gv = dotNL * length( vec3( alphaT * dotTV, alphaB * dotBV, dotNV ) );\n float gl = dotNV * length( vec3( alphaT * dotTL, alphaB * dotBL, dotNL ) );\n float v = 0.5 / ( gv + gl );\n return saturate(v);\n }\n float D_GGX_Anisotropic( const in float alphaT, const in float alphaB, const in float dotNH, const in float dotTH, const in float dotBH ) {\n float a2 = alphaT * alphaB;\n highp vec3 v = vec3( alphaB * dotTH, alphaT * dotBH, a2 * dotNH );\n highp float v2 = dot( v, v );\n float w2 = a2 / v2;\n return RECIPROCAL_PI * a2 * pow2 ( w2 );\n }\n#endif\n#ifdef USE_CLEARCOAT\n vec3 BRDF_GGX_Clearcoat( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in PhysicalMaterial material) {\n vec3 f0 = material.clearcoatF0;\n float f90 = material.clearcoatF90;\n float roughness = material.clearcoatRoughness;\n float alpha = pow2( roughness );\n vec3 halfDir = normalize( lightDir + viewDir );\n float dotNL = saturate( dot( normal, lightDir ) );\n float dotNV = saturate( dot( normal, viewDir ) );\n float dotNH = saturate( dot( normal, halfDir ) );\n float dotVH = saturate( dot( viewDir, halfDir ) );\n vec3 F = F_Schlick( f0, f90, dotVH );\n float V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );\n float D = D_GGX( alpha, dotNH );\n return F * ( V * D );\n }\n#endif\nvec3 BRDF_GGX( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in PhysicalMaterial material ) {\n vec3 f0 = material.specularColor;\n float f90 = material.specularF90;\n float roughness = material.roughness;\n float alpha = pow2( roughness );\n vec3 halfDir = normalize( lightDir + viewDir );\n float dotNL = saturate( dot( normal, lightDir ) );\n float dotNV = saturate( dot( normal, viewDir ) );\n float dotNH = saturate( dot( normal, halfDir ) );\n float dotVH = saturate( dot( viewDir, halfDir ) );\n vec3 F = F_Schlick( f0, f90, dotVH );\n #ifdef USE_IRIDESCENCE\n F = mix( F, material.iridescenceFresnel, material.iridescence );\n #endif\n #ifdef USE_ANISOTROPY\n float dotTL = dot( material.anisotropyT, lightDir );\n float dotTV = dot( material.anisotropyT, viewDir );\n float dotTH = dot( material.anisotropyT, halfDir );\n float dotBL = dot( material.anisotropyB, lightDir );\n float dotBV = dot( material.anisotropyB, viewDir );\n float dotBH = dot( material.anisotropyB, halfDir );\n float V = V_GGX_SmithCorrelated_Anisotropic( material.alphaT, alpha, dotTV, dotBV, dotTL, dotBL, dotNV, dotNL );\n float D = D_GGX_Anisotropic( material.alphaT, alpha, dotNH, dotTH, dotBH );\n #else\n float V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV );\n float D = D_GGX( alpha, dotNH );\n #endif\n return F * ( V * D );\n}\nvec2 LTC_Uv( const in vec3 N, const in vec3 V, const in float roughness ) {\n const float LUT_SIZE = 64.0;\n const float LUT_SCALE = ( LUT_SIZE - 1.0 ) / LUT_SIZE;\n const float LUT_BIAS = 0.5 / LUT_SIZE;\n float dotNV = saturate( dot( N, V ) );\n vec2 uv = vec2( roughness, sqrt( 1.0 - dotNV ) );\n uv = uv * LUT_SCALE + LUT_BIAS;\n return uv;\n}\nfloat LTC_ClippedSphereFormFactor( const in vec3 f ) {\n float l = length( f );\n return max( ( l * l + f.z ) / ( l + 1.0 ), 0.0 );\n}\nvec3 LTC_EdgeVectorFormFactor( const in vec3 v1, const in vec3 v2 ) {\n float x = dot( v1, v2 );\n float y = abs( x );\n float a = 0.8543985 + ( 0.4965155 + 0.0145206 * y ) * y;\n float b = 3.4175940 + ( 4.1616724 + y ) * y;\n float v = a / b;\n float theta_sintheta = ( x > 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v;\n return cross( v1, v2 ) * theta_sintheta;\n}\nvec3 LTC_Evaluate( const in vec3 N, const in vec3 V, const in vec3 P, const in mat3 mInv, const in vec3 rectCoords[ 4 ] ) {\n vec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ];\n vec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ];\n vec3 lightNormal = cross( v1, v2 );\n if( dot( lightNormal, P - rectCoords[ 0 ] ) < 0.0 ) return vec3( 0.0 );\n vec3 T1, T2;\n T1 = normalize( V - N * dot( V, N ) );\n T2 = - cross( N, T1 );\n mat3 mat = mInv * transposeMat3( mat3( T1, T2, N ) );\n vec3 coords[ 4 ];\n coords[ 0 ] = mat * ( rectCoords[ 0 ] - P );\n coords[ 1 ] = mat * ( rectCoords[ 1 ] - P );\n coords[ 2 ] = mat * ( rectCoords[ 2 ] - P );\n coords[ 3 ] = mat * ( rectCoords[ 3 ] - P );\n coords[ 0 ] = normalize( coords[ 0 ] );\n coords[ 1 ] = normalize( coords[ 1 ] );\n coords[ 2 ] = normalize( coords[ 2 ] );\n coords[ 3 ] = normalize( coords[ 3 ] );\n vec3 vectorFormFactor = vec3( 0.0 );\n vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 0 ], coords[ 1 ] );\n vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 1 ], coords[ 2 ] );\n vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 2 ], coords[ 3 ] );\n vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 3 ], coords[ 0 ] );\n float result = LTC_ClippedSphereFormFactor( vectorFormFactor );\n return vec3( result );\n}\n#if defined( USE_SHEEN )\nfloat D_Charlie( float roughness, float dotNH ) {\n float alpha = pow2( roughness );\n float invAlpha = 1.0 / alpha;\n float cos2h = dotNH * dotNH;\n float sin2h = max( 1.0 - cos2h, 0.0078125 );\n return ( 2.0 + invAlpha ) * pow( sin2h, invAlpha * 0.5 ) / ( 2.0 * PI );\n}\nfloat V_Neubelt( float dotNV, float dotNL ) {\n return saturate( 1.0 / ( 4.0 * ( dotNL + dotNV - dotNL * dotNV ) ) );\n}\nvec3 BRDF_Sheen( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, vec3 sheenColor, const in float sheenRoughness ) {\n vec3 halfDir = normalize( lightDir + viewDir );\n float dotNL = saturate( dot( normal, lightDir ) );\n float dotNV = saturate( dot( normal, viewDir ) );\n float dotNH = saturate( dot( normal, halfDir ) );\n float D = D_Charlie( sheenRoughness, dotNH );\n float V = V_Neubelt( dotNV, dotNL );\n return sheenColor * ( D * V );\n}\n#endif\nfloat IBLSheenBRDF( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {\n float dotNV = saturate( dot( normal, viewDir ) );\n float r2 = roughness * roughness;\n float a = roughness < 0.25 ? -339.2 * r2 + 161.4 * roughness - 25.9 : -8.48 * r2 + 14.3 * roughness - 9.95;\n float b = roughness < 0.25 ? 44.0 * r2 - 23.7 * roughness + 3.26 : 1.97 * r2 - 3.27 * roughness + 0.72;\n float DG = exp( a * dotNV + b ) + ( roughness < 0.25 ? 0.0 : 0.1 * ( roughness - 0.25 ) );\n return saturate( DG * RECIPROCAL_PI );\n}\nvec2 DFGApprox( const in vec3 normal, const in vec3 viewDir, const in float roughness ) {\n float dotNV = saturate( dot( normal, viewDir ) );\n const vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 );\n const vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 );\n vec4 r = roughness * c0 + c1;\n float a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y;\n vec2 fab = vec2( - 1.04, 1.04 ) * a004 + r.zw;\n return fab;\n}\nvec3 EnvironmentBRDF( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness ) {\n vec2 fab = DFGApprox( normal, viewDir, roughness );\n return specularColor * fab.x + specularF90 * fab.y;\n}\n#ifdef USE_IRIDESCENCE\nvoid computeMultiscatteringIridescence( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float iridescence, const in vec3 iridescenceF0, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {\n#else\nvoid computeMultiscattering( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {\n#endif\n vec2 fab = DFGApprox( normal, viewDir, roughness );\n #ifdef USE_IRIDESCENCE\n vec3 Fr = mix( specularColor, iridescenceF0, iridescence );\n #else\n vec3 Fr = specularColor;\n #endif\n vec3 FssEss = Fr * fab.x + specularF90 * fab.y;\n float Ess = fab.x + fab.y;\n float Ems = 1.0 - Ess;\n vec3 Favg = Fr + ( 1.0 - Fr ) * 0.047619; vec3 Fms = FssEss * Favg / ( 1.0 - Ems * Favg );\n singleScatter += FssEss;\n multiScatter += Fms * Ems;\n}\n#if NUM_RECT_AREA_LIGHTS > 0\n void RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n vec3 normal = geometryNormal;\n vec3 viewDir = geometryViewDir;\n vec3 position = geometryPosition;\n vec3 lightPos = rectAreaLight.position;\n vec3 halfWidth = rectAreaLight.halfWidth;\n vec3 halfHeight = rectAreaLight.halfHeight;\n vec3 lightColor = rectAreaLight.color;\n float roughness = material.roughness;\n vec3 rectCoords[ 4 ];\n rectCoords[ 0 ] = lightPos + halfWidth - halfHeight; rectCoords[ 1 ] = lightPos - halfWidth - halfHeight;\n rectCoords[ 2 ] = lightPos - halfWidth + halfHeight;\n rectCoords[ 3 ] = lightPos + halfWidth + halfHeight;\n vec2 uv = LTC_Uv( normal, viewDir, roughness );\n vec4 t1 = texture2D( ltc_1, uv );\n vec4 t2 = texture2D( ltc_2, uv );\n mat3 mInv = mat3(\n vec3( t1.x, 0, t1.y ),\n vec3( 0, 1, 0 ),\n vec3( t1.z, 0, t1.w )\n );\n vec3 fresnel = ( material.specularColor * t2.x + ( vec3( 1.0 ) - material.specularColor ) * t2.y );\n reflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords );\n reflectedLight.directDiffuse += lightColor * material.diffuseColor * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords );\n }\n#endif\nvoid RE_Direct_Physical( const in IncidentLight directLight, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n float dotNL = saturate( dot( geometryNormal, directLight.direction ) );\n vec3 irradiance = dotNL * directLight.color;\n #ifdef USE_CLEARCOAT\n float dotNLcc = saturate( dot( geometryClearcoatNormal, directLight.direction ) );\n vec3 ccIrradiance = dotNLcc * directLight.color;\n clearcoatSpecularDirect += ccIrradiance * BRDF_GGX_Clearcoat( directLight.direction, geometryViewDir, geometryClearcoatNormal, material );\n #endif\n #ifdef USE_SHEEN\n sheenSpecularDirect += irradiance * BRDF_Sheen( directLight.direction, geometryViewDir, geometryNormal, material.sheenColor, material.sheenRoughness );\n #endif\n reflectedLight.directSpecular += irradiance * BRDF_GGX( directLight.direction, geometryViewDir, geometryNormal, material );\n reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearcoatRadiance, const in vec3 geometryPosition, const in vec3 geometryNormal, const in vec3 geometryViewDir, const in vec3 geometryClearcoatNormal, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) {\n #ifdef USE_CLEARCOAT\n clearcoatSpecularIndirect += clearcoatRadiance * EnvironmentBRDF( geometryClearcoatNormal, geometryViewDir, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness );\n #endif\n #ifdef USE_SHEEN\n sheenSpecularIndirect += irradiance * material.sheenColor * IBLSheenBRDF( geometryNormal, geometryViewDir, material.sheenRoughness );\n #endif\n vec3 singleScattering = vec3( 0.0 );\n vec3 multiScattering = vec3( 0.0 );\n vec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI;\n #ifdef USE_IRIDESCENCE\n computeMultiscatteringIridescence( geometryNormal, geometryViewDir, material.specularColor, material.specularF90, material.iridescence, material.iridescenceFresnel, material.roughness, singleScattering, multiScattering );\n #else\n computeMultiscattering( geometryNormal, geometryViewDir, material.specularColor, material.specularF90, material.roughness, singleScattering, multiScattering );\n #endif\n vec3 totalScattering = singleScattering + multiScattering;\n vec3 diffuse = material.diffuseColor * ( 1.0 - max( max( totalScattering.r, totalScattering.g ), totalScattering.b ) );\n reflectedLight.indirectSpecular += radiance * singleScattering;\n reflectedLight.indirectSpecular += multiScattering * cosineWeightedIrradiance;\n reflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance;\n}\n#define RE_Direct RE_Direct_Physical\n#define RE_Direct_RectArea RE_Direct_RectArea_Physical\n#define RE_IndirectDiffuse RE_IndirectDiffuse_Physical\n#define RE_IndirectSpecular RE_IndirectSpecular_Physical\nfloat computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) {\n return saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion );\n}",lights_fragment_begin:"\nvec3 geometryPosition = - vViewPosition;\nvec3 geometryNormal = normal;\nvec3 geometryViewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition );\nvec3 geometryClearcoatNormal = vec3( 0.0 );\n#ifdef USE_CLEARCOAT\n geometryClearcoatNormal = clearcoatNormal;\n#endif\n#ifdef USE_IRIDESCENCE\n float dotNVi = saturate( dot( normal, geometryViewDir ) );\n if ( material.iridescenceThickness == 0.0 ) {\n material.iridescence = 0.0;\n } else {\n material.iridescence = saturate( material.iridescence );\n }\n if ( material.iridescence > 0.0 ) {\n material.iridescenceFresnel = evalIridescence( 1.0, material.iridescenceIOR, dotNVi, material.iridescenceThickness, material.specularColor );\n material.iridescenceF0 = Schlick_to_F0( material.iridescenceFresnel, 1.0, dotNVi );\n }\n#endif\nIncidentLight directLight;\n#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct )\n PointLight pointLight;\n #if defined( USE_SHADOWMAP ) && NUM_POINT_LIGHT_SHADOWS > 0\n PointLightShadow pointLightShadow;\n #endif\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\n pointLight = pointLights[ i ];\n getPointLightInfo( pointLight, geometryPosition, directLight );\n #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_POINT_LIGHT_SHADOWS )\n pointLightShadow = pointLightShadows[ i ];\n directLight.color *= ( directLight.visible && receiveShadow ) ? getPointShadow( pointShadowMap[ i ], pointLightShadow.shadowMapSize, pointLightShadow.shadowIntensity, pointLightShadow.shadowBias, pointLightShadow.shadowRadius, vPointShadowCoord[ i ], pointLightShadow.shadowCameraNear, pointLightShadow.shadowCameraFar ) : 1.0;\n #endif\n RE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n }\n #pragma unroll_loop_end\n#endif\n#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct )\n SpotLight spotLight;\n vec4 spotColor;\n vec3 spotLightCoord;\n bool inSpotLightMap;\n #if defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_SHADOWS > 0\n SpotLightShadow spotLightShadow;\n #endif\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\n spotLight = spotLights[ i ];\n getSpotLightInfo( spotLight, geometryPosition, directLight );\n #if ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS )\n #define SPOT_LIGHT_MAP_INDEX UNROLLED_LOOP_INDEX\n #elif ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\n #define SPOT_LIGHT_MAP_INDEX NUM_SPOT_LIGHT_MAPS\n #else\n #define SPOT_LIGHT_MAP_INDEX ( UNROLLED_LOOP_INDEX - NUM_SPOT_LIGHT_SHADOWS + NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS )\n #endif\n #if ( SPOT_LIGHT_MAP_INDEX < NUM_SPOT_LIGHT_MAPS )\n spotLightCoord = vSpotLightCoord[ i ].xyz / vSpotLightCoord[ i ].w;\n inSpotLightMap = all( lessThan( abs( spotLightCoord * 2. - 1. ), vec3( 1.0 ) ) );\n spotColor = texture2D( spotLightMap[ SPOT_LIGHT_MAP_INDEX ], spotLightCoord.xy );\n directLight.color = inSpotLightMap ? directLight.color * spotColor.rgb : directLight.color;\n #endif\n #undef SPOT_LIGHT_MAP_INDEX\n #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\n spotLightShadow = spotLightShadows[ i ];\n directLight.color *= ( directLight.visible && receiveShadow ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowIntensity, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotLightCoord[ i ] ) : 1.0;\n #endif\n RE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n }\n #pragma unroll_loop_end\n#endif\n#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct )\n DirectionalLight directionalLight;\n #if defined( USE_SHADOWMAP ) && NUM_DIR_LIGHT_SHADOWS > 0\n DirectionalLightShadow directionalLightShadow;\n #endif\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\n directionalLight = directionalLights[ i ];\n getDirectionalLightInfo( directionalLight, directLight );\n #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_DIR_LIGHT_SHADOWS )\n directionalLightShadow = directionalLightShadows[ i ];\n directLight.color *= ( directLight.visible && receiveShadow ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowIntensity, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n #endif\n RE_Direct( directLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n }\n #pragma unroll_loop_end\n#endif\n#if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea )\n RectAreaLight rectAreaLight;\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) {\n rectAreaLight = rectAreaLights[ i ];\n RE_Direct_RectArea( rectAreaLight, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n }\n #pragma unroll_loop_end\n#endif\n#if defined( RE_IndirectDiffuse )\n vec3 iblIrradiance = vec3( 0.0 );\n vec3 irradiance = getAmbientLightIrradiance( ambientLightColor );\n #if defined( USE_LIGHT_PROBES )\n irradiance += getLightProbeIrradiance( lightProbe, geometryNormal );\n #endif\n #if ( NUM_HEMI_LIGHTS > 0 )\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\n irradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometryNormal );\n }\n #pragma unroll_loop_end\n #endif\n#endif\n#if defined( RE_IndirectSpecular )\n vec3 radiance = vec3( 0.0 );\n vec3 clearcoatRadiance = vec3( 0.0 );\n#endif",lights_fragment_maps:"#if defined( RE_IndirectDiffuse )\n #ifdef USE_LIGHTMAP\n vec4 lightMapTexel = texture2D( lightMap, vLightMapUv );\n vec3 lightMapIrradiance = lightMapTexel.rgb * lightMapIntensity;\n irradiance += lightMapIrradiance;\n #endif\n #if defined( USE_ENVMAP ) && defined( STANDARD ) && defined( ENVMAP_TYPE_CUBE_UV )\n iblIrradiance += getIBLIrradiance( geometryNormal );\n #endif\n#endif\n#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular )\n #ifdef USE_ANISOTROPY\n radiance += getIBLAnisotropyRadiance( geometryViewDir, geometryNormal, material.roughness, material.anisotropyB, material.anisotropy );\n #else\n radiance += getIBLRadiance( geometryViewDir, geometryNormal, material.roughness );\n #endif\n #ifdef USE_CLEARCOAT\n clearcoatRadiance += getIBLRadiance( geometryViewDir, geometryClearcoatNormal, material.clearcoatRoughness );\n #endif\n#endif",lights_fragment_end:"#if defined( RE_IndirectDiffuse )\n RE_IndirectDiffuse( irradiance, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n#endif\n#if defined( RE_IndirectSpecular )\n RE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight );\n#endif",logdepthbuf_fragment:"#if defined( USE_LOGDEPTHBUF )\n gl_FragDepth = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5;\n#endif",logdepthbuf_pars_fragment:"#if defined( USE_LOGDEPTHBUF )\n uniform float logDepthBufFC;\n varying float vFragDepth;\n varying float vIsPerspective;\n#endif",logdepthbuf_pars_vertex:"#ifdef USE_LOGDEPTHBUF\n varying float vFragDepth;\n varying float vIsPerspective;\n#endif",logdepthbuf_vertex:"#ifdef USE_LOGDEPTHBUF\n vFragDepth = 1.0 + gl_Position.w;\n vIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) );\n#endif",map_fragment:"#ifdef USE_MAP\n vec4 sampledDiffuseColor = texture2D( map, vMapUv );\n #ifdef DECODE_VIDEO_TEXTURE\n sampledDiffuseColor = sRGBTransferEOTF( sampledDiffuseColor );\n #endif\n diffuseColor *= sampledDiffuseColor;\n#endif",map_pars_fragment:"#ifdef USE_MAP\n uniform sampler2D map;\n#endif",map_particle_fragment:"#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n #if defined( USE_POINTS_UV )\n vec2 uv = vUv;\n #else\n vec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy;\n #endif\n#endif\n#ifdef USE_MAP\n diffuseColor *= texture2D( map, uv );\n#endif\n#ifdef USE_ALPHAMAP\n diffuseColor.a *= texture2D( alphaMap, uv ).g;\n#endif",map_particle_pars_fragment:"#if defined( USE_POINTS_UV )\n varying vec2 vUv;\n#else\n #if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n uniform mat3 uvTransform;\n #endif\n#endif\n#ifdef USE_MAP\n uniform sampler2D map;\n#endif\n#ifdef USE_ALPHAMAP\n uniform sampler2D alphaMap;\n#endif",metalnessmap_fragment:"float metalnessFactor = metalness;\n#ifdef USE_METALNESSMAP\n vec4 texelMetalness = texture2D( metalnessMap, vMetalnessMapUv );\n metalnessFactor *= texelMetalness.b;\n#endif",metalnessmap_pars_fragment:"#ifdef USE_METALNESSMAP\n uniform sampler2D metalnessMap;\n#endif",morphinstance_vertex:"#ifdef USE_INSTANCING_MORPH\n float morphTargetInfluences[ MORPHTARGETS_COUNT ];\n float morphTargetBaseInfluence = texelFetch( morphTexture, ivec2( 0, gl_InstanceID ), 0 ).r;\n for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n morphTargetInfluences[i] = texelFetch( morphTexture, ivec2( i + 1, gl_InstanceID ), 0 ).r;\n }\n#endif",morphcolor_vertex:"#if defined( USE_MORPHCOLORS )\n vColor *= morphTargetBaseInfluence;\n for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n #if defined( USE_COLOR_ALPHA )\n if ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ) * morphTargetInfluences[ i ];\n #elif defined( USE_COLOR )\n if ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ).rgb * morphTargetInfluences[ i ];\n #endif\n }\n#endif",morphnormal_vertex:"#ifdef USE_MORPHNORMALS\n objectNormal *= morphTargetBaseInfluence;\n for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n if ( morphTargetInfluences[ i ] != 0.0 ) objectNormal += getMorph( gl_VertexID, i, 1 ).xyz * morphTargetInfluences[ i ];\n }\n#endif",morphtarget_pars_vertex:"#ifdef USE_MORPHTARGETS\n #ifndef USE_INSTANCING_MORPH\n uniform float morphTargetBaseInfluence;\n uniform float morphTargetInfluences[ MORPHTARGETS_COUNT ];\n #endif\n uniform sampler2DArray morphTargetsTexture;\n uniform ivec2 morphTargetsTextureSize;\n vec4 getMorph( const in int vertexIndex, const in int morphTargetIndex, const in int offset ) {\n int texelIndex = vertexIndex * MORPHTARGETS_TEXTURE_STRIDE + offset;\n int y = texelIndex / morphTargetsTextureSize.x;\n int x = texelIndex - y * morphTargetsTextureSize.x;\n ivec3 morphUV = ivec3( x, y, morphTargetIndex );\n return texelFetch( morphTargetsTexture, morphUV, 0 );\n }\n#endif",morphtarget_vertex:"#ifdef USE_MORPHTARGETS\n transformed *= morphTargetBaseInfluence;\n for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) {\n if ( morphTargetInfluences[ i ] != 0.0 ) transformed += getMorph( gl_VertexID, i, 0 ).xyz * morphTargetInfluences[ i ];\n }\n#endif",normal_fragment_begin:"float faceDirection = gl_FrontFacing ? 1.0 : - 1.0;\n#ifdef FLAT_SHADED\n vec3 fdx = dFdx( vViewPosition );\n vec3 fdy = dFdy( vViewPosition );\n vec3 normal = normalize( cross( fdx, fdy ) );\n#else\n vec3 normal = normalize( vNormal );\n #ifdef DOUBLE_SIDED\n normal *= faceDirection;\n #endif\n#endif\n#if defined( USE_NORMALMAP_TANGENTSPACE ) || defined( USE_CLEARCOAT_NORMALMAP ) || defined( USE_ANISOTROPY )\n #ifdef USE_TANGENT\n mat3 tbn = mat3( normalize( vTangent ), normalize( vBitangent ), normal );\n #else\n mat3 tbn = getTangentFrame( - vViewPosition, normal,\n #if defined( USE_NORMALMAP )\n vNormalMapUv\n #elif defined( USE_CLEARCOAT_NORMALMAP )\n vClearcoatNormalMapUv\n #else\n vUv\n #endif\n );\n #endif\n #if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED )\n tbn[0] *= faceDirection;\n tbn[1] *= faceDirection;\n #endif\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n #ifdef USE_TANGENT\n mat3 tbn2 = mat3( normalize( vTangent ), normalize( vBitangent ), normal );\n #else\n mat3 tbn2 = getTangentFrame( - vViewPosition, normal, vClearcoatNormalMapUv );\n #endif\n #if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED )\n tbn2[0] *= faceDirection;\n tbn2[1] *= faceDirection;\n #endif\n#endif\nvec3 nonPerturbedNormal = normal;",normal_fragment_maps:"#ifdef USE_NORMALMAP_OBJECTSPACE\n normal = texture2D( normalMap, vNormalMapUv ).xyz * 2.0 - 1.0;\n #ifdef FLIP_SIDED\n normal = - normal;\n #endif\n #ifdef DOUBLE_SIDED\n normal = normal * faceDirection;\n #endif\n normal = normalize( normalMatrix * normal );\n#elif defined( USE_NORMALMAP_TANGENTSPACE )\n vec3 mapN = texture2D( normalMap, vNormalMapUv ).xyz * 2.0 - 1.0;\n mapN.xy *= normalScale;\n normal = normalize( tbn * mapN );\n#elif defined( USE_BUMPMAP )\n normal = perturbNormalArb( - vViewPosition, normal, dHdxy_fwd(), faceDirection );\n#endif",normal_pars_fragment:"#ifndef FLAT_SHADED\n varying vec3 vNormal;\n #ifdef USE_TANGENT\n varying vec3 vTangent;\n varying vec3 vBitangent;\n #endif\n#endif",normal_pars_vertex:"#ifndef FLAT_SHADED\n varying vec3 vNormal;\n #ifdef USE_TANGENT\n varying vec3 vTangent;\n varying vec3 vBitangent;\n #endif\n#endif",normal_vertex:"#ifndef FLAT_SHADED\n vNormal = normalize( transformedNormal );\n #ifdef USE_TANGENT\n vTangent = normalize( transformedTangent );\n vBitangent = normalize( cross( vNormal, vTangent ) * tangent.w );\n #endif\n#endif",normalmap_pars_fragment:"#ifdef USE_NORMALMAP\n uniform sampler2D normalMap;\n uniform vec2 normalScale;\n#endif\n#ifdef USE_NORMALMAP_OBJECTSPACE\n uniform mat3 normalMatrix;\n#endif\n#if ! defined ( USE_TANGENT ) && ( defined ( USE_NORMALMAP_TANGENTSPACE ) || defined ( USE_CLEARCOAT_NORMALMAP ) || defined( USE_ANISOTROPY ) )\n mat3 getTangentFrame( vec3 eye_pos, vec3 surf_norm, vec2 uv ) {\n vec3 q0 = dFdx( eye_pos.xyz );\n vec3 q1 = dFdy( eye_pos.xyz );\n vec2 st0 = dFdx( uv.st );\n vec2 st1 = dFdy( uv.st );\n vec3 N = surf_norm;\n vec3 q1perp = cross( q1, N );\n vec3 q0perp = cross( N, q0 );\n vec3 T = q1perp * st0.x + q0perp * st1.x;\n vec3 B = q1perp * st0.y + q0perp * st1.y;\n float det = max( dot( T, T ), dot( B, B ) );\n float scale = ( det == 0.0 ) ? 0.0 : inversesqrt( det );\n return mat3( T * scale, B * scale, N );\n }\n#endif",clearcoat_normal_fragment_begin:"#ifdef USE_CLEARCOAT\n vec3 clearcoatNormal = nonPerturbedNormal;\n#endif",clearcoat_normal_fragment_maps:"#ifdef USE_CLEARCOAT_NORMALMAP\n vec3 clearcoatMapN = texture2D( clearcoatNormalMap, vClearcoatNormalMapUv ).xyz * 2.0 - 1.0;\n clearcoatMapN.xy *= clearcoatNormalScale;\n clearcoatNormal = normalize( tbn2 * clearcoatMapN );\n#endif",clearcoat_pars_fragment:"#ifdef USE_CLEARCOATMAP\n uniform sampler2D clearcoatMap;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n uniform sampler2D clearcoatNormalMap;\n uniform vec2 clearcoatNormalScale;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n uniform sampler2D clearcoatRoughnessMap;\n#endif",iridescence_pars_fragment:"#ifdef USE_IRIDESCENCEMAP\n uniform sampler2D iridescenceMap;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n uniform sampler2D iridescenceThicknessMap;\n#endif",opaque_fragment:"#ifdef OPAQUE\ndiffuseColor.a = 1.0;\n#endif\n#ifdef USE_TRANSMISSION\ndiffuseColor.a *= material.transmissionAlpha;\n#endif\ngl_FragColor = vec4( outgoingLight, diffuseColor.a );",packing:"vec3 packNormalToRGB( const in vec3 normal ) {\n return normalize( normal ) * 0.5 + 0.5;\n}\nvec3 unpackRGBToNormal( const in vec3 rgb ) {\n return 2.0 * rgb.xyz - 1.0;\n}\nconst float PackUpscale = 256. / 255.;const float UnpackDownscale = 255. / 256.;const float ShiftRight8 = 1. / 256.;\nconst float Inv255 = 1. / 255.;\nconst vec4 PackFactors = vec4( 1.0, 256.0, 256.0 * 256.0, 256.0 * 256.0 * 256.0 );\nconst vec2 UnpackFactors2 = vec2( UnpackDownscale, 1.0 / PackFactors.g );\nconst vec3 UnpackFactors3 = vec3( UnpackDownscale / PackFactors.rg, 1.0 / PackFactors.b );\nconst vec4 UnpackFactors4 = vec4( UnpackDownscale / PackFactors.rgb, 1.0 / PackFactors.a );\nvec4 packDepthToRGBA( const in float v ) {\n if( v <= 0.0 )\n return vec4( 0., 0., 0., 0. );\n if( v >= 1.0 )\n return vec4( 1., 1., 1., 1. );\n float vuf;\n float af = modf( v * PackFactors.a, vuf );\n float bf = modf( vuf * ShiftRight8, vuf );\n float gf = modf( vuf * ShiftRight8, vuf );\n return vec4( vuf * Inv255, gf * PackUpscale, bf * PackUpscale, af );\n}\nvec3 packDepthToRGB( const in float v ) {\n if( v <= 0.0 )\n return vec3( 0., 0., 0. );\n if( v >= 1.0 )\n return vec3( 1., 1., 1. );\n float vuf;\n float bf = modf( v * PackFactors.b, vuf );\n float gf = modf( vuf * ShiftRight8, vuf );\n return vec3( vuf * Inv255, gf * PackUpscale, bf );\n}\nvec2 packDepthToRG( const in float v ) {\n if( v <= 0.0 )\n return vec2( 0., 0. );\n if( v >= 1.0 )\n return vec2( 1., 1. );\n float vuf;\n float gf = modf( v * 256., vuf );\n return vec2( vuf * Inv255, gf );\n}\nfloat unpackRGBAToDepth( const in vec4 v ) {\n return dot( v, UnpackFactors4 );\n}\nfloat unpackRGBToDepth( const in vec3 v ) {\n return dot( v, UnpackFactors3 );\n}\nfloat unpackRGToDepth( const in vec2 v ) {\n return v.r * UnpackFactors2.r + v.g * UnpackFactors2.g;\n}\nvec4 pack2HalfToRGBA( const in vec2 v ) {\n vec4 r = vec4( v.x, fract( v.x * 255.0 ), v.y, fract( v.y * 255.0 ) );\n return vec4( r.x - r.y / 255.0, r.y, r.z - r.w / 255.0, r.w );\n}\nvec2 unpackRGBATo2Half( const in vec4 v ) {\n return vec2( v.x + ( v.y / 255.0 ), v.z + ( v.w / 255.0 ) );\n}\nfloat viewZToOrthographicDepth( const in float viewZ, const in float near, const in float far ) {\n return ( viewZ + near ) / ( near - far );\n}\nfloat orthographicDepthToViewZ( const in float depth, const in float near, const in float far ) {\n return depth * ( near - far ) - near;\n}\nfloat viewZToPerspectiveDepth( const in float viewZ, const in float near, const in float far ) {\n return ( ( near + viewZ ) * far ) / ( ( far - near ) * viewZ );\n}\nfloat perspectiveDepthToViewZ( const in float depth, const in float near, const in float far ) {\n return ( near * far ) / ( ( far - near ) * depth - far );\n}",premultiplied_alpha_fragment:"#ifdef PREMULTIPLIED_ALPHA\n gl_FragColor.rgb *= gl_FragColor.a;\n#endif",project_vertex:"vec4 mvPosition = vec4( transformed, 1.0 );\n#ifdef USE_BATCHING\n mvPosition = batchingMatrix * mvPosition;\n#endif\n#ifdef USE_INSTANCING\n mvPosition = instanceMatrix * mvPosition;\n#endif\nmvPosition = modelViewMatrix * mvPosition;\ngl_Position = projectionMatrix * mvPosition;",dithering_fragment:"#ifdef DITHERING\n gl_FragColor.rgb = dithering( gl_FragColor.rgb );\n#endif",dithering_pars_fragment:"#ifdef DITHERING\n vec3 dithering( vec3 color ) {\n float grid_position = rand( gl_FragCoord.xy );\n vec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 );\n dither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position );\n return color + dither_shift_RGB;\n }\n#endif",roughnessmap_fragment:"float roughnessFactor = roughness;\n#ifdef USE_ROUGHNESSMAP\n vec4 texelRoughness = texture2D( roughnessMap, vRoughnessMapUv );\n roughnessFactor *= texelRoughness.g;\n#endif",roughnessmap_pars_fragment:"#ifdef USE_ROUGHNESSMAP\n uniform sampler2D roughnessMap;\n#endif",shadowmap_pars_fragment:"#if NUM_SPOT_LIGHT_COORDS > 0\n varying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ];\n#endif\n#if NUM_SPOT_LIGHT_MAPS > 0\n uniform sampler2D spotLightMap[ NUM_SPOT_LIGHT_MAPS ];\n#endif\n#ifdef USE_SHADOWMAP\n #if NUM_DIR_LIGHT_SHADOWS > 0\n uniform sampler2D directionalShadowMap[ NUM_DIR_LIGHT_SHADOWS ];\n varying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\n struct DirectionalLightShadow {\n float shadowIntensity;\n float shadowBias;\n float shadowNormalBias;\n float shadowRadius;\n vec2 shadowMapSize;\n };\n uniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\n #endif\n #if NUM_SPOT_LIGHT_SHADOWS > 0\n uniform sampler2D spotShadowMap[ NUM_SPOT_LIGHT_SHADOWS ];\n struct SpotLightShadow {\n float shadowIntensity;\n float shadowBias;\n float shadowNormalBias;\n float shadowRadius;\n vec2 shadowMapSize;\n };\n uniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\n #endif\n #if NUM_POINT_LIGHT_SHADOWS > 0\n uniform sampler2D pointShadowMap[ NUM_POINT_LIGHT_SHADOWS ];\n varying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\n struct PointLightShadow {\n float shadowIntensity;\n float shadowBias;\n float shadowNormalBias;\n float shadowRadius;\n vec2 shadowMapSize;\n float shadowCameraNear;\n float shadowCameraFar;\n };\n uniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\n #endif\n float texture2DCompare( sampler2D depths, vec2 uv, float compare ) {\n return step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) );\n }\n vec2 texture2DDistribution( sampler2D shadow, vec2 uv ) {\n return unpackRGBATo2Half( texture2D( shadow, uv ) );\n }\n float VSMShadow (sampler2D shadow, vec2 uv, float compare ){\n float occlusion = 1.0;\n vec2 distribution = texture2DDistribution( shadow, uv );\n float hard_shadow = step( compare , distribution.x );\n if (hard_shadow != 1.0 ) {\n float distance = compare - distribution.x ;\n float variance = max( 0.00000, distribution.y * distribution.y );\n float softness_probability = variance / (variance + distance * distance ); softness_probability = clamp( ( softness_probability - 0.3 ) / ( 0.95 - 0.3 ), 0.0, 1.0 ); occlusion = clamp( max( hard_shadow, softness_probability ), 0.0, 1.0 );\n }\n return occlusion;\n }\n float getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowIntensity, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\n float shadow = 1.0;\n shadowCoord.xyz /= shadowCoord.w;\n shadowCoord.z += shadowBias;\n bool inFrustum = shadowCoord.x >= 0.0 && shadowCoord.x <= 1.0 && shadowCoord.y >= 0.0 && shadowCoord.y <= 1.0;\n bool frustumTest = inFrustum && shadowCoord.z <= 1.0;\n if ( frustumTest ) {\n #if defined( SHADOWMAP_TYPE_PCF )\n vec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n float dx0 = - texelSize.x * shadowRadius;\n float dy0 = - texelSize.y * shadowRadius;\n float dx1 = + texelSize.x * shadowRadius;\n float dy1 = + texelSize.y * shadowRadius;\n float dx2 = dx0 / 2.0;\n float dy2 = dy0 / 2.0;\n float dx3 = dx1 / 2.0;\n float dy3 = dy1 / 2.0;\n shadow = (\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy2 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy2 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy2 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, 0.0 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, 0.0 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy3 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy3 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy3 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z )\n ) * ( 1.0 / 17.0 );\n #elif defined( SHADOWMAP_TYPE_PCF_SOFT )\n vec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n float dx = texelSize.x;\n float dy = texelSize.y;\n vec2 uv = shadowCoord.xy;\n vec2 f = fract( uv * shadowMapSize + 0.5 );\n uv -= f * texelSize;\n shadow = (\n texture2DCompare( shadowMap, uv, shadowCoord.z ) +\n texture2DCompare( shadowMap, uv + vec2( dx, 0.0 ), shadowCoord.z ) +\n texture2DCompare( shadowMap, uv + vec2( 0.0, dy ), shadowCoord.z ) +\n texture2DCompare( shadowMap, uv + texelSize, shadowCoord.z ) +\n mix( texture2DCompare( shadowMap, uv + vec2( -dx, 0.0 ), shadowCoord.z ),\n texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 0.0 ), shadowCoord.z ),\n f.x ) +\n mix( texture2DCompare( shadowMap, uv + vec2( -dx, dy ), shadowCoord.z ),\n texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, dy ), shadowCoord.z ),\n f.x ) +\n mix( texture2DCompare( shadowMap, uv + vec2( 0.0, -dy ), shadowCoord.z ),\n texture2DCompare( shadowMap, uv + vec2( 0.0, 2.0 * dy ), shadowCoord.z ),\n f.y ) +\n mix( texture2DCompare( shadowMap, uv + vec2( dx, -dy ), shadowCoord.z ),\n texture2DCompare( shadowMap, uv + vec2( dx, 2.0 * dy ), shadowCoord.z ),\n f.y ) +\n mix( mix( texture2DCompare( shadowMap, uv + vec2( -dx, -dy ), shadowCoord.z ),\n texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, -dy ), shadowCoord.z ),\n f.x ),\n mix( texture2DCompare( shadowMap, uv + vec2( -dx, 2.0 * dy ), shadowCoord.z ),\n texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 2.0 * dy ), shadowCoord.z ),\n f.x ),\n f.y )\n ) * ( 1.0 / 9.0 );\n #elif defined( SHADOWMAP_TYPE_VSM )\n shadow = VSMShadow( shadowMap, shadowCoord.xy, shadowCoord.z );\n #else\n shadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z );\n #endif\n }\n return mix( 1.0, shadow, shadowIntensity );\n }\n vec2 cubeToUV( vec3 v, float texelSizeY ) {\n vec3 absV = abs( v );\n float scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) );\n absV *= scaleToCube;\n v *= scaleToCube * ( 1.0 - 2.0 * texelSizeY );\n vec2 planar = v.xy;\n float almostATexel = 1.5 * texelSizeY;\n float almostOne = 1.0 - almostATexel;\n if ( absV.z >= almostOne ) {\n if ( v.z > 0.0 )\n planar.x = 4.0 - v.x;\n } else if ( absV.x >= almostOne ) {\n float signX = sign( v.x );\n planar.x = v.z * signX + 2.0 * signX;\n } else if ( absV.y >= almostOne ) {\n float signY = sign( v.y );\n planar.x = v.x + 2.0 * signY + 2.0;\n planar.y = v.z * signY - 2.0;\n }\n return vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 );\n }\n float getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowIntensity, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) {\n float shadow = 1.0;\n vec3 lightToPosition = shadowCoord.xyz;\n \n float lightToPositionLength = length( lightToPosition );\n if ( lightToPositionLength - shadowCameraFar <= 0.0 && lightToPositionLength - shadowCameraNear >= 0.0 ) {\n float dp = ( lightToPositionLength - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear ); dp += shadowBias;\n vec3 bd3D = normalize( lightToPosition );\n vec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) );\n #if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT ) || defined( SHADOWMAP_TYPE_VSM )\n vec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y;\n shadow = (\n texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyy, texelSize.y ), dp ) +\n texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyy, texelSize.y ), dp ) +\n texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyx, texelSize.y ), dp ) +\n texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyx, texelSize.y ), dp ) +\n texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ) +\n texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxy, texelSize.y ), dp ) +\n texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxy, texelSize.y ), dp ) +\n texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxx, texelSize.y ), dp ) +\n texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxx, texelSize.y ), dp )\n ) * ( 1.0 / 9.0 );\n #else\n shadow = texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp );\n #endif\n }\n return mix( 1.0, shadow, shadowIntensity );\n }\n#endif",shadowmap_pars_vertex:"#if NUM_SPOT_LIGHT_COORDS > 0\n uniform mat4 spotLightMatrix[ NUM_SPOT_LIGHT_COORDS ];\n varying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ];\n#endif\n#ifdef USE_SHADOWMAP\n #if NUM_DIR_LIGHT_SHADOWS > 0\n uniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHT_SHADOWS ];\n varying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\n struct DirectionalLightShadow {\n float shadowIntensity;\n float shadowBias;\n float shadowNormalBias;\n float shadowRadius;\n vec2 shadowMapSize;\n };\n uniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\n #endif\n #if NUM_SPOT_LIGHT_SHADOWS > 0\n struct SpotLightShadow {\n float shadowIntensity;\n float shadowBias;\n float shadowNormalBias;\n float shadowRadius;\n vec2 shadowMapSize;\n };\n uniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\n #endif\n #if NUM_POINT_LIGHT_SHADOWS > 0\n uniform mat4 pointShadowMatrix[ NUM_POINT_LIGHT_SHADOWS ];\n varying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\n struct PointLightShadow {\n float shadowIntensity;\n float shadowBias;\n float shadowNormalBias;\n float shadowRadius;\n vec2 shadowMapSize;\n float shadowCameraNear;\n float shadowCameraFar;\n };\n uniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\n #endif\n#endif",shadowmap_vertex:"#if ( defined( USE_SHADOWMAP ) && ( NUM_DIR_LIGHT_SHADOWS > 0 || NUM_POINT_LIGHT_SHADOWS > 0 ) ) || ( NUM_SPOT_LIGHT_COORDS > 0 )\n vec3 shadowWorldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\n vec4 shadowWorldPosition;\n#endif\n#if defined( USE_SHADOWMAP )\n #if NUM_DIR_LIGHT_SHADOWS > 0\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\n shadowWorldPosition = worldPosition + vec4( shadowWorldNormal * directionalLightShadows[ i ].shadowNormalBias, 0 );\n vDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * shadowWorldPosition;\n }\n #pragma unroll_loop_end\n #endif\n #if NUM_POINT_LIGHT_SHADOWS > 0\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\n shadowWorldPosition = worldPosition + vec4( shadowWorldNormal * pointLightShadows[ i ].shadowNormalBias, 0 );\n vPointShadowCoord[ i ] = pointShadowMatrix[ i ] * shadowWorldPosition;\n }\n #pragma unroll_loop_end\n #endif\n#endif\n#if NUM_SPOT_LIGHT_COORDS > 0\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_SPOT_LIGHT_COORDS; i ++ ) {\n shadowWorldPosition = worldPosition;\n #if ( defined( USE_SHADOWMAP ) && UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\n shadowWorldPosition.xyz += shadowWorldNormal * spotLightShadows[ i ].shadowNormalBias;\n #endif\n vSpotLightCoord[ i ] = spotLightMatrix[ i ] * shadowWorldPosition;\n }\n #pragma unroll_loop_end\n#endif",shadowmask_pars_fragment:"float getShadowMask() {\n float shadow = 1.0;\n #ifdef USE_SHADOWMAP\n #if NUM_DIR_LIGHT_SHADOWS > 0\n DirectionalLightShadow directionalLight;\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\n directionalLight = directionalLightShadows[ i ];\n shadow *= receiveShadow ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowIntensity, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n }\n #pragma unroll_loop_end\n #endif\n #if NUM_SPOT_LIGHT_SHADOWS > 0\n SpotLightShadow spotLight;\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\n spotLight = spotLightShadows[ i ];\n shadow *= receiveShadow ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowIntensity, spotLight.shadowBias, spotLight.shadowRadius, vSpotLightCoord[ i ] ) : 1.0;\n }\n #pragma unroll_loop_end\n #endif\n #if NUM_POINT_LIGHT_SHADOWS > 0\n PointLightShadow pointLight;\n #pragma unroll_loop_start\n for ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\n pointLight = pointLightShadows[ i ];\n shadow *= receiveShadow ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowIntensity, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0;\n }\n #pragma unroll_loop_end\n #endif\n #endif\n return shadow;\n}",skinbase_vertex:"#ifdef USE_SKINNING\n mat4 boneMatX = getBoneMatrix( skinIndex.x );\n mat4 boneMatY = getBoneMatrix( skinIndex.y );\n mat4 boneMatZ = getBoneMatrix( skinIndex.z );\n mat4 boneMatW = getBoneMatrix( skinIndex.w );\n#endif",skinning_pars_vertex:"#ifdef USE_SKINNING\n uniform mat4 bindMatrix;\n uniform mat4 bindMatrixInverse;\n uniform highp sampler2D boneTexture;\n mat4 getBoneMatrix( const in float i ) {\n int size = textureSize( boneTexture, 0 ).x;\n int j = int( i ) * 4;\n int x = j % size;\n int y = j / size;\n vec4 v1 = texelFetch( boneTexture, ivec2( x, y ), 0 );\n vec4 v2 = texelFetch( boneTexture, ivec2( x + 1, y ), 0 );\n vec4 v3 = texelFetch( boneTexture, ivec2( x + 2, y ), 0 );\n vec4 v4 = texelFetch( boneTexture, ivec2( x + 3, y ), 0 );\n return mat4( v1, v2, v3, v4 );\n }\n#endif",skinning_vertex:"#ifdef USE_SKINNING\n vec4 skinVertex = bindMatrix * vec4( transformed, 1.0 );\n vec4 skinned = vec4( 0.0 );\n skinned += boneMatX * skinVertex * skinWeight.x;\n skinned += boneMatY * skinVertex * skinWeight.y;\n skinned += boneMatZ * skinVertex * skinWeight.z;\n skinned += boneMatW * skinVertex * skinWeight.w;\n transformed = ( bindMatrixInverse * skinned ).xyz;\n#endif",skinnormal_vertex:"#ifdef USE_SKINNING\n mat4 skinMatrix = mat4( 0.0 );\n skinMatrix += skinWeight.x * boneMatX;\n skinMatrix += skinWeight.y * boneMatY;\n skinMatrix += skinWeight.z * boneMatZ;\n skinMatrix += skinWeight.w * boneMatW;\n skinMatrix = bindMatrixInverse * skinMatrix * bindMatrix;\n objectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz;\n #ifdef USE_TANGENT\n objectTangent = vec4( skinMatrix * vec4( objectTangent, 0.0 ) ).xyz;\n #endif\n#endif",specularmap_fragment:"float specularStrength;\n#ifdef USE_SPECULARMAP\n vec4 texelSpecular = texture2D( specularMap, vSpecularMapUv );\n specularStrength = texelSpecular.r;\n#else\n specularStrength = 1.0;\n#endif",specularmap_pars_fragment:"#ifdef USE_SPECULARMAP\n uniform sampler2D specularMap;\n#endif",tonemapping_fragment:"#if defined( TONE_MAPPING )\n gl_FragColor.rgb = toneMapping( gl_FragColor.rgb );\n#endif",tonemapping_pars_fragment:"#ifndef saturate\n#define saturate( a ) clamp( a, 0.0, 1.0 )\n#endif\nuniform float toneMappingExposure;\nvec3 LinearToneMapping( vec3 color ) {\n return saturate( toneMappingExposure * color );\n}\nvec3 ReinhardToneMapping( vec3 color ) {\n color *= toneMappingExposure;\n return saturate( color / ( vec3( 1.0 ) + color ) );\n}\nvec3 CineonToneMapping( vec3 color ) {\n color *= toneMappingExposure;\n color = max( vec3( 0.0 ), color - 0.004 );\n return pow( ( color * ( 6.2 * color + 0.5 ) ) / ( color * ( 6.2 * color + 1.7 ) + 0.06 ), vec3( 2.2 ) );\n}\nvec3 RRTAndODTFit( vec3 v ) {\n vec3 a = v * ( v + 0.0245786 ) - 0.000090537;\n vec3 b = v * ( 0.983729 * v + 0.4329510 ) + 0.238081;\n return a / b;\n}\nvec3 ACESFilmicToneMapping( vec3 color ) {\n const mat3 ACESInputMat = mat3(\n vec3( 0.59719, 0.07600, 0.02840 ), vec3( 0.35458, 0.90834, 0.13383 ),\n vec3( 0.04823, 0.01566, 0.83777 )\n );\n const mat3 ACESOutputMat = mat3(\n vec3( 1.60475, -0.10208, -0.00327 ), vec3( -0.53108, 1.10813, -0.07276 ),\n vec3( -0.07367, -0.00605, 1.07602 )\n );\n color *= toneMappingExposure / 0.6;\n color = ACESInputMat * color;\n color = RRTAndODTFit( color );\n color = ACESOutputMat * color;\n return saturate( color );\n}\nconst mat3 LINEAR_REC2020_TO_LINEAR_SRGB = mat3(\n vec3( 1.6605, - 0.1246, - 0.0182 ),\n vec3( - 0.5876, 1.1329, - 0.1006 ),\n vec3( - 0.0728, - 0.0083, 1.1187 )\n);\nconst mat3 LINEAR_SRGB_TO_LINEAR_REC2020 = mat3(\n vec3( 0.6274, 0.0691, 0.0164 ),\n vec3( 0.3293, 0.9195, 0.0880 ),\n vec3( 0.0433, 0.0113, 0.8956 )\n);\nvec3 agxDefaultContrastApprox( vec3 x ) {\n vec3 x2 = x * x;\n vec3 x4 = x2 * x2;\n return + 15.5 * x4 * x2\n - 40.14 * x4 * x\n + 31.96 * x4\n - 6.868 * x2 * x\n + 0.4298 * x2\n + 0.1191 * x\n - 0.00232;\n}\nvec3 AgXToneMapping( vec3 color ) {\n const mat3 AgXInsetMatrix = mat3(\n vec3( 0.856627153315983, 0.137318972929847, 0.11189821299995 ),\n vec3( 0.0951212405381588, 0.761241990602591, 0.0767994186031903 ),\n vec3( 0.0482516061458583, 0.101439036467562, 0.811302368396859 )\n );\n const mat3 AgXOutsetMatrix = mat3(\n vec3( 1.1271005818144368, - 0.1413297634984383, - 0.14132976349843826 ),\n vec3( - 0.11060664309660323, 1.157823702216272, - 0.11060664309660294 ),\n vec3( - 0.016493938717834573, - 0.016493938717834257, 1.2519364065950405 )\n );\n const float AgxMinEv = - 12.47393; const float AgxMaxEv = 4.026069;\n color *= toneMappingExposure;\n color = LINEAR_SRGB_TO_LINEAR_REC2020 * color;\n color = AgXInsetMatrix * color;\n color = max( color, 1e-10 ); color = log2( color );\n color = ( color - AgxMinEv ) / ( AgxMaxEv - AgxMinEv );\n color = clamp( color, 0.0, 1.0 );\n color = agxDefaultContrastApprox( color );\n color = AgXOutsetMatrix * color;\n color = pow( max( vec3( 0.0 ), color ), vec3( 2.2 ) );\n color = LINEAR_REC2020_TO_LINEAR_SRGB * color;\n color = clamp( color, 0.0, 1.0 );\n return color;\n}\nvec3 NeutralToneMapping( vec3 color ) {\n const float StartCompression = 0.8 - 0.04;\n const float Desaturation = 0.15;\n color *= toneMappingExposure;\n float x = min( color.r, min( color.g, color.b ) );\n float offset = x < 0.08 ? x - 6.25 * x * x : 0.04;\n color -= offset;\n float peak = max( color.r, max( color.g, color.b ) );\n if ( peak < StartCompression ) return color;\n float d = 1. - StartCompression;\n float newPeak = 1. - d * d / ( peak + d - StartCompression );\n color *= newPeak / peak;\n float g = 1. - 1. / ( Desaturation * ( peak - newPeak ) + 1. );\n return mix( color, vec3( newPeak ), g );\n}\nvec3 CustomToneMapping( vec3 color ) { return color; }",transmission_fragment:"#ifdef USE_TRANSMISSION\n material.transmission = transmission;\n material.transmissionAlpha = 1.0;\n material.thickness = thickness;\n material.attenuationDistance = attenuationDistance;\n material.attenuationColor = attenuationColor;\n #ifdef USE_TRANSMISSIONMAP\n material.transmission *= texture2D( transmissionMap, vTransmissionMapUv ).r;\n #endif\n #ifdef USE_THICKNESSMAP\n material.thickness *= texture2D( thicknessMap, vThicknessMapUv ).g;\n #endif\n vec3 pos = vWorldPosition;\n vec3 v = normalize( cameraPosition - pos );\n vec3 n = inverseTransformDirection( normal, viewMatrix );\n vec4 transmitted = getIBLVolumeRefraction(\n n, v, material.roughness, material.diffuseColor, material.specularColor, material.specularF90,\n pos, modelMatrix, viewMatrix, projectionMatrix, material.dispersion, material.ior, material.thickness,\n material.attenuationColor, material.attenuationDistance );\n material.transmissionAlpha = mix( material.transmissionAlpha, transmitted.a, material.transmission );\n totalDiffuse = mix( totalDiffuse, transmitted.rgb, material.transmission );\n#endif",transmission_pars_fragment:"#ifdef USE_TRANSMISSION\n uniform float transmission;\n uniform float thickness;\n uniform float attenuationDistance;\n uniform vec3 attenuationColor;\n #ifdef USE_TRANSMISSIONMAP\n uniform sampler2D transmissionMap;\n #endif\n #ifdef USE_THICKNESSMAP\n uniform sampler2D thicknessMap;\n #endif\n uniform vec2 transmissionSamplerSize;\n uniform sampler2D transmissionSamplerMap;\n uniform mat4 modelMatrix;\n uniform mat4 projectionMatrix;\n varying vec3 vWorldPosition;\n float w0( float a ) {\n return ( 1.0 / 6.0 ) * ( a * ( a * ( - a + 3.0 ) - 3.0 ) + 1.0 );\n }\n float w1( float a ) {\n return ( 1.0 / 6.0 ) * ( a * a * ( 3.0 * a - 6.0 ) + 4.0 );\n }\n float w2( float a ){\n return ( 1.0 / 6.0 ) * ( a * ( a * ( - 3.0 * a + 3.0 ) + 3.0 ) + 1.0 );\n }\n float w3( float a ) {\n return ( 1.0 / 6.0 ) * ( a * a * a );\n }\n float g0( float a ) {\n return w0( a ) + w1( a );\n }\n float g1( float a ) {\n return w2( a ) + w3( a );\n }\n float h0( float a ) {\n return - 1.0 + w1( a ) / ( w0( a ) + w1( a ) );\n }\n float h1( float a ) {\n return 1.0 + w3( a ) / ( w2( a ) + w3( a ) );\n }\n vec4 bicubic( sampler2D tex, vec2 uv, vec4 texelSize, float lod ) {\n uv = uv * texelSize.zw + 0.5;\n vec2 iuv = floor( uv );\n vec2 fuv = fract( uv );\n float g0x = g0( fuv.x );\n float g1x = g1( fuv.x );\n float h0x = h0( fuv.x );\n float h1x = h1( fuv.x );\n float h0y = h0( fuv.y );\n float h1y = h1( fuv.y );\n vec2 p0 = ( vec2( iuv.x + h0x, iuv.y + h0y ) - 0.5 ) * texelSize.xy;\n vec2 p1 = ( vec2( iuv.x + h1x, iuv.y + h0y ) - 0.5 ) * texelSize.xy;\n vec2 p2 = ( vec2( iuv.x + h0x, iuv.y + h1y ) - 0.5 ) * texelSize.xy;\n vec2 p3 = ( vec2( iuv.x + h1x, iuv.y + h1y ) - 0.5 ) * texelSize.xy;\n return g0( fuv.y ) * ( g0x * textureLod( tex, p0, lod ) + g1x * textureLod( tex, p1, lod ) ) +\n g1( fuv.y ) * ( g0x * textureLod( tex, p2, lod ) + g1x * textureLod( tex, p3, lod ) );\n }\n vec4 textureBicubic( sampler2D sampler, vec2 uv, float lod ) {\n vec2 fLodSize = vec2( textureSize( sampler, int( lod ) ) );\n vec2 cLodSize = vec2( textureSize( sampler, int( lod + 1.0 ) ) );\n vec2 fLodSizeInv = 1.0 / fLodSize;\n vec2 cLodSizeInv = 1.0 / cLodSize;\n vec4 fSample = bicubic( sampler, uv, vec4( fLodSizeInv, fLodSize ), floor( lod ) );\n vec4 cSample = bicubic( sampler, uv, vec4( cLodSizeInv, cLodSize ), ceil( lod ) );\n return mix( fSample, cSample, fract( lod ) );\n }\n vec3 getVolumeTransmissionRay( const in vec3 n, const in vec3 v, const in float thickness, const in float ior, const in mat4 modelMatrix ) {\n vec3 refractionVector = refract( - v, normalize( n ), 1.0 / ior );\n vec3 modelScale;\n modelScale.x = length( vec3( modelMatrix[ 0 ].xyz ) );\n modelScale.y = length( vec3( modelMatrix[ 1 ].xyz ) );\n modelScale.z = length( vec3( modelMatrix[ 2 ].xyz ) );\n return normalize( refractionVector ) * thickness * modelScale;\n }\n float applyIorToRoughness( const in float roughness, const in float ior ) {\n return roughness * clamp( ior * 2.0 - 2.0, 0.0, 1.0 );\n }\n vec4 getTransmissionSample( const in vec2 fragCoord, const in float roughness, const in float ior ) {\n float lod = log2( transmissionSamplerSize.x ) * applyIorToRoughness( roughness, ior );\n return textureBicubic( transmissionSamplerMap, fragCoord.xy, lod );\n }\n vec3 volumeAttenuation( const in float transmissionDistance, const in vec3 attenuationColor, const in float attenuationDistance ) {\n if ( isinf( attenuationDistance ) ) {\n return vec3( 1.0 );\n } else {\n vec3 attenuationCoefficient = -log( attenuationColor ) / attenuationDistance;\n vec3 transmittance = exp( - attenuationCoefficient * transmissionDistance ); return transmittance;\n }\n }\n vec4 getIBLVolumeRefraction( const in vec3 n, const in vec3 v, const in float roughness, const in vec3 diffuseColor,\n const in vec3 specularColor, const in float specularF90, const in vec3 position, const in mat4 modelMatrix,\n const in mat4 viewMatrix, const in mat4 projMatrix, const in float dispersion, const in float ior, const in float thickness,\n const in vec3 attenuationColor, const in float attenuationDistance ) {\n vec4 transmittedLight;\n vec3 transmittance;\n #ifdef USE_DISPERSION\n float halfSpread = ( ior - 1.0 ) * 0.025 * dispersion;\n vec3 iors = vec3( ior - halfSpread, ior, ior + halfSpread );\n for ( int i = 0; i < 3; i ++ ) {\n vec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, iors[ i ], modelMatrix );\n vec3 refractedRayExit = position + transmissionRay;\n \n vec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 );\n vec2 refractionCoords = ndcPos.xy / ndcPos.w;\n refractionCoords += 1.0;\n refractionCoords /= 2.0;\n \n vec4 transmissionSample = getTransmissionSample( refractionCoords, roughness, iors[ i ] );\n transmittedLight[ i ] = transmissionSample[ i ];\n transmittedLight.a += transmissionSample.a;\n transmittance[ i ] = diffuseColor[ i ] * volumeAttenuation( length( transmissionRay ), attenuationColor, attenuationDistance )[ i ];\n }\n transmittedLight.a /= 3.0;\n \n #else\n \n vec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, ior, modelMatrix );\n vec3 refractedRayExit = position + transmissionRay;\n vec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 );\n vec2 refractionCoords = ndcPos.xy / ndcPos.w;\n refractionCoords += 1.0;\n refractionCoords /= 2.0;\n transmittedLight = getTransmissionSample( refractionCoords, roughness, ior );\n transmittance = diffuseColor * volumeAttenuation( length( transmissionRay ), attenuationColor, attenuationDistance );\n \n #endif\n vec3 attenuatedColor = transmittance * transmittedLight.rgb;\n vec3 F = EnvironmentBRDF( n, v, specularColor, specularF90, roughness );\n float transmittanceFactor = ( transmittance.r + transmittance.g + transmittance.b ) / 3.0;\n return vec4( ( 1.0 - F ) * attenuatedColor, 1.0 - ( 1.0 - transmittedLight.a ) * transmittanceFactor );\n }\n#endif",uv_pars_fragment:"#if defined( USE_UV ) || defined( USE_ANISOTROPY )\n varying vec2 vUv;\n#endif\n#ifdef USE_MAP\n varying vec2 vMapUv;\n#endif\n#ifdef USE_ALPHAMAP\n varying vec2 vAlphaMapUv;\n#endif\n#ifdef USE_LIGHTMAP\n varying vec2 vLightMapUv;\n#endif\n#ifdef USE_AOMAP\n varying vec2 vAoMapUv;\n#endif\n#ifdef USE_BUMPMAP\n varying vec2 vBumpMapUv;\n#endif\n#ifdef USE_NORMALMAP\n varying vec2 vNormalMapUv;\n#endif\n#ifdef USE_EMISSIVEMAP\n varying vec2 vEmissiveMapUv;\n#endif\n#ifdef USE_METALNESSMAP\n varying vec2 vMetalnessMapUv;\n#endif\n#ifdef USE_ROUGHNESSMAP\n varying vec2 vRoughnessMapUv;\n#endif\n#ifdef USE_ANISOTROPYMAP\n varying vec2 vAnisotropyMapUv;\n#endif\n#ifdef USE_CLEARCOATMAP\n varying vec2 vClearcoatMapUv;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n varying vec2 vClearcoatNormalMapUv;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n varying vec2 vClearcoatRoughnessMapUv;\n#endif\n#ifdef USE_IRIDESCENCEMAP\n varying vec2 vIridescenceMapUv;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n varying vec2 vIridescenceThicknessMapUv;\n#endif\n#ifdef USE_SHEEN_COLORMAP\n varying vec2 vSheenColorMapUv;\n#endif\n#ifdef USE_SHEEN_ROUGHNESSMAP\n varying vec2 vSheenRoughnessMapUv;\n#endif\n#ifdef USE_SPECULARMAP\n varying vec2 vSpecularMapUv;\n#endif\n#ifdef USE_SPECULAR_COLORMAP\n varying vec2 vSpecularColorMapUv;\n#endif\n#ifdef USE_SPECULAR_INTENSITYMAP\n varying vec2 vSpecularIntensityMapUv;\n#endif\n#ifdef USE_TRANSMISSIONMAP\n uniform mat3 transmissionMapTransform;\n varying vec2 vTransmissionMapUv;\n#endif\n#ifdef USE_THICKNESSMAP\n uniform mat3 thicknessMapTransform;\n varying vec2 vThicknessMapUv;\n#endif",uv_pars_vertex:"#if defined( USE_UV ) || defined( USE_ANISOTROPY )\n varying vec2 vUv;\n#endif\n#ifdef USE_MAP\n uniform mat3 mapTransform;\n varying vec2 vMapUv;\n#endif\n#ifdef USE_ALPHAMAP\n uniform mat3 alphaMapTransform;\n varying vec2 vAlphaMapUv;\n#endif\n#ifdef USE_LIGHTMAP\n uniform mat3 lightMapTransform;\n varying vec2 vLightMapUv;\n#endif\n#ifdef USE_AOMAP\n uniform mat3 aoMapTransform;\n varying vec2 vAoMapUv;\n#endif\n#ifdef USE_BUMPMAP\n uniform mat3 bumpMapTransform;\n varying vec2 vBumpMapUv;\n#endif\n#ifdef USE_NORMALMAP\n uniform mat3 normalMapTransform;\n varying vec2 vNormalMapUv;\n#endif\n#ifdef USE_DISPLACEMENTMAP\n uniform mat3 displacementMapTransform;\n varying vec2 vDisplacementMapUv;\n#endif\n#ifdef USE_EMISSIVEMAP\n uniform mat3 emissiveMapTransform;\n varying vec2 vEmissiveMapUv;\n#endif\n#ifdef USE_METALNESSMAP\n uniform mat3 metalnessMapTransform;\n varying vec2 vMetalnessMapUv;\n#endif\n#ifdef USE_ROUGHNESSMAP\n uniform mat3 roughnessMapTransform;\n varying vec2 vRoughnessMapUv;\n#endif\n#ifdef USE_ANISOTROPYMAP\n uniform mat3 anisotropyMapTransform;\n varying vec2 vAnisotropyMapUv;\n#endif\n#ifdef USE_CLEARCOATMAP\n uniform mat3 clearcoatMapTransform;\n varying vec2 vClearcoatMapUv;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n uniform mat3 clearcoatNormalMapTransform;\n varying vec2 vClearcoatNormalMapUv;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n uniform mat3 clearcoatRoughnessMapTransform;\n varying vec2 vClearcoatRoughnessMapUv;\n#endif\n#ifdef USE_SHEEN_COLORMAP\n uniform mat3 sheenColorMapTransform;\n varying vec2 vSheenColorMapUv;\n#endif\n#ifdef USE_SHEEN_ROUGHNESSMAP\n uniform mat3 sheenRoughnessMapTransform;\n varying vec2 vSheenRoughnessMapUv;\n#endif\n#ifdef USE_IRIDESCENCEMAP\n uniform mat3 iridescenceMapTransform;\n varying vec2 vIridescenceMapUv;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n uniform mat3 iridescenceThicknessMapTransform;\n varying vec2 vIridescenceThicknessMapUv;\n#endif\n#ifdef USE_SPECULARMAP\n uniform mat3 specularMapTransform;\n varying vec2 vSpecularMapUv;\n#endif\n#ifdef USE_SPECULAR_COLORMAP\n uniform mat3 specularColorMapTransform;\n varying vec2 vSpecularColorMapUv;\n#endif\n#ifdef USE_SPECULAR_INTENSITYMAP\n uniform mat3 specularIntensityMapTransform;\n varying vec2 vSpecularIntensityMapUv;\n#endif\n#ifdef USE_TRANSMISSIONMAP\n uniform mat3 transmissionMapTransform;\n varying vec2 vTransmissionMapUv;\n#endif\n#ifdef USE_THICKNESSMAP\n uniform mat3 thicknessMapTransform;\n varying vec2 vThicknessMapUv;\n#endif",uv_vertex:"#if defined( USE_UV ) || defined( USE_ANISOTROPY )\n vUv = vec3( uv, 1 ).xy;\n#endif\n#ifdef USE_MAP\n vMapUv = ( mapTransform * vec3( MAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_ALPHAMAP\n vAlphaMapUv = ( alphaMapTransform * vec3( ALPHAMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_LIGHTMAP\n vLightMapUv = ( lightMapTransform * vec3( LIGHTMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_AOMAP\n vAoMapUv = ( aoMapTransform * vec3( AOMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_BUMPMAP\n vBumpMapUv = ( bumpMapTransform * vec3( BUMPMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_NORMALMAP\n vNormalMapUv = ( normalMapTransform * vec3( NORMALMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_DISPLACEMENTMAP\n vDisplacementMapUv = ( displacementMapTransform * vec3( DISPLACEMENTMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_EMISSIVEMAP\n vEmissiveMapUv = ( emissiveMapTransform * vec3( EMISSIVEMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_METALNESSMAP\n vMetalnessMapUv = ( metalnessMapTransform * vec3( METALNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_ROUGHNESSMAP\n vRoughnessMapUv = ( roughnessMapTransform * vec3( ROUGHNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_ANISOTROPYMAP\n vAnisotropyMapUv = ( anisotropyMapTransform * vec3( ANISOTROPYMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_CLEARCOATMAP\n vClearcoatMapUv = ( clearcoatMapTransform * vec3( CLEARCOATMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n vClearcoatNormalMapUv = ( clearcoatNormalMapTransform * vec3( CLEARCOAT_NORMALMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n vClearcoatRoughnessMapUv = ( clearcoatRoughnessMapTransform * vec3( CLEARCOAT_ROUGHNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_IRIDESCENCEMAP\n vIridescenceMapUv = ( iridescenceMapTransform * vec3( IRIDESCENCEMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_IRIDESCENCE_THICKNESSMAP\n vIridescenceThicknessMapUv = ( iridescenceThicknessMapTransform * vec3( IRIDESCENCE_THICKNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SHEEN_COLORMAP\n vSheenColorMapUv = ( sheenColorMapTransform * vec3( SHEEN_COLORMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SHEEN_ROUGHNESSMAP\n vSheenRoughnessMapUv = ( sheenRoughnessMapTransform * vec3( SHEEN_ROUGHNESSMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SPECULARMAP\n vSpecularMapUv = ( specularMapTransform * vec3( SPECULARMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SPECULAR_COLORMAP\n vSpecularColorMapUv = ( specularColorMapTransform * vec3( SPECULAR_COLORMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_SPECULAR_INTENSITYMAP\n vSpecularIntensityMapUv = ( specularIntensityMapTransform * vec3( SPECULAR_INTENSITYMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_TRANSMISSIONMAP\n vTransmissionMapUv = ( transmissionMapTransform * vec3( TRANSMISSIONMAP_UV, 1 ) ).xy;\n#endif\n#ifdef USE_THICKNESSMAP\n vThicknessMapUv = ( thicknessMapTransform * vec3( THICKNESSMAP_UV, 1 ) ).xy;\n#endif",worldpos_vertex:"#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP ) || defined ( USE_TRANSMISSION ) || NUM_SPOT_LIGHT_COORDS > 0\n vec4 worldPosition = vec4( transformed, 1.0 );\n #ifdef USE_BATCHING\n worldPosition = batchingMatrix * worldPosition;\n #endif\n #ifdef USE_INSTANCING\n worldPosition = instanceMatrix * worldPosition;\n #endif\n worldPosition = modelMatrix * worldPosition;\n#endif",background_vert:"varying vec2 vUv;\nuniform mat3 uvTransform;\nvoid main() {\n vUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n gl_Position = vec4( position.xy, 1.0, 1.0 );\n}",background_frag:"uniform sampler2D t2D;\nuniform float backgroundIntensity;\nvarying vec2 vUv;\nvoid main() {\n vec4 texColor = texture2D( t2D, vUv );\n #ifdef DECODE_VIDEO_TEXTURE\n texColor = vec4( mix( pow( texColor.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), texColor.rgb * 0.0773993808, vec3( lessThanEqual( texColor.rgb, vec3( 0.04045 ) ) ) ), texColor.w );\n #endif\n texColor.rgb *= backgroundIntensity;\n gl_FragColor = texColor;\n #include \n #include \n}",backgroundCube_vert:"varying vec3 vWorldDirection;\n#include \nvoid main() {\n vWorldDirection = transformDirection( position, modelMatrix );\n #include \n #include \n gl_Position.z = gl_Position.w;\n}",backgroundCube_frag:"#ifdef ENVMAP_TYPE_CUBE\n uniform samplerCube envMap;\n#elif defined( ENVMAP_TYPE_CUBE_UV )\n uniform sampler2D envMap;\n#endif\nuniform float flipEnvMap;\nuniform float backgroundBlurriness;\nuniform float backgroundIntensity;\nuniform mat3 backgroundRotation;\nvarying vec3 vWorldDirection;\n#include \nvoid main() {\n #ifdef ENVMAP_TYPE_CUBE\n vec4 texColor = textureCube( envMap, backgroundRotation * vec3( flipEnvMap * vWorldDirection.x, vWorldDirection.yz ) );\n #elif defined( ENVMAP_TYPE_CUBE_UV )\n vec4 texColor = textureCubeUV( envMap, backgroundRotation * vWorldDirection, backgroundBlurriness );\n #else\n vec4 texColor = vec4( 0.0, 0.0, 0.0, 1.0 );\n #endif\n texColor.rgb *= backgroundIntensity;\n gl_FragColor = texColor;\n #include \n #include \n}",cube_vert:"varying vec3 vWorldDirection;\n#include \nvoid main() {\n vWorldDirection = transformDirection( position, modelMatrix );\n #include \n #include \n gl_Position.z = gl_Position.w;\n}",cube_frag:"uniform samplerCube tCube;\nuniform float tFlip;\nuniform float opacity;\nvarying vec3 vWorldDirection;\nvoid main() {\n vec4 texColor = textureCube( tCube, vec3( tFlip * vWorldDirection.x, vWorldDirection.yz ) );\n gl_FragColor = texColor;\n gl_FragColor.a *= opacity;\n #include \n #include \n}",depth_vert:"#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvarying vec2 vHighPrecisionZW;\nvoid main() {\n #include \n #include \n #include \n #include \n #ifdef USE_DISPLACEMENTMAP\n #include \n #include \n #include \n #endif\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vHighPrecisionZW = gl_Position.zw;\n}",depth_frag:"#if DEPTH_PACKING == 3200\n uniform float opacity;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvarying vec2 vHighPrecisionZW;\nvoid main() {\n vec4 diffuseColor = vec4( 1.0 );\n #include \n #if DEPTH_PACKING == 3200\n diffuseColor.a = opacity;\n #endif\n #include \n #include \n #include \n #include \n #include \n float fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5;\n #if DEPTH_PACKING == 3200\n gl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );\n #elif DEPTH_PACKING == 3201\n gl_FragColor = packDepthToRGBA( fragCoordZ );\n #elif DEPTH_PACKING == 3202\n gl_FragColor = vec4( packDepthToRGB( fragCoordZ ), 1.0 );\n #elif DEPTH_PACKING == 3203\n gl_FragColor = vec4( packDepthToRG( fragCoordZ ), 0.0, 1.0 );\n #endif\n}",distanceRGBA_vert:"#define DISTANCE\nvarying vec3 vWorldPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #ifdef USE_DISPLACEMENTMAP\n #include \n #include \n #include \n #endif\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vWorldPosition = worldPosition.xyz;\n}",distanceRGBA_frag:"#define DISTANCE\nuniform vec3 referencePosition;\nuniform float nearDistance;\nuniform float farDistance;\nvarying vec3 vWorldPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main () {\n vec4 diffuseColor = vec4( 1.0 );\n #include \n #include \n #include \n #include \n #include \n float dist = length( vWorldPosition - referencePosition );\n dist = ( dist - nearDistance ) / ( farDistance - nearDistance );\n dist = saturate( dist );\n gl_FragColor = packDepthToRGBA( dist );\n}",equirect_vert:"varying vec3 vWorldDirection;\n#include \nvoid main() {\n vWorldDirection = transformDirection( position, modelMatrix );\n #include \n #include \n}",equirect_frag:"uniform sampler2D tEquirect;\nvarying vec3 vWorldDirection;\n#include \nvoid main() {\n vec3 direction = normalize( vWorldDirection );\n vec2 sampleUV = equirectUv( direction );\n gl_FragColor = texture2D( tEquirect, sampleUV );\n #include \n #include \n}",linedashed_vert:"uniform float scale;\nattribute float lineDistance;\nvarying float vLineDistance;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vLineDistance = scale * lineDistance;\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n}",linedashed_frag:"uniform vec3 diffuse;\nuniform float opacity;\nuniform float dashSize;\nuniform float totalSize;\nvarying float vLineDistance;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n if ( mod( vLineDistance, totalSize ) > dashSize ) {\n discard;\n }\n vec3 outgoingLight = vec3( 0.0 );\n #include \n #include \n #include \n outgoingLight = diffuseColor.rgb;\n #include \n #include \n #include \n #include \n #include \n}",meshbasic_vert:"#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #include \n #if defined ( USE_ENVMAP ) || defined ( USE_SKINNING )\n #include \n #include \n #include \n #include \n #include \n #endif\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n}",meshbasic_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#ifndef FLAT_SHADED\n varying vec3 vNormal;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n #ifdef USE_LIGHTMAP\n vec4 lightMapTexel = texture2D( lightMap, vLightMapUv );\n reflectedLight.indirectDiffuse += lightMapTexel.rgb * lightMapIntensity * RECIPROCAL_PI;\n #else\n reflectedLight.indirectDiffuse += vec3( 1.0 );\n #endif\n #include \n reflectedLight.indirectDiffuse *= diffuseColor.rgb;\n vec3 outgoingLight = reflectedLight.indirectDiffuse;\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n}",meshlambert_vert:"#define LAMBERT\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vViewPosition = - mvPosition.xyz;\n #include \n #include \n #include \n #include \n}",meshlambert_frag:"#define LAMBERT\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n vec3 totalEmissiveRadiance = emissive;\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n}",meshmatcap_vert:"#define MATCAP\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vViewPosition = - mvPosition.xyz;\n}",meshmatcap_frag:"#define MATCAP\nuniform vec3 diffuse;\nuniform float opacity;\nuniform sampler2D matcap;\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vec3 viewDir = normalize( vViewPosition );\n vec3 x = normalize( vec3( viewDir.z, 0.0, - viewDir.x ) );\n vec3 y = cross( viewDir, x );\n vec2 uv = vec2( dot( x, normal ), dot( y, normal ) ) * 0.495 + 0.5;\n #ifdef USE_MATCAP\n vec4 matcapColor = texture2D( matcap, uv );\n #else\n vec4 matcapColor = vec4( vec3( mix( 0.2, 0.8, uv.y ) ), 1.0 );\n #endif\n vec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb;\n #include \n #include \n #include \n #include \n #include \n #include \n}",meshnormal_vert:"#define NORMAL\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\n varying vec3 vViewPosition;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\n vViewPosition = - mvPosition.xyz;\n#endif\n}",meshnormal_frag:"#define NORMAL\nuniform float opacity;\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE )\n varying vec3 vViewPosition;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( 0.0, 0.0, 0.0, opacity );\n #include \n #include \n #include \n #include \n gl_FragColor = vec4( packNormalToRGB( normal ), diffuseColor.a );\n #ifdef OPAQUE\n gl_FragColor.a = 1.0;\n #endif\n}",meshphong_vert:"#define PHONG\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vViewPosition = - mvPosition.xyz;\n #include \n #include \n #include \n #include \n}",meshphong_frag:"#define PHONG\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform vec3 specular;\nuniform float shininess;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n vec3 totalEmissiveRadiance = emissive;\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n}",meshphysical_vert:"#define STANDARD\nvarying vec3 vViewPosition;\n#ifdef USE_TRANSMISSION\n varying vec3 vWorldPosition;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vViewPosition = - mvPosition.xyz;\n #include \n #include \n #include \n#ifdef USE_TRANSMISSION\n vWorldPosition = worldPosition.xyz;\n#endif\n}",meshphysical_frag:"#define STANDARD\n#ifdef PHYSICAL\n #define IOR\n #define USE_SPECULAR\n#endif\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float roughness;\nuniform float metalness;\nuniform float opacity;\n#ifdef IOR\n uniform float ior;\n#endif\n#ifdef USE_SPECULAR\n uniform float specularIntensity;\n uniform vec3 specularColor;\n #ifdef USE_SPECULAR_COLORMAP\n uniform sampler2D specularColorMap;\n #endif\n #ifdef USE_SPECULAR_INTENSITYMAP\n uniform sampler2D specularIntensityMap;\n #endif\n#endif\n#ifdef USE_CLEARCOAT\n uniform float clearcoat;\n uniform float clearcoatRoughness;\n#endif\n#ifdef USE_DISPERSION\n uniform float dispersion;\n#endif\n#ifdef USE_IRIDESCENCE\n uniform float iridescence;\n uniform float iridescenceIOR;\n uniform float iridescenceThicknessMinimum;\n uniform float iridescenceThicknessMaximum;\n#endif\n#ifdef USE_SHEEN\n uniform vec3 sheenColor;\n uniform float sheenRoughness;\n #ifdef USE_SHEEN_COLORMAP\n uniform sampler2D sheenColorMap;\n #endif\n #ifdef USE_SHEEN_ROUGHNESSMAP\n uniform sampler2D sheenRoughnessMap;\n #endif\n#endif\n#ifdef USE_ANISOTROPY\n uniform vec2 anisotropyVector;\n #ifdef USE_ANISOTROPYMAP\n uniform sampler2D anisotropyMap;\n #endif\n#endif\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n vec3 totalEmissiveRadiance = emissive;\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vec3 totalDiffuse = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse;\n vec3 totalSpecular = reflectedLight.directSpecular + reflectedLight.indirectSpecular;\n #include \n vec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance;\n #ifdef USE_SHEEN\n float sheenEnergyComp = 1.0 - 0.157 * max3( material.sheenColor );\n outgoingLight = outgoingLight * sheenEnergyComp + sheenSpecularDirect + sheenSpecularIndirect;\n #endif\n #ifdef USE_CLEARCOAT\n float dotNVcc = saturate( dot( geometryClearcoatNormal, geometryViewDir ) );\n vec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc );\n outgoingLight = outgoingLight * ( 1.0 - material.clearcoat * Fcc ) + ( clearcoatSpecularDirect + clearcoatSpecularIndirect ) * material.clearcoat;\n #endif\n #include \n #include \n #include \n #include \n #include \n #include \n}",meshtoon_vert:"#define TOON\nvarying vec3 vViewPosition;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vViewPosition = - mvPosition.xyz;\n #include \n #include \n #include \n}",meshtoon_frag:"#define TOON\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n vec3 totalEmissiveRadiance = emissive;\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\n #include \n #include \n #include \n #include \n #include \n #include \n}",points_vert:"uniform float size;\nuniform float scale;\n#include \n#include \n#include \n#include \n#include \n#include \n#ifdef USE_POINTS_UV\n varying vec2 vUv;\n uniform mat3 uvTransform;\n#endif\nvoid main() {\n #ifdef USE_POINTS_UV\n vUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n #endif\n #include \n #include \n #include \n #include \n #include \n #include \n gl_PointSize = size;\n #ifdef USE_SIZEATTENUATION\n bool isPerspective = isPerspectiveMatrix( projectionMatrix );\n if ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\n #endif\n #include \n #include \n #include \n #include \n}",points_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n vec3 outgoingLight = vec3( 0.0 );\n #include \n #include \n #include \n #include \n #include \n outgoingLight = diffuseColor.rgb;\n #include \n #include \n #include \n #include \n #include \n}",shadow_vert:"#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n}",shadow_frag:"uniform vec3 color;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n gl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) );\n #include \n #include \n #include \n}",sprite_vert:"uniform float rotation;\nuniform vec2 center;\n#include \n#include \n#include \n#include \n#include \nvoid main() {\n #include \n vec4 mvPosition = modelViewMatrix[ 3 ];\n vec2 scale = vec2( length( modelMatrix[ 0 ].xyz ), length( modelMatrix[ 1 ].xyz ) );\n #ifndef USE_SIZEATTENUATION\n bool isPerspective = isPerspectiveMatrix( projectionMatrix );\n if ( isPerspective ) scale *= - mvPosition.z;\n #endif\n vec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale;\n vec2 rotatedPosition;\n rotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y;\n rotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y;\n mvPosition.xy += rotatedPosition;\n gl_Position = projectionMatrix * mvPosition;\n #include \n #include \n #include \n}",sprite_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include \n vec3 outgoingLight = vec3( 0.0 );\n #include \n #include \n #include \n #include \n #include \n outgoingLight = diffuseColor.rgb;\n #include \n #include \n #include \n #include \n}"},ok={common:{diffuse:{value:new tO(0xffffff)},opacity:{value:1},map:{value:null},mapTransform:{value:new q},alphaMap:{value:null},alphaMapTransform:{value:new q},alphaTest:{value:0}},specularmap:{specularMap:{value:null},specularMapTransform:{value:new q}},envmap:{envMap:{value:null},envMapRotation:{value:new q},flipEnvMap:{value:-1},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1},aoMapTransform:{value:new q}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1},lightMapTransform:{value:new q}},bumpmap:{bumpMap:{value:null},bumpMapTransform:{value:new q},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalMapTransform:{value:new q},normalScale:{value:new Q(1,1)}},displacementmap:{displacementMap:{value:null},displacementMapTransform:{value:new q},displacementScale:{value:1},displacementBias:{value:0}},emissivemap:{emissiveMap:{value:null},emissiveMapTransform:{value:new q}},metalnessmap:{metalnessMap:{value:null},metalnessMapTransform:{value:new q}},roughnessmap:{roughnessMap:{value:null},roughnessMapTransform:{value:new q}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new tO(0xffffff)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMap:{value:[]},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},spotLightMap:{value:[]},spotShadowMap:{value:[]},spotLightMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},pointShadowMap:{value:[]},pointShadowMatrix:{value:[]},hemisphereLights:{value:[],properties:{direction:{},skyColor:{},groundColor:{}}},rectAreaLights:{value:[],properties:{color:{},position:{},width:{},height:{}}},ltc_1:{value:null},ltc_2:{value:null}},points:{diffuse:{value:new tO(0xffffff)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaMapTransform:{value:new q},alphaTest:{value:0},uvTransform:{value:new q}},sprite:{diffuse:{value:new tO(0xffffff)},opacity:{value:1},center:{value:new Q(.5,.5)},rotation:{value:0},map:{value:null},mapTransform:{value:new q},alphaMap:{value:null},alphaMapTransform:{value:new q},alphaTest:{value:0}}},oH={basic:{uniforms:iS([ok.common,ok.specularmap,ok.envmap,ok.aomap,ok.lightmap,ok.fog]),vertexShader:oz.meshbasic_vert,fragmentShader:oz.meshbasic_frag},lambert:{uniforms:iS([ok.common,ok.specularmap,ok.envmap,ok.aomap,ok.lightmap,ok.emissivemap,ok.bumpmap,ok.normalmap,ok.displacementmap,ok.fog,ok.lights,{emissive:{value:new tO(0)}}]),vertexShader:oz.meshlambert_vert,fragmentShader:oz.meshlambert_frag},phong:{uniforms:iS([ok.common,ok.specularmap,ok.envmap,ok.aomap,ok.lightmap,ok.emissivemap,ok.bumpmap,ok.normalmap,ok.displacementmap,ok.fog,ok.lights,{emissive:{value:new tO(0)},specular:{value:new tO(1118481)},shininess:{value:30}}]),vertexShader:oz.meshphong_vert,fragmentShader:oz.meshphong_frag},standard:{uniforms:iS([ok.common,ok.envmap,ok.aomap,ok.lightmap,ok.emissivemap,ok.bumpmap,ok.normalmap,ok.displacementmap,ok.roughnessmap,ok.metalnessmap,ok.fog,ok.lights,{emissive:{value:new tO(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:oz.meshphysical_vert,fragmentShader:oz.meshphysical_frag},toon:{uniforms:iS([ok.common,ok.aomap,ok.lightmap,ok.emissivemap,ok.bumpmap,ok.normalmap,ok.displacementmap,ok.gradientmap,ok.fog,ok.lights,{emissive:{value:new tO(0)}}]),vertexShader:oz.meshtoon_vert,fragmentShader:oz.meshtoon_frag},matcap:{uniforms:iS([ok.common,ok.bumpmap,ok.normalmap,ok.displacementmap,ok.fog,{matcap:{value:null}}]),vertexShader:oz.meshmatcap_vert,fragmentShader:oz.meshmatcap_frag},points:{uniforms:iS([ok.points,ok.fog]),vertexShader:oz.points_vert,fragmentShader:oz.points_frag},dashed:{uniforms:iS([ok.common,ok.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:oz.linedashed_vert,fragmentShader:oz.linedashed_frag},depth:{uniforms:iS([ok.common,ok.displacementmap]),vertexShader:oz.depth_vert,fragmentShader:oz.depth_frag},normal:{uniforms:iS([ok.common,ok.bumpmap,ok.normalmap,ok.displacementmap,{opacity:{value:1}}]),vertexShader:oz.meshnormal_vert,fragmentShader:oz.meshnormal_frag},sprite:{uniforms:iS([ok.sprite,ok.fog]),vertexShader:oz.sprite_vert,fragmentShader:oz.sprite_frag},background:{uniforms:{uvTransform:{value:new q},t2D:{value:null},backgroundIntensity:{value:1}},vertexShader:oz.background_vert,fragmentShader:oz.background_frag},backgroundCube:{uniforms:{envMap:{value:null},flipEnvMap:{value:-1},backgroundBlurriness:{value:0},backgroundIntensity:{value:1},backgroundRotation:{value:new q}},vertexShader:oz.backgroundCube_vert,fragmentShader:oz.backgroundCube_frag},cube:{uniforms:{tCube:{value:null},tFlip:{value:-1},opacity:{value:1}},vertexShader:oz.cube_vert,fragmentShader:oz.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:oz.equirect_vert,fragmentShader:oz.equirect_frag},distanceRGBA:{uniforms:iS([ok.common,ok.displacementmap,{referencePosition:{value:new eE},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:oz.distanceRGBA_vert,fragmentShader:oz.distanceRGBA_frag},shadow:{uniforms:iS([ok.lights,ok.fog,{color:{value:new tO(0)},opacity:{value:1}}]),vertexShader:oz.shadow_vert,fragmentShader:oz.shadow_frag}};oH.physical={uniforms:iS([oH.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatMapTransform:{value:new q},clearcoatNormalMap:{value:null},clearcoatNormalMapTransform:{value:new q},clearcoatNormalScale:{value:new Q(1,1)},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatRoughnessMapTransform:{value:new q},dispersion:{value:0},iridescence:{value:0},iridescenceMap:{value:null},iridescenceMapTransform:{value:new q},iridescenceIOR:{value:1.3},iridescenceThicknessMinimum:{value:100},iridescenceThicknessMaximum:{value:400},iridescenceThicknessMap:{value:null},iridescenceThicknessMapTransform:{value:new q},sheen:{value:0},sheenColor:{value:new tO(0)},sheenColorMap:{value:null},sheenColorMapTransform:{value:new q},sheenRoughness:{value:1},sheenRoughnessMap:{value:null},sheenRoughnessMapTransform:{value:new q},transmission:{value:0},transmissionMap:{value:null},transmissionMapTransform:{value:new q},transmissionSamplerSize:{value:new Q},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},thicknessMapTransform:{value:new q},attenuationDistance:{value:0},attenuationColor:{value:new tO(0)},specularColor:{value:new tO(1,1,1)},specularColorMap:{value:null},specularColorMapTransform:{value:new q},specularIntensity:{value:1},specularIntensityMap:{value:null},specularIntensityMapTransform:{value:new q},anisotropyVector:{value:new Q},anisotropyMap:{value:null},anisotropyMapTransform:{value:new q}}]),vertexShader:oz.meshphysical_vert,fragmentShader:oz.meshphysical_frag};let oG={r:0,b:0,g:0},oV=new ti,oW=new e2;function oj(e,t,i,n,r,a,s){let o,l,u=new tO(0),c=+(!0!==a),h=null,d=0,f=null;function p(e){let n=!0===e.isScene?e.background:null;return n&&n.isTexture&&(n=(e.backgroundBlurriness>0?i:t).get(n)),n}function m(t,i){t.getRGB(oG,iA(e)),n.buffers.color.setClear(oG.r,oG.g,oG.b,i,s)}return{getClearColor:function(){return u},setClearColor:function(e,t=1){u.set(e),m(u,c=t)},getClearAlpha:function(){return c},setClearAlpha:function(e){m(u,c=e)},render:function(t){let i=!1,r=p(t);null===r?m(u,c):r&&r.isColor&&(m(r,1),i=!0);let a=e.xr.getEnvironmentBlendMode();"additive"===a?n.buffers.color.setClear(0,0,0,1,s):"alpha-blend"===a&&n.buffers.color.setClear(0,0,0,0,s),(e.autoClear||i)&&(n.buffers.depth.setTest(!0),n.buffers.depth.setMask(!0),n.buffers.color.setMask(!0),e.clear(e.autoClearColor,e.autoClearDepth,e.autoClearStencil))},addToRenderList:function(t,i){let n=p(i);n&&(n.isCubeTexture||306===n.mapping)?(void 0===l&&((l=new ig(new ix(1,1,1),new ib({name:"BackgroundCubeMaterial",uniforms:iy(oH.backgroundCube.uniforms),vertexShader:oH.backgroundCube.vertexShader,fragmentShader:oH.backgroundCube.fragmentShader,side:1,depthTest:!1,depthWrite:!1,fog:!1}))).geometry.deleteAttribute("normal"),l.geometry.deleteAttribute("uv"),l.onBeforeRender=function(e,t,i){this.matrixWorld.copyPosition(i.matrixWorld)},Object.defineProperty(l.material,"envMap",{get:function(){return this.uniforms.envMap.value}}),r.update(l)),oV.copy(i.backgroundRotation),oV.x*=-1,oV.y*=-1,oV.z*=-1,n.isCubeTexture&&!1===n.isRenderTargetTexture&&(oV.y*=-1,oV.z*=-1),l.material.uniforms.envMap.value=n,l.material.uniforms.flipEnvMap.value=n.isCubeTexture&&!1===n.isRenderTargetTexture?-1:1,l.material.uniforms.backgroundBlurriness.value=i.backgroundBlurriness,l.material.uniforms.backgroundIntensity.value=i.backgroundIntensity,l.material.uniforms.backgroundRotation.value.setFromMatrix4(oW.makeRotationFromEuler(oV)),l.material.toneMapped=eu.getTransfer(n.colorSpace)!==B,(h!==n||d!==n.version||f!==e.toneMapping)&&(l.material.needsUpdate=!0,h=n,d=n.version,f=e.toneMapping),l.layers.enableAll(),t.unshift(l,l.geometry,l.material,0,0,null)):n&&n.isTexture&&(void 0===o&&((o=new ig(new r9(2,2),new ib({name:"BackgroundMaterial",uniforms:iy(oH.background.uniforms),vertexShader:oH.background.vertexShader,fragmentShader:oH.background.fragmentShader,side:0,depthTest:!1,depthWrite:!1,fog:!1}))).geometry.deleteAttribute("normal"),Object.defineProperty(o.material,"map",{get:function(){return this.uniforms.t2D.value}}),r.update(o)),o.material.uniforms.t2D.value=n,o.material.uniforms.backgroundIntensity.value=i.backgroundIntensity,o.material.toneMapped=eu.getTransfer(n.colorSpace)!==B,!0===n.matrixAutoUpdate&&n.updateMatrix(),o.material.uniforms.uvTransform.value.copy(n.matrix),(h!==n||d!==n.version||f!==e.toneMapping)&&(o.material.needsUpdate=!0,h=n,d=n.version,f=e.toneMapping),o.layers.enableAll(),t.unshift(o,o.geometry,o.material,0,0,null))},dispose:function(){void 0!==l&&(l.geometry.dispose(),l.material.dispose()),void 0!==o&&(o.geometry.dispose(),o.material.dispose())}}}function oX(e,t){let i=e.getParameter(e.MAX_VERTEX_ATTRIBS),n={},r=u(null),a=r,s=!1;function o(t){return e.bindVertexArray(t)}function l(t){return e.deleteVertexArray(t)}function u(e){let t=[],n=[],r=[];for(let e=0;e=0){let i=r[t],n=s[t];if(void 0===n&&("instanceMatrix"===t&&e.instanceMatrix&&(n=e.instanceMatrix),"instanceColor"===t&&e.instanceColor&&(n=e.instanceColor)),void 0===i||i.attribute!==n||n&&i.data!==n.data)return!0;o++}return a.attributesNum!==o||a.index!==n}(i,m,l,g))&&function(e,t,i,n){let r={},s=t.attributes,o=0,l=i.getAttributes();for(let t in l)if(l[t].location>=0){let i=s[t];void 0===i&&("instanceMatrix"===t&&e.instanceMatrix&&(i=e.instanceMatrix),"instanceColor"===t&&e.instanceColor&&(i=e.instanceColor));let n={};n.attribute=i,i&&i.data&&(n.data=i.data),r[t]=n,o++}a.attributes=r,a.attributesNum=o,a.index=n}(i,m,l,g),null!==g&&t.update(g,e.ELEMENT_ARRAY_BUFFER),(b||s)&&(s=!1,function(i,n,r,a){c();let s=a.attributes,o=r.getAttributes(),l=n.defaultAttributeValues;for(let n in o){let r=o[n];if(r.location>=0){let o=s[n];if(void 0===o&&("instanceMatrix"===n&&i.instanceMatrix&&(o=i.instanceMatrix),"instanceColor"===n&&i.instanceColor&&(o=i.instanceColor)),void 0!==o){let n=o.normalized,s=o.itemSize,l=t.get(o);if(void 0===l)continue;let u=l.buffer,c=l.type,f=l.bytesPerElement,m=c===e.INT||c===e.UNSIGNED_INT||1013===o.gpuType;if(o.isInterleavedBufferAttribute){let t=o.data,l=t.stride,g=o.offset;if(t.isInstancedInterleavedBuffer){for(let e=0;e0&&e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.HIGH_FLOAT).precision>0)return"highp";t="mediump"}return"mediump"===t&&e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.MEDIUM_FLOAT).precision>0&&e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.MEDIUM_FLOAT).precision>0?"mediump":"lowp"}let s=void 0!==i.precision?i.precision:"highp",o=a(s);o!==s&&(console.warn("THREE.WebGLRenderer:",s,"not supported, using",o,"instead."),s=o);let l=!0===i.logarithmicDepthBuffer,u=!0===i.reverseDepthBuffer&&t.has("EXT_clip_control"),c=e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS),h=e.getParameter(e.MAX_VERTEX_TEXTURE_IMAGE_UNITS);return{isWebGL2:!0,getMaxAnisotropy:function(){if(void 0!==r)return r;if(!0===t.has("EXT_texture_filter_anisotropic")){let i=t.get("EXT_texture_filter_anisotropic");r=e.getParameter(i.MAX_TEXTURE_MAX_ANISOTROPY_EXT)}else r=0;return r},getMaxPrecision:a,textureFormatReadable:function(t){return 1023===t||n.convert(t)===e.getParameter(e.IMPLEMENTATION_COLOR_READ_FORMAT)},textureTypeReadable:function(i){let r=1016===i&&(t.has("EXT_color_buffer_half_float")||t.has("EXT_color_buffer_float"));return 1009===i||n.convert(i)===e.getParameter(e.IMPLEMENTATION_COLOR_READ_TYPE)||1015===i||!!r},precision:s,logarithmicDepthBuffer:l,reverseDepthBuffer:u,maxTextures:c,maxVertexTextures:h,maxTextureSize:e.getParameter(e.MAX_TEXTURE_SIZE),maxCubemapSize:e.getParameter(e.MAX_CUBE_MAP_TEXTURE_SIZE),maxAttributes:e.getParameter(e.MAX_VERTEX_ATTRIBS),maxVertexUniforms:e.getParameter(e.MAX_VERTEX_UNIFORM_VECTORS),maxVaryings:e.getParameter(e.MAX_VARYING_VECTORS),maxFragmentUniforms:e.getParameter(e.MAX_FRAGMENT_UNIFORM_VECTORS),vertexTextures:h>0,maxSamples:e.getParameter(e.MAX_SAMPLES)}}function oq(e){let t=this,i=null,n=0,r=!1,a=!1,s=new ny,o=new q,l={value:null,needsUpdate:!1};function u(e,i,n,r){let a=null!==e?e.length:0,u=null;if(0!==a){if(u=l.value,!0!==r||null===u){let t=n+4*a,r=i.matrixWorldInverse;o.getNormalMatrix(r),(null===u||u.length0),t.numPlanes=n,t.numIntersection=0)}}function oK(e){let t=new WeakMap;function i(e,t){return 303===t?e.mapping=301:304===t&&(e.mapping=302),e}function n(e){let i=e.target;i.removeEventListener("dispose",n);let r=t.get(i);void 0!==r&&(t.delete(i),r.dispose())}return{get:function(r){if(r&&r.isTexture){let a=r.mapping;if(303===a||304===a)if(t.has(r))return i(t.get(r).texture,r.mapping);else{let a=r.image;if(!a||!(a.height>0))return null;{let s=new iD(a.height);return s.fromEquirectangularTexture(e,r),t.set(r,s),r.addEventListener("dispose",n),i(s.texture,r.mapping)}}}return r},dispose:function(){t=new WeakMap}}}let oZ=[.125,.215,.35,.446,.526,.582],oJ=new si,o$=new tO,o0=null,o1=0,o2=0,o3=!1,o4=(1+Math.sqrt(5))/2,o5=1/o4,o6=[new eE(-o4,o5,0),new eE(o4,o5,0),new eE(-o5,0,o4),new eE(o5,0,o4),new eE(0,o4,-o5),new eE(0,o4,o5),new eE(-1,1,-1),new eE(1,1,-1),new eE(-1,1,1),new eE(1,1,1)];class o8{constructor(e){this._renderer=e,this._pingPongRenderTarget=null,this._lodMax=0,this._cubeSize=0,this._lodPlanes=[],this._sizeLods=[],this._sigmas=[],this._blurMaterial=null,this._cubemapMaterial=null,this._equirectMaterial=null,this._compileMaterial(this._blurMaterial)}fromScene(e,t=0,i=.1,n=100){o0=this._renderer.getRenderTarget(),o1=this._renderer.getActiveCubeFace(),o2=this._renderer.getActiveMipmapLevel(),o3=this._renderer.xr.enabled,this._renderer.xr.enabled=!1,this._setSize(256);let r=this._allocateTargets();return r.depthBuffer=!0,this._sceneToCubeUV(e,i,n,r),t>0&&this._blur(r,0,0,t),this._applyPMREM(r),this._cleanup(r),r}fromEquirectangular(e,t=null){return this._fromTexture(e,t)}fromCubemap(e,t=null){return this._fromTexture(e,t)}compileCubemapShader(){null===this._cubemapMaterial&&(this._cubemapMaterial=lt(),this._compileMaterial(this._cubemapMaterial))}compileEquirectangularShader(){null===this._equirectMaterial&&(this._equirectMaterial=le(),this._compileMaterial(this._equirectMaterial))}dispose(){this._dispose(),null!==this._cubemapMaterial&&this._cubemapMaterial.dispose(),null!==this._equirectMaterial&&this._equirectMaterial.dispose()}_setSize(e){this._lodMax=Math.floor(Math.log2(e)),this._cubeSize=Math.pow(2,this._lodMax)}_dispose(){null!==this._blurMaterial&&this._blurMaterial.dispose(),null!==this._pingPongRenderTarget&&this._pingPongRenderTarget.dispose();for(let e=0;ee-4?o=oZ[s-e+4-1]:0===s&&(o=0),n.push(o);let l=1/(a-2),u=-l,c=1+l,h=[u,u,c,u,c,c,u,u,c,c,u,c],d=new Float32Array(108),f=new Float32Array(72),p=new Float32Array(36);for(let e=0;e<6;e++){let t=e%3*2/3-1,i=e>2?0:-1,n=[t,i,0,t+2/3,i,0,t+2/3,i+1,0,t,i,0,t+2/3,i+1,0,t,i+1,0];d.set(n,18*e),f.set(h,12*e);let r=[e,e,e,e,e,e];p.set(r,6*e)}let m=new ii;m.setAttribute("position",new tq(d,3)),m.setAttribute("uv",new tq(f,2)),m.setAttribute("faceIndex",new tq(p,1)),t.push(m),r>4&&r--}return{lodPlanes:t,sizeLods:i,sigmas:n}}(n)),this._blurMaterial=(r=n,new ib({name:"SphericalGaussianBlur",defines:{n:20,CUBEUV_TEXEL_WIDTH:1/e,CUBEUV_TEXEL_HEIGHT:1/t,CUBEUV_MAX_MIP:`${r}.0`},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:new Float32Array(20)},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:new eE(0,1,0)}},vertexShader:li(),fragmentShader:` - - precision mediump float; - precision mediump int; - - varying vec3 vOutputDirection; - - uniform sampler2D envMap; - uniform int samples; - uniform float weights[ n ]; - uniform bool latitudinal; - uniform float dTheta; - uniform float mipInt; - uniform vec3 poleAxis; - - #define ENVMAP_TYPE_CUBE_UV - #include - - vec3 getSample( float theta, vec3 axis ) { - - float cosTheta = cos( theta ); - // Rodrigues' axis-angle rotation - vec3 sampleDirection = vOutputDirection * cosTheta - + cross( axis, vOutputDirection ) * sin( theta ) - + axis * dot( axis, vOutputDirection ) * ( 1.0 - cosTheta ); - - return bilinearCubeUV( envMap, sampleDirection, mipInt ); - - } - - void main() { - - vec3 axis = latitudinal ? poleAxis : cross( poleAxis, vOutputDirection ); - - if ( all( equal( axis, vec3( 0.0 ) ) ) ) { - - axis = vec3( vOutputDirection.z, 0.0, - vOutputDirection.x ); - - } - - axis = normalize( axis ); - - gl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 ); - gl_FragColor.rgb += weights[ 0 ] * getSample( 0.0, axis ); - - for ( int i = 1; i < n; i++ ) { - - if ( i >= samples ) { - - break; - - } - - float theta = dTheta * float( i ); - gl_FragColor.rgb += weights[ i ] * getSample( -1.0 * theta, axis ); - gl_FragColor.rgb += weights[ i ] * getSample( theta, axis ); - - } - - } - `,blending:0,depthTest:!1,depthWrite:!1}))}return n}_compileMaterial(e){let t=new ig(this._lodPlanes[0],e);this._renderer.compile(t,oJ)}_sceneToCubeUV(e,t,i,n){let r=new iC(90,1,t,i),a=[1,-1,1,1,1,1],s=[1,1,1,-1,-1,-1],o=this._renderer,l=o.autoClear,u=o.toneMapping;o.getClearColor(o$),o.toneMapping=0,o.autoClear=!1;let c=new tG({name:"PMREM.Background",side:1,depthWrite:!1,depthTest:!1}),h=new ig(new ix,c),d=!1,f=e.background;f?f.isColor&&(c.color.copy(f),e.background=null,d=!0):(c.color.copy(o$),d=!0);for(let t=0;t<6;t++){let i=t%3;0===i?(r.up.set(0,a[t],0),r.lookAt(s[t],0,0)):1===i?(r.up.set(0,0,a[t]),r.lookAt(0,s[t],0)):(r.up.set(0,a[t],0),r.lookAt(0,0,s[t]));let l=this._cubeSize;o7(n,i*l,t>2?l:0,l,l),o.setRenderTarget(n),d&&o.render(h,r),o.render(e,r)}h.geometry.dispose(),h.material.dispose(),o.toneMapping=u,o.autoClear=l,e.background=f}_textureToCubeUV(e,t){let i=this._renderer,n=301===e.mapping||302===e.mapping;n?(null===this._cubemapMaterial&&(this._cubemapMaterial=lt()),this._cubemapMaterial.uniforms.flipEnvMap.value=!1===e.isRenderTargetTexture?-1:1):null===this._equirectMaterial&&(this._equirectMaterial=le());let r=n?this._cubemapMaterial:this._equirectMaterial,a=new ig(this._lodPlanes[0],r);r.uniforms.envMap.value=e;let s=this._cubeSize;o7(t,0,0,3*s,2*s),i.setRenderTarget(t),i.render(a,oJ)}_applyPMREM(e){let t=this._renderer,i=t.autoClear;t.autoClear=!1;let n=this._lodPlanes.length;for(let t=1;t20&&console.warn(`sigmaRadians, ${r}, is too large and will clip, as it requested ${p} samples when the maximum is set to 20`);let m=[],g=0;for(let e=0;e<20;++e){let t=e/f,i=Math.exp(-t*t/2);m.push(i),0===e?g+=i:ev-4?n-v+4:0),y,3*x,2*x),o.setRenderTarget(t),o.render(u,oJ)}}function o9(e,t,i){let n=new eS(e,t,i);return n.texture.mapping=306,n.texture.name="PMREM.cubeUv",n.scissorTest=!0,n}function o7(e,t,i,n,r){e.viewport.set(t,i,n,r),e.scissor.set(t,i,n,r)}function le(){return new ib({name:"EquirectangularToCubeUV",uniforms:{envMap:{value:null}},vertexShader:li(),fragmentShader:` - - precision mediump float; - precision mediump int; - - varying vec3 vOutputDirection; - - uniform sampler2D envMap; - - #include - - void main() { - - vec3 outputDirection = normalize( vOutputDirection ); - vec2 uv = equirectUv( outputDirection ); - - gl_FragColor = vec4( texture2D ( envMap, uv ).rgb, 1.0 ); - - } - `,blending:0,depthTest:!1,depthWrite:!1})}function lt(){return new ib({name:"CubemapToCubeUV",uniforms:{envMap:{value:null},flipEnvMap:{value:-1}},vertexShader:li(),fragmentShader:` - - precision mediump float; - precision mediump int; - - uniform float flipEnvMap; - - varying vec3 vOutputDirection; - - uniform samplerCube envMap; - - void main() { - - gl_FragColor = textureCube( envMap, vec3( flipEnvMap * vOutputDirection.x, vOutputDirection.yz ) ); - - } - `,blending:0,depthTest:!1,depthWrite:!1})}function li(){return` - - precision mediump float; - precision mediump int; - - attribute float faceIndex; - - varying vec3 vOutputDirection; - - // RH coordinate system; PMREM face-indexing convention - vec3 getDirection( vec2 uv, float face ) { - - uv = 2.0 * uv - 1.0; - - vec3 direction = vec3( uv, 1.0 ); - - if ( face == 0.0 ) { - - direction = direction.zyx; // ( 1, v, u ) pos x - - } else if ( face == 1.0 ) { - - direction = direction.xzy; - direction.xz *= -1.0; // ( -u, 1, -v ) pos y - - } else if ( face == 2.0 ) { - - direction.x *= -1.0; // ( -u, v, 1 ) pos z - - } else if ( face == 3.0 ) { - - direction = direction.zyx; - direction.xz *= -1.0; // ( -1, v, -u ) neg x - - } else if ( face == 4.0 ) { - - direction = direction.xzy; - direction.xy *= -1.0; // ( -u, -1, v ) neg y - - } else if ( face == 5.0 ) { - - direction.z *= -1.0; // ( u, v, -1 ) neg z - - } - - return direction; - - } - - void main() { - - vOutputDirection = getDirection( uv, faceIndex ); - gl_Position = vec4( position, 1.0 ); - - } - `}function ln(e){let t=new WeakMap,i=null;function n(e){let i=e.target;i.removeEventListener("dispose",n);let r=t.get(i);void 0!==r&&(t.delete(i),r.dispose())}return{get:function(r){if(r&&r.isTexture){let a=r.mapping,s=303===a||304===a,o=301===a||302===a;if(s||o){let a=t.get(r),l=void 0!==a?a.texture.pmremVersion:0;if(r.isRenderTargetTexture&&r.pmremVersion!==l)return null===i&&(i=new o8(e)),(a=s?i.fromEquirectangular(r,a):i.fromCubemap(r,a)).texture.pmremVersion=r.pmremVersion,t.set(r,a),a.texture;{if(void 0!==a)return a.texture;let l=r.image;return s&&l&&l.height>0||o&&l&&function(e){let t=0;for(let i=0;i<6;i++)void 0!==e[i]&&t++;return 6===t}(l)?(null===i&&(i=new o8(e)),(a=s?i.fromEquirectangular(r):i.fromCubemap(r)).texture.pmremVersion=r.pmremVersion,t.set(r,a),r.addEventListener("dispose",n),a.texture):null}}}return r},dispose:function(){t=new WeakMap,null!==i&&(i.dispose(),i=null)}}}function lr(e){let t={};function i(i){let n;if(void 0!==t[i])return t[i];switch(i){case"WEBGL_depth_texture":n=e.getExtension("WEBGL_depth_texture")||e.getExtension("MOZ_WEBGL_depth_texture")||e.getExtension("WEBKIT_WEBGL_depth_texture");break;case"EXT_texture_filter_anisotropic":n=e.getExtension("EXT_texture_filter_anisotropic")||e.getExtension("MOZ_EXT_texture_filter_anisotropic")||e.getExtension("WEBKIT_EXT_texture_filter_anisotropic");break;case"WEBGL_compressed_texture_s3tc":n=e.getExtension("WEBGL_compressed_texture_s3tc")||e.getExtension("MOZ_WEBGL_compressed_texture_s3tc")||e.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc");break;case"WEBGL_compressed_texture_pvrtc":n=e.getExtension("WEBGL_compressed_texture_pvrtc")||e.getExtension("WEBKIT_WEBGL_compressed_texture_pvrtc");break;default:n=e.getExtension(i)}return t[i]=n,n}return{has:function(e){return null!==i(e)},init:function(){i("EXT_color_buffer_float"),i("WEBGL_clip_cull_distance"),i("OES_texture_float_linear"),i("EXT_color_buffer_half_float"),i("WEBGL_multisampled_render_to_texture"),i("WEBGL_render_shared_exponent")},get:function(e){let t=i(e);return null===t&&en("THREE.WebGLRenderer: "+e+" extension not supported."),t}}}function la(e,t,i,n){let r={},a=new WeakMap;function s(e){let o=e.target;for(let e in null!==o.index&&t.remove(o.index),o.attributes)t.remove(o.attributes[e]);o.removeEventListener("dispose",s),delete r[o.id];let l=a.get(o);l&&(t.remove(l),a.delete(o)),n.releaseStatesOfGeometry(o),!0===o.isInstancedBufferGeometry&&delete o._maxInstanceCount,i.memory.geometries--}function o(e){let i=[],n=e.index,r=e.attributes.position,s=0;if(null!==n){let e=n.array;s=n.version;for(let t=0,n=e.length;tt.maxTextureSize&&(p=Math.ceil(f/t.maxTextureSize),f=t.maxTextureSize);let m=new Float32Array(f*p*4*c),g=new eA(m,f,p,c);g.type=1015,g.needsUpdate=!0;let v=4*d;for(let t=0;t0)return e;let r=t*i,a=lm[r];if(void 0===a&&(a=new Float32Array(r),lm[r]=a),0!==t){n.toArray(a,0);for(let n=1,r=0;n!==t;++n)r+=i,e[n].toArray(a,r)}return a}function lA(e,t){if(e.length!==t.length)return!1;for(let i=0,n=e.length;i":" "} ${r}: ${i[e]}`)}return n.join("\n")}(e.getShaderSource(t),n)}}let ul=new eE;function uu(e){return""!==e}function uc(e,t){let i=t.numSpotLightShadows+t.numSpotLightMaps-t.numSpotLightShadowsWithMaps;return e.replace(/NUM_DIR_LIGHTS/g,t.numDirLights).replace(/NUM_SPOT_LIGHTS/g,t.numSpotLights).replace(/NUM_SPOT_LIGHT_MAPS/g,t.numSpotLightMaps).replace(/NUM_SPOT_LIGHT_COORDS/g,i).replace(/NUM_RECT_AREA_LIGHTS/g,t.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,t.numPointLights).replace(/NUM_HEMI_LIGHTS/g,t.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g,t.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS/g,t.numSpotLightShadowsWithMaps).replace(/NUM_SPOT_LIGHT_SHADOWS/g,t.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,t.numPointLightShadows)}function uh(e,t){return e.replace(/NUM_CLIPPING_PLANES/g,t.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,t.numClippingPlanes-t.numClipIntersection)}let ud=/^[ \t]*#include +<([\w\d./]+)>/gm;function uf(e){return e.replace(ud,um)}let up=new Map;function um(e,t){let i=oz[t];if(void 0===i){let e=up.get(t);if(void 0!==e)i=oz[e],console.warn('THREE.WebGLRenderer: Shader chunk "%s" has been deprecated. Use "%s" instead.',t,e);else throw Error("Can not resolve #include <"+t+">")}return uf(i)}let ug=/#pragma unroll_loop_start\s+for\s*\(\s*int\s+i\s*=\s*(\d+)\s*;\s*i\s*<\s*(\d+)\s*;\s*i\s*\+\+\s*\)\s*{([\s\S]+?)}\s+#pragma unroll_loop_end/g;function uv(e){return e.replace(ug,ux)}function ux(e,t,i,n){let r="";for(let e=parseInt(t);e0&&(r+="\n"),(a=["#define SHADER_TYPE "+i.shaderType,"#define SHADER_NAME "+i.shaderName,S].filter(uu).join("\n")).length>0&&(a+="\n");else{let e,t,n,s;r=[uy(i),"#define SHADER_TYPE "+i.shaderType,"#define SHADER_NAME "+i.shaderName,S,i.extensionClipCullDistance?"#define USE_CLIP_DISTANCE":"",i.batching?"#define USE_BATCHING":"",i.batchingColor?"#define USE_BATCHING_COLOR":"",i.instancing?"#define USE_INSTANCING":"",i.instancingColor?"#define USE_INSTANCING_COLOR":"",i.instancingMorph?"#define USE_INSTANCING_MORPH":"",i.useFog&&i.fog?"#define USE_FOG":"",i.useFog&&i.fogExp2?"#define FOG_EXP2":"",i.map?"#define USE_MAP":"",i.envMap?"#define USE_ENVMAP":"",i.envMap?"#define "+g:"",i.lightMap?"#define USE_LIGHTMAP":"",i.aoMap?"#define USE_AOMAP":"",i.bumpMap?"#define USE_BUMPMAP":"",i.normalMap?"#define USE_NORMALMAP":"",i.normalMapObjectSpace?"#define USE_NORMALMAP_OBJECTSPACE":"",i.normalMapTangentSpace?"#define USE_NORMALMAP_TANGENTSPACE":"",i.displacementMap?"#define USE_DISPLACEMENTMAP":"",i.emissiveMap?"#define USE_EMISSIVEMAP":"",i.anisotropy?"#define USE_ANISOTROPY":"",i.anisotropyMap?"#define USE_ANISOTROPYMAP":"",i.clearcoatMap?"#define USE_CLEARCOATMAP":"",i.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",i.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",i.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",i.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",i.specularMap?"#define USE_SPECULARMAP":"",i.specularColorMap?"#define USE_SPECULAR_COLORMAP":"",i.specularIntensityMap?"#define USE_SPECULAR_INTENSITYMAP":"",i.roughnessMap?"#define USE_ROUGHNESSMAP":"",i.metalnessMap?"#define USE_METALNESSMAP":"",i.alphaMap?"#define USE_ALPHAMAP":"",i.alphaHash?"#define USE_ALPHAHASH":"",i.transmission?"#define USE_TRANSMISSION":"",i.transmissionMap?"#define USE_TRANSMISSIONMAP":"",i.thicknessMap?"#define USE_THICKNESSMAP":"",i.sheenColorMap?"#define USE_SHEEN_COLORMAP":"",i.sheenRoughnessMap?"#define USE_SHEEN_ROUGHNESSMAP":"",i.mapUv?"#define MAP_UV "+i.mapUv:"",i.alphaMapUv?"#define ALPHAMAP_UV "+i.alphaMapUv:"",i.lightMapUv?"#define LIGHTMAP_UV "+i.lightMapUv:"",i.aoMapUv?"#define AOMAP_UV "+i.aoMapUv:"",i.emissiveMapUv?"#define EMISSIVEMAP_UV "+i.emissiveMapUv:"",i.bumpMapUv?"#define BUMPMAP_UV "+i.bumpMapUv:"",i.normalMapUv?"#define NORMALMAP_UV "+i.normalMapUv:"",i.displacementMapUv?"#define DISPLACEMENTMAP_UV "+i.displacementMapUv:"",i.metalnessMapUv?"#define METALNESSMAP_UV "+i.metalnessMapUv:"",i.roughnessMapUv?"#define ROUGHNESSMAP_UV "+i.roughnessMapUv:"",i.anisotropyMapUv?"#define ANISOTROPYMAP_UV "+i.anisotropyMapUv:"",i.clearcoatMapUv?"#define CLEARCOATMAP_UV "+i.clearcoatMapUv:"",i.clearcoatNormalMapUv?"#define CLEARCOAT_NORMALMAP_UV "+i.clearcoatNormalMapUv:"",i.clearcoatRoughnessMapUv?"#define CLEARCOAT_ROUGHNESSMAP_UV "+i.clearcoatRoughnessMapUv:"",i.iridescenceMapUv?"#define IRIDESCENCEMAP_UV "+i.iridescenceMapUv:"",i.iridescenceThicknessMapUv?"#define IRIDESCENCE_THICKNESSMAP_UV "+i.iridescenceThicknessMapUv:"",i.sheenColorMapUv?"#define SHEEN_COLORMAP_UV "+i.sheenColorMapUv:"",i.sheenRoughnessMapUv?"#define SHEEN_ROUGHNESSMAP_UV "+i.sheenRoughnessMapUv:"",i.specularMapUv?"#define SPECULARMAP_UV "+i.specularMapUv:"",i.specularColorMapUv?"#define SPECULAR_COLORMAP_UV "+i.specularColorMapUv:"",i.specularIntensityMapUv?"#define SPECULAR_INTENSITYMAP_UV "+i.specularIntensityMapUv:"",i.transmissionMapUv?"#define TRANSMISSIONMAP_UV "+i.transmissionMapUv:"",i.thicknessMapUv?"#define THICKNESSMAP_UV "+i.thicknessMapUv:"",i.vertexTangents&&!1===i.flatShading?"#define USE_TANGENT":"",i.vertexColors?"#define USE_COLOR":"",i.vertexAlphas?"#define USE_COLOR_ALPHA":"",i.vertexUv1s?"#define USE_UV1":"",i.vertexUv2s?"#define USE_UV2":"",i.vertexUv3s?"#define USE_UV3":"",i.pointsUvs?"#define USE_POINTS_UV":"",i.flatShading?"#define FLAT_SHADED":"",i.skinning?"#define USE_SKINNING":"",i.morphTargets?"#define USE_MORPHTARGETS":"",i.morphNormals&&!1===i.flatShading?"#define USE_MORPHNORMALS":"",i.morphColors?"#define USE_MORPHCOLORS":"",i.morphTargetsCount>0?"#define MORPHTARGETS_TEXTURE_STRIDE "+i.morphTextureStride:"",i.morphTargetsCount>0?"#define MORPHTARGETS_COUNT "+i.morphTargetsCount:"",i.doubleSided?"#define DOUBLE_SIDED":"",i.flipSided?"#define FLIP_SIDED":"",i.shadowMapEnabled?"#define USE_SHADOWMAP":"",i.shadowMapEnabled?"#define "+p:"",i.sizeAttenuation?"#define USE_SIZEATTENUATION":"",i.numLightProbes>0?"#define USE_LIGHT_PROBES":"",i.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",i.reverseDepthBuffer?"#define USE_REVERSEDEPTHBUF":"","uniform mat4 modelMatrix;","uniform mat4 modelViewMatrix;","uniform mat4 projectionMatrix;","uniform mat4 viewMatrix;","uniform mat3 normalMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;","#ifdef USE_INSTANCING"," attribute mat4 instanceMatrix;","#endif","#ifdef USE_INSTANCING_COLOR"," attribute vec3 instanceColor;","#endif","#ifdef USE_INSTANCING_MORPH"," uniform sampler2D morphTexture;","#endif","attribute vec3 position;","attribute vec3 normal;","attribute vec2 uv;","#ifdef USE_UV1"," attribute vec2 uv1;","#endif","#ifdef USE_UV2"," attribute vec2 uv2;","#endif","#ifdef USE_UV3"," attribute vec2 uv3;","#endif","#ifdef USE_TANGENT"," attribute vec4 tangent;","#endif","#if defined( USE_COLOR_ALPHA )"," attribute vec4 color;","#elif defined( USE_COLOR )"," attribute vec3 color;","#endif","#ifdef USE_SKINNING"," attribute vec4 skinIndex;"," attribute vec4 skinWeight;","#endif","\n"].filter(uu).join("\n"),a=[uy(i),"#define SHADER_TYPE "+i.shaderType,"#define SHADER_NAME "+i.shaderName,S,i.useFog&&i.fog?"#define USE_FOG":"",i.useFog&&i.fogExp2?"#define FOG_EXP2":"",i.alphaToCoverage?"#define ALPHA_TO_COVERAGE":"",i.map?"#define USE_MAP":"",i.matcap?"#define USE_MATCAP":"",i.envMap?"#define USE_ENVMAP":"",i.envMap?"#define "+m:"",i.envMap?"#define "+g:"",i.envMap?"#define "+v:"",x?"#define CUBEUV_TEXEL_WIDTH "+x.texelWidth:"",x?"#define CUBEUV_TEXEL_HEIGHT "+x.texelHeight:"",x?"#define CUBEUV_MAX_MIP "+x.maxMip+".0":"",i.lightMap?"#define USE_LIGHTMAP":"",i.aoMap?"#define USE_AOMAP":"",i.bumpMap?"#define USE_BUMPMAP":"",i.normalMap?"#define USE_NORMALMAP":"",i.normalMapObjectSpace?"#define USE_NORMALMAP_OBJECTSPACE":"",i.normalMapTangentSpace?"#define USE_NORMALMAP_TANGENTSPACE":"",i.emissiveMap?"#define USE_EMISSIVEMAP":"",i.anisotropy?"#define USE_ANISOTROPY":"",i.anisotropyMap?"#define USE_ANISOTROPYMAP":"",i.clearcoat?"#define USE_CLEARCOAT":"",i.clearcoatMap?"#define USE_CLEARCOATMAP":"",i.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",i.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",i.dispersion?"#define USE_DISPERSION":"",i.iridescence?"#define USE_IRIDESCENCE":"",i.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",i.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",i.specularMap?"#define USE_SPECULARMAP":"",i.specularColorMap?"#define USE_SPECULAR_COLORMAP":"",i.specularIntensityMap?"#define USE_SPECULAR_INTENSITYMAP":"",i.roughnessMap?"#define USE_ROUGHNESSMAP":"",i.metalnessMap?"#define USE_METALNESSMAP":"",i.alphaMap?"#define USE_ALPHAMAP":"",i.alphaTest?"#define USE_ALPHATEST":"",i.alphaHash?"#define USE_ALPHAHASH":"",i.sheen?"#define USE_SHEEN":"",i.sheenColorMap?"#define USE_SHEEN_COLORMAP":"",i.sheenRoughnessMap?"#define USE_SHEEN_ROUGHNESSMAP":"",i.transmission?"#define USE_TRANSMISSION":"",i.transmissionMap?"#define USE_TRANSMISSIONMAP":"",i.thicknessMap?"#define USE_THICKNESSMAP":"",i.vertexTangents&&!1===i.flatShading?"#define USE_TANGENT":"",i.vertexColors||i.instancingColor||i.batchingColor?"#define USE_COLOR":"",i.vertexAlphas?"#define USE_COLOR_ALPHA":"",i.vertexUv1s?"#define USE_UV1":"",i.vertexUv2s?"#define USE_UV2":"",i.vertexUv3s?"#define USE_UV3":"",i.pointsUvs?"#define USE_POINTS_UV":"",i.gradientMap?"#define USE_GRADIENTMAP":"",i.flatShading?"#define FLAT_SHADED":"",i.doubleSided?"#define DOUBLE_SIDED":"",i.flipSided?"#define FLIP_SIDED":"",i.shadowMapEnabled?"#define USE_SHADOWMAP":"",i.shadowMapEnabled?"#define "+p:"",i.premultipliedAlpha?"#define PREMULTIPLIED_ALPHA":"",i.numLightProbes>0?"#define USE_LIGHT_PROBES":"",i.decodeVideoTexture?"#define DECODE_VIDEO_TEXTURE":"",i.decodeVideoTextureEmissive?"#define DECODE_VIDEO_TEXTURE_EMISSIVE":"",i.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",i.reverseDepthBuffer?"#define USE_REVERSEDEPTHBUF":"","uniform mat4 viewMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;",0!==i.toneMapping?"#define TONE_MAPPING":"",0!==i.toneMapping?oz.tonemapping_pars_fragment:"",0!==i.toneMapping?function(e,t){let i;switch(t){case 1:i="Linear";break;case 2:i="Reinhard";break;case 3:i="Cineon";break;case 4:i="ACESFilmic";break;case 6:i="AgX";break;case 7:i="Neutral";break;case 5:i="Custom";break;default:console.warn("THREE.WebGLProgram: Unsupported toneMapping:",t),i="Linear"}return"vec3 "+e+"( vec3 color ) { return "+i+"ToneMapping( color ); }"}("toneMapping",i.toneMapping):"",i.dithering?"#define DITHERING":"",i.opaque?"#define OPAQUE":"",oz.colorspace_pars_fragment,(e=function(e){eu._getMatrix(us,eu.workingColorSpace,e);let t=`mat3( ${us.elements.map(e=>e.toFixed(4))} )`;switch(eu.getTransfer(e)){case L:return[t,"LinearTransferOETF"];case B:return[t,"sRGBTransferOETF"];default:return console.warn("THREE.WebGLProgram: Unsupported color space: ",e),[t,"LinearTransferOETF"]}}(i.outputColorSpace),`vec4 linearToOutputTexel( vec4 value ) { - return ${e[1]}( vec4( value.rgb * ${e[0]}, value.a ) ); -}`),(eu.getLuminanceCoefficients(ul),t=ul.x.toFixed(4),n=ul.y.toFixed(4),s=ul.z.toFixed(4),`float luminance( const in vec3 rgb ) { - const vec3 weights = vec3( ${t}, ${n}, ${s} ); - return dot( weights, rgb ); -}`),i.useDepthPacking?"#define DEPTH_PACKING "+i.depthPacking:"","\n"].filter(uu).join("\n")}d=uh(d=uc(d=uf(d),i),i),f=uh(f=uc(f=uf(f),i),i),d=uv(d),f=uv(f),!0!==i.isRawShaderMaterial&&(M="#version 300 es\n",r=[y,"#define attribute in\n#define varying out\n#define texture2D texture"].join("\n")+"\n"+r,a=["#define varying in",i.glslVersion===U?"":"layout(location = 0) out highp vec4 pc_fragColor;",i.glslVersion===U?"":"#define gl_FragColor pc_fragColor","#define gl_FragDepthEXT gl_FragDepth\n#define texture2D texture\n#define textureCube texture\n#define texture2DProj textureProj\n#define texture2DLodEXT textureLod\n#define texture2DProjLodEXT textureProjLod\n#define textureCubeLodEXT textureLod\n#define texture2DGradEXT textureGrad\n#define texture2DProjGradEXT textureProjGrad\n#define textureCubeGradEXT textureGrad"].join("\n")+"\n"+a);let b=M+r+d,w=M+a+f,T=ur(c,c.VERTEX_SHADER,b),E=ur(c,c.FRAGMENT_SHADER,w);function _(t){if(e.debug.checkShaderErrors){let i=c.getProgramInfoLog(A).trim(),n=c.getShaderInfoLog(T).trim(),s=c.getShaderInfoLog(E).trim(),o=!0,l=!0;if(!1===c.getProgramParameter(A,c.LINK_STATUS))if(o=!1,"function"==typeof e.debug.onShaderError)e.debug.onShaderError(c,A,T,E);else{let e=uo(c,T,"vertex"),n=uo(c,E,"fragment");console.error("THREE.WebGLProgram: Shader Error "+c.getError()+" - VALIDATE_STATUS "+c.getProgramParameter(A,c.VALIDATE_STATUS)+"\n\nMaterial Name: "+t.name+"\nMaterial Type: "+t.type+"\n\nProgram Info Log: "+i+"\n"+e+"\n"+n)}else""!==i?console.warn("THREE.WebGLProgram: Program Info Log:",i):(""===n||""===s)&&(l=!1);l&&(t.diagnostics={runnable:o,programLog:i,vertexShader:{log:n,prefix:r},fragmentShader:{log:s,prefix:a}})}c.deleteShader(T),c.deleteShader(E),s=new un(c,A),o=function(e,t){let i={},n=e.getProgramParameter(t,e.ACTIVE_ATTRIBUTES);for(let r=0;r0,q=a.clearcoat>0,K=a.dispersion>0,Z=a.iridescence>0,J=a.sheen>0,$=a.transmission>0,ee=Q&&!!a.anisotropyMap,et=q&&!!a.clearcoatMap,ei=q&&!!a.clearcoatNormalMap,en=q&&!!a.clearcoatRoughnessMap,er=Z&&!!a.iridescenceMap,ea=Z&&!!a.iridescenceThicknessMap,es=J&&!!a.sheenColorMap,eo=J&&!!a.sheenRoughnessMap,el=!!a.specularMap,ec=!!a.specularColorMap,eh=!!a.specularIntensityMap,ed=$&&!!a.transmissionMap,ef=$&&!!a.thicknessMap,ep=!!a.gradientMap,em=!!a.alphaMap,eg=a.alphaTest>0,ev=!!a.alphaHash,ex=!!a.extensions,ey=0;a.toneMapped&&(null===D||!0===D.isXRRenderTarget)&&(ey=e.toneMapping);let eS={shaderID:_,shaderType:a.type,shaderName:a.name,vertexShader:x,fragmentShader:y,defines:a.defines,customVertexShaderID:S,customFragmentShaderID:A,isRawShaderMaterial:!0===a.isRawShaderMaterial,glslVersion:a.glslVersion,precision:f,batching:N,batchingColor:N&&null!==v._colorsTexture,instancing:U,instancingColor:U&&null!==v.instanceColor,instancingMorph:U&&null!==v.morphTexture,supportsVertexTextures:d,outputColorSpace:null===D?e.outputColorSpace:!0===D.isXRRenderTarget?D.texture.colorSpace:I,alphaToCoverage:!!a.alphaToCoverage,map:F,matcap:O,envMap:z,envMapMode:z&&T.mapping,envMapCubeUVHeight:E,aoMap:k,lightMap:H,bumpMap:G,normalMap:V,displacementMap:d&&W,emissiveMap:j,normalMapObjectSpace:V&&1===a.normalMapType,normalMapTangentSpace:V&&0===a.normalMapType,metalnessMap:X,roughnessMap:Y,anisotropy:Q,anisotropyMap:ee,clearcoat:q,clearcoatMap:et,clearcoatNormalMap:ei,clearcoatRoughnessMap:en,dispersion:K,iridescence:Z,iridescenceMap:er,iridescenceThicknessMap:ea,sheen:J,sheenColorMap:es,sheenRoughnessMap:eo,specularMap:el,specularColorMap:ec,specularIntensityMap:eh,transmission:$,transmissionMap:ed,thicknessMap:ef,gradientMap:ep,opaque:!1===a.transparent&&1===a.blending&&!1===a.alphaToCoverage,alphaMap:em,alphaTest:eg,alphaHash:ev,combine:a.combine,mapUv:F&&m(a.map.channel),aoMapUv:k&&m(a.aoMap.channel),lightMapUv:H&&m(a.lightMap.channel),bumpMapUv:G&&m(a.bumpMap.channel),normalMapUv:V&&m(a.normalMap.channel),displacementMapUv:W&&m(a.displacementMap.channel),emissiveMapUv:j&&m(a.emissiveMap.channel),metalnessMapUv:X&&m(a.metalnessMap.channel),roughnessMapUv:Y&&m(a.roughnessMap.channel),anisotropyMapUv:ee&&m(a.anisotropyMap.channel),clearcoatMapUv:et&&m(a.clearcoatMap.channel),clearcoatNormalMapUv:ei&&m(a.clearcoatNormalMap.channel),clearcoatRoughnessMapUv:en&&m(a.clearcoatRoughnessMap.channel),iridescenceMapUv:er&&m(a.iridescenceMap.channel),iridescenceThicknessMapUv:ea&&m(a.iridescenceThicknessMap.channel),sheenColorMapUv:es&&m(a.sheenColorMap.channel),sheenRoughnessMapUv:eo&&m(a.sheenRoughnessMap.channel),specularMapUv:el&&m(a.specularMap.channel),specularColorMapUv:ec&&m(a.specularColorMap.channel),specularIntensityMapUv:eh&&m(a.specularIntensityMap.channel),transmissionMapUv:ed&&m(a.transmissionMap.channel),thicknessMapUv:ef&&m(a.thicknessMap.channel),alphaMapUv:em&&m(a.alphaMap.channel),vertexTangents:!!b.attributes.tangent&&(V||Q),vertexColors:a.vertexColors,vertexAlphas:!0===a.vertexColors&&!!b.attributes.color&&4===b.attributes.color.itemSize,pointsUvs:!0===v.isPoints&&!!b.attributes.uv&&(F||em),fog:!!M,useFog:!0===a.fog,fogExp2:!!M&&M.isFogExp2,flatShading:!0===a.flatShading,sizeAttenuation:!0===a.sizeAttenuation,logarithmicDepthBuffer:h,reverseDepthBuffer:L,skinning:!0===v.isSkinnedMesh,morphTargets:void 0!==b.morphAttributes.position,morphNormals:void 0!==b.morphAttributes.normal,morphColors:void 0!==b.morphAttributes.color,morphTargetsCount:R,morphTextureStride:P,numDirLights:o.directional.length,numPointLights:o.point.length,numSpotLights:o.spot.length,numSpotLightMaps:o.spotLightMap.length,numRectAreaLights:o.rectArea.length,numHemiLights:o.hemi.length,numDirLightShadows:o.directionalShadowMap.length,numPointLightShadows:o.pointShadowMap.length,numSpotLightShadows:o.spotShadowMap.length,numSpotLightShadowsWithMaps:o.numSpotLightShadowsWithMaps,numLightProbes:o.numLightProbes,numClippingPlanes:s.numPlanes,numClipIntersection:s.numIntersection,dithering:a.dithering,shadowMapEnabled:e.shadowMap.enabled&&c.length>0,shadowMapType:e.shadowMap.type,toneMapping:ey,decodeVideoTexture:F&&!0===a.map.isVideoTexture&&eu.getTransfer(a.map.colorSpace)===B,decodeVideoTextureEmissive:j&&!0===a.emissiveMap.isVideoTexture&&eu.getTransfer(a.emissiveMap.colorSpace)===B,premultipliedAlpha:a.premultipliedAlpha,doubleSided:2===a.side,flipSided:1===a.side,useDepthPacking:a.depthPacking>=0,depthPacking:a.depthPacking||0,index0AttributeName:a.index0AttributeName,extensionClipCullDistance:ex&&!0===a.extensions.clipCullDistance&&n.has("WEBGL_clip_cull_distance"),extensionMultiDraw:(ex&&!0===a.extensions.multiDraw||N)&&n.has("WEBGL_multi_draw"),rendererExtensionParallelShaderCompile:n.has("KHR_parallel_shader_compile"),customProgramCacheKey:a.customProgramCacheKey()};return eS.vertexUv1s=u.has(1),eS.vertexUv2s=u.has(2),eS.vertexUv3s=u.has(3),u.clear(),eS},getProgramCacheKey:function(t){var i,n,r,a;let s=[];if(t.shaderID?s.push(t.shaderID):(s.push(t.customVertexShaderID),s.push(t.customFragmentShaderID)),void 0!==t.defines)for(let e in t.defines)s.push(e),s.push(t.defines[e]);return!1===t.isRawShaderMaterial&&(i=s,n=t,i.push(n.precision),i.push(n.outputColorSpace),i.push(n.envMapMode),i.push(n.envMapCubeUVHeight),i.push(n.mapUv),i.push(n.alphaMapUv),i.push(n.lightMapUv),i.push(n.aoMapUv),i.push(n.bumpMapUv),i.push(n.normalMapUv),i.push(n.displacementMapUv),i.push(n.emissiveMapUv),i.push(n.metalnessMapUv),i.push(n.roughnessMapUv),i.push(n.anisotropyMapUv),i.push(n.clearcoatMapUv),i.push(n.clearcoatNormalMapUv),i.push(n.clearcoatRoughnessMapUv),i.push(n.iridescenceMapUv),i.push(n.iridescenceThicknessMapUv),i.push(n.sheenColorMapUv),i.push(n.sheenRoughnessMapUv),i.push(n.specularMapUv),i.push(n.specularColorMapUv),i.push(n.specularIntensityMapUv),i.push(n.transmissionMapUv),i.push(n.thicknessMapUv),i.push(n.combine),i.push(n.fogExp2),i.push(n.sizeAttenuation),i.push(n.morphTargetsCount),i.push(n.morphAttributeCount),i.push(n.numDirLights),i.push(n.numPointLights),i.push(n.numSpotLights),i.push(n.numSpotLightMaps),i.push(n.numHemiLights),i.push(n.numRectAreaLights),i.push(n.numDirLightShadows),i.push(n.numPointLightShadows),i.push(n.numSpotLightShadows),i.push(n.numSpotLightShadowsWithMaps),i.push(n.numLightProbes),i.push(n.shadowMapType),i.push(n.toneMapping),i.push(n.numClippingPlanes),i.push(n.numClipIntersection),i.push(n.depthPacking),r=s,a=t,o.disableAll(),a.supportsVertexTextures&&o.enable(0),a.instancing&&o.enable(1),a.instancingColor&&o.enable(2),a.instancingMorph&&o.enable(3),a.matcap&&o.enable(4),a.envMap&&o.enable(5),a.normalMapObjectSpace&&o.enable(6),a.normalMapTangentSpace&&o.enable(7),a.clearcoat&&o.enable(8),a.iridescence&&o.enable(9),a.alphaTest&&o.enable(10),a.vertexColors&&o.enable(11),a.vertexAlphas&&o.enable(12),a.vertexUv1s&&o.enable(13),a.vertexUv2s&&o.enable(14),a.vertexUv3s&&o.enable(15),a.vertexTangents&&o.enable(16),a.anisotropy&&o.enable(17),a.alphaHash&&o.enable(18),a.batching&&o.enable(19),a.dispersion&&o.enable(20),a.batchingColor&&o.enable(21),r.push(o.mask),o.disableAll(),a.fog&&o.enable(0),a.useFog&&o.enable(1),a.flatShading&&o.enable(2),a.logarithmicDepthBuffer&&o.enable(3),a.reverseDepthBuffer&&o.enable(4),a.skinning&&o.enable(5),a.morphTargets&&o.enable(6),a.morphNormals&&o.enable(7),a.morphColors&&o.enable(8),a.premultipliedAlpha&&o.enable(9),a.shadowMapEnabled&&o.enable(10),a.doubleSided&&o.enable(11),a.flipSided&&o.enable(12),a.useDepthPacking&&o.enable(13),a.dithering&&o.enable(14),a.transmission&&o.enable(15),a.sheen&&o.enable(16),a.opaque&&o.enable(17),a.pointsUvs&&o.enable(18),a.decodeVideoTexture&&o.enable(19),a.decodeVideoTextureEmissive&&o.enable(20),a.alphaToCoverage&&o.enable(21),r.push(o.mask),s.push(e.outputColorSpace)),s.push(t.customProgramCacheKey),s.join()},getUniforms:function(e){let t,i=p[e.type];if(i){let e=oH[i];t=iM.clone(e.uniforms)}else t=e.uniforms;return t},acquireProgram:function(t,i){let n;for(let e=0,t=c.length;e0?n.push(c):!0===s.transparent?r.push(c):i.push(c)},unshift:function(e,t,s,o,l,u){let c=a(e,t,s,o,l,u);s.transmission>0?n.unshift(c):!0===s.transparent?r.unshift(c):i.unshift(c)},finish:function(){for(let i=t,n=e.length;i1&&i.sort(e||uE),n.length>1&&n.sort(t||u_),r.length>1&&r.sort(t||u_)}}}function uR(){let e=new WeakMap;return{get:function(t,i){let n,r=e.get(t);return void 0===r?(n=new uC,e.set(t,[n])):i>=r.length?(n=new uC,r.push(n)):n=r[i],n},dispose:function(){e=new WeakMap}}}function uP(){let e={};return{get:function(t){let i;if(void 0!==e[t.id])return e[t.id];switch(t.type){case"DirectionalLight":i={direction:new eE,color:new tO};break;case"SpotLight":i={position:new eE,direction:new eE,color:new tO,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case"PointLight":i={position:new eE,color:new tO,distance:0,decay:0};break;case"HemisphereLight":i={direction:new eE,skyColor:new tO,groundColor:new tO};break;case"RectAreaLight":i={color:new tO,position:new eE,halfWidth:new eE,halfHeight:new eE}}return e[t.id]=i,i}}}let uD=0;function uI(e,t){return 2*!!t.castShadow-2*!!e.castShadow+ +!!t.map-!!e.map}function uL(e){let t,i=new uP,n=(t={},{get:function(e){let i;if(void 0!==t[e.id])return t[e.id];switch(e.type){case"DirectionalLight":case"SpotLight":i={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Q};break;case"PointLight":i={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Q,shadowCameraNear:1,shadowCameraFar:1e3}}return t[e.id]=i,i}}),r={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1,numSpotMaps:-1,numLightProbes:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotLightMap:[],spotShadow:[],spotShadowMap:[],spotLightMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[],numSpotLightShadowsWithMaps:0,numLightProbes:0};for(let e=0;e<9;e++)r.probe.push(new eE);let a=new eE,s=new e2,o=new e2;return{setup:function(t){let a=0,s=0,o=0;for(let e=0;e<9;e++)r.probe[e].set(0,0,0);let l=0,u=0,c=0,h=0,d=0,f=0,p=0,m=0,g=0,v=0,x=0;t.sort(uI);for(let e=0,y=t.length;e0&&(!0===e.has("OES_texture_float_linear")?(r.rectAreaLTC1=ok.LTC_FLOAT_1,r.rectAreaLTC2=ok.LTC_FLOAT_2):(r.rectAreaLTC1=ok.LTC_HALF_1,r.rectAreaLTC2=ok.LTC_HALF_2)),r.ambient[0]=a,r.ambient[1]=s,r.ambient[2]=o;let y=r.hash;(y.directionalLength!==l||y.pointLength!==u||y.spotLength!==c||y.rectAreaLength!==h||y.hemiLength!==d||y.numDirectionalShadows!==f||y.numPointShadows!==p||y.numSpotShadows!==m||y.numSpotMaps!==g||y.numLightProbes!==x)&&(r.directional.length=l,r.spot.length=c,r.rectArea.length=h,r.point.length=u,r.hemi.length=d,r.directionalShadow.length=f,r.directionalShadowMap.length=f,r.pointShadow.length=p,r.pointShadowMap.length=p,r.spotShadow.length=m,r.spotShadowMap.length=m,r.directionalShadowMatrix.length=f,r.pointShadowMatrix.length=p,r.spotLightMatrix.length=m+g-v,r.spotLightMap.length=g,r.numSpotLightShadowsWithMaps=v,r.numLightProbes=x,y.directionalLength=l,y.pointLength=u,y.spotLength=c,y.rectAreaLength=h,y.hemiLength=d,y.numDirectionalShadows=f,y.numPointShadows=p,y.numSpotShadows=m,y.numSpotMaps=g,y.numLightProbes=x,r.version=uD++)},setupView:function(e,t){let i=0,n=0,l=0,u=0,c=0,h=t.matrixWorldInverse;for(let t=0,d=e.length;t=a.length?(r=new uB(e),a.push(r)):r=a[n],r},dispose:function(){t=new WeakMap}}}function uN(e,t,i){let n=new nM,r=new Q,a=new Q,s=new ex,o=new av({depthPacking:3201}),l=new ax,u={},c=i.maxTextureSize,h={0:1,1:0,2:2},d=new ib({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new Q},radius:{value:4}},vertexShader:"void main() {\n gl_Position = vec4( position, 1.0 );\n}",fragmentShader:"uniform sampler2D shadow_pass;\nuniform vec2 resolution;\nuniform float radius;\n#include \nvoid main() {\n const float samples = float( VSM_SAMPLES );\n float mean = 0.0;\n float squared_mean = 0.0;\n float uvStride = samples <= 1.0 ? 0.0 : 2.0 / ( samples - 1.0 );\n float uvStart = samples <= 1.0 ? 0.0 : - 1.0;\n for ( float i = 0.0; i < samples; i ++ ) {\n float uvOffset = uvStart + i * uvStride;\n #ifdef HORIZONTAL_PASS\n vec2 distribution = unpackRGBATo2Half( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( uvOffset, 0.0 ) * radius ) / resolution ) );\n mean += distribution.x;\n squared_mean += distribution.y * distribution.y + distribution.x * distribution.x;\n #else\n float depth = unpackRGBAToDepth( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( 0.0, uvOffset ) * radius ) / resolution ) );\n mean += depth;\n squared_mean += depth * depth;\n #endif\n }\n mean = mean / samples;\n squared_mean = squared_mean / samples;\n float std_dev = sqrt( squared_mean - mean * mean );\n gl_FragColor = pack2HalfToRGBA( vec2( mean, std_dev ) );\n}"}),f=d.clone();f.defines.HORIZONTAL_PASS=1;let p=new ii;p.setAttribute("position",new tq(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));let m=new ig(p,d),g=this;this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=1;let v=this.type;function x(t,i,n,r){let a=null,s=!0===n.isPointLight?t.customDistanceMaterial:t.customDepthMaterial;if(void 0!==s)a=s;else if(a=!0===n.isPointLight?l:o,e.localClippingEnabled&&!0===i.clipShadows&&Array.isArray(i.clippingPlanes)&&0!==i.clippingPlanes.length||i.displacementMap&&0!==i.displacementScale||i.alphaMap&&i.alphaTest>0||i.map&&i.alphaTest>0){let e=a.uuid,t=i.uuid,n=u[e];void 0===n&&(n={},u[e]=n);let r=n[t];void 0===r&&(r=a.clone(),n[t]=r,i.addEventListener("dispose",y)),a=r}return a.visible=i.visible,a.wireframe=i.wireframe,3===r?a.side=null!==i.shadowSide?i.shadowSide:i.side:a.side=null!==i.shadowSide?i.shadowSide:h[i.side],a.alphaMap=i.alphaMap,a.alphaTest=i.alphaTest,a.map=i.map,a.clipShadows=i.clipShadows,a.clippingPlanes=i.clippingPlanes,a.clipIntersection=i.clipIntersection,a.displacementMap=i.displacementMap,a.displacementScale=i.displacementScale,a.displacementBias=i.displacementBias,a.wireframeLinewidth=i.wireframeLinewidth,a.linewidth=i.linewidth,!0===n.isPointLight&&!0===a.isMeshDistanceMaterial&&(e.properties.get(a).light=n),a}function y(e){for(let t in e.target.removeEventListener("dispose",y),u){let i=u[t],n=e.target.uuid;n in i&&(i[n].dispose(),delete i[n])}}this.render=function(i,o,l){if(!1===g.enabled||!1===g.autoUpdate&&!1===g.needsUpdate||0===i.length)return;let u=e.getRenderTarget(),h=e.getActiveCubeFace(),p=e.getActiveMipmapLevel(),y=e.state;y.setBlending(0),y.buffers.color.setClear(1,1,1,1),y.buffers.depth.setTest(!0),y.setScissorTest(!1);let S=3!==v&&3===this.type,A=3===v&&3!==this.type;for(let u=0,h=i.length;uc||r.y>c)&&(r.x>c&&(a.x=Math.floor(c/g.x),r.x=a.x*g.x,p.mapSize.x=a.x),r.y>c&&(a.y=Math.floor(c/g.y),r.y=a.y*g.y,p.mapSize.y=a.y)),null===p.map||!0===S||!0===A){let e=3!==this.type?{minFilter:1003,magFilter:1003}:{};null!==p.map&&p.map.dispose(),p.map=new eS(r.x,r.y,e),p.map.texture.name=h.name+".shadowMap",p.camera.updateProjectionMatrix()}e.setRenderTarget(p.map),e.clear();let v=p.getViewportCount();for(let i=0;i=1:-1!==P.indexOf("OpenGL ES")&&(R=parseFloat(/^OpenGL ES (\d)/.exec(P)[1])>=2);let D=null,I={},L=e.getParameter(e.SCISSOR_BOX),B=e.getParameter(e.VIEWPORT),U=new ex().fromArray(L),N=new ex().fromArray(B);function F(t,i,n,r){let a=new Uint8Array(4),s=e.createTexture();e.bindTexture(t,s),e.texParameteri(t,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(t,e.TEXTURE_MAG_FILTER,e.NEAREST);for(let s=0;stypeof navigator&&/OculusBrowser/g.test(navigator.userAgent),c=new Q,h=new WeakMap,d=new WeakMap,f=!1;try{f="u">typeof OffscreenCanvas&&null!==new OffscreenCanvas(1,1).getContext("2d")}catch(e){}function p(e,t){return f?new OffscreenCanvas(e,t):ee("canvas")}function m(e,t,i){let n=1,r=V(e);if((r.width>i||r.height>i)&&(n=i/Math.max(r.width,r.height)),n<1)if("u">typeof HTMLImageElement&&e instanceof HTMLImageElement||"u">typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement||"u">typeof ImageBitmap&&e instanceof ImageBitmap||"u">typeof VideoFrame&&e instanceof VideoFrame){let i=Math.floor(n*r.width),a=Math.floor(n*r.height);void 0===o&&(o=p(i,a));let s=t?p(i,a):o;return s.width=i,s.height=a,s.getContext("2d").drawImage(e,0,0,i,a),console.warn("THREE.WebGLRenderer: Texture has been resized from ("+r.width+"x"+r.height+") to ("+i+"x"+a+")."),s}else"data"in e&&console.warn("THREE.WebGLRenderer: Image in DataTexture is too big ("+r.width+"x"+r.height+").");return e}function g(e){return e.generateMipmaps}function v(t){e.generateMipmap(t)}function x(i,n,r,a,s=!1){if(null!==i){if(void 0!==e[i])return e[i];console.warn("THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '"+i+"'")}let o=n;if(n===e.RED&&(r===e.FLOAT&&(o=e.R32F),r===e.HALF_FLOAT&&(o=e.R16F),r===e.UNSIGNED_BYTE&&(o=e.R8)),n===e.RED_INTEGER&&(r===e.UNSIGNED_BYTE&&(o=e.R8UI),r===e.UNSIGNED_SHORT&&(o=e.R16UI),r===e.UNSIGNED_INT&&(o=e.R32UI),r===e.BYTE&&(o=e.R8I),r===e.SHORT&&(o=e.R16I),r===e.INT&&(o=e.R32I)),n===e.RG&&(r===e.FLOAT&&(o=e.RG32F),r===e.HALF_FLOAT&&(o=e.RG16F),r===e.UNSIGNED_BYTE&&(o=e.RG8)),n===e.RG_INTEGER&&(r===e.UNSIGNED_BYTE&&(o=e.RG8UI),r===e.UNSIGNED_SHORT&&(o=e.RG16UI),r===e.UNSIGNED_INT&&(o=e.RG32UI),r===e.BYTE&&(o=e.RG8I),r===e.SHORT&&(o=e.RG16I),r===e.INT&&(o=e.RG32I)),n===e.RGB_INTEGER&&(r===e.UNSIGNED_BYTE&&(o=e.RGB8UI),r===e.UNSIGNED_SHORT&&(o=e.RGB16UI),r===e.UNSIGNED_INT&&(o=e.RGB32UI),r===e.BYTE&&(o=e.RGB8I),r===e.SHORT&&(o=e.RGB16I),r===e.INT&&(o=e.RGB32I)),n===e.RGBA_INTEGER&&(r===e.UNSIGNED_BYTE&&(o=e.RGBA8UI),r===e.UNSIGNED_SHORT&&(o=e.RGBA16UI),r===e.UNSIGNED_INT&&(o=e.RGBA32UI),r===e.BYTE&&(o=e.RGBA8I),r===e.SHORT&&(o=e.RGBA16I),r===e.INT&&(o=e.RGBA32I)),n===e.RGB&&r===e.UNSIGNED_INT_5_9_9_9_REV&&(o=e.RGB9_E5),n===e.RGBA){let t=s?L:eu.getTransfer(a);r===e.FLOAT&&(o=e.RGBA32F),r===e.HALF_FLOAT&&(o=e.RGBA16F),r===e.UNSIGNED_BYTE&&(o=t===B?e.SRGB8_ALPHA8:e.RGBA8),r===e.UNSIGNED_SHORT_4_4_4_4&&(o=e.RGBA4),r===e.UNSIGNED_SHORT_5_5_5_1&&(o=e.RGB5_A1)}return(o===e.R16F||o===e.R32F||o===e.RG16F||o===e.RG32F||o===e.RGBA16F||o===e.RGBA32F)&&t.get("EXT_color_buffer_float"),o}function y(t,i){let n;return t?null===i||1014===i||1020===i?n=e.DEPTH24_STENCIL8:1015===i?n=e.DEPTH32F_STENCIL8:1012===i&&(n=e.DEPTH24_STENCIL8,console.warn("DepthTexture: 16 bit depth attachment is not supported with stencil. Using 24-bit attachment.")):null===i||1014===i||1020===i?n=e.DEPTH_COMPONENT24:1015===i?n=e.DEPTH_COMPONENT32F:1012===i&&(n=e.DEPTH_COMPONENT16),n}function S(e,t){return!0===g(e)||e.isFramebufferTexture&&1003!==e.minFilter&&1006!==e.minFilter?Math.log2(Math.max(t.width,t.height))+1:void 0!==e.mipmaps&&e.mipmaps.length>0?e.mipmaps.length:e.isCompressedTexture&&Array.isArray(e.image)?t.mipmaps.length:1}function A(e){let t=e.target;t.removeEventListener("dispose",A),function(e){let t=n.get(e);if(void 0===t.__webglInit)return;let i=e.source,r=d.get(i);if(r){let n=r[t.__cacheKey];n.usedTimes--,0===n.usedTimes&&b(e),0===Object.keys(r).length&&d.delete(i)}n.remove(e)}(t),t.isVideoTexture&&h.delete(t)}function M(t){let i=t.target;i.removeEventListener("dispose",M),function(t){let i=n.get(t);if(t.depthTexture&&(t.depthTexture.dispose(),n.remove(t.depthTexture)),t.isWebGLCubeRenderTarget)for(let t=0;t<6;t++){if(Array.isArray(i.__webglFramebuffer[t]))for(let n=0;n0&&l.__version!==t.version){let e=t.image;if(null===e)console.warn("THREE.WebGLRenderer: Texture marked for update but no image data found.");else{if(!1!==e.complete)return void D(l,t,r);console.warn("THREE.WebGLRenderer: Texture marked for update but image is incomplete")}}i.bindTexture(e.TEXTURE_2D,l.__webglTexture,e.TEXTURE0+r)}let E={1e3:e.REPEAT,1001:e.CLAMP_TO_EDGE,1002:e.MIRRORED_REPEAT},_={1003:e.NEAREST,1004:e.NEAREST_MIPMAP_NEAREST,1005:e.NEAREST_MIPMAP_LINEAR,1006:e.LINEAR,1007:e.LINEAR_MIPMAP_NEAREST,1008:e.LINEAR_MIPMAP_LINEAR},C={512:e.NEVER,519:e.ALWAYS,513:e.LESS,515:e.LEQUAL,514:e.EQUAL,518:e.GEQUAL,516:e.GREATER,517:e.NOTEQUAL};function R(i,a){if((1015===a.type&&!1===t.has("OES_texture_float_linear")&&(1006===a.magFilter||1007===a.magFilter||1005===a.magFilter||1008===a.magFilter||1006===a.minFilter||1007===a.minFilter||1005===a.minFilter||1008===a.minFilter)&&console.warn("THREE.WebGLRenderer: Unable to use linear filtering with floating point textures. OES_texture_float_linear not supported on this device."),e.texParameteri(i,e.TEXTURE_WRAP_S,E[a.wrapS]),e.texParameteri(i,e.TEXTURE_WRAP_T,E[a.wrapT]),(i===e.TEXTURE_3D||i===e.TEXTURE_2D_ARRAY)&&e.texParameteri(i,e.TEXTURE_WRAP_R,E[a.wrapR]),e.texParameteri(i,e.TEXTURE_MAG_FILTER,_[a.magFilter]),e.texParameteri(i,e.TEXTURE_MIN_FILTER,_[a.minFilter]),a.compareFunction&&(e.texParameteri(i,e.TEXTURE_COMPARE_MODE,e.COMPARE_REF_TO_TEXTURE),e.texParameteri(i,e.TEXTURE_COMPARE_FUNC,C[a.compareFunction])),!0===t.has("EXT_texture_filter_anisotropic"))&&1003!==a.magFilter&&(1005===a.minFilter||1008===a.minFilter)&&(1015!==a.type||!1!==t.has("OES_texture_float_linear"))&&(a.anisotropy>1||n.get(a).__currentAnisotropy)){let s=t.get("EXT_texture_filter_anisotropic");e.texParameterf(i,s.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(a.anisotropy,r.getMaxAnisotropy())),n.get(a).__currentAnisotropy=a.anisotropy}}function P(t,i){let n,r=!1;void 0===t.__webglInit&&(t.__webglInit=!0,i.addEventListener("dispose",A));let a=i.source,o=d.get(a);void 0===o&&(o={},d.set(a,o));let l=((n=[]).push(i.wrapS),n.push(i.wrapT),n.push(i.wrapR||0),n.push(i.magFilter),n.push(i.minFilter),n.push(i.anisotropy),n.push(i.internalFormat),n.push(i.format),n.push(i.type),n.push(i.generateMipmaps),n.push(i.premultiplyAlpha),n.push(i.flipY),n.push(i.unpackAlignment),n.push(i.colorSpace),n.join());if(l!==t.__cacheKey){void 0===o[l]&&(o[l]={texture:e.createTexture(),usedTimes:0},s.memory.textures++,r=!0),o[l].usedTimes++;let n=o[t.__cacheKey];void 0!==n&&(o[t.__cacheKey].usedTimes--,0===n.usedTimes&&b(i)),t.__cacheKey=l,t.__webglTexture=o[l].texture}return r}function D(t,s,o){let l=e.TEXTURE_2D;(s.isDataArrayTexture||s.isCompressedArrayTexture)&&(l=e.TEXTURE_2D_ARRAY),s.isData3DTexture&&(l=e.TEXTURE_3D);let u=P(t,s),c=s.source;i.bindTexture(l,t.__webglTexture,e.TEXTURE0+o);let h=n.get(c);if(c.version!==h.__version||!0===u){let t;i.activeTexture(e.TEXTURE0+o);let n=eu.getPrimaries(eu.workingColorSpace),d=""===s.colorSpace?null:eu.getPrimaries(s.colorSpace),f=""===s.colorSpace||n===d?e.NONE:e.BROWSER_DEFAULT_WEBGL;e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,s.flipY),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,s.premultiplyAlpha),e.pixelStorei(e.UNPACK_ALIGNMENT,s.unpackAlignment),e.pixelStorei(e.UNPACK_COLORSPACE_CONVERSION_WEBGL,f);let p=m(s.image,!1,r.maxTextureSize);p=G(s,p);let A=a.convert(s.format,s.colorSpace),M=a.convert(s.type),b=x(s.internalFormat,A,M,s.colorSpace,s.isVideoTexture);R(l,s);let w=s.mipmaps,T=!0!==s.isVideoTexture,E=void 0===h.__version||!0===u,_=c.dataReady,C=S(s,p);if(s.isDepthTexture)b=y(1027===s.format,s.type),E&&(T?i.texStorage2D(e.TEXTURE_2D,1,b,p.width,p.height):i.texImage2D(e.TEXTURE_2D,0,b,p.width,p.height,0,A,M,null));else if(s.isDataTexture)if(w.length>0){T&&E&&i.texStorage2D(e.TEXTURE_2D,C,b,w[0].width,w[0].height);for(let n=0,r=w.length;n0){let r=oB(t.width,t.height,s.format,s.type);for(let a of s.layerUpdates){let s=t.data.subarray(a*r/t.data.BYTES_PER_ELEMENT,(a+1)*r/t.data.BYTES_PER_ELEMENT);i.compressedTexSubImage3D(e.TEXTURE_2D_ARRAY,n,0,0,a,t.width,t.height,1,A,s)}s.clearLayerUpdates()}else i.compressedTexSubImage3D(e.TEXTURE_2D_ARRAY,n,0,0,0,t.width,t.height,p.depth,A,t.data)}else i.compressedTexImage3D(e.TEXTURE_2D_ARRAY,n,b,t.width,t.height,p.depth,0,t.data,0,0);else console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()");else T?_&&i.texSubImage3D(e.TEXTURE_2D_ARRAY,n,0,0,0,t.width,t.height,p.depth,A,M,t.data):i.texImage3D(e.TEXTURE_2D_ARRAY,n,b,t.width,t.height,p.depth,0,A,M,t.data)}else{T&&E&&i.texStorage2D(e.TEXTURE_2D,C,b,w[0].width,w[0].height);for(let n=0,r=w.length;n0){let t=oB(p.width,p.height,s.format,s.type);for(let n of s.layerUpdates){let r=p.data.subarray(n*t/p.data.BYTES_PER_ELEMENT,(n+1)*t/p.data.BYTES_PER_ELEMENT);i.texSubImage3D(e.TEXTURE_2D_ARRAY,0,0,0,n,p.width,p.height,1,A,M,r)}s.clearLayerUpdates()}else i.texSubImage3D(e.TEXTURE_2D_ARRAY,0,0,0,0,p.width,p.height,p.depth,A,M,p.data)}else i.texImage3D(e.TEXTURE_2D_ARRAY,0,b,p.width,p.height,p.depth,0,A,M,p.data);else if(s.isData3DTexture)T?(E&&i.texStorage3D(e.TEXTURE_3D,C,b,p.width,p.height,p.depth),_&&i.texSubImage3D(e.TEXTURE_3D,0,0,0,0,p.width,p.height,p.depth,A,M,p.data)):i.texImage3D(e.TEXTURE_3D,0,b,p.width,p.height,p.depth,0,A,M,p.data);else if(s.isFramebufferTexture){if(E)if(T)i.texStorage2D(e.TEXTURE_2D,C,b,p.width,p.height);else{let t=p.width,n=p.height;for(let r=0;r>=1,n>>=1}}else if(w.length>0){if(T&&E){let t=V(w[0]);i.texStorage2D(e.TEXTURE_2D,C,b,t.width,t.height)}for(let n=0,r=w.length;n>c),n=Math.max(1,r.height>>c);u===e.TEXTURE_3D||u===e.TEXTURE_2D_ARRAY?i.texImage3D(u,c,f,t,n,r.depth,0,h,d,null):i.texImage2D(u,c,f,t,n,0,h,d,null)}i.bindFramebuffer(e.FRAMEBUFFER,t),H(r)?l.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER,o,u,m.__webglTexture,0,k(r)):(u===e.TEXTURE_2D||u>=e.TEXTURE_CUBE_MAP_POSITIVE_X&&u<=e.TEXTURE_CUBE_MAP_NEGATIVE_Z)&&e.framebufferTexture2D(e.FRAMEBUFFER,o,u,m.__webglTexture,c),i.bindFramebuffer(e.FRAMEBUFFER,null)}function N(t,i,n){if(e.bindRenderbuffer(e.RENDERBUFFER,t),i.depthBuffer){let r=i.depthTexture,a=r&&r.isDepthTexture?r.type:null,s=y(i.stencilBuffer,a),o=i.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,u=k(i);H(i)?l.renderbufferStorageMultisampleEXT(e.RENDERBUFFER,u,s,i.width,i.height):n?e.renderbufferStorageMultisample(e.RENDERBUFFER,u,s,i.width,i.height):e.renderbufferStorage(e.RENDERBUFFER,s,i.width,i.height),e.framebufferRenderbuffer(e.FRAMEBUFFER,o,e.RENDERBUFFER,t)}else{let t=i.textures;for(let r=0;r{delete r.__boundDepthTexture,delete r.__depthDisposeCallback,e.removeEventListener("dispose",t)};e.addEventListener("dispose",t),r.__depthDisposeCallback=t}r.__boundDepthTexture=e}if(t.depthTexture&&!r.__autoAllocateDepthBuffer){if(a)throw Error("target.depthTexture not supported in Cube render targets");!function(t,r){if(r&&r.isWebGLCubeRenderTarget)throw Error("Depth Texture with cube render targets is not supported");if(i.bindFramebuffer(e.FRAMEBUFFER,t),!(r.depthTexture&&r.depthTexture.isDepthTexture))throw Error("renderTarget.depthTexture must be an instance of THREE.DepthTexture");let a=n.get(r.depthTexture);a.__renderTarget=r,a.__webglTexture&&r.depthTexture.image.width===r.width&&r.depthTexture.image.height===r.height||(r.depthTexture.image.width=r.width,r.depthTexture.image.height=r.height,r.depthTexture.needsUpdate=!0),T(r.depthTexture,0);let s=a.__webglTexture,o=k(r);if(1026===r.depthTexture.format)H(r)?l.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER,e.DEPTH_ATTACHMENT,e.TEXTURE_2D,s,0,o):e.framebufferTexture2D(e.FRAMEBUFFER,e.DEPTH_ATTACHMENT,e.TEXTURE_2D,s,0);else if(1027===r.depthTexture.format)H(r)?l.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER,e.DEPTH_STENCIL_ATTACHMENT,e.TEXTURE_2D,s,0,o):e.framebufferTexture2D(e.FRAMEBUFFER,e.DEPTH_STENCIL_ATTACHMENT,e.TEXTURE_2D,s,0);else throw Error("Unknown depthTexture format")}(r.__webglFramebuffer,t)}else if(a){r.__webglDepthbuffer=[];for(let n=0;n<6;n++)if(i.bindFramebuffer(e.FRAMEBUFFER,r.__webglFramebuffer[n]),void 0===r.__webglDepthbuffer[n])r.__webglDepthbuffer[n]=e.createRenderbuffer(),N(r.__webglDepthbuffer[n],t,!1);else{let i=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,a=r.__webglDepthbuffer[n];e.bindRenderbuffer(e.RENDERBUFFER,a),e.framebufferRenderbuffer(e.FRAMEBUFFER,i,e.RENDERBUFFER,a)}}else if(i.bindFramebuffer(e.FRAMEBUFFER,r.__webglFramebuffer),void 0===r.__webglDepthbuffer)r.__webglDepthbuffer=e.createRenderbuffer(),N(r.__webglDepthbuffer,t,!1);else{let i=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,n=r.__webglDepthbuffer;e.bindRenderbuffer(e.RENDERBUFFER,n),e.framebufferRenderbuffer(e.FRAMEBUFFER,i,e.RENDERBUFFER,n)}i.bindFramebuffer(e.FRAMEBUFFER,null)}let O=[],z=[];function k(e){return Math.min(r.maxSamples,e.samples)}function H(e){let i=n.get(e);return e.samples>0&&!0===t.has("WEBGL_multisampled_render_to_texture")&&!1!==i.__useRenderToTexture}function G(e,t){let i=e.colorSpace,n=e.format,r=e.type;return!0===e.isCompressedTexture||!0===e.isVideoTexture||i!==I&&""!==i&&(eu.getTransfer(i)===B?(1023!==n||1009!==r)&&console.warn("THREE.WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType."):console.error("THREE.WebGLTextures: Unsupported texture color space:",i)),t}function V(e){return"u">typeof HTMLImageElement&&e instanceof HTMLImageElement?(c.width=e.naturalWidth||e.width,c.height=e.naturalHeight||e.height):"u">typeof VideoFrame&&e instanceof VideoFrame?(c.width=e.displayWidth,c.height=e.displayHeight):(c.width=e.width,c.height=e.height),c}this.allocateTextureUnit=function(){let e=w;return e>=r.maxTextures&&console.warn("THREE.WebGLTextures: Trying to use "+e+" texture units while this GPU supports only "+r.maxTextures),w+=1,e},this.resetTextureUnits=function(){w=0},this.setTexture2D=T,this.setTexture2DArray=function(t,r){let a=n.get(t);t.version>0&&a.__version!==t.version?D(a,t,r):i.bindTexture(e.TEXTURE_2D_ARRAY,a.__webglTexture,e.TEXTURE0+r)},this.setTexture3D=function(t,r){let a=n.get(t);t.version>0&&a.__version!==t.version?D(a,t,r):i.bindTexture(e.TEXTURE_3D,a.__webglTexture,e.TEXTURE0+r)},this.setTextureCube=function(t,s){let o=n.get(t);t.version>0&&o.__version!==t.version?function(t,s,o){if(6!==s.image.length)return;let l=P(t,s),u=s.source;i.bindTexture(e.TEXTURE_CUBE_MAP,t.__webglTexture,e.TEXTURE0+o);let c=n.get(u);if(u.version!==c.__version||!0===l){let t;i.activeTexture(e.TEXTURE0+o);let n=eu.getPrimaries(eu.workingColorSpace),h=""===s.colorSpace?null:eu.getPrimaries(s.colorSpace),d=""===s.colorSpace||n===h?e.NONE:e.BROWSER_DEFAULT_WEBGL;e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,s.flipY),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,s.premultiplyAlpha),e.pixelStorei(e.UNPACK_ALIGNMENT,s.unpackAlignment),e.pixelStorei(e.UNPACK_COLORSPACE_CONVERSION_WEBGL,d);let f=s.isCompressedTexture||s.image[0].isCompressedTexture,p=s.image[0]&&s.image[0].isDataTexture,y=[];for(let e=0;e<6;e++)f||p?y[e]=p?s.image[e].image:s.image[e]:y[e]=m(s.image[e],!0,r.maxCubemapSize),y[e]=G(s,y[e]);let A=y[0],M=a.convert(s.format,s.colorSpace),b=a.convert(s.type),w=x(s.internalFormat,M,b,s.colorSpace),T=!0!==s.isVideoTexture,E=void 0===c.__version||!0===l,_=u.dataReady,C=S(s,A);if(R(e.TEXTURE_CUBE_MAP,s),f){T&&E&&i.texStorage2D(e.TEXTURE_CUBE_MAP,C,w,A.width,A.height);for(let n=0;n<6;n++){t=y[n].mipmaps;for(let r=0;r0&&C++;let n=V(y[0]);i.texStorage2D(e.TEXTURE_CUBE_MAP,C,w,n.width,n.height)}for(let n=0;n<6;n++)if(p){T?_&&i.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+n,0,0,0,y[n].width,y[n].height,M,b,y[n].data):i.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+n,0,w,y[n].width,y[n].height,0,M,b,y[n].data);for(let r=0;r1;if(!h&&(void 0===l.__webglTexture&&(l.__webglTexture=e.createTexture()),l.__version=r.version,s.memory.textures++),c){o.__webglFramebuffer=[];for(let t=0;t<6;t++)if(r.mipmaps&&r.mipmaps.length>0){o.__webglFramebuffer[t]=[];for(let i=0;i0){o.__webglFramebuffer=[];for(let t=0;t0&&!1===H(t)){o.__webglMultisampledFramebuffer=e.createFramebuffer(),o.__webglColorRenderbuffer=[],i.bindFramebuffer(e.FRAMEBUFFER,o.__webglMultisampledFramebuffer);for(let i=0;i0)for(let n=0;n0)for(let i=0;i0){if(!1===H(t)){let r=t.textures,a=t.width,s=t.height,o=e.COLOR_BUFFER_BIT,l=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,c=n.get(t),h=r.length>1;if(h)for(let t=0;t.025?(l.inputState.pinching=!1,this.dispatchEvent({type:"pinchend",handedness:e.handedness,target:this})):!l.inputState.pinching&&s<=.015&&(l.inputState.pinching=!0,this.dispatchEvent({type:"pinchstart",handedness:e.handedness,target:this}))}else null!==o&&e.gripSpace&&null!==(r=t.getPose(e.gripSpace,i))&&(o.matrix.fromArray(r.transform.matrix),o.matrix.decompose(o.position,o.rotation,o.scale),o.matrixWorldNeedsUpdate=!0,r.linearVelocity?(o.hasLinearVelocity=!0,o.linearVelocity.copy(r.linearVelocity)):o.hasLinearVelocity=!1,r.angularVelocity?(o.hasAngularVelocity=!0,o.angularVelocity.copy(r.angularVelocity)):o.hasAngularVelocity=!1);null!==s&&(null===(n=t.getPose(e.targetRaySpace,i))&&null!==r&&(n=r),null!==n&&(s.matrix.fromArray(n.transform.matrix),s.matrix.decompose(s.position,s.rotation,s.scale),s.matrixWorldNeedsUpdate=!0,n.linearVelocity?(s.hasLinearVelocity=!0,s.linearVelocity.copy(n.linearVelocity)):s.hasLinearVelocity=!1,n.angularVelocity?(s.hasAngularVelocity=!0,s.angularVelocity.copy(n.angularVelocity)):s.hasAngularVelocity=!1,this.dispatchEvent(uH)))}return null!==s&&(s.visible=null!==n),null!==o&&(o.visible=null!==r),null!==l&&(l.visible=null!==a),this}_getHandJoint(e,t){if(void 0===e.joints[t.jointName]){let i=new n6;i.matrixAutoUpdate=!1,i.visible=!1,e.joints[t.jointName]=i,e.add(i)}return e.joints[t.jointName]}}let uV=` -void main() { - - gl_Position = vec4( position, 1.0 ); - -}`,uW=` -uniform sampler2DArray depthColor; -uniform float depthWidth; -uniform float depthHeight; - -void main() { - - vec2 coord = vec2( gl_FragCoord.x / depthWidth, gl_FragCoord.y / depthHeight ); - - if ( coord.x >= 1.0 ) { - - gl_FragDepth = texture( depthColor, vec3( coord.x - 1.0, coord.y, 1 ) ).r; - - } else { - - gl_FragDepth = texture( depthColor, vec3( coord.x, coord.y, 0 ) ).r; - - } - -}`;class uj{constructor(){this.texture=null,this.mesh=null,this.depthNear=0,this.depthFar=0}init(e,t,i){if(null===this.texture){let n=new ev;e.properties.get(n).__webglTexture=t.texture,(t.depthNear!=i.depthNear||t.depthFar!=i.depthFar)&&(this.depthNear=t.depthNear,this.depthFar=t.depthFar),this.texture=n}}getMesh(e){if(null!==this.texture&&null===this.mesh){let t=e.cameras[0].viewport,i=new ib({vertexShader:uV,fragmentShader:uW,uniforms:{depthColor:{value:this.texture},depthWidth:{value:t.z},depthHeight:{value:t.w}}});this.mesh=new ig(new r9(20,20),i)}return this.mesh}reset(){this.texture=null,this.mesh=null}getDepthTexture(){return this.texture}}class uX extends N{constructor(e,t){super();const i=this;let n=null,r=1,a=null,s="local-floor",o=1,l=null,u=null,c=null,h=null,d=null,f=null;const p=new uj,m=t.getContextAttributes();let g=null,v=null;const x=[],y=[],S=new Q;let A=null;const M=new iC;M.viewport=new ex;const b=new iC;b.viewport=new ex;const w=[M,b],T=new sw;let E=null,_=null;function C(e){let t=y.indexOf(e.inputSource);if(-1===t)return;let i=x[t];void 0!==i&&(i.update(e.inputSource,e.frame,l||a),i.dispatchEvent({type:e.type,data:e.inputSource}))}function R(){n.removeEventListener("select",C),n.removeEventListener("selectstart",C),n.removeEventListener("selectend",C),n.removeEventListener("squeeze",C),n.removeEventListener("squeezestart",C),n.removeEventListener("squeezeend",C),n.removeEventListener("end",R),n.removeEventListener("inputsourceschange",P);for(let e=0;e=0&&(y[n]=null,x[n].disconnect(i))}for(let t=0;t=y.length){y.push(i),n=e;break}else if(null===y[e]){y[e]=i,n=e;break}if(-1===n)break}let r=x[n];r&&r.connect(i)}}this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(e){let t=x[e];return void 0===t&&(t=new uG,x[e]=t),t.getTargetRaySpace()},this.getControllerGrip=function(e){let t=x[e];return void 0===t&&(t=new uG,x[e]=t),t.getGripSpace()},this.getHand=function(e){let t=x[e];return void 0===t&&(t=new uG,x[e]=t),t.getHandSpace()},this.setFramebufferScaleFactor=function(e){r=e,!0===i.isPresenting&&console.warn("THREE.WebXRManager: Cannot change framebuffer scale while presenting.")},this.setReferenceSpaceType=function(e){s=e,!0===i.isPresenting&&console.warn("THREE.WebXRManager: Cannot change reference space type while presenting.")},this.getReferenceSpace=function(){return l||a},this.setReferenceSpace=function(e){l=e},this.getBaseLayer=function(){return null!==h?h:d},this.getBinding=function(){return c},this.getFrame=function(){return f},this.getSession=function(){return n},this.setSession=async function(u){if(null!==(n=u)){if(g=e.getRenderTarget(),n.addEventListener("select",C),n.addEventListener("selectstart",C),n.addEventListener("selectend",C),n.addEventListener("squeeze",C),n.addEventListener("squeezestart",C),n.addEventListener("squeezeend",C),n.addEventListener("end",R),n.addEventListener("inputsourceschange",P),!0!==m.xrCompatible&&await t.makeXRCompatible(),A=e.getPixelRatio(),e.getSize(S),void 0===n.renderState.layers){let i={antialias:m.antialias,alpha:!0,depth:m.depth,stencil:m.stencil,framebufferScaleFactor:r};d=new XRWebGLLayer(n,t,i),n.updateRenderState({baseLayer:d}),e.setPixelRatio(1),e.setSize(d.framebufferWidth,d.framebufferHeight,!1),v=new eS(d.framebufferWidth,d.framebufferHeight,{format:1023,type:1009,colorSpace:e.outputColorSpace,stencilBuffer:m.stencil})}else{let i=null,a=null,s=null;m.depth&&(s=m.stencil?t.DEPTH24_STENCIL8:t.DEPTH_COMPONENT24,i=m.stencil?1027:1026,a=m.stencil?1020:1014);let o={colorFormat:t.RGBA8,depthFormat:s,scaleFactor:r};h=(c=new XRWebGLBinding(n,t)).createProjectionLayer(o),n.updateRenderState({layers:[h]}),e.setPixelRatio(1),e.setSize(h.textureWidth,h.textureHeight,!1),v=new eS(h.textureWidth,h.textureHeight,{format:1023,type:1009,depthTexture:new rn(h.textureWidth,h.textureHeight,a,void 0,void 0,void 0,void 0,void 0,void 0,i),stencilBuffer:m.stencil,colorSpace:e.outputColorSpace,samples:4*!!m.antialias,resolveDepthBuffer:!1===h.ignoreDepthValues})}v.isXRRenderTarget=!0,this.setFoveation(o),l=null,a=await n.requestReferenceSpace(s),U.setContext(n),U.start(),i.isPresenting=!0,i.dispatchEvent({type:"sessionstart"})}},this.getEnvironmentBlendMode=function(){if(null!==n)return n.environmentBlendMode},this.getDepthTexture=function(){return p.getDepthTexture()};const D=new eE,I=new eE;function L(e,t){null===t?e.matrixWorld.copy(e.matrix):e.matrixWorld.multiplyMatrices(t.matrixWorld,e.matrix),e.matrixWorldInverse.copy(e.matrixWorld).invert()}this.updateCamera=function(e){var t,i,r;if(null===n)return;let a=e.near,s=e.far;null!==p.texture&&(p.depthNear>0&&(a=p.depthNear),p.depthFar>0&&(s=p.depthFar)),T.near=b.near=M.near=a,T.far=b.far=M.far=s,(E!==T.near||_!==T.far)&&(n.updateRenderState({depthNear:T.near,depthFar:T.far}),E=T.near,_=T.far),M.layers.mask=2|e.layers.mask,b.layers.mask=4|e.layers.mask,T.layers.mask=M.layers.mask|b.layers.mask;let o=e.parent,l=T.cameras;L(T,o);for(let e=0;e0&&(e.alphaTest.value=n.alphaTest);let r=t.get(n),a=r.envMap,s=r.envMapRotation;a&&(e.envMap.value=a,uY.copy(s),uY.x*=-1,uY.y*=-1,uY.z*=-1,a.isCubeTexture&&!1===a.isRenderTargetTexture&&(uY.y*=-1,uY.z*=-1),e.envMapRotation.value.setFromMatrix4(uQ.makeRotationFromEuler(uY)),e.flipEnvMap.value=a.isCubeTexture&&!1===a.isRenderTargetTexture?-1:1,e.reflectivity.value=n.reflectivity,e.ior.value=n.ior,e.refractionRatio.value=n.refractionRatio),n.lightMap&&(e.lightMap.value=n.lightMap,e.lightMapIntensity.value=n.lightMapIntensity,i(n.lightMap,e.lightMapTransform)),n.aoMap&&(e.aoMap.value=n.aoMap,e.aoMapIntensity.value=n.aoMapIntensity,i(n.aoMap,e.aoMapTransform))}return{refreshFogUniforms:function(t,i){i.color.getRGB(t.fogColor.value,iA(e)),i.isFog?(t.fogNear.value=i.near,t.fogFar.value=i.far):i.isFogExp2&&(t.fogDensity.value=i.density)},refreshMaterialUniforms:function(e,r,a,s,o){var l,u,c,h,d,f,p,m,g,v,x,y,S,A,M,b,w,T,E,_,C,R,P;let D;r.isMeshBasicMaterial||r.isMeshLambertMaterial?n(e,r):r.isMeshToonMaterial?(n(e,r),l=e,(u=r).gradientMap&&(l.gradientMap.value=u.gradientMap)):r.isMeshPhongMaterial?(n(e,r),c=e,h=r,c.specular.value.copy(h.specular),c.shininess.value=Math.max(h.shininess,1e-4)):r.isMeshStandardMaterial?(n(e,r),d=e,f=r,d.metalness.value=f.metalness,f.metalnessMap&&(d.metalnessMap.value=f.metalnessMap,i(f.metalnessMap,d.metalnessMapTransform)),d.roughness.value=f.roughness,f.roughnessMap&&(d.roughnessMap.value=f.roughnessMap,i(f.roughnessMap,d.roughnessMapTransform)),f.envMap&&(d.envMapIntensity.value=f.envMapIntensity),r.isMeshPhysicalMaterial&&(p=e,m=r,g=o,p.ior.value=m.ior,m.sheen>0&&(p.sheenColor.value.copy(m.sheenColor).multiplyScalar(m.sheen),p.sheenRoughness.value=m.sheenRoughness,m.sheenColorMap&&(p.sheenColorMap.value=m.sheenColorMap,i(m.sheenColorMap,p.sheenColorMapTransform)),m.sheenRoughnessMap&&(p.sheenRoughnessMap.value=m.sheenRoughnessMap,i(m.sheenRoughnessMap,p.sheenRoughnessMapTransform))),m.clearcoat>0&&(p.clearcoat.value=m.clearcoat,p.clearcoatRoughness.value=m.clearcoatRoughness,m.clearcoatMap&&(p.clearcoatMap.value=m.clearcoatMap,i(m.clearcoatMap,p.clearcoatMapTransform)),m.clearcoatRoughnessMap&&(p.clearcoatRoughnessMap.value=m.clearcoatRoughnessMap,i(m.clearcoatRoughnessMap,p.clearcoatRoughnessMapTransform)),m.clearcoatNormalMap&&(p.clearcoatNormalMap.value=m.clearcoatNormalMap,i(m.clearcoatNormalMap,p.clearcoatNormalMapTransform),p.clearcoatNormalScale.value.copy(m.clearcoatNormalScale),1===m.side&&p.clearcoatNormalScale.value.negate())),m.dispersion>0&&(p.dispersion.value=m.dispersion),m.iridescence>0&&(p.iridescence.value=m.iridescence,p.iridescenceIOR.value=m.iridescenceIOR,p.iridescenceThicknessMinimum.value=m.iridescenceThicknessRange[0],p.iridescenceThicknessMaximum.value=m.iridescenceThicknessRange[1],m.iridescenceMap&&(p.iridescenceMap.value=m.iridescenceMap,i(m.iridescenceMap,p.iridescenceMapTransform)),m.iridescenceThicknessMap&&(p.iridescenceThicknessMap.value=m.iridescenceThicknessMap,i(m.iridescenceThicknessMap,p.iridescenceThicknessMapTransform))),m.transmission>0&&(p.transmission.value=m.transmission,p.transmissionSamplerMap.value=g.texture,p.transmissionSamplerSize.value.set(g.width,g.height),m.transmissionMap&&(p.transmissionMap.value=m.transmissionMap,i(m.transmissionMap,p.transmissionMapTransform)),p.thickness.value=m.thickness,m.thicknessMap&&(p.thicknessMap.value=m.thicknessMap,i(m.thicknessMap,p.thicknessMapTransform)),p.attenuationDistance.value=m.attenuationDistance,p.attenuationColor.value.copy(m.attenuationColor)),m.anisotropy>0&&(p.anisotropyVector.value.set(m.anisotropy*Math.cos(m.anisotropyRotation),m.anisotropy*Math.sin(m.anisotropyRotation)),m.anisotropyMap&&(p.anisotropyMap.value=m.anisotropyMap,i(m.anisotropyMap,p.anisotropyMapTransform))),p.specularIntensity.value=m.specularIntensity,p.specularColor.value.copy(m.specularColor),m.specularColorMap&&(p.specularColorMap.value=m.specularColorMap,i(m.specularColorMap,p.specularColorMapTransform)),m.specularIntensityMap&&(p.specularIntensityMap.value=m.specularIntensityMap,i(m.specularIntensityMap,p.specularIntensityMapTransform)))):r.isMeshMatcapMaterial?(n(e,r),v=e,(x=r).matcap&&(v.matcap.value=x.matcap)):r.isMeshDepthMaterial?n(e,r):r.isMeshDistanceMaterial?(n(e,r),y=e,S=r,D=t.get(S).light,y.referencePosition.value.setFromMatrixPosition(D.matrixWorld),y.nearDistance.value=D.shadow.camera.near,y.farDistance.value=D.shadow.camera.far):r.isMeshNormalMaterial?n(e,r):r.isLineBasicMaterial?(A=e,M=r,A.diffuse.value.copy(M.color),A.opacity.value=M.opacity,M.map&&(A.map.value=M.map,i(M.map,A.mapTransform)),r.isLineDashedMaterial&&(b=e,w=r,b.dashSize.value=w.dashSize,b.totalSize.value=w.dashSize+w.gapSize,b.scale.value=w.scale)):r.isPointsMaterial?(T=e,E=r,_=a,C=s,T.diffuse.value.copy(E.color),T.opacity.value=E.opacity,T.size.value=E.size*_,T.scale.value=.5*C,E.map&&(T.map.value=E.map,i(E.map,T.uvTransform)),E.alphaMap&&(T.alphaMap.value=E.alphaMap,i(E.alphaMap,T.alphaMapTransform)),E.alphaTest>0&&(T.alphaTest.value=E.alphaTest)):r.isSpriteMaterial?(R=e,P=r,R.diffuse.value.copy(P.color),R.opacity.value=P.opacity,R.rotation.value=P.rotation,P.map&&(R.map.value=P.map,i(P.map,R.mapTransform)),P.alphaMap&&(R.alphaMap.value=P.alphaMap,i(P.alphaMap,R.alphaMapTransform)),P.alphaTest>0&&(R.alphaTest.value=P.alphaTest)):r.isShadowMaterial?(e.color.value.copy(r.color),e.opacity.value=r.opacity):r.isShaderMaterial&&(r.uniformsNeedUpdate=!1)}}}function uK(e,t,i,n){let r={},a={},s=[],o=e.getParameter(e.MAX_UNIFORM_BUFFER_BINDINGS);function l(e){let t={boundary:0,storage:0};return"number"==typeof e||"boolean"==typeof e?(t.boundary=4,t.storage=4):e.isVector2?(t.boundary=8,t.storage=8):e.isVector3||e.isColor?(t.boundary=16,t.storage=12):e.isVector4?(t.boundary=16,t.storage=16):e.isMatrix3?(t.boundary=48,t.storage=48):e.isMatrix4?(t.boundary=64,t.storage=64):e.isTexture?console.warn("THREE.WebGLRenderer: Texture samplers can not be part of an uniforms group."):console.warn("THREE.WebGLRenderer: Unsupported uniform value type.",e),t}function u(t){let i=t.target;i.removeEventListener("dispose",u);let n=s.indexOf(i.__bindingPointIndex);s.splice(n,1),e.deleteBuffer(r[i.id]),delete r[i.id],delete a[i.id]}return{bind:function(e,t){let i=t.program;n.uniformBlockBinding(e,i)},update:function(i,c){var h;let d,f,p,m,g=r[i.id];void 0===g&&(function(e){let t=e.uniforms,i=0;for(let e=0,n=t.length;e0&&(i+=16-n),e.__size=i,e.__cache={}}(i),(h=i).__bindingPointIndex=d=function(){for(let e=0;etypeof WebGLRenderingContext&&_ instanceof WebGLRenderingContext)throw Error("THREE.WebGLRenderer: WebGL 1 is not supported since r163.");t=_.getContextAttributes().alpha}else t=P;const z=new Uint32Array(4),k=new Int32Array(4);let H=null,G=null;const V=[],W=[];this.domElement=E,this.debug={checkShaderErrors:!0,onShaderError:null},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this._outputColorSpace=D,this.toneMapping=0,this.toneMappingExposure=1;const j=this;let X=!1,Y=0,Q=0,q=null,K=-1,Z=null;const J=new ex,$=new ex;let ee=null;const ei=new tO(0);let eo=0,el=E.width,ec=E.height,eh=1,ed=null,ef=null;const ep=new ex(0,0,el,ec),em=new ex(0,0,el,ec);let eg=!1;const ev=new nM;let ey=!1,eA=!1;const eM=new e2,eb=new e2,ew=new eE,eT=new ex,e_={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0};let eC=!1;function eR(){return null===q?eh:1}let eP=_;function eD(e,t){return E.getContext(e,t)}try{if("setAttribute"in E&&E.setAttribute("data-engine","three.js r171"),E.addEventListener("webglcontextlost",eB,!1),E.addEventListener("webglcontextrestored",eU,!1),E.addEventListener("webglcontextcreationerror",eN,!1),null===eP){const e="webgl2";if(eP=eD(e,{alpha:!0,depth:C,stencil:R,antialias:L,premultipliedAlpha:B,preserveDrawingBuffer:U,powerPreference:N,failIfMajorPerformanceCaveat:F}),null===eP)if(eD(e))throw Error("Error creating WebGL context with your selected attributes.");else throw Error("Error creating WebGL context.")}}catch(e){throw console.error("THREE.WebGLRenderer: "+e.message),e}function eI(){(i=new lr(eP)).init(),b=new uk(eP,i),n=new oQ(eP,i,e,b),r=new uO(eP,i),n.reverseDepthBuffer&&O&&r.buffers.depth.setReversed(!0),a=new lo(eP),s=new uT,o=new uz(eP,i,r,s,n,b,a),l=new oK(j),u=new ln(j),c=new oO(eP),w=new oX(eP,c),h=new la(eP,c,a,w),d=new lu(eP,h,c,a),S=new ll(eP,n,o),v=new oq(s),f=new uw(j,l,u,i,n,w,v),p=new uq(j,s),m=new uR,g=new uU(i),y=new oj(j,l,u,r,d,t,B),x=new uN(j,d,n),T=new uK(eP,a,n,r),A=new oY(eP,i,a),M=new ls(eP,i,a),a.programs=f.programs,j.capabilities=n,j.extensions=i,j.properties=s,j.renderLists=m,j.shadowMap=x,j.state=r,j.info=a}eI();const eL=new uX(j,eP);function eB(e){e.preventDefault(),console.log("THREE.WebGLRenderer: Context Lost."),X=!0}function eU(){console.log("THREE.WebGLRenderer: Context Restored."),X=!1;let e=a.autoReset,t=x.enabled,i=x.autoUpdate,n=x.needsUpdate,r=x.type;eI(),a.autoReset=e,x.enabled=t,x.autoUpdate=i,x.needsUpdate=n,x.type=r}function eN(e){console.error("THREE.WebGLRenderer: A WebGL context could not be created. Reason: ",e.statusMessage)}function eF(e){var t,i;let n,r=e.target;r.removeEventListener("dispose",eF),i=t=r,void 0!==(n=s.get(i).programs)&&(n.forEach(function(e){f.releaseProgram(e)}),i.isShaderMaterial&&f.releaseShaderCache(i)),s.remove(t)}function eO(e,t,i){!0===e.transparent&&2===e.side&&!1===e.forceSinglePass?(e.side=1,e.needsUpdate=!0,eQ(e,t,i),e.side=0,e.needsUpdate=!0,eQ(e,t,i),e.side=2):eQ(e,t,i)}this.xr=eL,this.getContext=function(){return eP},this.getContextAttributes=function(){return eP.getContextAttributes()},this.forceContextLoss=function(){let e=i.get("WEBGL_lose_context");e&&e.loseContext()},this.forceContextRestore=function(){let e=i.get("WEBGL_lose_context");e&&e.restoreContext()},this.getPixelRatio=function(){return eh},this.setPixelRatio=function(e){void 0!==e&&(eh=e,this.setSize(el,ec,!1))},this.getSize=function(e){return e.set(el,ec)},this.setSize=function(e,t,i=!0){eL.isPresenting?console.warn("THREE.WebGLRenderer: Can't change size while VR device is presenting."):(el=e,ec=t,E.width=Math.floor(e*eh),E.height=Math.floor(t*eh),!0===i&&(E.style.width=e+"px",E.style.height=t+"px"),this.setViewport(0,0,e,t))},this.getDrawingBufferSize=function(e){return e.set(el*eh,ec*eh).floor()},this.setDrawingBufferSize=function(e,t,i){el=e,ec=t,eh=i,E.width=Math.floor(e*i),E.height=Math.floor(t*i),this.setViewport(0,0,e,t)},this.getCurrentViewport=function(e){return e.copy(J)},this.getViewport=function(e){return e.copy(ep)},this.setViewport=function(e,t,i,n){e.isVector4?ep.set(e.x,e.y,e.z,e.w):ep.set(e,t,i,n),r.viewport(J.copy(ep).multiplyScalar(eh).round())},this.getScissor=function(e){return e.copy(em)},this.setScissor=function(e,t,i,n){e.isVector4?em.set(e.x,e.y,e.z,e.w):em.set(e,t,i,n),r.scissor($.copy(em).multiplyScalar(eh).round())},this.getScissorTest=function(){return eg},this.setScissorTest=function(e){r.setScissorTest(eg=e)},this.setOpaqueSort=function(e){ed=e},this.setTransparentSort=function(e){ef=e},this.getClearColor=function(e){return e.copy(y.getClearColor())},this.setClearColor=function(){y.setClearColor.apply(y,arguments)},this.getClearAlpha=function(){return y.getClearAlpha()},this.setClearAlpha=function(){y.setClearAlpha.apply(y,arguments)},this.clear=function(e=!0,t=!0,i=!0){let n=0;if(e){let e=!1;if(null!==q){let t=q.texture.format;e=1033===t||1031===t||1029===t}if(e){let e=q.texture.type,t=1009===e||1014===e||1012===e||1020===e||1017===e||1018===e,i=y.getClearColor(),n=y.getClearAlpha(),r=i.r,a=i.g,s=i.b;t?(z[0]=r,z[1]=a,z[2]=s,z[3]=n,eP.clearBufferuiv(eP.COLOR,0,z)):(k[0]=r,k[1]=a,k[2]=s,k[3]=n,eP.clearBufferiv(eP.COLOR,0,k))}else n|=eP.COLOR_BUFFER_BIT}t&&(n|=eP.DEPTH_BUFFER_BIT),i&&(n|=eP.STENCIL_BUFFER_BIT,this.state.buffers.stencil.setMask(0xffffffff)),eP.clear(n)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.dispose=function(){E.removeEventListener("webglcontextlost",eB,!1),E.removeEventListener("webglcontextrestored",eU,!1),E.removeEventListener("webglcontextcreationerror",eN,!1),y.dispose(),m.dispose(),g.dispose(),s.dispose(),l.dispose(),u.dispose(),d.dispose(),w.dispose(),T.dispose(),f.dispose(),eL.dispose(),eL.removeEventListener("sessionstart",ek),eL.removeEventListener("sessionend",eH),eG.stop()},this.renderBufferDirect=function(e,t,a,d,f,m){let g;null===t&&(t=e_);let x=f.isMesh&&0>f.matrixWorld.determinant(),y=function(e,t,i,a,c){var h,d;!0!==t.isScene&&(t=e_),o.resetTextureUnits();let f=t.fog,m=a.isMeshStandardMaterial?t.environment:null,g=null===q?j.outputColorSpace:!0===q.isXRRenderTarget?q.texture.colorSpace:I,x=(a.isMeshStandardMaterial?u:l).get(a.envMap||m),y=!0===a.vertexColors&&!!i.attributes.color&&4===i.attributes.color.itemSize,A=!!i.attributes.tangent&&(!!a.normalMap||a.anisotropy>0),M=!!i.morphAttributes.position,b=!!i.morphAttributes.normal,w=!!i.morphAttributes.color,E=0;a.toneMapped&&(null===q||!0===q.isXRRenderTarget)&&(E=j.toneMapping);let _=i.morphAttributes.position||i.morphAttributes.normal||i.morphAttributes.color,C=void 0!==_?_.length:0,R=s.get(a),P=G.state.lights;if(!0===ey&&(!0===eA||e!==Z)){let t=e===Z&&a.id===K;v.setState(a,e,t)}let D=!1;a.version===R.__version?R.needsLights&&R.lightsStateVersion!==P.state.version||R.outputColorSpace!==g||c.isBatchedMesh&&!1===R.batching?D=!0:c.isBatchedMesh||!0!==R.batching?c.isBatchedMesh&&!0===R.batchingColor&&null===c.colorTexture||c.isBatchedMesh&&!1===R.batchingColor&&null!==c.colorTexture||c.isInstancedMesh&&!1===R.instancing?D=!0:c.isInstancedMesh||!0!==R.instancing?c.isSkinnedMesh&&!1===R.skinning?D=!0:c.isSkinnedMesh||!0!==R.skinning?c.isInstancedMesh&&!0===R.instancingColor&&null===c.instanceColor||c.isInstancedMesh&&!1===R.instancingColor&&null!==c.instanceColor||c.isInstancedMesh&&!0===R.instancingMorph&&null===c.morphTexture||c.isInstancedMesh&&!1===R.instancingMorph&&null!==c.morphTexture||R.envMap!==x||!0===a.fog&&R.fog!==f||void 0!==R.numClippingPlanes&&(R.numClippingPlanes!==v.numPlanes||R.numIntersection!==v.numIntersection)||R.vertexAlphas!==y||R.vertexTangents!==A||R.morphTargets!==M||R.morphNormals!==b||R.morphColors!==w||R.toneMapping!==E?D=!0:R.morphTargetsCount!==C&&(D=!0):D=!0:D=!0:D=!0:(D=!0,R.__version=a.version);let L=R.currentProgram;!0===D&&(L=eQ(a,t,c));let B=!1,U=!1,N=!1,F=L.getUniforms(),O=R.uniforms;if(r.useProgram(L.program)&&(B=!0,U=!0,N=!0),a.id!==K&&(K=a.id,U=!0),B||Z!==e){r.buffers.depth.getReversed()?(eM.copy(e.projectionMatrix),ea(eM),es(eM),F.setValue(eP,"projectionMatrix",eM)):F.setValue(eP,"projectionMatrix",e.projectionMatrix),F.setValue(eP,"viewMatrix",e.matrixWorldInverse);let t=F.map.cameraPosition;void 0!==t&&t.setValue(eP,ew.setFromMatrixPosition(e.matrixWorld)),n.logarithmicDepthBuffer&&F.setValue(eP,"logDepthBufFC",2/(Math.log(e.far+1)/Math.LN2)),(a.isMeshPhongMaterial||a.isMeshToonMaterial||a.isMeshLambertMaterial||a.isMeshBasicMaterial||a.isMeshStandardMaterial||a.isShaderMaterial)&&F.setValue(eP,"isOrthographic",!0===e.isOrthographicCamera),Z!==e&&(Z=e,U=!0,N=!0)}if(c.isSkinnedMesh){F.setOptional(eP,c,"bindMatrix"),F.setOptional(eP,c,"bindMatrixInverse");let e=c.skeleton;e&&(null===e.boneTexture&&e.computeBoneTexture(),F.setValue(eP,"boneTexture",e.boneTexture,o))}c.isBatchedMesh&&(F.setOptional(eP,c,"batchingTexture"),F.setValue(eP,"batchingTexture",c._matricesTexture,o),F.setOptional(eP,c,"batchingIdTexture"),F.setValue(eP,"batchingIdTexture",c._indirectTexture,o),F.setOptional(eP,c,"batchingColorTexture"),null!==c._colorsTexture&&F.setValue(eP,"batchingColorTexture",c._colorsTexture,o));let z=i.morphAttributes;if((void 0!==z.position||void 0!==z.normal||void 0!==z.color)&&S.update(c,i,L),(U||R.receiveShadow!==c.receiveShadow)&&(R.receiveShadow=c.receiveShadow,F.setValue(eP,"receiveShadow",c.receiveShadow)),a.isMeshGouraudMaterial&&null!==a.envMap&&(O.envMap.value=x,O.flipEnvMap.value=x.isCubeTexture&&!1===x.isRenderTargetTexture?-1:1),a.isMeshStandardMaterial&&null===a.envMap&&null!==t.environment&&(O.envMapIntensity.value=t.environmentIntensity),U&&(F.setValue(eP,"toneMappingExposure",j.toneMappingExposure),R.needsLights&&(h=O,d=N,h.ambientLightColor.needsUpdate=d,h.lightProbe.needsUpdate=d,h.directionalLights.needsUpdate=d,h.directionalLightShadows.needsUpdate=d,h.pointLights.needsUpdate=d,h.pointLightShadows.needsUpdate=d,h.spotLights.needsUpdate=d,h.spotLightShadows.needsUpdate=d,h.rectAreaLights.needsUpdate=d,h.hemisphereLights.needsUpdate=d),f&&!0===a.fog&&p.refreshFogUniforms(O,f),p.refreshMaterialUniforms(O,a,eh,ec,G.state.transmissionRenderTarget[e.id]),un.upload(eP,eq(R),O,o)),a.isShaderMaterial&&!0===a.uniformsNeedUpdate&&(un.upload(eP,eq(R),O,o),a.uniformsNeedUpdate=!1),a.isSpriteMaterial&&F.setValue(eP,"center",c.center),F.setValue(eP,"modelViewMatrix",c.modelViewMatrix),F.setValue(eP,"normalMatrix",c.normalMatrix),F.setValue(eP,"modelMatrix",c.matrixWorld),a.isShaderMaterial||a.isRawShaderMaterial){let e=a.uniformsGroups;for(let t=0,i=e.length;t{function n(){(r.forEach(function(e){s.get(e).currentProgram.isReady()&&r.delete(e)}),0===r.size)?t(e):setTimeout(n,10)}null!==i.get("KHR_parallel_shader_compile")?n():setTimeout(n,10)})};let ez=null;function ek(){eG.stop()}function eH(){eG.start()}const eG=new oF;function eV(e,t,i,n){if(!1===e.visible)return;if(e.layers.test(t.layers)){if(e.isGroup)i=e.renderOrder;else if(e.isLOD)!0===e.autoUpdate&&e.update(t);else if(e.isLight)G.pushLight(e),e.castShadow&&G.pushShadow(e);else if(e.isSprite){if(!e.frustumCulled||ev.intersectsSprite(e)){n&&eT.setFromMatrixPosition(e.matrixWorld).applyMatrix4(eb);let t=d.update(e),r=e.material;r.visible&&H.push(e,t,r,i,eT.z,null)}}else if((e.isMesh||e.isLine||e.isPoints)&&(!e.frustumCulled||ev.intersectsObject(e))){let t=d.update(e),r=e.material;if(n&&(void 0!==e.boundingSphere?(null===e.boundingSphere&&e.computeBoundingSphere(),eT.copy(e.boundingSphere.center)):(null===t.boundingSphere&&t.computeBoundingSphere(),eT.copy(t.boundingSphere.center)),eT.applyMatrix4(e.matrixWorld).applyMatrix4(eb)),Array.isArray(r)){let n=t.groups;for(let a=0,s=n.length;a0&&eX(a,t,i),s.length>0&&eX(s,t,i),o.length>0&&eX(o,t,i),r.buffers.depth.setTest(!0),r.buffers.depth.setMask(!0),r.buffers.color.setMask(!0),r.setPolygonOffset(!1)}function ej(e,t,n,r){if(null!==(!0===n.isScene?n.overrideMaterial:null))return;void 0===G.state.transmissionRenderTarget[r.id]&&(G.state.transmissionRenderTarget[r.id]=new eS(1,1,{generateMipmaps:!0,type:i.has("EXT_color_buffer_half_float")||i.has("EXT_color_buffer_float")?1016:1009,minFilter:1008,samples:4,stencilBuffer:R,resolveDepthBuffer:!1,resolveStencilBuffer:!1,colorSpace:eu.workingColorSpace}));let a=G.state.transmissionRenderTarget[r.id],s=r.viewport||J;a.setSize(s.z,s.w);let l=j.getRenderTarget();j.setRenderTarget(a),j.getClearColor(ei),(eo=j.getClearAlpha())<1&&j.setClearColor(0xffffff,.5),j.clear(),eC&&y.render(n);let u=j.toneMapping;j.toneMapping=0;let c=r.viewport;if(void 0!==r.viewport&&(r.viewport=void 0),G.setupLightsView(r),!0===ey&&v.setGlobalState(j.clippingPlanes,r),eX(e,n,r),o.updateMultisampleRenderTarget(a),o.updateRenderTargetMipmap(a),!1===i.has("WEBGL_multisampled_render_to_texture")){let e=!1;for(let i=0,a=t.length;itypeof self&&eG.setContext(self),this.setAnimationLoop=function(e){ez=e,eL.setAnimationLoop(e),null===e?eG.stop():eG.start()},eL.addEventListener("sessionstart",ek),eL.addEventListener("sessionend",eH),this.render=function(e,t){if(void 0!==t&&!0!==t.isCamera)return void console.error("THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.");if(!0===X)return;if(!0===e.matrixWorldAutoUpdate&&e.updateMatrixWorld(),null===t.parent&&!0===t.matrixWorldAutoUpdate&&t.updateMatrixWorld(),!0===eL.enabled&&!0===eL.isPresenting&&(!0===eL.cameraAutoUpdate&&eL.updateCamera(t),t=eL.getCamera()),!0===e.isScene&&e.onBeforeRender(j,e,t,q),(G=g.get(e,W.length)).init(t),W.push(G),eb.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse),ev.setFromProjectionMatrix(eb),eA=this.localClippingEnabled,ey=v.init(this.clippingPlanes,eA),(H=m.get(e,V.length)).init(),V.push(H),!0===eL.enabled&&!0===eL.isPresenting){let e=j.xr.getDepthSensingMesh();null!==e&&eV(e,t,-1/0,j.sortObjects)}eV(e,t,0,j.sortObjects),H.finish(),!0===j.sortObjects&&H.sort(ed,ef),(eC=!1===eL.enabled||!1===eL.isPresenting||!1===eL.hasDepthSensing())&&y.addToRenderList(H,e),this.info.render.frame++,!0===ey&&v.beginShadows();let i=G.state.shadowsArray;x.render(i,e,t),!0===ey&&v.endShadows(),!0===this.info.autoReset&&this.info.reset();let n=H.opaque,r=H.transmissive;if(G.setupLights(),t.isArrayCamera){let i=t.cameras;if(r.length>0)for(let t=0,a=i.length;t0&&ej(n,r,e,t),eC&&y.render(e),eW(H,e,t);null!==q&&(o.updateMultisampleRenderTarget(q),o.updateRenderTargetMipmap(q)),!0===e.isScene&&e.onAfterRender(j,e,t),w.resetDefaultState(),K=-1,Z=null,W.pop(),W.length>0?(G=W[W.length-1],!0===ey&&v.setGlobalState(j.clippingPlanes,G.state.camera)):G=null,V.pop(),H=V.length>0?V[V.length-1]:null},this.getActiveCubeFace=function(){return Y},this.getActiveMipmapLevel=function(){return Q},this.getRenderTarget=function(){return q},this.setRenderTargetTextures=function(e,t,n){s.get(e.texture).__webglTexture=t,s.get(e.depthTexture).__webglTexture=n;let r=s.get(e);r.__hasExternalTextures=!0,r.__autoAllocateDepthBuffer=void 0===n,r.__autoAllocateDepthBuffer||!0!==i.has("WEBGL_multisampled_render_to_texture")||(console.warn("THREE.WebGLRenderer: Render-to-texture extension was disabled because an external texture was provided"),r.__useRenderToTexture=!1)},this.setRenderTargetFramebuffer=function(e,t){let i=s.get(e);i.__webglFramebuffer=t,i.__useDefaultFramebuffer=void 0===t},this.setRenderTarget=function(e,t=0,i=0){q=e,Y=t,Q=i;let n=!0,a=null,l=!1,u=!1;if(e){let c=s.get(e);if(void 0!==c.__useDefaultFramebuffer)r.bindFramebuffer(eP.FRAMEBUFFER,null),n=!1;else if(void 0===c.__webglFramebuffer)o.setupRenderTarget(e);else if(c.__hasExternalTextures)o.rebindTextures(e,s.get(e.texture).__webglTexture,s.get(e.depthTexture).__webglTexture);else if(e.depthBuffer){let t=e.depthTexture;if(c.__boundDepthTexture!==t){if(null!==t&&s.has(t)&&(e.width!==t.image.width||e.height!==t.image.height))throw Error("WebGLRenderTarget: Attached DepthTexture is initialized to the incorrect size.");o.setupDepthRenderbuffer(e)}}let h=e.texture;(h.isData3DTexture||h.isDataArrayTexture||h.isCompressedArrayTexture)&&(u=!0);let d=s.get(e).__webglFramebuffer;e.isWebGLCubeRenderTarget?(a=Array.isArray(d[t])?d[t][i]:d[t],l=!0):a=e.samples>0&&!1===o.useMultisampledRTT(e)?s.get(e).__webglMultisampledFramebuffer:Array.isArray(d)?d[i]:d,J.copy(e.viewport),$.copy(e.scissor),ee=e.scissorTest}else J.copy(ep).multiplyScalar(eh).floor(),$.copy(em).multiplyScalar(eh).floor(),ee=eg;if(r.bindFramebuffer(eP.FRAMEBUFFER,a)&&n&&r.drawBuffers(e,a),r.viewport(J),r.scissor($),r.setScissorTest(ee),l){let n=s.get(e.texture);eP.framebufferTexture2D(eP.FRAMEBUFFER,eP.COLOR_ATTACHMENT0,eP.TEXTURE_CUBE_MAP_POSITIVE_X+t,n.__webglTexture,i)}else if(u){let n=s.get(e.texture);eP.framebufferTextureLayer(eP.FRAMEBUFFER,eP.COLOR_ATTACHMENT0,n.__webglTexture,i||0,t||0)}K=-1},this.readRenderTargetPixels=function(e,t,i,a,o,l,u){if(!(e&&e.isWebGLRenderTarget))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");let c=s.get(e).__webglFramebuffer;if(e.isWebGLCubeRenderTarget&&void 0!==u&&(c=c[u]),c){r.bindFramebuffer(eP.FRAMEBUFFER,c);try{let r=e.texture,s=r.format,u=r.type;if(!n.textureFormatReadable(s))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.");if(!n.textureTypeReadable(u))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.");t>=0&&t<=e.width-a&&i>=0&&i<=e.height-o&&eP.readPixels(t,i,a,o,b.convert(s),b.convert(u),l)}finally{let e=null!==q?s.get(q).__webglFramebuffer:null;r.bindFramebuffer(eP.FRAMEBUFFER,e)}}},this.readRenderTargetPixelsAsync=async function(e,t,i,a,o,l,u){if(!(e&&e.isWebGLRenderTarget))throw Error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");let c=s.get(e).__webglFramebuffer;if(e.isWebGLCubeRenderTarget&&void 0!==u&&(c=c[u]),c){let u=e.texture,h=u.format,d=u.type;if(!n.textureFormatReadable(h))throw Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.");if(!n.textureTypeReadable(d))throw Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.");if(t>=0&&t<=e.width-a&&i>=0&&i<=e.height-o){r.bindFramebuffer(eP.FRAMEBUFFER,c);let e=eP.createBuffer();eP.bindBuffer(eP.PIXEL_PACK_BUFFER,e),eP.bufferData(eP.PIXEL_PACK_BUFFER,l.byteLength,eP.STREAM_READ),eP.readPixels(t,i,a,o,b.convert(h),b.convert(d),0);let n=null!==q?s.get(q).__webglFramebuffer:null;r.bindFramebuffer(eP.FRAMEBUFFER,n);let u=eP.fenceSync(eP.SYNC_GPU_COMMANDS_COMPLETE,0);return eP.flush(),await er(eP,u,4),eP.bindBuffer(eP.PIXEL_PACK_BUFFER,e),eP.getBufferSubData(eP.PIXEL_PACK_BUFFER,0,l),eP.deleteBuffer(e),eP.deleteSync(u),l}throw Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: requested read bounds are out of range.")}},this.copyFramebufferToTexture=function(e,t=null,i=0){!0!==e.isTexture&&(en("WebGLRenderer: copyFramebufferToTexture function signature has changed."),t=arguments[0]||null,e=arguments[1]);let n=Math.pow(2,-i),a=Math.floor(e.image.width*n),s=Math.floor(e.image.height*n),l=null!==t?t.x:0,u=null!==t?t.y:0;o.setTexture2D(e,0),eP.copyTexSubImage2D(eP.TEXTURE_2D,i,0,0,l,u,a,s),r.unbindTexture()};const eZ=eP.createFramebuffer(),eJ=eP.createFramebuffer();this.copyTextureToTexture=function(e,t,i=null,n=null,a=0,l=null){let u,c,h,d,f,p,m,g,v,x;!0!==e.isTexture&&(en("WebGLRenderer: copyTextureToTexture function signature has changed."),n=arguments[0]||null,e=arguments[1],t=arguments[2],l=arguments[3]||0,i=null),null===l&&(0!==a?(en("WebGLRenderer: copyTextureToTexture function signature has changed to support src and dst mipmap levels."),l=a,a=0):l=0);let y=e.isCompressedTexture?e.mipmaps[l]:e.image;if(null!==i)u=i.max.x-i.min.x,c=i.max.y-i.min.y,h=i.isBox3?i.max.z-i.min.z:1,d=i.min.x,f=i.min.y,p=i.isBox3?i.min.z:0;else{let t=Math.pow(2,-a);u=Math.floor(y.width*t),c=Math.floor(y.height*t),h=e.isDataArrayTexture?y.depth:e.isData3DTexture?Math.floor(y.depth*t):1,d=0,f=0,p=0}null!==n?(m=n.x,g=n.y,v=n.z):(m=0,g=0,v=0);let S=b.convert(t.format),A=b.convert(t.type);t.isData3DTexture?(o.setTexture3D(t,0),x=eP.TEXTURE_3D):t.isDataArrayTexture||t.isCompressedArrayTexture?(o.setTexture2DArray(t,0),x=eP.TEXTURE_2D_ARRAY):(o.setTexture2D(t,0),x=eP.TEXTURE_2D),eP.pixelStorei(eP.UNPACK_FLIP_Y_WEBGL,t.flipY),eP.pixelStorei(eP.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t.premultiplyAlpha),eP.pixelStorei(eP.UNPACK_ALIGNMENT,t.unpackAlignment);let M=eP.getParameter(eP.UNPACK_ROW_LENGTH),w=eP.getParameter(eP.UNPACK_IMAGE_HEIGHT),T=eP.getParameter(eP.UNPACK_SKIP_PIXELS),E=eP.getParameter(eP.UNPACK_SKIP_ROWS),_=eP.getParameter(eP.UNPACK_SKIP_IMAGES);eP.pixelStorei(eP.UNPACK_ROW_LENGTH,y.width),eP.pixelStorei(eP.UNPACK_IMAGE_HEIGHT,y.height),eP.pixelStorei(eP.UNPACK_SKIP_PIXELS,d),eP.pixelStorei(eP.UNPACK_SKIP_ROWS,f),eP.pixelStorei(eP.UNPACK_SKIP_IMAGES,p);let C=e.isDataArrayTexture||e.isData3DTexture,R=t.isDataArrayTexture||t.isData3DTexture;if(e.isDepthTexture){let i=s.get(e),n=s.get(t),o=s.get(i.__renderTarget),x=s.get(n.__renderTarget);r.bindFramebuffer(eP.READ_FRAMEBUFFER,o.__webglFramebuffer),r.bindFramebuffer(eP.DRAW_FRAMEBUFFER,x.__webglFramebuffer);for(let i=0;itypeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}get coordinateSystem(){return 2e3}get outputColorSpace(){return this._outputColorSpace}set outputColorSpace(e){this._outputColorSpace=e;let t=this.getContext();t.drawingBufferColorspace=eu._getDrawingBufferColorSpace(e),t.unpackColorSpace=eu._getUnpackColorSpace()}}e.s(["PMREMGenerator",0,o8,"ShaderChunk",0,oz,"ShaderLib",0,oH,"UniformsLib",0,ok,"WebGLRenderer",0,uZ,"WebGLUtils",0,uk],8560);var uJ=e.i(30224);let u$=e=>{let t,i=new Set,n=(e,n)=>{let r="function"==typeof e?e(t):e;if(!Object.is(r,t)){let e=t;t=(null!=n?n:"object"!=typeof r||null===r)?r:Object.assign({},t,r),i.forEach(i=>i(t,e))}},r=()=>t,a={setState:n,getState:r,getInitialState:()=>s,subscribe:e=>(i.add(e),()=>i.delete(e))},s=t=e(n,r,a);return a},{useSyncExternalStoreWithSelector:u0}=uJ.default,u1=(e,t)=>{let i=e?u$(e):u$,n=(e,n=t)=>(function(e,t=e=>e,i){let n=u0(e.subscribe,e.getState,e.getInitialState,t,i);return E.default.useDebugValue(n),n})(i,e,n);return Object.assign(n,i),n},u2=(e,t)=>e?u1(e,t):u1,u3=[];function u4(e,t,i=(e,t)=>e===t){if(e===t)return!0;if(!e||!t)return!1;let n=e.length;if(t.length!==n)return!1;for(let r=0;r0&&(r.timeout&&clearTimeout(r.timeout),r.timeout=setTimeout(r.remove,n.lifespan)),r.response;if(!i)throw r.promise}let r={keys:t,equal:n.equal,remove:()=>{let e=u3.indexOf(r);-1!==e&&u3.splice(e,1)},promise:("object"==typeof e&&"function"==typeof e.then?e:e(...t)).then(e=>{r.response=e,n.lifespan&&n.lifespan>0&&(r.timeout=setTimeout(r.remove,n.lifespan))}).catch(e=>r.error=e)};if(u3.push(r),!i)throw r.promise}var u6=e.i(89499),u8=e.i(43476),u9=E;function u7(e,t,i){if(!e)return;if(!0===i(e))return e;let n=t?e.return:e.child;for(;n;){let e=u7(n,t,i);if(e)return e;n=t?null:n.sibling}}function ce(e){try{return Object.defineProperties(e,{_currentRenderer:{get:()=>null,set(){}},_currentRenderer2:{get:()=>null,set(){}}})}catch(t){return e}}"u">typeof window&&((null==(y=window.document)?void 0:y.createElement)||(null==(S=window.navigator)?void 0:S.product)==="ReactNative")?u9.useLayoutEffect:u9.useEffect;let ct=ce(u9.createContext(null));class ci extends u9.Component{render(){return u9.createElement(ct.Provider,{value:this._reactInternals},this.props.children)}}function cn(){let e=u9.useContext(ct);if(null===e)throw Error("its-fine: useFiber must be called within a !");let t=u9.useId();return u9.useMemo(()=>{for(let i of[e,null==e?void 0:e.alternate]){if(!i)continue;let e=u7(i,!1,e=>{let i=e.memoizedState;for(;i;){if(i.memoizedState===t)return!0;i=i.next}});if(e)return e}},[e,t])}let cr=Symbol.for("react.context"),ca=e=>null!==e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===cr;function cs(e){let t=e.root;for(;t.getState().previousRoot;)t=t.getState().previousRoot;return t}E.act;let co=e=>e&&e.hasOwnProperty("current"),cl=e=>null!=e&&("string"==typeof e||"number"==typeof e||e.isColor),cu="u">typeof window&&((null==(m=window.document)?void 0:m.createElement)||(null==(g=window.navigator)?void 0:g.product)==="ReactNative")?E.useLayoutEffect:E.useEffect;function cc(e){let t=E.useRef(e);return cu(()=>void(t.current=e),[e]),t}function ch(){let e,t=cn(),i=(e=function(){let e=cn(),[t]=u9.useState(()=>new Map);t.clear();let i=e;for(;i;){let e=i.type;ca(e)&&e!==ct&&!t.has(e)&&t.set(e,u9.use(ce(e))),i=i.return}return t}(),u9.useMemo(()=>Array.from(e.keys()).reduce((t,i)=>n=>u9.createElement(t,null,u9.createElement(i.Provider,{...n,value:e.get(i)})),e=>u9.createElement(ci,{...e})),[e]));return E.useMemo(()=>({children:e})=>{let n=u7(t,!0,e=>e.type===E.StrictMode)?E.StrictMode:E.Fragment;return(0,u8.jsx)(n,{children:(0,u8.jsx)(i,{children:e})})},[t,i])}function cd({set:e}){return cu(()=>(e(new Promise(()=>null)),()=>e(!1)),[e]),null}let cf=((v=class extends E.Component{constructor(...e){super(...e),this.state={error:!1}}componentDidCatch(e){this.props.set(e)}render(){return this.state.error?null:this.props.children}}).getDerivedStateFromError=()=>({error:!0}),v);function cp(e){var t;let i="u">typeof window?null!=(t=window.devicePixelRatio)?t:2:1;return Array.isArray(e)?Math.min(Math.max(e[0],i),e[1]):e}function cm(e){var t;return null==(t=e.__r3f)?void 0:t.root.getState()}let cg={obj:e=>e===Object(e)&&!cg.arr(e)&&"function"!=typeof e,fun:e=>"function"==typeof e,str:e=>"string"==typeof e,num:e=>"number"==typeof e,boo:e=>"boolean"==typeof e,und:e=>void 0===e,nul:e=>null===e,arr:e=>Array.isArray(e),equ(e,t,{arrays:i="shallow",objects:n="reference",strict:r=!0}={}){let a;if(typeof e!=typeof t||!!e!=!!t)return!1;if(cg.str(e)||cg.num(e)||cg.boo(e))return e===t;let s=cg.obj(e);if(s&&"reference"===n)return e===t;let o=cg.arr(e);if(o&&"reference"===i)return e===t;if((o||s)&&e===t)return!0;for(a in e)if(!(a in t))return!1;if(s&&"shallow"===i&&"shallow"===n){for(a in r?t:e)if(!cg.equ(e[a],t[a],{strict:r,objects:"reference"}))return!1}else for(a in r?t:e)if(e[a]!==t[a])return!1;if(cg.und(a)){if(o&&0===e.length&&0===t.length||s&&0===Object.keys(e).length&&0===Object.keys(t).length)return!0;if(e!==t)return!1}return!0}},cv=["children","key","ref"];function cx(e,t,i,n){let r=null==e?void 0:e.__r3f;return!r&&(r={root:t,type:i,parent:null,children:[],props:function(e){let t={};for(let i in e)cv.includes(i)||(t[i]=e[i]);return t}(n),object:e,eventCount:0,handlers:{},isHidden:!1},e&&(e.__r3f=r)),r}function cy(e,t){if(!t.includes("-")||t in e)return{root:e,key:t,target:e[t]};let i=e,n=t.split("-");for(let r of n){if("object"!=typeof i||null===i){if(void 0!==i)return{root:i,key:n.slice(n.indexOf(r)).join("-"),target:void 0};return{root:e,key:t,target:void 0}}t=r,e=i,i=i[t]}return{root:e,key:t,target:i}}let cS=/-\d+$/;function cA(e,t){if(cg.str(t.props.attach)){if(cS.test(t.props.attach)){let i=t.props.attach.replace(cS,""),{root:n,key:r}=cy(e.object,i);Array.isArray(n[r])||(n[r]=[])}let{root:i,key:n}=cy(e.object,t.props.attach);t.previousAttach=i[n],i[n]=t.object}else cg.fun(t.props.attach)&&(t.previousAttach=t.props.attach(e.object,t.object))}function cM(e,t){if(cg.str(t.props.attach)){let{root:i,key:n}=cy(e.object,t.props.attach),r=t.previousAttach;void 0===r?delete i[n]:i[n]=r}else null==t.previousAttach||t.previousAttach(e.object,t.object);delete t.previousAttach}let cb=[...cv,"args","dispose","attach","object","onUpdate","dispose"],cw=new Map,cT=["map","emissiveMap","sheenColorMap","specularColorMap","envMap"],cE=/^on(Pointer|Click|DoubleClick|ContextMenu|Wheel)/;function c_(e,t){var i,n;let r=e.__r3f,a=r&&cs(r).getState(),s=null==r?void 0:r.eventCount;for(let i in t){let s=t[i];if(cb.includes(i))continue;if(r&&cE.test(i)){"function"==typeof s?r.handlers[i]=s:delete r.handlers[i],r.eventCount=Object.keys(r.handlers).length;continue}if(void 0===s)continue;let{root:o,key:l,target:u}=cy(e,i);if(void 0===u&&("object"!=typeof o||null===o))throw Error(`R3F: Cannot set "${i}". Ensure it is an object before setting "${l}".`);if(u instanceof tn&&s instanceof tn)u.mask=s.mask;else if(u instanceof tO&&cl(s))u.set(s);else if(null!==u&&"object"==typeof u&&"function"==typeof u.set&&"function"==typeof u.copy&&null!=s&&s.constructor&&u.constructor===s.constructor)u.copy(s);else if(null!==u&&"object"==typeof u&&"function"==typeof u.set&&Array.isArray(s))"function"==typeof u.fromArray?u.fromArray(s):u.set(...s);else if(null!==u&&"object"==typeof u&&"function"==typeof u.set&&"number"==typeof s)"function"==typeof u.setScalar?u.setScalar(s):u.set(s);else if(o instanceof ib&&"uniforms"===l&&cg.obj(s)){cg.obj(o.uniforms)||(o.uniforms={});let e=o.uniforms;for(let t in s){let i=s[t],n=e[t];n?Object.assign(n,i):e[t]={...i}}}else o[l]=s,a&&!a.linear&&cT.includes(l)&&null!=(n=o[l])&&n.isTexture&&1023===o[l].format&&1009===o[l].type&&(o[l].colorSpace=D)}if(null!=r&&r.parent&&null!=a&&a.internal&&null!=(i=r.object)&&i.isObject3D&&s!==r.eventCount){let e=r.object,t=a.internal.interaction.indexOf(e);t>-1&&a.internal.interaction.splice(t,1),r.eventCount&&null!==e.raycast&&a.internal.interaction.push(e)}return r&&void 0===r.props.attach&&(r.object.isBufferGeometry?r.props.attach="geometry":r.object.isMaterial&&(r.props.attach="material")),r&&cC(r),e}function cC(e){var t;if(!e.parent)return;null==e.props.onUpdate||e.props.onUpdate(e.object);let i=null==(t=e.root)||null==t.getState?void 0:t.getState();i&&0===i.internal.frames&&i.invalidate()}function cR(e,t){!e.manual&&(e&&e.isOrthographicCamera?(e.left=-(t.width/2),e.right=t.width/2,e.top=t.height/2,e.bottom=-(t.height/2)):e.aspect=t.width/t.height,e.updateProjectionMatrix())}let cP=e=>null==e?void 0:e.isObject3D;function cD(e){return(e.eventObject||e.object).uuid+"/"+e.index+e.instanceId}function cI(e,t,i,n){let r=i.get(t);r&&(i.delete(t),0===i.size&&(e.delete(n),r.target.releasePointerCapture(n)))}let cL=e=>!!(null!=e&&e.render),cB=E.createContext(null);function cU(){let e=E.useContext(cB);if(!e)throw Error("R3F: Hooks can only be used within the Canvas component!");return e}function cN(e=e=>e,t){return cU()(e,t)}function cF(e,t=0){let i=cU(),n=i.getState().internal.subscribe,r=cc(e);return cu(()=>n(r,t,i),[t,n,i]),null}let cO=new WeakMap;function cz(e,t){return function(i,...n){var r;let a;return"function"==typeof i&&(null==i||null==(r=i.prototype)?void 0:r.constructor)===i?(a=cO.get(i))||(a=new i,cO.set(i,a)):a=i,e&&e(a),Promise.all(n.map(e=>new Promise((i,n)=>a.load(e,e=>{var t;let n;cP(null==e?void 0:e.scene)&&Object.assign(e,(t=e.scene,n={nodes:{},materials:{},meshes:{}},t&&t.traverse(e=>{e.name&&(n.nodes[e.name]=e),e.material&&!n.materials[e.material.name]&&(n.materials[e.material.name]=e.material),e.isMesh&&!n.meshes[e.name]&&(n.meshes[e.name]=e)}),n)),i(e)},t,t=>n(Error(`Could not load ${e}: ${null==t?void 0:t.message}`))))))}}function ck(e,t,i,n){let r=Array.isArray(t)?t:[t],a=u5(cz(i,n),[e,...r],!1,{equal:cg.equ});return Array.isArray(t)?a:a[0]}ck.preload=function(e,t,i){let n,r=Array.isArray(t)?t:[t];u5(cz(i),[e,...r],!0,n)},ck.clear=function(e,t){var i=[e,...Array.isArray(t)?t:[t]];if(void 0===i||0===i.length)u3.splice(0,u3.length);else{let e=u3.find(e=>u4(i,e.keys,e.equal));e&&e.remove()}};var cH={exports:{}},cG={exports:{}};cG.exports;let cV=(w||(w=1,b||(b=1,cG.exports=function(e){function t(e,t,i,n){return new nK(e,t,i,n)}function i(){}function n(e){var t="https://react.dev/errors/"+e;if(1sw||(e.current=sb[sw],sb[sw]=null,sw--)}function h(e,t){sb[++sw]=e.current,e.current=t}function d(e){var t=42&e;if(0!==t)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return 261888&e;case 262144:case 524288:case 1048576:case 2097152:return 3932160&e;case 4194304:case 8388608:case 0x1000000:case 0x2000000:return 0x3c00000&e;case 0x4000000:return 0x4000000;case 0x8000000:return 0x8000000;case 0x10000000:return 0x10000000;case 0x20000000:return 0x20000000;case 0x40000000:return 0;default:return e}}function f(e,t,i){var n=e.pendingLanes;if(0===n)return 0;var r=0,a=e.suspendedLanes,s=e.pingedLanes;e=e.warmLanes;var o=0x7ffffff&n;return 0!==o?0!=(n=o&~a)?r=d(n):0!=(s&=o)?r=d(s):i||0!=(i=o&~e)&&(r=d(i)):0!=(o=n&~a)?r=d(o):0!==s?r=d(s):i||0!=(i=n&~e)&&(r=d(i)),0===r?0:0!==t&&t!==r&&(t&a)==0&&((a=r&-r)>=(i=t&-t)||32===a&&(4194048&i)!=0)?t:r}function p(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)==0}function m(){var e=sD;return(0x3c00000&(sD<<=1))==0&&(sD=4194304),e}function g(e){for(var t=[],i=0;31>i;i++)t.push(e);return t}function v(e,t){e.pendingLanes|=t,0x10000000!==t&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function x(e,t,i){e.pendingLanes|=t,e.suspendedLanes&=~t;var n=31-sE(t);e.entangledLanes|=t,e.entanglements[n]=0x40000000|e.entanglements[n]|261930&i}function y(e,t){var i=e.entangledLanes|=t;for(e=e.entanglements;i;){var n=31-sE(i),r=1<)":-1r||l[n]!==u[r]){var c=` -`+l[n].replace(" at new "," at ");return e.displayName&&c.includes("")&&(c=c.replace("",e.displayName)),c}while(1<=n&&0<=r)break}}}finally{sQ=!1,Error.prepareStackTrace=i}return(i=e?e.displayName||e.name:"")?w(i):""}function C(e){try{var t="",i=null;do t+=function(e,t){switch(e.tag){case 26:case 27:case 5:return w(e.type);case 16:return w("Lazy");case 13:return e.child!==t&&null!==t?w("Suspense Fallback"):w("Suspense");case 19:return w("SuspenseList");case 0:case 15:return _(e.type,!1);case 11:return _(e.type.render,!1);case 1:return _(e.type,!0);case 31:return w("Activity");default:return""}}(e,i),i=e,e=e.return;while(e)return t}catch(e){return` -Error generating stack: `+e.message+` -`+e.stack}}function R(e,t){if("object"==typeof e&&null!==e){var i=sq.get(e);return void 0!==i?i:(t={value:e,source:t,stack:C(t)},sq.set(e,t),t)}return{value:e,source:t,stack:C(t)}}function P(e,t){sK[sZ++]=s$,sK[sZ++]=sJ,sJ=e,s$=t}function D(e,t,i){s0[s1++]=s3,s0[s1++]=s4,s0[s1++]=s2,s2=e;var n=s3;e=s4;var r=32-sE(n)-1;n&=~(1<>=s,r-=s,s3=1<<32-sE(t)+r|i<d?(f=h,h=null):f=h.sibling;var v=m(t,h,s[d],o);if(null===v){null===h&&(h=f);break}e&&h&&null===v.alternate&&i(t,h),n=l(v,n,d),null===c?u=v:c.sibling=v,c=v,h=f}if(d===s.length)return r(t,h),ot&&P(t,d),u;if(null===h){for(;df?(v=d,d=null):v=d.sibling;var y=m(t,d,x.value,u);if(null===y){null===d&&(d=v);break}e&&d&&null===y.alternate&&i(t,d),s=l(y,s,f),null===h?c=y:h.sibling=y,h=y,d=v}if(x.done)return r(t,d),ot&&P(t,f),c;if(null===d){for(;!x.done;f++,x=o.next())null!==(x=p(t,x.value,u))&&(s=l(x,s,f),null===h?c=x:h.sibling=x,h=x);return ot&&P(t,f),c}for(d=a(d);!x.done;f++,x=o.next())null!==(x=g(d,t,f,x.value,u))&&(e&&null!==x.alternate&&d.delete(null===x.key?f:x.key),s=l(x,s,f),null===h?c=x:h.sibling=x,h=x);return e&&d.forEach(function(e){return i(t,e)}),ot&&P(t,f),c}(c,h,d=v.call(d),f)}if("function"==typeof d.then)return t(c,h,eb(d),f);if(d.$$typeof===rd)return t(c,h,ee(c,d),f);eT(c,d)}return"string"==typeof d&&""!==d||"number"==typeof d||"bigint"==typeof d?(d=""+d,null!==h&&6===h.tag?(r(c,h.sibling),(f=s(h,d)).return=c):(r(c,h),(f=n2(d,c.mode,f)).return=c),u(c=f)):r(c,h)}(c,h,d,f);return oR=null,v}catch(e){if(e===ow||e===oE)throw e;var x=t(29,e,null,c.mode);return x.lanes=f,x.return=c,x}finally{}}}function e_(){for(var e=oB,t=oU=oB=0;ta?a:8);var s=rb.T,o={};rb.T=o,tJ(e,!1,t,i);try{var l=r(),u=rb.S;if(null!==u&&u(o,l),null!==l&&"object"==typeof l&&"function"==typeof l.then){var c,h,d=(c=[],h={status:"pending",value:null,reason:null,then:function(e){c.push(e)}},l.then(function(){h.status="fulfilled",h.value=n;for(var e=0;e";case lu:return":has("+(nf(e)||"")+")";case lc:return'[role="'+e.value+'"]';case ld:return'"'+e.value+'"';case lh:return'[data-testname="'+e.value+'"]';default:throw Error(n(365))}}function np(e,t){var i=[];e=[e,0];for(var n=0;nlN&&(t.flags|=128,a=!0,iO(r,!1),t.lanes=4194304)}else{if(!a)if(null!==(e=eZ(s))){if(t.flags|=128,a=!0,t.updateQueue=e=e.updateQueue,iF(t,e),iO(r,!0),null===r.tail&&"hidden"===r.tailMode&&!s.alternate&&!ot)return iz(t),null}else 2*sN()-r.renderingStartTime>lN&&0x20000000!==i&&(t.flags|=128,a=!0,iO(r,!1),t.lanes=4194304);r.isBackwards?(s.sibling=t.child,t.child=s):(null!==(e=r.last)?e.sibling=s:t.child=s,r.last=s)}return null!==r.tail?(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=sN(),e.sibling=null,i=oG.current,h(oG,a?1&i|2:1&i),ot&&P(t,r.treeForkCount),e):(iz(t),null);case 22:case 23:return eK(t),ej(),r=null!==t.memoizedState,null!==e?null!==e.memoizedState!==r&&(t.flags|=8192):r&&(t.flags|=8192),r?(0x20000000&i)!=0&&(128&t.flags)==0&&(iz(t),6&t.subtreeFlags&&(t.flags|=8192)):iz(t),null!==(i=t.updateQueue)&&iF(t,i.retryQueue),i=null,null!==e&&null!==e.memoizedState&&null!==e.memoizedState.cachePool&&(i=e.memoizedState.cachePool.pool),r=null,null!==t.memoizedState&&null!==t.memoizedState.cachePool&&(r=t.memoizedState.cachePool.pool),r!==i&&(t.flags|=2048),null!==e&&c(ob),null;case 24:return i=null,null!==e&&(i=e.memoizedState.cache),t.memoizedState.cache!==i&&(t.flags|=2048),Y(oh),iz(t),null;case 25:case 30:return null}throw Error(n(156,t.tag))}(t.alternate,t,lw);if(null!==i){lv=i;return}if(null!==(t=t.sibling)){lv=t;return}lv=t=e}while(null!==t)0===lT&&(lT=5)}function nU(e,t){do{var i=function(e,t){switch(L(t),t.tag){case 1:return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return Y(oh),N(),(65536&(e=t.flags))!=0&&(128&e)==0?(t.flags=-65537&e|128,t):null;case 26:case 27:case 5:return O(t),null;case 31:if(null!==t.memoizedState){if(eK(t),null===t.alternate)throw Error(n(340));V()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 13:if(eK(t),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(n(340));V()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return c(oG),null;case 4:return N(),null;case 10:return Y(t.type),null;case 22:case 23:return eK(t),ej(),null!==e&&c(ob),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 24:return Y(oh),null;default:return null}}(e.alternate,e);if(null!==i){i.flags&=32767,lv=i;return}if(null!==(i=e.return)&&(i.flags|=32768,i.subtreeFlags=0,i.deletions=null),!t&&null!==(e=e.sibling)){lv=e;return}lv=e=i}while(null!==e)lT=6,lv=null}function nN(e,t,i,r,a,s,o,l,u){e.cancelPendingCommit=null;do nH();while(0!==lz)if((6&lm)!=0)throw Error(n(327));if(null!==t){if(t===e.current)throw Error(n(177));if(function(e,t,i,n,r,a){var s=e.pendingLanes;e.pendingLanes=i,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=i,e.entangledLanes&=i,e.errorRecoveryDisabledLanes&=i,e.shellSuspendCounter=0;var o=e.entanglements,l=e.expirationTimes,u=e.hiddenUpdates;for(i=s&~i;0i?32:i;i=rb.T;var a=rY();try{rX(r),rb.T=null,r=lW,lW=null;var s=lk,o=lG;if(lz=0,lH=lk=null,lG=0,(6&lm)!=0)throw Error(n(331));var l=lm;if(lm|=4,nu(s.current),nn(s,s.current,o,r),lm=l,es(0,!1),sW&&"function"==typeof sW.onPostCommitFiberRoot)try{sW.onPostCommitFiberRoot(sV,s)}catch{}return!0}finally{rX(a),rb.T=i,nk(e,t)}}function nV(e,t,i){t=R(i,t),t=t9(e.stateNode,t,2),null!==(e=eN(e,t,2))&&(v(e,2),ea(e))}function nW(e,t,i){if(3===e.tag)nV(e,e,i);else for(;null!==t;){if(3===t.tag){nV(t,e,i);break}if(1===t.tag){var n=t.stateNode;if("function"==typeof t.type.getDerivedStateFromError||"function"==typeof n.componentDidCatch&&(null===lO||!lO.has(n))){e=R(i,e),null!==(n=eN(t,i=t7(2),2))&&(ie(i,n,t,e),v(n,2),ea(n));break}}t=t.return}}function nj(e,t,i){var n=e.pingCache;if(null===n){n=e.pingCache=new lp;var r=new Set;n.set(t,r)}else void 0===(r=n.get(t))&&(r=new Set,n.set(t,r));r.has(i)||(lb=!0,r.add(i),e=nX.bind(null,e,t,i),t.then(e,e))}function nX(e,t,i){var n=e.pingCache;null!==n&&n.delete(t),e.pingedLanes|=e.suspendedLanes&i,e.warmLanes&=~i,lg===e&&(lx&i)===i&&(4===lT||3===lT&&(0x3c00000&lx)===lx&&300>sN()-lB?(2&lm)==0&&nw(e,0):lC|=i,lP===lx&&(lP=0)),ea(e)}function nY(e,t){0===t&&(t=m()),null!==(e=eP(e,t))&&(v(e,t),ea(e))}function nQ(e){var t=e.memoizedState,i=0;null!==t&&(i=t.retryLane),nY(e,i)}function nq(e,t){var i=0;switch(e.tag){case 31:case 13:var r=e.stateNode,a=e.memoizedState;null!==a&&(i=a.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(n(314))}null!==r&&r.delete(t),nY(e,i)}function nK(e,t,i,n){this.tag=e,this.key=i,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=n,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function nZ(e){return!(!(e=e.prototype)||!e.isReactComponent)}function nJ(e,i){var n=e.alternate;return null===n?((n=t(e.tag,i,e.key,e.mode)).elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=i,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=0x3e00000&e.flags,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,i=e.dependencies,n.dependencies=null===i?null:{lanes:i.lanes,firstContext:i.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n.refCleanup=e.refCleanup,n}function n$(e,t){e.flags&=0x3e00002;var i=e.alternate;return null===i?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=i.childLanes,e.lanes=i.lanes,e.child=i.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=i.memoizedProps,e.memoizedState=i.memoizedState,e.updateQueue=i.updateQueue,e.type=i.type,e.dependencies=null===(t=i.dependencies)?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function n0(e,i,r,a,s,o){var l=0;if(a=e,"function"==typeof e)nZ(e)&&(l=1);else if("string"==typeof e)l=sn&&sv?sr(e,r,s5.current)?26:sA(e)?27:5:sn?sr(e,r,s5.current)?26:5:sv&&sA(e)?27:5;else o:switch(e){case rx:return(e=t(31,r,i,s)).elementType=rx,e.lanes=o,e;case rl:return n1(r.children,s,o,i);case ru:l=8,s|=24;break;case rc:return(e=t(12,r,i,2|s)).elementType=rc,e.lanes=o,e;case rp:return(e=t(13,r,i,s)).elementType=rp,e.lanes=o,e;case rm:return(e=t(19,r,i,s)).elementType=rm,e.lanes=o,e;default:if("object"==typeof e&&null!==e)switch(e.$$typeof){case rd:l=10;break o;case rh:l=9;break o;case rf:l=11;break o;case rg:l=14;break o;case rv:l=16,a=null;break o}l=29,r=Error(n(130,null===e?"null":typeof e,"")),a=null}return(i=t(l,r,i,s)).elementType=e,i.type=a,i.lanes=o,i}function n1(e,i,n,r){return(e=t(7,e,r,i)).lanes=n,e}function n2(e,i,n){return(e=t(6,e,null,i)).lanes=n,e}function n3(e){var i=t(18,null,null,0);return i.stateNode=e,i}function n4(e,i,n){return(i=t(4,null!==e.children?e.children:[],e.key,i)).lanes=n,i.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},i}function n5(e,t,i,n,r,a,s,o,l){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=rz,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=g(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=g(0),this.hiddenUpdates=g(null),this.identifierPrefix=n,this.onUncaughtError=r,this.onCaughtError=a,this.onRecoverableError=s,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=l,this.incompleteTransitions=new Map}function n6(e,i,n,r,a,s,o,l,u,c,h,d){return e=new n5(e,i,n,o,u,c,h,d,l),i=1,!0===s&&(i|=24),s=t(3,null,null,i),e.current=s,s.stateNode=e,i=ei(),i.refCount++,e.pooledCache=i,i.refCount++,s.memoizedState={element:r,isDehydrated:n,cache:i},eL(s),e}function n8(e){var t=e._reactInternals;if(void 0===t)throw"function"==typeof e.render?Error(n(188)):Error(n(268,e=Object.keys(e).join(",")));return null===(e=null!==(e=s(t))?function e(t){var i=t.tag;if(5===i||26===i||27===i||6===i)return t;for(t=t.child;null!==t;){if(null!==(i=e(t)))return i;t=t.sibling}return null}(e):null)?null:r_(e.stateNode)}function n9(e,t,i,n,r,a){r=sT,null===n.context?n.context=r:n.pendingContext=r,(n=eU(t)).payload={element:i},null!==(a=void 0===a?null:a)&&(n.callback=a),null!==(i=eN(e,n,t))&&(nx(i,e,t),eF(i,e,t))}function n7(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var i=e.retryLane;e.retryLane=0!==i&&i>>=0)?32:31-(s_(e)/sC|0)|0},s_=Math.log,sC=Math.LN2,sR=256,sP=262144,sD=4194304,sI=rn.unstable_scheduleCallback,sL=rn.unstable_cancelCallback,sB=rn.unstable_shouldYield,sU=rn.unstable_requestPaint,sN=rn.unstable_now,sF=rn.unstable_ImmediatePriority,sO=rn.unstable_UserBlockingPriority,sz=rn.unstable_NormalPriority,sk=rn.unstable_IdlePriority,sH=rn.log,sG=rn.unstable_setDisableYieldValue,sV=null,sW=null,sj="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},sX="function"==typeof reportError?reportError:function(e){if("object"==typeof window&&"function"==typeof window.ErrorEvent){var t=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:"object"==typeof e&&null!==e&&"string"==typeof e.message?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if("object"==typeof T.default&&"function"==typeof T.default.emit)return void T.default.emit("uncaughtException",e);console.error(e)},sY=Object.prototype.hasOwnProperty,sQ=!1,sq=new WeakMap,sK=[],sZ=0,sJ=null,s$=0,s0=[],s1=0,s2=null,s3=1,s4="",s5=u(null),s6=u(null),s8=u(null),s9=u(null),s7=null,oe=null,ot=!1,oi=null,on=!1,or=Error(n(519)),oa=u(null),os=null,oo=null,ol="u">typeof AbortController?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(t,i){e.push(i)}};this.abort=function(){t.aborted=!0,e.forEach(function(e){return e()})}},ou=rn.unstable_scheduleCallback,oc=rn.unstable_NormalPriority,oh={$$typeof:rd,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0},od=null,of=null,op=!1,om=!1,og=!1,ov=0,ox=null,oy=0,oS=0,oA=null,oM=rb.S;rb.S=function(e,t){lU=sN(),"object"==typeof t&&null!==t&&"function"==typeof t.then&&function(e){if(null===ox){var t=ox=[];oy=0,oS=ed(),oA={status:"pending",value:void 0,then:function(e){t.push(e)}}}oy++,e.then(ef,ef)}(t),null!==oM&&oM(e,t)};var ob=u(null),ow=Error(n(460)),oT=Error(n(474)),oE=Error(n(542)),o_={then:function(){}},oC=null,oR=null,oP=0,oD=eE(!0),oI=eE(!1),oL=[],oB=0,oU=0,oN=!1,oF=!1,oO=u(null),oz=u(0),ok=u(null),oH=null,oG=u(0),oV=0,oW=null,oj=null,oX=null,oY=!1,oQ=!1,oq=!1,oK=0,oZ=0,oJ=null,o$=0,o0={readContext:$,use:tt,useCallback:eJ,useContext:eJ,useEffect:eJ,useImperativeHandle:eJ,useLayoutEffect:eJ,useInsertionEffect:eJ,useMemo:eJ,useReducer:eJ,useRef:eJ,useState:eJ,useDebugValue:eJ,useDeferredValue:eJ,useTransition:eJ,useSyncExternalStore:eJ,useId:eJ,useHostTransitionStatus:eJ,useFormState:eJ,useActionState:eJ,useOptimistic:eJ,useMemoCache:eJ,useCacheRefresh:eJ};o0.useEffectEvent=eJ;var o1={readContext:$,use:tt,useCallback:function(e,t){return e8().memoizedState=[e,void 0===t?null:t],e},useContext:$,useEffect:tD,useImperativeHandle:function(e,t,i){i=null!=i?i.concat([e]):null,tR(4194308,4,tN.bind(null,t,e),i)},useLayoutEffect:function(e,t){return tR(4194308,4,e,t)},useInsertionEffect:function(e,t){tR(4,2,e,t)},useMemo:function(e,t){var i=e8();t=void 0===t?null:t;var n=e();return i.memoizedState=[n,t],n},useReducer:function(e,t,i){var n=e8();if(void 0!==i)var r=i(t);else r=t;return n.memoizedState=n.baseState=r,n.queue=e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:r},e=e.dispatch=tq.bind(null,oW,e),[n.memoizedState,e]},useRef:function(e){return e8().memoizedState={current:e}},useState:function(e){var t=(e=tf(e)).queue,i=tK.bind(null,oW,t);return t.dispatch=i,[e.memoizedState,i]},useDebugValue:tO,useDeferredValue:function(e,t){return tH(e8(),e,t)},useTransition:function(){var e=tf(!1);return e=tV.bind(null,oW,e.queue,!0,!1),e8().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,i){var r=oW,a=e8();if(ot){if(void 0===i)throw Error(n(407));i=i()}else{if(i=t(),null===lg)throw Error(n(349));(127&lx)!=0||tl(r,t,i)}a.memoizedState=i;var s={value:i,getSnapshot:t};return a.queue=s,tD(tc.bind(null,r,s,e),[e]),r.flags|=2048,t_(9,{destroy:void 0},tu.bind(null,r,s,i,t),null),i},useId:function(){var e=e8(),t=lg.identifierPrefix;if(ot){var i=s4,n=s3;t="_"+t+"R_"+(i=(n&~(1<<32-sE(n)-1)).toString(32)+i),0<(i=oK++)&&(t+="H"+i.toString(32)),t+="_"}else t="_"+t+"r_"+(i=o$++).toString(32)+"_";return e.memoizedState=t},useHostTransitionStatus:tj,useFormState:tM,useActionState:tM,useOptimistic:function(e){var t=e8();t.memoizedState=t.baseState=e;var i={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=i,t=tJ.bind(null,oW,!0,i),i.dispatch=t,[e,t]},useMemoCache:ti,useCacheRefresh:function(){return e8().memoizedState=tQ.bind(null,oW)},useEffectEvent:function(e){var t=e8(),i={impl:e};return t.memoizedState=i,function(){if((2&lm)!=0)throw Error(n(440));return i.impl.apply(void 0,arguments)}}},o2={readContext:$,use:tt,useCallback:tz,useContext:$,useEffect:tI,useImperativeHandle:tF,useInsertionEffect:tB,useLayoutEffect:tU,useMemo:tk,useReducer:tr,useRef:tC,useState:function(){return tr(tn)},useDebugValue:tO,useDeferredValue:function(e,t){return tG(e9(),oj.memoizedState,e,t)},useTransition:function(){var e=tr(tn)[0],t=e9().memoizedState;return["boolean"==typeof e?e:te(e),t]},useSyncExternalStore:to,useId:tX,useHostTransitionStatus:tj,useFormState:tb,useActionState:tb,useOptimistic:function(e,t){return tp(e9(),oj,e,t)},useMemoCache:ti,useCacheRefresh:tY};o2.useEffectEvent=tL;var o3={readContext:$,use:tt,useCallback:tz,useContext:$,useEffect:tI,useImperativeHandle:tF,useInsertionEffect:tB,useLayoutEffect:tU,useMemo:tk,useReducer:ts,useRef:tC,useState:function(){return ts(tn)},useDebugValue:tO,useDeferredValue:function(e,t){var i=e9();return null===oj?tH(i,e,t):tG(i,oj.memoizedState,e,t)},useTransition:function(){var e=ts(tn)[0],t=e9().memoizedState;return["boolean"==typeof e?e:te(e),t]},useSyncExternalStore:to,useId:tX,useHostTransitionStatus:tj,useFormState:tE,useActionState:tE,useOptimistic:function(e,t){var i=e9();return null!==oj?tp(i,oj,e,t):(i.baseState=e,[e,i.queue.dispatch])},useMemoCache:ti,useCacheRefresh:tY};o3.useEffectEvent=tL;var o4={enqueueSetState:function(e,t,i){e=e._reactInternals;var n=ng(),r=eU(n);r.payload=t,null!=i&&(r.callback=i),null!==(t=eN(e,r,n))&&(nx(t,e,n),eF(t,e,n))},enqueueReplaceState:function(e,t,i){e=e._reactInternals;var n=ng(),r=eU(n);r.tag=1,r.payload=t,null!=i&&(r.callback=i),null!==(t=eN(e,r,n))&&(nx(t,e,n),eF(t,e,n))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var i=ng(),n=eU(i);n.tag=2,null!=t&&(n.callback=t),null!==(t=eN(e,n,i))&&(nx(t,e,i),eF(t,e,i))}},o5=Error(n(461)),o6=!1,o8={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null},o9=!1,o7=!1,le=!1,lt="function"==typeof WeakSet?WeakSet:Set,li=null,ln=null,lr=!1,la=null,ls=8192,lo={getCacheForType:function(e){var t=$(oh),i=t.data.get(e);return void 0===i&&(i=e(),t.data.set(e,i)),i},cacheSignal:function(){return $(oh).controller.signal}},ll=0,lu=1,lc=2,lh=3,ld=4;if("function"==typeof Symbol&&Symbol.for){var lf=Symbol.for;ll=lf("selector.component"),lu=lf("selector.has_pseudo_class"),lc=lf("selector.role"),lh=lf("selector.test_id"),ld=lf("selector.text")}var lp="function"==typeof WeakMap?WeakMap:Map,lm=0,lg=null,lv=null,lx=0,ly=0,lS=null,lA=!1,lM=!1,lb=!1,lw=0,lT=0,lE=0,l_=0,lC=0,lR=0,lP=0,lD=null,lI=null,lL=!1,lB=0,lU=0,lN=1/0,lF=null,lO=null,lz=0,lk=null,lH=null,lG=0,lV=0,lW=null,lj=null,lX=0,lY=null;return rt.attemptContinuousHydration=function(e){if(13===e.tag||31===e.tag){var t=eP(e,0x4000000);null!==t&&nx(t,e,0x4000000),re(e,0x4000000)}},rt.attemptHydrationAtCurrentPriority=function(e){if(13===e.tag||31===e.tag){var t=ng(),i=eP(e,t=A(t));null!==i&&nx(i,e,t),re(e,t)}},rt.attemptSynchronousHydration=function(e){switch(e.tag){case 3:if((e=e.stateNode).current.memoizedState.isDehydrated){var t=d(e.pendingLanes);if(0!==t){for(e.pendingLanes|=2,e.entangledLanes|=2;t;){var i=1<<31-sE(t);e.entanglements[1]|=i,t&=~i}ea(e),(6&lm)==0&&(lN=sN()+500,es(0,!1))}}break;case 31:case 13:null!==(t=eP(e,2))&&nx(t,e,2),nM(),re(e,2)}},rt.batchedUpdates=function(e,t){return e(t)},rt.createComponentSelector=function(e){return{$$typeof:ll,value:e}},rt.createContainer=function(e,t,i,n,r,a,s,o,l,u){return n6(e,t,!1,null,i,n,a,null,s,o,l,u)},rt.createHasPseudoClassSelector=function(e){return{$$typeof:lu,value:e}},rt.createHydrationContainer=function(e,t,i,n,r,a,s,o,l,u,c,h,d,f){var p;return(e=n6(i,n,!0,e,r,a,o,f,l,u,c,h)).context=sT,i=e.current,(r=eU(n=A(n=ng()))).callback=null!=(p=t)?p:null,eN(i,r,n),t=n,e.current.lanes=t,v(e,t),ea(e),e},rt.createPortal=function(e,t,i){var n=3=c&&s>=d&&a<=h&&o<=f){e.splice(t,1);break}if(r!==c||i.width!==u.width||fo){if(!(s!==d||i.height!==u.height||ha)){c>r&&(u.width+=c-r,u.x=r),hs&&(u.height+=d-s,u.y=s),fi&&(i=l)),l ")+` - -No matching component was found for: - `+e.join(" > ")}return null},rt.getPublicRootInstance=function(e){if(!(e=e.current).child)return null;switch(e.child.tag){case 27:case 5:return r_(e.child.stateNode);default:return e.child.stateNode}},rt.injectIntoDevTools=function(){var e={bundleType:0,version:rw,rendererPackageName:rT,currentDispatcherRef:rb,reconcilerVersion:"19.2.0"};if(null!==rE&&(e.rendererConfig=rE),typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")e=!1;else{var t=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(t.isDisabled||!t.supportsFiber)e=!0;else{try{sV=t.inject(e),sW=t}catch{}e=!!t.checkDCE}}return e},rt.isAlreadyRendering=function(){return(6&lm)!=0},rt.observeVisibleRects=function(e,t,i,r){if(!r7)throw Error(n(363));var a=as(e=nm(e,t),i,r).disconnect;return{disconnect:function(){a()}}},rt.shouldError=function(){return null},rt.shouldSuspend=function(){return!1},rt.startHostTransition=function(e,t,r,a){if(5!==e.tag)throw Error(n(476));var s=tW(e).queue;tV(e,s,t,r4,null===r?i:function(){var t=tW(e);return null===t.next&&(t=e.alternate.memoizedState),tZ(e,t.next.queue,{},ng()),r(a)})},rt.updateContainer=function(e,t,i,n){var r=t.current,a=ng();return n9(r,a,e,t,i,n),a},rt.updateContainerSync=function(e,t,i,n){return n9(t.current,2,e,t,i,n),2},rt},cG.exports.default=cG.exports,Object.defineProperty(cG.exports,"__esModule",{value:!0})),cH.exports=cG.exports),(A=cH.exports)&&A.__esModule&&Object.prototype.hasOwnProperty.call(A,"default"))?A.default:A,cW={},cj=/^three(?=[A-Z])/,cX=e=>`${e[0].toUpperCase()}${e.slice(1)}`,cY=0;function cQ(e){if("function"==typeof e){let t=`${cY++}`;return cW[t]=e,t}Object.assign(cW,e)}function cq(e,t){let i=cX(e),n=cW[i];if("primitive"!==e&&!n)throw Error(`R3F: ${i} is not part of the THREE namespace! Did you forget to extend? See: https://docs.pmnd.rs/react-three-fiber/api/objects#using-3rd-party-objects-declaratively`);if("primitive"===e&&!t.object)throw Error("R3F: Primitives without 'object' are invalid!");if(void 0!==t.args&&!Array.isArray(t.args))throw Error("R3F: The args prop must be an array!")}function cK(e){if(e.isHidden){var t;e.props.attach&&null!=(t=e.parent)&&t.object?cA(e.parent,e):cP(e.object)&&!1!==e.props.visible&&(e.object.visible=!0),e.isHidden=!1,cC(e)}}function cZ(e,t,i){let n=t.root.getState();if(e.parent||e.object===n.scene){if(!t.object){var r,a;let e=cW[cX(t.type)];t.object=null!=(r=t.props.object)?r:new e(...null!=(a=t.props.args)?a:[]),t.object.__r3f=t}if(c_(t.object,t.props),t.props.attach)cA(e,t);else if(cP(t.object)&&cP(e.object)){let n=e.object.children.indexOf(null==i?void 0:i.object);if(i&&-1!==n){let i=e.object.children.indexOf(t.object);-1!==i?(e.object.children.splice(i,1),e.object.children.splice(i{try{e.dispose()}catch{}};"u">typeof IS_REACT_ACT_ENVIRONMENT?t():(0,u6.unstable_scheduleCallback)(u6.unstable_IdlePriority,t)}}function c1(e,t,i){if(!t)return;t.parent=null;let n=e.children.indexOf(t);-1!==n&&e.children.splice(n,1),t.props.attach?cM(e,t):cP(t.object)&&cP(e.object)&&(e.object.remove(t.object),function(e,t){let{internal:i}=e.getState();i.interaction=i.interaction.filter(e=>e!==t),i.initialHits=i.initialHits.filter(e=>e!==t),i.hovered.forEach((e,n)=>{(e.eventObject===t||e.object===t)&&i.hovered.delete(n)}),i.capturedMap.forEach((e,n)=>{cI(i.capturedMap,t,e,n)})}(cs(t),t.object));let r=null!==t.props.dispose&&!1!==i;for(let e=t.children.length-1;e>=0;e--){let i=t.children[e];c1(t,i,r)}t.children.length=0,delete t.object.__r3f,r&&"primitive"!==t.type&&"Scene"!==t.object.type&&c0(t.object),void 0===i&&cC(t)}let c2=[],c3=()=>{},c4={},c5=0,c6=(M={isPrimaryRenderer:!1,warnsIfNotActing:!1,supportsMutation:!0,supportsPersistence:!1,supportsHydration:!1,createInstance:function(e,t,i){var n;return cq(e=cX(e)in cW?e:e.replace(cj,""),t),"primitive"===e&&null!=(n=t.object)&&n.__r3f&&delete t.object.__r3f,cx(t.object,i,e,t)},removeChild:c1,appendChild:cJ,appendInitialChild:cJ,insertBefore:c$,appendChildToContainer(e,t){let i=e.getState().scene.__r3f;t&&i&&cJ(i,t)},removeChildFromContainer(e,t){let i=e.getState().scene.__r3f;t&&i&&c1(i,t)},insertInContainerBefore(e,t,i){let n=e.getState().scene.__r3f;t&&i&&n&&c$(n,t,i)},getRootHostContext:()=>c4,getChildHostContext:()=>c4,commitUpdate(e,t,i,n,r){var a,s,o;cq(t,n);let l=!1;if("primitive"===e.type&&i.object!==n.object||(null==(a=n.args)?void 0:a.length)!==(null==(s=i.args)?void 0:s.length)?l=!0:null!=(o=n.args)&&o.some((e,t)=>{var n;return e!==(null==(n=i.args)?void 0:n[t])})&&(l=!0),l)c2.push([e,{...n},r]);else{let t=function(e,t){let i={};for(let n in t)if(!cb.includes(n)&&!cg.equ(t[n],e.props[n]))for(let e in i[n]=t[n],t)e.startsWith(`${n}-`)&&(i[e]=t[e]);for(let n in e.props){if(cb.includes(n)||t.hasOwnProperty(n))continue;let{root:r,key:a}=cy(e.object,n);if(r.constructor&&0===r.constructor.length){let e=function(e){let t=cw.get(e.constructor);try{t||(t=new e.constructor,cw.set(e.constructor,t))}catch(e){}return t}(r);cg.und(e)||(i[a]=e[a])}else i[a]=0}return i}(e,n);Object.keys(t).length&&(Object.assign(e.props,t),c_(e.object,t))}(null===r.sibling||(4&r.flags)==0)&&function(){for(let[e]of c2){let t=e.parent;if(t)for(let i of(e.props.attach?cM(t,e):cP(e.object)&&cP(t.object)&&t.object.remove(e.object),e.children))i.props.attach?cM(e,i):cP(i.object)&&cP(e.object)&&e.object.remove(i.object);e.isHidden&&cK(e),e.object.__r3f&&delete e.object.__r3f,"primitive"!==e.type&&c0(e.object)}for(let[n,r,a]of c2){n.props=r;let s=n.parent;if(s){let r=cW[cX(n.type)],o=n.object;n.object=null!=(e=n.props.object)?e:new r(...null!=(t=n.props.args)?t:[]),n.object.__r3f=n;var e,t,i=n.object;for(let e of[a,a.alternate])if(null!==e)if("function"==typeof e.ref){null==e.refCleanup||e.refCleanup();let t=e.ref(i);"function"==typeof t&&(e.refCleanup=t)}else e.ref&&(e.ref.current=i);for(let e of(!function(e,t,i){let{internal:n}=e.getState();for(let e=0;e{if(e.eventObject===t||e.object===t){n.hovered.delete(r);let a={...e,eventObject:e.eventObject===t?i:e.eventObject,object:e.object===t?i:e.object};n.hovered.set(cD(a),a)}}),n.capturedMap.forEach(e=>{let n=e.get(t);n&&(e.delete(t),e.set(i,n))})}(cs(n),o,n.object),c_(n.object,n.props),n.props.attach?cA(s,n):cP(n.object)&&cP(s.object)&&s.object.add(n.object),n.children))e.props.attach?cA(n,e):cP(e.object)&&cP(n.object)&&n.object.add(e.object);cC(n)}}c2.length=0}()},finalizeInitialChildren:()=>!1,commitMount(){},getPublicInstance:e=>null==e?void 0:e.object,prepareForCommit:()=>null,preparePortalMount:e=>cx(e.getState().scene,e,"",{}),resetAfterCommit:()=>{},shouldSetTextContent:()=>!1,clearContainer:()=>!1,hideInstance:function(e){if(!e.isHidden){var t;e.props.attach&&null!=(t=e.parent)&&t.object?cM(e.parent,e):cP(e.object)&&(e.object.visible=!1),e.isHidden=!0,cC(e)}},unhideInstance:cK,createTextInstance:c3,hideTextInstance:c3,unhideTextInstance:c3,scheduleTimeout:"function"==typeof setTimeout?setTimeout:void 0,cancelTimeout:"function"==typeof clearTimeout?clearTimeout:void 0,noTimeout:-1,getInstanceFromNode:()=>null,beforeActiveInstanceBlur(){},afterActiveInstanceBlur(){},detachDeletedInstance(){},prepareScopeUpdate(){},getInstanceFromScope:()=>null,shouldAttemptEagerTransition:()=>!1,trackSchedulerEvent:()=>{},resolveEventType:()=>null,resolveEventTimeStamp:()=>-1.1,requestPostPaintCallback(){},maySuspendCommit:()=>!1,preloadInstance:()=>!0,suspendInstance(){},waitForCommitToBeReady:()=>null,NotPendingTransition:null,HostTransitionContext:E.createContext(null),setCurrentUpdatePriority(e){c5=e},getCurrentUpdatePriority:()=>c5,resolveUpdatePriority(){var e;if(0!==c5)return c5;switch("u">typeof window&&(null==(e=window.event)?void 0:e.type)){case"click":case"contextmenu":case"dblclick":case"pointercancel":case"pointerdown":case"pointerup":return 2;case"pointermove":case"pointerout":case"pointerover":case"pointerenter":case"pointerleave":case"wheel":return 8;default:return 32}},resetFormInstance(){},rendererPackageName:"@react-three/fiber",rendererVersion:"9.6.1",applyViewTransitionName(e,t,i){},restoreViewTransitionName(e,t){},cancelViewTransitionName(e,t,i){},cancelRootViewTransitionName(e){},restoreRootViewTransitionName(e){},InstanceMeasurement:null,measureInstance:e=>null,wasInstanceInViewport:e=>!0,hasInstanceChanged:(e,t)=>!1,hasInstanceAffectedParent:(e,t)=>!1,suspendOnActiveViewTransition(e,t){},startGestureTransition:()=>null,startViewTransition:()=>null,stopViewTransition(e){},createViewTransitionInstance:e=>null,getCurrentGestureOffset(e){throw Error("startGestureTransition is not yet supported in react-three-fiber.")},cloneMutableInstance:(e,t)=>e,cloneMutableTextInstance:e=>e,cloneRootViewTransitionContainer(e){throw Error("Not implemented.")},removeRootViewTransitionClone(e,t){throw Error("Not implemented.")},createFragmentInstance:e=>null,updateFragmentInstanceFiber(e,t){},commitNewChildToFragmentInstance(e,t){},deleteChildFromFragmentInstance(e,t){},measureClonedInstance:e=>null,maySuspendCommitOnUpdate:(e,t,i)=>!1,maySuspendCommitInSyncRender:(e,t)=>!1,startSuspendingCommit:()=>null,getSuspendedCommitReason:(e,t)=>null},(x=cV(M)).injectIntoDevTools(),x),c8=new Map,c9={objects:"shallow",strict:!1};function c7(e){var t,i;let n,r,a,s,o,l,u,c=c8.get(e),h=null==c?void 0:c.fiber,d=null==c?void 0:c.store;c&&console.warn("R3F.createRoot should only be called once!");let f="function"==typeof reportError?reportError:console.error,p=d||(t=hd,i=hf,o=(s=(a=u2((e,n)=>{let r,a=new eE,s=new eE,o=new eE;function l(e=n().camera,t=s,i=n().size){let{width:r,height:u,top:c,left:h}=i,d=r/u;t.isVector3?o.copy(t):o.set(...t);let f=e.getWorldPosition(a).distanceTo(o);if(e&&e.isOrthographicCamera)return{width:r/e.zoom,height:u/e.zoom,top:c,left:h,factor:1,distance:f,aspect:d};{let t=2*Math.tan(e.fov*Math.PI/180/2)*f,i=r/u*t;return{width:i,height:t,top:c,left:h,factor:r/i,distance:f,aspect:d}}}let u=t=>e(e=>({performance:{...e.performance,current:t}})),c=new Q;return{set:e,get:n,gl:null,camera:null,raycaster:null,events:{priority:1,enabled:!0,connected:!1},scene:null,xr:null,invalidate:(e=1)=>t(n(),e),advance:(e,t)=>i(e,t,n()),legacy:!1,linear:!1,flat:!1,controls:null,clock:new sT,pointer:c,mouse:c,frameloop:"always",onPointerMissed:void 0,performance:{current:1,min:.5,max:1,debounce:200,regress:()=>{let e=n();r&&clearTimeout(r),e.performance.current!==e.performance.min&&u(e.performance.min),r=setTimeout(()=>u(n().performance.max),e.performance.debounce)}},size:{width:0,height:0,top:0,left:0},viewport:{initialDpr:0,dpr:0,width:0,height:0,top:0,left:0,aspect:0,distance:0,factor:0,getCurrentViewport:l},setEvents:t=>e(e=>({...e,events:{...e.events,...t}})),setSize:(t,i,r=0,a=0)=>{let o=n().camera,u={width:t,height:i,top:r,left:a};e(e=>({size:u,viewport:{...e.viewport,...l(o,s,u)}}))},setDpr:t=>e(e=>{let i=cp(t);return{viewport:{...e.viewport,dpr:i,initialDpr:e.viewport.initialDpr||i}}}),setFrameloop:(t="always")=>{let i=n().clock;i.stop(),i.elapsedTime=0,"never"!==t&&(i.start(),i.elapsedTime=0),e(()=>({frameloop:t}))},previousRoot:void 0,internal:{interaction:[],hovered:new Map,subscribers:[],initialClick:[0,0],initialHits:[],capturedMap:new Map,lastEvent:E.createRef(),active:!1,frames:0,priority:0,subscribe:(e,t,i)=>{let r=n().internal;return r.priority=r.priority+ +(t>0),r.subscribers.push({ref:e,priority:t,store:i}),r.subscribers=r.subscribers.sort((e,t)=>e.priority-t.priority),()=>{let i=n().internal;null!=i&&i.subscribers&&(i.priority=i.priority-(t>0),i.subscribers=i.subscribers.filter(t=>t.ref!==e))}}}}})).getState()).size,l=s.viewport.dpr,u=s.camera,a.subscribe(()=>{let{camera:e,size:t,viewport:i,gl:n,set:r}=a.getState();if(t.width!==o.width||t.height!==o.height||i.dpr!==l){o=t,l=i.dpr,cR(e,t),i.dpr>0&&n.setPixelRatio(i.dpr);let r="u">typeof HTMLCanvasElement&&n.domElement instanceof HTMLCanvasElement;n.setSize(t.width,t.height,r)}e!==u&&(u=e,r(t=>({viewport:{...t.viewport,...t.viewport.getCurrentViewport(e)}})))}),a.subscribe(e=>t(e)),a),m=h||c6.createContainer(p,1,null,!1,null,"",f,f,f,null);c||c8.set(e,{fiber:m,store:p});let g=!1,v=null;return{async configure(t={}){var i,a;let s;v=new Promise(e=>s=e);let{gl:o,size:l,scene:u,events:c,onCreated:h,shadows:d=!1,linear:f=!1,flat:m=!1,legacy:x=!1,orthographic:y=!1,frameloop:S="always",dpr:A=[1,2],performance:M,raycaster:b,camera:w,onPointerMissed:T}=t,E=p.getState(),_=E.gl;if(!E.gl){let t={canvas:e,powerPreference:"high-performance",antialias:!0,alpha:!0},i="function"==typeof o?await o(t):o;_=cL(i)?i:new uZ({...t,...o}),E.set({gl:_})}let C=E.raycaster;C||E.set({raycaster:C=new s3});let{params:R,...P}=b||{};if(cg.equ(P,C,c9)||c_(C,{...P}),cg.equ(R,C.params,c9)||c_(C,{params:{...C.params,...R}}),!E.camera||E.camera===r&&!cg.equ(r,w,c9)){r=w;let e=null==w?void 0:w.isCamera,t=e?w:y?new si(0,0,0,0,.1,1e3):new iC(75,0,.1,1e3);!e&&(t.position.z=5,w&&(c_(t,w),!t.manual&&("aspect"in w||"left"in w||"right"in w||"bottom"in w||"top"in w)&&(t.manual=!0,t.updateProjectionMatrix())),E.camera||null!=w&&w.rotation||t.lookAt(0,0,0)),E.set({camera:t}),C.camera=t}if(!E.scene){let e;null!=u&&u.isScene?cx(e=u,p,"",{}):(cx(e=new iB,p,"",{}),u&&c_(e,u)),E.set({scene:e})}c&&!E.events.handlers&&E.set({events:c(p)});let L=function(e,t){if(!t&&"u">typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement&&e.parentElement){let{width:t,height:i,top:n,left:r}=e.parentElement.getBoundingClientRect();return{width:t,height:i,top:n,left:r}}return!t&&"u">typeof OffscreenCanvas&&e instanceof OffscreenCanvas?{width:e.width,height:e.height,top:0,left:0}:{width:0,height:0,top:0,left:0,...t}}(e,l);if(cg.equ(L,E.size,c9)||E.setSize(L.width,L.height,L.top,L.left),A&&E.viewport.dpr!==cp(A)&&E.setDpr(A),E.frameloop!==S&&E.setFrameloop(S),E.onPointerMissed||E.set({onPointerMissed:T}),M&&!cg.equ(M,E.performance,c9)&&E.set(e=>({performance:{...e.performance,...M}})),!E.xr){let e=(e,t)=>{let i=p.getState();"never"!==i.frameloop&&hf(e,!0,i,t)},t=()=>{let t=p.getState();t.gl.xr.enabled=t.gl.xr.isPresenting,t.gl.xr.setAnimationLoop(t.gl.xr.isPresenting?e:null),t.gl.xr.isPresenting||hd(t)},n={connect(){let e=p.getState().gl;e.xr.addEventListener("sessionstart",t),e.xr.addEventListener("sessionend",t)},disconnect(){let e=p.getState().gl;e.xr.removeEventListener("sessionstart",t),e.xr.removeEventListener("sessionend",t)}};"function"==typeof(null==(i=_.xr)?void 0:i.addEventListener)&&n.connect(),E.set({xr:n})}if(_.shadowMap){let e=_.shadowMap.enabled,t=_.shadowMap.type;_.shadowMap.enabled=!!d,cg.boo(d)?_.shadowMap.type=2:cg.str(d)?_.shadowMap.type=null!=(a=({basic:0,percentage:1,soft:2,variance:3})[d])?a:2:cg.obj(d)&&Object.assign(_.shadowMap,d),(e!==_.shadowMap.enabled||t!==_.shadowMap.type)&&(_.shadowMap.needsUpdate=!0)}return eu.enabled=!x,g||(_.outputColorSpace=f?I:D,_.toneMapping=4*!m),E.legacy!==x&&E.set(()=>({legacy:x})),E.linear!==f&&E.set(()=>({linear:f})),E.flat!==m&&E.set(()=>({flat:m})),!o||cg.fun(o)||cL(o)||cg.equ(o,_,c9)||c_(_,o),n=h,g=!0,s(),this},render(t){return g||v||this.configure(),v.then(()=>{c6.updateContainer((0,u8.jsx)(he,{store:p,children:t,onCreated:n,rootElement:e}),m,null,()=>void 0)}),p},unmount(){ht(e)}}}function he({store:e,children:t,onCreated:i,rootElement:n}){return cu(()=>{let t=e.getState();t.set(e=>({internal:{...e.internal,active:!0}})),i&&i(t),e.getState().events.connected||null==t.events.connect||t.events.connect(n)},[]),(0,u8.jsx)(cB.Provider,{value:e,children:t})}function ht(e,t){let i=c8.get(e),n=null==i?void 0:i.fiber;if(n){let r=null==i?void 0:i.store.getState();r&&(r.internal.active=!1),c6.updateContainer(null,n,null,()=>{r&&setTimeout(()=>{try{null==r.events.disconnect||r.events.disconnect(),null==(i=r.gl)||null==(n=i.renderLists)||null==n.dispose||n.dispose(),null==(a=r.gl)||null==a.forceContextLoss||a.forceContextLoss(),null!=(s=r.gl)&&s.xr&&r.xr.disconnect();var i,n,a,s,o=r.scene;for(let e in"Scene"!==o.type&&(null==o.dispose||o.dispose()),o){let t=o[e];(null==t?void 0:t.type)!=="Scene"&&(null==t||null==t.dispose||t.dispose())}c8.delete(e),t&&t(e)}catch(e){}},500)})}}function hi({state:e={},children:t,container:i}){let{events:n,size:r,...a}=e,s=cU(),[o]=E.useState(()=>new s3),[l]=E.useState(()=>new Q),u=cc((e,t)=>{let a;if(t.camera&&r){let i=t.camera;a=e.viewport.getCurrentViewport(i,new eE,r),i!==e.camera&&cR(i,r)}return{...e,...t,scene:i,raycaster:o,pointer:l,mouse:l,previousRoot:s,events:{...e.events,...t.events,...n},size:{...e.size,...r},viewport:{...e.viewport,...a},setEvents:e=>t.set(t=>({...t,events:{...t.events,...e}}))}}),c=E.useMemo(()=>{let e=u2((e,t)=>({...a,set:e,get:t})),t=t=>e.setState(e=>u.current(t,e));return t(s.getState()),s.subscribe(t),e},[s,i]);return(0,u8.jsx)(u8.Fragment,{children:c6.createPortal((0,u8.jsx)(cB.Provider,{value:c,children:t}),c,null)})}let hn=new Set,hr=new Set,ha=new Set;function hs(e,t){if(e.size)for(let{callback:i}of e.values())i(t)}function ho(e,t){switch(e){case"before":return hs(hn,t);case"after":return hs(hr,t);case"tail":return hs(ha,t)}}function hl(e,t,i){let n=t.clock.getDelta();"never"===t.frameloop&&"number"==typeof e&&(n=e-t.clock.elapsedTime,t.clock.oldTime=t.clock.elapsedTime,t.clock.elapsedTime=e),s=t.internal.subscribers;for(let e=0;e0)&&!(null!=(t=c.gl.xr)&&t.isPresenting)&&(l+=hl(e,c))}if(hc=!1,ho("after",e),0===l)return ho("tail",e),hu=!1,cancelAnimationFrame(u)}function hd(e,t=1){var i;if(!e)return c8.forEach(e=>hd(e.store.getState(),t));(null==(i=e.gl.xr)||!i.isPresenting)&&e.internal.active&&"never"!==e.frameloop&&(t>1?e.internal.frames=Math.min(60,e.internal.frames+t):hc?e.internal.frames=2:e.internal.frames=1,hu||(hu=!0,requestAnimationFrame(hh)))}function hf(e,t=!0,i,n){if(t&&ho("before",e),i)hl(e,i,n);else for(let t of c8.values())hl(e,t.store.getState());t&&ho("after",e)}let hp={onClick:["click",!1],onContextMenu:["contextmenu",!1],onDoubleClick:["dblclick",!1],onWheel:["wheel",!0],onPointerDown:["pointerdown",!0],onPointerUp:["pointerup",!0],onPointerLeave:["pointerleave",!0],onPointerMove:["pointermove",!0],onPointerCancel:["pointercancel",!0],onLostPointerCapture:["lostpointercapture",!0]};function hm(e){let{handlePointer:t}=function(e){function t(e){return e.filter(e=>["Move","Over","Enter","Out","Leave"].some(t=>{var i;return null==(i=e.__r3f)?void 0:i.handlers["onPointer"+t]}))}function i(t){let{internal:i}=e.getState();for(let e of i.hovered.values())if(!t.length||!t.find(t=>t.object===e.object&&t.index===e.index&&t.instanceId===e.instanceId)){let n=e.eventObject.__r3f;if(i.hovered.delete(cD(e)),null!=n&&n.eventCount){let i=n.handlers,r={...e,intersections:t};null==i.onPointerOut||i.onPointerOut(r),null==i.onPointerLeave||i.onPointerLeave(r)}}}function n(e,t){for(let i=0;ii([]);case"onLostPointerCapture":return t=>{let{internal:n}=e.getState();"pointerId"in t&&n.capturedMap.has(t.pointerId)&&requestAnimationFrame(()=>{n.capturedMap.has(t.pointerId)&&(n.capturedMap.delete(t.pointerId),i([]))})}}return function(a){let{onPointerMissed:s,internal:o}=e.getState();o.lastEvent.current=a;let l="onPointerMove"===r,u="onClick"===r||"onContextMenu"===r||"onDoubleClick"===r,c=function(t,i){let n=e.getState(),r=new Set,a=[],s=i?i(n.internal.interaction):n.internal.interaction;for(let e=0;e{let i=cm(e.object),n=cm(t.object);return i&&n&&n.events.priority-i.events.priority||e.distance-t.distance}).filter(e=>{let t=cD(e);return!r.has(t)&&(r.add(t),!0)});for(let e of(n.events.filter&&(o=n.events.filter(o,n)),o)){let t=e.object;for(;t;){var l;null!=(l=t.__r3f)&&l.eventCount&&a.push({...e,eventObject:t}),t=t.parent}}if("pointerId"in t&&n.internal.capturedMap.has(t.pointerId))for(let e of n.internal.capturedMap.get(t.pointerId).values())r.has(cD(e.intersection))||a.push(e.intersection);return a}(a,l?t:void 0),h=u?function(t){let{internal:i}=e.getState(),n=t.offsetX-i.initialClick[0],r=t.offsetY-i.initialClick[1];return Math.round(Math.sqrt(n*n+r*r))}(a):0;"onPointerDown"===r&&(o.initialClick=[a.offsetX,a.offsetY],o.initialHits=c.map(e=>e.eventObject)),u&&!c.length&&h<=2&&(n(a,o.interaction),s&&s(a)),l&&i(c),!function(e,t,n,r){if(e.length){let a={stopped:!1};for(let s of e){let o=cm(s.object);if(o||s.object.traverseAncestors(e=>{let t=cm(e);if(t)return o=t,!1}),o){let{raycaster:l,pointer:u,camera:c,internal:h}=o,d=new eE(u.x,u.y,0).unproject(c),f=e=>{var t,i;return null!=(t=null==(i=h.capturedMap.get(e))?void 0:i.has(s.eventObject))&&t},p=e=>{let i={intersection:s,target:t.target};h.capturedMap.has(e)?h.capturedMap.get(e).set(s.eventObject,i):h.capturedMap.set(e,new Map([[s.eventObject,i]])),t.target.setPointerCapture(e)},m=e=>{let t=h.capturedMap.get(e);t&&cI(h.capturedMap,s.eventObject,t,e)},g={};for(let e in t){let i=t[e];"function"!=typeof i&&(g[e]=i)}let v={...s,...g,pointer:u,intersections:e,stopped:a.stopped,delta:n,unprojectedPoint:d,ray:l.ray,camera:c,stopPropagation(){let n="pointerId"in t&&h.capturedMap.get(t.pointerId);(!n||n.has(s.eventObject))&&(v.stopped=a.stopped=!0,h.hovered.size&&Array.from(h.hovered.values()).find(e=>e.eventObject===s.eventObject)&&i([...e.slice(0,e.indexOf(s)),s]))},target:{hasPointerCapture:f,setPointerCapture:p,releasePointerCapture:m},currentTarget:{hasPointerCapture:f,setPointerCapture:p,releasePointerCapture:m},nativeEvent:t};if(r(v),!0===a.stopped)break}}}}(c,a,h,function(e){let t=e.eventObject,i=t.__r3f;if(!(null!=i&&i.eventCount))return;let s=i.handlers;if(l){if(s.onPointerOver||s.onPointerEnter||s.onPointerOut||s.onPointerLeave){let t=cD(e),i=o.hovered.get(t);i?i.stopped&&e.stopPropagation():(o.hovered.set(t,e),null==s.onPointerOver||s.onPointerOver(e),null==s.onPointerEnter||s.onPointerEnter(e))}null==s.onPointerMove||s.onPointerMove(e)}else{let i=s[r];i?(!u||o.initialHits.includes(t))&&(n(a,o.interaction.filter(e=>!o.initialHits.includes(e))),i(e)):u&&o.initialHits.includes(t)&&n(a,o.interaction.filter(e=>!o.initialHits.includes(e)))}})}}}}(e);return{priority:1,enabled:!0,compute(e,t,i){t.pointer.set(e.offsetX/t.size.width*2-1,-(2*(e.offsetY/t.size.height))+1),t.raycaster.setFromCamera(t.pointer,t.camera)},connected:void 0,handlers:Object.keys(hp).reduce((e,i)=>({...e,[i]:t(i)}),{}),update:()=>{var t;let{events:i,internal:n}=e.getState();null!=(t=n.lastEvent)&&t.current&&i.handlers&&i.handlers.onPointerMove(n.lastEvent.current)},connect:t=>{let{set:i,events:n}=e.getState();if(null==n.disconnect||n.disconnect(),i(e=>({events:{...e.events,connected:t}})),n.handlers)for(let e in n.handlers){let i=n.handlers[e],[r,a]=hp[e];t.addEventListener(r,i,{passive:a})}},disconnect:()=>{let{set:t,events:i}=e.getState();if(i.connected){if(i.handlers)for(let e in i.handlers){let t=i.handlers[e],[n]=hp[e];i.connected.removeEventListener(n,t)}t(e=>({events:{...e.events,connected:void 0}}))}}}}e.s(["B",0,cd,"C",0,cN,"D",0,cF,"E",0,cf,"G",0,ck,"a",0,cc,"b",0,cu,"c",0,c7,"d",0,ht,"e",0,cQ,"f",0,hm,"i",0,co,"o",0,function(e,t,i){return(0,u8.jsx)(hi,{children:e,container:t,state:i})},"s",0,c_,"u",0,ch],1950),e.i(8560),e.s(["ACESFilmicToneMapping",0,4,"AddEquation",0,100,"AddOperation",0,2,"AdditiveAnimationBlendMode",0,2501,"AdditiveBlending",0,2,"AgXToneMapping",0,6,"AlphaFormat",0,1021,"AlwaysCompare",0,519,"AlwaysDepth",0,1,"AlwaysStencilFunc",0,519,"AmbientLight",0,sa,"AnimationAction",0,sQ,"AnimationClip",0,az,"AnimationLoader",0,aY,"AnimationMixer",0,sK,"AnimationObjectGroup",0,sY,"AnimationUtils",0,aE,"ArcCurve",0,rs,"ArrayCamera",0,sw,"ArrowHelper",0,oP,"AttachedBindMode",0,R,"Audio",0,sI,"AudioAnalyser",0,sO,"AudioContext",0,sx,"AudioListener",0,sD,"AudioLoader",0,sy,"AxesHelper",0,oD,"BackSide",0,1,"BasicDepthPacking",0,3200,"BasicShadowMap",0,0,"BatchedMesh",0,nO,"Bone",0,ni,"BooleanKeyframeTrack",0,aI,"Box2",0,oe,"Box3",0,eR,"Box3Helper",0,o_,"BoxGeometry",0,ix,"BoxHelper",0,oE,"BufferAttribute",0,tq,"BufferGeometry",0,ii,"BufferGeometryLoader",0,sd,"ByteType",0,1010,"Cache",0,ak,"Camera",0,iw,"CameraHelper",0,ob,"CanvasTexture",0,ri,"CapsuleGeometry",0,r_,"CatmullRomCurve3",0,rd,"CineonToneMapping",0,3,"CircleGeometry",0,rC,"ClampToEdgeWrapping",0,1001,"Clock",0,sT,"Color",0,tO,"ColorKeyframeTrack",0,aL,"ColorManagement",0,eu,"CompressedArrayTexture",0,re,"CompressedCubeTexture",0,rt,"CompressedTexture",0,n7,"CompressedTextureLoader",0,aQ,"ConeGeometry",0,rP,"ConstantAlphaFactor",0,213,"ConstantColorFactor",0,211,"Controls",0,oL,"CubeCamera",0,iR,"CubeReflectionMapping",0,301,"CubeRefractionMapping",0,302,"CubeTexture",0,iP,"CubeTextureLoader",0,aK,"CubeUVReflectionMapping",0,306,"CubicBezierCurve",0,rg,"CubicBezierCurve3",0,rv,"CubicInterpolant",0,aC,"CullFaceBack",0,1,"CullFaceFront",0,2,"CullFaceFrontBack",0,3,"CullFaceNone",0,0,"Curve",0,rr,"CurvePath",0,rw,"CustomBlending",0,5,"CustomToneMapping",0,5,"CylinderGeometry",0,rR,"Cylindrical",0,s8,"Data3DTexture",0,eb,"DataArrayTexture",0,eA,"DataTexture",0,nn,"DataTextureLoader",0,aZ,"DataUtils",0,tX,"DecrementStencilOp",0,7683,"DecrementWrapStencilOp",0,34056,"DefaultLoadingManager",0,aG,"DepthFormat",0,1026,"DepthStencilFormat",0,1027,"DepthTexture",0,rn,"DetachedBindMode",0,P,"DirectionalLight",0,sr,"DirectionalLightHelper",0,oS,"DiscreteInterpolant",0,aP,"DodecahedronGeometry",0,rI,"DoubleSide",0,2,"DstAlphaFactor",0,206,"DstColorFactor",0,208,"DynamicCopyUsage",0,35050,"DynamicDrawUsage",0,35048,"DynamicReadUsage",0,35049,"EdgesGeometry",0,rF,"EllipseCurve",0,ra,"EqualCompare",0,514,"EqualDepth",0,4,"EqualStencilFunc",0,514,"EquirectangularReflectionMapping",0,303,"EquirectangularRefractionMapping",0,304,"Euler",0,ti,"EventDispatcher",0,N,"ExtrudeGeometry",0,r4,"FileLoader",0,aX,"Float16BufferAttribute",0,t3,"Float32BufferAttribute",0,t4,"FloatType",0,1015,"Fog",0,iL,"FogExp2",0,iI,"FramebufferTexture",0,n9,"FrontSide",0,0,"Frustum",0,nM,"GLBufferAttribute",0,s1,"GLSL1",0,"100","GLSL3",0,U,"GreaterCompare",0,516,"GreaterDepth",0,6,"GreaterEqualCompare",0,518,"GreaterEqualDepth",0,5,"GreaterEqualStencilFunc",0,518,"GreaterStencilFunc",0,516,"GridHelper",0,om,"Group",0,n6,"HalfFloatType",0,1016,"HemisphereLight",0,a0,"HemisphereLightHelper",0,op,"IcosahedronGeometry",0,r6,"ImageBitmapLoader",0,sv,"ImageLoader",0,aq,"ImageUtils",0,ed,"IncrementStencilOp",0,7682,"IncrementWrapStencilOp",0,34055,"InstancedBufferAttribute",0,no,"InstancedBufferGeometry",0,sh,"InstancedInterleavedBuffer",0,s0,"InstancedMesh",0,nm,"Int16BufferAttribute",0,t$,"Int32BufferAttribute",0,t1,"Int8BufferAttribute",0,tK,"IntType",0,1013,"InterleavedBuffer",0,iU,"InterleavedBufferAttribute",0,iF,"Interpolant",0,a_,"InterpolateDiscrete",0,2300,"InterpolateLinear",0,2301,"InterpolateSmooth",0,2302,"InvertStencilOp",0,5386,"KeepStencilOp",0,7680,"KeyframeTrack",0,aD,"LOD",0,i1,"LatheGeometry",0,rE,"Layers",0,tn,"LessCompare",0,513,"LessDepth",0,2,"LessEqualCompare",0,515,"LessEqualDepth",0,3,"LessEqualStencilFunc",0,515,"LessStencilFunc",0,513,"Light",0,a$,"LightProbe",0,sl,"Line",0,nY,"Line3",0,on,"LineBasicMaterial",0,nz,"LineCurve",0,rx,"LineCurve3",0,ry,"LineDashedMaterial",0,aS,"LineLoop",0,nJ,"LineSegments",0,nZ,"LinearFilter",0,1006,"LinearInterpolant",0,aR,"LinearMipMapLinearFilter",0,1008,"LinearMipMapNearestFilter",0,1007,"LinearMipmapLinearFilter",0,1008,"LinearMipmapNearestFilter",0,1007,"LinearSRGBColorSpace",0,I,"LinearToneMapping",0,1,"LinearTransfer",0,L,"Loader",0,aV,"LoaderUtils",0,sc,"LoadingManager",0,aH,"LoopOnce",0,2200,"LoopPingPong",0,2202,"LoopRepeat",0,2201,"LuminanceAlphaFormat",0,1025,"LuminanceFormat",0,1024,"MOUSE",0,_,"Material",0,tH,"MaterialLoader",0,su,"MathUtils",0,Y,"Matrix2",0,s9,"Matrix3",0,q,"Matrix4",0,e2,"MaxEquation",0,104,"Mesh",0,ig,"MeshBasicMaterial",0,tG,"MeshDepthMaterial",0,av,"MeshDistanceMaterial",0,ax,"MeshLambertMaterial",0,ag,"MeshMatcapMaterial",0,ay,"MeshNormalMaterial",0,am,"MeshPhongMaterial",0,af,"MeshPhysicalMaterial",0,ad,"MeshStandardMaterial",0,ah,"MeshToonMaterial",0,ap,"MinEquation",0,103,"MirroredRepeatWrapping",0,1002,"MixOperation",0,1,"MultiplyBlending",0,4,"MultiplyOperation",0,0,"NearestFilter",0,1003,"NearestMipMapLinearFilter",0,1005,"NearestMipMapNearestFilter",0,1004,"NearestMipmapLinearFilter",0,1005,"NearestMipmapNearestFilter",0,1004,"NeutralToneMapping",0,7,"NeverCompare",0,512,"NeverDepth",0,0,"NeverStencilFunc",0,512,"NoBlending",0,0,"NoColorSpace",0,"","NoToneMapping",0,0,"NormalAnimationBlendMode",0,2500,"NormalBlending",0,1,"NotEqualCompare",0,517,"NotEqualDepth",0,7,"NotEqualStencilFunc",0,517,"NumberKeyframeTrack",0,aB,"Object3D",0,ty,"ObjectLoader",0,sf,"ObjectSpaceNormalMap",0,1,"OctahedronGeometry",0,r8,"OneFactor",0,201,"OneMinusConstantAlphaFactor",0,214,"OneMinusConstantColorFactor",0,212,"OneMinusDstAlphaFactor",0,207,"OneMinusDstColorFactor",0,209,"OneMinusSrcAlphaFactor",0,205,"OneMinusSrcColorFactor",0,203,"OrthographicCamera",0,si,"PCFShadowMap",0,1,"PCFSoftShadowMap",0,2,"PMREMGenerator",0,o8,"Path",0,rT,"PerspectiveCamera",0,iC,"Plane",0,ny,"PlaneGeometry",0,r9,"PlaneHelper",0,oC,"PointLight",0,st,"PointLightHelper",0,oc,"Points",0,n4,"PointsMaterial",0,n$,"PolarGridHelper",0,og,"PolyhedronGeometry",0,rD,"PositionalAudio",0,sF,"PropertyBinding",0,sX,"PropertyMixer",0,sz,"QuadraticBezierCurve",0,rS,"QuadraticBezierCurve3",0,rA,"Quaternion",0,eT,"QuaternionKeyframeTrack",0,aN,"QuaternionLinearInterpolant",0,aU,"RED_GREEN_RGTC2_Format",0,36285,"RED_RGTC1_Format",0,36283,"REVISION",0,"171","RGBADepthPacking",0,3201,"RGBAFormat",0,1023,"RGBAIntegerFormat",0,1033,"RGBA_ASTC_10x10_Format",0,37819,"RGBA_ASTC_10x5_Format",0,37816,"RGBA_ASTC_10x6_Format",0,37817,"RGBA_ASTC_10x8_Format",0,37818,"RGBA_ASTC_12x10_Format",0,37820,"RGBA_ASTC_12x12_Format",0,37821,"RGBA_ASTC_4x4_Format",0,37808,"RGBA_ASTC_5x4_Format",0,37809,"RGBA_ASTC_5x5_Format",0,37810,"RGBA_ASTC_6x5_Format",0,37811,"RGBA_ASTC_6x6_Format",0,37812,"RGBA_ASTC_8x5_Format",0,37813,"RGBA_ASTC_8x6_Format",0,37814,"RGBA_ASTC_8x8_Format",0,37815,"RGBA_BPTC_Format",0,36492,"RGBA_ETC2_EAC_Format",0,37496,"RGBA_PVRTC_2BPPV1_Format",0,35843,"RGBA_PVRTC_4BPPV1_Format",0,35842,"RGBA_S3TC_DXT1_Format",0,33777,"RGBA_S3TC_DXT3_Format",0,33778,"RGBA_S3TC_DXT5_Format",0,33779,"RGBDepthPacking",0,3202,"RGBFormat",0,1022,"RGBIntegerFormat",0,1032,"RGB_BPTC_SIGNED_Format",0,36494,"RGB_BPTC_UNSIGNED_Format",0,36495,"RGB_ETC1_Format",0,36196,"RGB_ETC2_Format",0,37492,"RGB_PVRTC_2BPPV1_Format",0,35841,"RGB_PVRTC_4BPPV1_Format",0,35840,"RGB_S3TC_DXT1_Format",0,33776,"RGDepthPacking",0,3203,"RGFormat",0,1030,"RGIntegerFormat",0,1031,"RawShaderMaterial",0,ac,"Ray",0,e1,"Raycaster",0,s3,"RectAreaLight",0,ss,"RedFormat",0,1028,"RedIntegerFormat",0,1029,"ReinhardToneMapping",0,2,"RenderTarget",0,ey,"RepeatWrapping",0,1e3,"ReplaceStencilOp",0,7681,"ReverseSubtractEquation",0,102,"RingGeometry",0,r7,"SIGNED_RED_GREEN_RGTC2_Format",0,36286,"SIGNED_RED_RGTC1_Format",0,36284,"SRGBColorSpace",0,D,"SRGBTransfer",0,B,"Scene",0,iB,"ShaderChunk",0,oz,"ShaderLib",0,oH,"ShaderMaterial",0,ib,"ShadowMaterial",0,au,"Shape",0,rO,"ShapeGeometry",0,ae,"ShapePath",0,oI,"ShapeUtils",0,r1,"ShortType",0,1011,"Skeleton",0,ns,"SkeletonHelper",0,ou,"SkinnedMesh",0,nt,"Source",0,ep,"Sphere",0,eY,"SphereGeometry",0,at,"Spherical",0,s6,"SphericalHarmonics3",0,so,"SplineCurve",0,rM,"SpotLight",0,a6,"SpotLightHelper",0,oa,"Sprite",0,iZ,"SpriteMaterial",0,iO,"SrcAlphaFactor",0,204,"SrcAlphaSaturateFactor",0,210,"SrcColorFactor",0,202,"StaticCopyUsage",0,35046,"StaticDrawUsage",0,35044,"StaticReadUsage",0,35045,"StereoCamera",0,sb,"StreamCopyUsage",0,35042,"StreamDrawUsage",0,35040,"StreamReadUsage",0,35041,"StringKeyframeTrack",0,aF,"SubtractEquation",0,101,"SubtractiveBlending",0,3,"TOUCH",0,C,"TangentSpaceNormalMap",0,0,"TetrahedronGeometry",0,ai,"Texture",0,ev,"TextureLoader",0,aJ,"TextureUtils",0,oU,"TorusGeometry",0,an,"TorusKnotGeometry",0,ar,"Triangle",0,tL,"TriangleFanDrawMode",0,2,"TriangleStripDrawMode",0,1,"TrianglesDrawMode",0,0,"TubeGeometry",0,aa,"UVMapping",0,300,"Uint16BufferAttribute",0,t0,"Uint32BufferAttribute",0,t2,"Uint8BufferAttribute",0,tZ,"Uint8ClampedBufferAttribute",0,tJ,"Uniform",0,sZ,"UniformsGroup",0,s$,"UniformsLib",0,ok,"UniformsUtils",0,iM,"UnsignedByteType",0,1009,"UnsignedInt248Type",0,1020,"UnsignedInt5999Type",0,35902,"UnsignedIntType",0,1014,"UnsignedShort4444Type",0,1017,"UnsignedShort5551Type",0,1018,"UnsignedShortType",0,1012,"VSMShadowMap",0,3,"Vector2",0,Q,"Vector3",0,eE,"Vector4",0,ex,"VectorKeyframeTrack",0,aO,"VideoTexture",0,n8,"WebGL3DRenderTarget",0,ew,"WebGLArrayRenderTarget",0,eM,"WebGLCoordinateSystem",0,2e3,"WebGLCubeRenderTarget",0,iD,"WebGLMultipleRenderTargets",0,oN,"WebGLRenderTarget",0,eS,"WebGLRenderer",0,uZ,"WebGLUtils",0,uk,"WebGPUCoordinateSystem",0,2001,"WireframeGeometry",0,as,"WrapAroundEnding",0,2402,"ZeroCurvatureEnding",0,2400,"ZeroFactor",0,200,"ZeroSlopeEnding",0,2401,"ZeroStencilOp",0,0,"createCanvasElement",0,et],32009);var hg=e.i(32009);function hv(e,t){let i;return(...n)=>{window.clearTimeout(i),i=window.setTimeout(()=>e(...n),t)}}let hx=["x","y","top","bottom","left","right","width","height"];function hy({ref:e,children:t,fallback:i,resize:n,style:r,gl:a,events:s=hm,eventSource:o,eventPrefix:l,shadows:u,linear:c,flat:h,legacy:d,orthographic:f,frameloop:p,dpr:m,performance:g,raycaster:v,camera:x,scene:y,onPointerMissed:S,onCreated:A,...M}){E.useMemo(()=>cQ(hg),[]);let b=ch(),[w,T]=function({debounce:e,scroll:t,polyfill:i,offsetSize:n}={debounce:0,scroll:!1,offsetSize:!1}){var r,a,s;let o=i||("u"(f.current=!0,()=>void(f.current=!1)));let[p,m,g]=(0,E.useMemo)(()=>{let e=()=>{let e,t;if(!c.current.element)return;let{left:i,top:r,width:a,height:s,bottom:o,right:l,x:h,y:d}=c.current.element.getBoundingClientRect(),p={left:i,top:r,width:a,height:s,bottom:o,right:l,x:h,y:d};c.current.element instanceof HTMLElement&&n&&(p.height=c.current.element.offsetHeight,p.width=c.current.element.offsetWidth),Object.freeze(p),f.current&&(e=c.current.lastBounds,t=p,!hx.every(i=>e[i]===t[i]))&&u(c.current.lastBounds=p)};return[e,d?hv(e,d):e,h?hv(e,h):e]},[u,n,h,d]);function v(){c.current.scrollContainers&&(c.current.scrollContainers.forEach(e=>e.removeEventListener("scroll",g,!0)),c.current.scrollContainers=null),c.current.resizeObserver&&(c.current.resizeObserver.disconnect(),c.current.resizeObserver=null),c.current.orientationHandler&&("orientation"in screen&&"removeEventListener"in screen.orientation?screen.orientation.removeEventListener("change",c.current.orientationHandler):"onorientationchange"in window&&window.removeEventListener("orientationchange",c.current.orientationHandler))}function x(){c.current.element&&(c.current.resizeObserver=new o(g),c.current.resizeObserver.observe(c.current.element),t&&c.current.scrollContainers&&c.current.scrollContainers.forEach(e=>e.addEventListener("scroll",g,{capture:!0,passive:!0})),c.current.orientationHandler=()=>{g()},"orientation"in screen&&"addEventListener"in screen.orientation?screen.orientation.addEventListener("change",c.current.orientationHandler):"onorientationchange"in window&&window.addEventListener("orientationchange",c.current.orientationHandler))}return r=g,a=!!t,(0,E.useEffect)(()=>{if(a)return window.addEventListener("scroll",r,{capture:!0,passive:!0}),()=>void window.removeEventListener("scroll",r,!0)},[r,a]),s=m,(0,E.useEffect)(()=>(window.addEventListener("resize",s),()=>void window.removeEventListener("resize",s)),[s]),(0,E.useEffect)(()=>{v(),x()},[t,g,m]),(0,E.useEffect)(()=>v,[]),[e=>{e&&e!==c.current.element&&(v(),c.current.element=e,c.current.scrollContainers=function e(t){let i=[];if(!t||t===document.body)return i;let{overflow:n,overflowX:r,overflowY:a}=window.getComputedStyle(t);return[n,r,a].some(e=>"auto"===e||"scroll"===e)&&i.push(t),[...i,...e(t.parentElement)]}(e),x())},l,p]}({scroll:!0,debounce:{scroll:50,resize:0},...n}),_=E.useRef(null),C=E.useRef(null);E.useImperativeHandle(e,()=>_.current);let R=cc(S),[P,D]=E.useState(!1),[I,L]=E.useState(!1);if(P)throw P;if(I)throw I;let B=E.useRef(null);cu(()=>{let e=_.current;T.width>0&&T.height>0&&e&&(B.current||(B.current=c7(e)),async function(){await B.current.configure({gl:a,scene:y,events:s,shadows:u,linear:c,flat:h,legacy:d,orthographic:f,frameloop:p,dpr:m,performance:g,raycaster:v,camera:x,size:T,onPointerMissed:(...e)=>null==R.current?void 0:R.current(...e),onCreated:e=>{null==e.events.connect||e.events.connect(o?co(o)?o.current:o:C.current),l&&e.setEvents({compute:(e,t)=>{let i=e[l+"X"],n=e[l+"Y"];t.pointer.set(i/t.size.width*2-1,-(2*(n/t.size.height))+1),t.raycaster.setFromCamera(t.pointer,t.camera)}}),null==A||A(e)}}),B.current.render((0,u8.jsx)(b,{children:(0,u8.jsx)(cf,{set:L,children:(0,u8.jsx)(E.Suspense,{fallback:(0,u8.jsx)(cd,{set:D}),children:null!=t?t:null})})}))}())}),E.useEffect(()=>{let e=_.current;if(e)return()=>ht(e)},[]);let U=o?"none":"auto";return(0,u8.jsx)("div",{ref:C,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden",pointerEvents:U,...r},...M,children:(0,u8.jsx)("div",{ref:w,style:{width:"100%",height:"100%"},children:(0,u8.jsx)("canvas",{ref:_,style:{display:"block"},children:i})})})}e.s(["Canvas",0,function(e){return(0,u8.jsx)(ci,{children:(0,u8.jsx)(hy,{...e})})}],75056),e.s(["useFrame",0,cF],25234),e.s(["useThree",0,cN],28600),e.s(["extend",0,cQ],67335)},60602,e=>{"use strict";var t=e.i(1950);e.s(["useLoader",()=>t.G])},44208,e=>{"use strict";var t=e.i(1950);e.s(["createPortal",()=>t.o])},79877,24205,33623,e=>{"use strict";let t,i,n,r,a,s;var o,l,u,c,h,d,f,p,m,g,v,x,y,S,A,M,b,w,T,E,_,C,R,P,D,I=e.i(43476),L=e.i(71645),B=e.i(90072),U=e.i(28600),N=e.i(25234),F=e.i(67335),O=e.i(44208),z=(e.i(60602),e.i(1950));e.s(["applyProps",()=>z.s],24205);var z=z,k=B,H=(t=new Float32Array([-1,-1,0,3,-1,0,-1,3,0]),i=new Float32Array([0,0,2,0,0,2]),(n=new k.BufferGeometry).setAttribute("position",new k.BufferAttribute(t,3)),n.setAttribute("uv",new k.BufferAttribute(i,2)),n),G=class e{static get fullscreenGeometry(){return H}constructor(e="Pass",t=new k.Scene,i=new k.OrthographicCamera){this.name=e,this.renderer=null,this.scene=t,this.camera=i,this.screen=null,this.rtt=!0,this.needsSwap=!0,this.needsDepthBlit=!1,this.needsDepthTexture=!1,this.enabled=!0}get renderToScreen(){return!this.rtt}set renderToScreen(e){if(this.rtt===e){let t=this.fullscreenMaterial;null!==t&&(t.needsUpdate=!0),this.rtt=!e}}set mainScene(e){}set mainCamera(e){}setRenderer(e){this.renderer=e}isEnabled(){return this.enabled}setEnabled(e){this.enabled=e}get fullscreenMaterial(){return null!==this.screen?this.screen.material:null}set fullscreenMaterial(t){let i=this.screen;null!==i?i.material=t:((i=new k.Mesh(e.fullscreenGeometry,t)).frustumCulled=!1,null===this.scene&&(this.scene=new k.Scene),this.scene.add(i),this.screen=i)}getFullscreenMaterial(){return this.fullscreenMaterial}setFullscreenMaterial(e){this.fullscreenMaterial=e}getDepthTexture(){return null}setDepthTexture(e,t=k.BasicDepthPacking){}render(e,t,i,n,r){throw Error("Render method not implemented!")}setSize(e,t){}initialize(e,t,i){}dispose(){for(let t of Object.keys(this)){let i=this[t];(i instanceof k.WebGLRenderTarget||i instanceof k.Material||i instanceof k.Texture||i instanceof e)&&this[t].dispose()}null!==this.fullscreenMaterial&&this.fullscreenMaterial.dispose()}},V=class extends G{constructor(){super("ClearMaskPass",null,null),this.needsSwap=!1}render(e,t,i,n,r){let a=e.state.buffers.stencil;a.setLocked(!1),a.setTest(!1)}},W=`#ifdef COLOR_WRITE -#include -#include -#ifdef FRAMEBUFFER_PRECISION_HIGH -uniform mediump sampler2D inputBuffer; -#else -uniform lowp sampler2D inputBuffer; -#endif -#endif -#ifdef DEPTH_WRITE -#include -#ifdef GL_FRAGMENT_PRECISION_HIGH -uniform highp sampler2D depthBuffer; -#else -uniform mediump sampler2D depthBuffer; -#endif -float readDepth(const in vec2 uv){ -#if DEPTH_PACKING == 3201 -return unpackRGBAToDepth(texture2D(depthBuffer,uv)); -#else -return texture2D(depthBuffer,uv).r; -#endif -} -#endif -#ifdef USE_WEIGHTS -uniform vec4 channelWeights; -#endif -uniform float opacity;varying vec2 vUv;void main(){ -#ifdef COLOR_WRITE -vec4 texel=texture2D(inputBuffer,vUv); -#ifdef USE_WEIGHTS -texel*=channelWeights; -#endif -gl_FragColor=opacity*texel; -#ifdef COLOR_SPACE_CONVERSION -#include -#endif -#include -#else -gl_FragColor=vec4(0.0); -#endif -#ifdef DEPTH_WRITE -gl_FragDepth=readDepth(vUv); -#endif -}`,j="varying vec2 vUv;void main(){vUv=position.xy*0.5+0.5;gl_Position=vec4(position.xy,1.0,1.0);}",X=class extends k.ShaderMaterial{constructor(){super({name:"CopyMaterial",defines:{COLOR_SPACE_CONVERSION:"1",DEPTH_PACKING:"0",COLOR_WRITE:"1"},uniforms:{inputBuffer:new k.Uniform(null),depthBuffer:new k.Uniform(null),channelWeights:new k.Uniform(null),opacity:new k.Uniform(1)},blending:k.NoBlending,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:W,vertexShader:j}),this.depthFunc=k.AlwaysDepth}get inputBuffer(){return this.uniforms.inputBuffer.value}set inputBuffer(e){let t=null!==e;this.colorWrite!==t&&(t?this.defines.COLOR_WRITE=!0:delete this.defines.COLOR_WRITE,this.colorWrite=t,this.needsUpdate=!0),this.uniforms.inputBuffer.value=e}get depthBuffer(){return this.uniforms.depthBuffer.value}set depthBuffer(e){let t=null!==e;this.depthWrite!==t&&(t?this.defines.DEPTH_WRITE=!0:delete this.defines.DEPTH_WRITE,this.depthTest=t,this.depthWrite=t,this.needsUpdate=!0),this.uniforms.depthBuffer.value=e}set depthPacking(e){this.defines.DEPTH_PACKING=e.toFixed(0),this.needsUpdate=!0}get colorSpaceConversion(){return void 0!==this.defines.COLOR_SPACE_CONVERSION}set colorSpaceConversion(e){this.colorSpaceConversion!==e&&(e?this.defines.COLOR_SPACE_CONVERSION=!0:delete this.defines.COLOR_SPACE_CONVERSION,this.needsUpdate=!0)}get channelWeights(){return this.uniforms.channelWeights.value}set channelWeights(e){null!==e?(this.defines.USE_WEIGHTS="1",this.uniforms.channelWeights.value=e):delete this.defines.USE_WEIGHTS,this.needsUpdate=!0}setInputBuffer(e){this.uniforms.inputBuffer.value=e}getOpacity(e){return this.uniforms.opacity.value}setOpacity(e){this.uniforms.opacity.value=e}},Y=class extends G{constructor(e,t=!0){super("CopyPass"),this.fullscreenMaterial=new X,this.needsSwap=!1,this.renderTarget=e,void 0===e&&(this.renderTarget=new k.WebGLRenderTarget(1,1,{minFilter:k.LinearFilter,magFilter:k.LinearFilter,stencilBuffer:!1,depthBuffer:!1}),this.renderTarget.texture.name="CopyPass.Target"),this.autoResize=t}get resize(){return this.autoResize}set resize(e){this.autoResize=e}get texture(){return this.renderTarget.texture}getTexture(){return this.renderTarget.texture}setAutoResizeEnabled(e){this.autoResize=e}render(e,t,i,n,r){this.fullscreenMaterial.inputBuffer=t.texture,e.setRenderTarget(this.renderToScreen?null:this.renderTarget),e.render(this.scene,this.camera)}setSize(e,t){this.autoResize&&this.renderTarget.setSize(e,t)}initialize(e,t,i){void 0!==i&&(this.renderTarget.texture.type=i,i!==k.UnsignedByteType?this.fullscreenMaterial.defines.FRAMEBUFFER_PRECISION_HIGH="1":null!==e&&e.outputColorSpace===k.SRGBColorSpace&&(this.renderTarget.texture.colorSpace=k.SRGBColorSpace))}},Q=new k.Color,q=class extends G{constructor(e=!0,t=!0,i=!1){super("ClearPass",null,null),this.needsSwap=!1,this.color=e,this.depth=t,this.stencil=i,this.overrideClearColor=null,this.overrideClearAlpha=-1}setClearFlags(e,t,i){this.color=e,this.depth=t,this.stencil=i}getOverrideClearColor(){return this.overrideClearColor}setOverrideClearColor(e){this.overrideClearColor=e}getOverrideClearAlpha(){return this.overrideClearAlpha}setOverrideClearAlpha(e){this.overrideClearAlpha=e}render(e,t,i,n,r){let a=this.overrideClearColor,s=this.overrideClearAlpha,o=e.getClearAlpha(),l=null!==a,u=s>=0;l?(e.getClearColor(Q),e.setClearColor(a,u?s:o)):u&&e.setClearAlpha(s),e.setRenderTarget(this.renderToScreen?null:t),e.clear(this.color,this.depth,this.stencil),l?e.setClearColor(Q,o):u&&e.setClearAlpha(o)}},K=class extends G{constructor(e,t){super("MaskPass",e,t),this.needsSwap=!1,this.clearPass=new q(!1,!1,!0),this.inverse=!1}set mainScene(e){this.scene=e}set mainCamera(e){this.camera=e}get inverted(){return this.inverse}set inverted(e){this.inverse=e}get clear(){return this.clearPass.enabled}set clear(e){this.clearPass.enabled=e}getClearPass(){return this.clearPass}isInverted(){return this.inverted}setInverted(e){this.inverted=e}render(e,t,i,n,r){let a=e.getContext(),s=e.state.buffers,o=this.scene,l=this.camera,u=this.clearPass,c=+!this.inverted;s.color.setMask(!1),s.depth.setMask(!1),s.color.setLocked(!0),s.depth.setLocked(!0),s.stencil.setTest(!0),s.stencil.setOp(a.REPLACE,a.REPLACE,a.REPLACE),s.stencil.setFunc(a.ALWAYS,c,0xffffffff),s.stencil.setClear(1-c),s.stencil.setLocked(!0),this.clearPass.enabled&&(this.renderToScreen?u.render(e,null):(u.render(e,t),u.render(e,i))),this.renderToScreen?e.setRenderTarget(null):(e.setRenderTarget(t),e.render(o,l),e.setRenderTarget(i)),e.render(o,l),s.color.setLocked(!1),s.depth.setLocked(!1),s.stencil.setLocked(!1),s.stencil.setFunc(a.EQUAL,1,0xffffffff),s.stencil.setOp(a.KEEP,a.KEEP,a.KEEP),s.stencil.setLocked(!0)}},Z=class{constructor(){this.startTime=performance.now(),this.previousTime=0,this.currentTime=0,this._delta=0,this._elapsed=0,this._fixedDelta=1e3/60,this.timescale=1,this.useFixedDelta=!1,this._autoReset=!1}get autoReset(){return this._autoReset}set autoReset(e){"u">typeof document&&void 0!==document.hidden&&(e?document.addEventListener("visibilitychange",this):document.removeEventListener("visibilitychange",this),this._autoReset=e)}get delta(){return .001*this._delta}get fixedDelta(){return .001*this._fixedDelta}set fixedDelta(e){this._fixedDelta=1e3*e}get elapsed(){return .001*this._elapsed}update(e){this.useFixedDelta?this._delta=this.fixedDelta:(this.previousTime=this.currentTime,this.currentTime=(void 0!==e?e:performance.now())-this.startTime,this._delta=this.currentTime-this.previousTime),this._delta*=this.timescale,this._elapsed+=this._delta}reset(){this._delta=0,this._elapsed=0,this.currentTime=performance.now()-this.startTime}getDelta(){return this.delta}getElapsed(){return this.elapsed}handleEvent(e){document.hidden||(this.currentTime=performance.now()-this.startTime)}dispose(){this.autoReset=!1}},J=class{constructor(e=null,{depthBuffer:t=!0,stencilBuffer:i=!1,multisampling:n=0,frameBufferType:r}={}){this.renderer=null,this.inputBuffer=this.createBuffer(t,i,r,n),this.outputBuffer=this.inputBuffer.clone(),this.copyPass=new Y,this.depthTexture=null,this.depthRenderTarget=null,this.passes=[],this.timer=new Z,this.autoRenderToScreen=!0,this.setRenderer(e)}get multisampling(){return this.inputBuffer.samples}set multisampling(e){let t=this.inputBuffer,i=this.multisampling;i>0&&e>0?(this.inputBuffer.samples=e,this.outputBuffer.samples=e,this.inputBuffer.dispose(),this.outputBuffer.dispose()):i!==e&&(this.inputBuffer.dispose(),this.outputBuffer.dispose(),this.inputBuffer=this.createBuffer(t.depthBuffer,t.stencilBuffer,t.texture.type,e),this.outputBuffer=this.inputBuffer.clone())}getTimer(){return this.timer}getRenderer(){return this.renderer}setRenderer(e){if(this.renderer=e,null!==e){let t=e.getSize(new k.Vector2),i=e.getContext().getContextAttributes().alpha,n=this.inputBuffer.texture.type;for(let r of(n===k.UnsignedByteType&&e.outputColorSpace===k.SRGBColorSpace&&(this.inputBuffer.texture.colorSpace=k.SRGBColorSpace,this.outputBuffer.texture.colorSpace=k.SRGBColorSpace,this.inputBuffer.dispose(),this.outputBuffer.dispose()),e.autoClear=!1,this.setSize(t.width,t.height),this.passes))r.initialize(e,i,n)}}replaceRenderer(e,t=!0){let i=this.renderer,n=i.domElement.parentNode;return this.setRenderer(e),t&&null!==n&&(n.removeChild(i.domElement),n.appendChild(e.domElement)),i}createDepthTexture(){let e=this.inputBuffer,t=new k.DepthTexture;this.depthTexture=t,e.stencilBuffer?(t.format=k.DepthStencilFormat,t.type=k.UnsignedInt248Type):t.type=k.FloatType;let i=t.clone();return i.name="EffectComposer.StableDepth",this.depthRenderTarget=new k.WebGLRenderTarget(e.width,e.height,{depthBuffer:!0,stencilBuffer:e.stencilBuffer,depthTexture:i}),i}blitDepthBuffer(e){let t=this.renderer,i=this.depthRenderTarget,n=t.properties,r=t.getContext();t.setRenderTarget(i);let a=n.get(e).__webglFramebuffer,s=n.get(i).__webglFramebuffer,o=e.stencilBuffer?r.DEPTH_BUFFER_BIT|r.STENCIL_BUFFER_BIT:r.DEPTH_BUFFER_BIT;r.bindFramebuffer(r.READ_FRAMEBUFFER,a),r.bindFramebuffer(r.DRAW_FRAMEBUFFER,s),r.blitFramebuffer(0,0,e.width,e.height,0,0,i.width,i.height,o,r.NEAREST),r.bindFramebuffer(r.READ_FRAMEBUFFER,null),r.bindFramebuffer(r.DRAW_FRAMEBUFFER,null),t.setRenderTarget(null)}deleteDepthTexture(){if(null!==this.depthTexture)for(let e of(this.depthTexture.dispose(),this.depthTexture=null,this.depthRenderTarget.dispose(),this.depthRenderTarget=null,this.inputBuffer.depthTexture=null,this.outputBuffer.depthTexture=null,this.passes))e.setDepthTexture(null)}createBuffer(e,t,i,n){let r=this.renderer,a=null===r?new k.Vector2:r.getDrawingBufferSize(new k.Vector2),s={minFilter:k.LinearFilter,magFilter:k.LinearFilter,stencilBuffer:t,depthBuffer:e,type:i},o=new k.WebGLRenderTarget(a.width,a.height,s);return n>0&&(o.samples=n),i===k.UnsignedByteType&&null!==r&&r.outputColorSpace===k.SRGBColorSpace&&(o.texture.colorSpace=k.SRGBColorSpace),o.texture.name="EffectComposer.Buffer",o.texture.generateMipmaps=!1,o}setMainScene(e){for(let t of this.passes)t.mainScene=e}setMainCamera(e){for(let t of this.passes)t.mainCamera=e}addPass(e,t){let i=this.passes,n=this.renderer,r=n.getDrawingBufferSize(new k.Vector2),a=n.getContext().getContextAttributes().alpha,s=this.inputBuffer.texture.type;if(e.renderer=n,e.setSize(r.width,r.height),e.initialize(n,a,s),this.autoRenderToScreen&&(i.length>0&&(i[i.length-1].renderToScreen=!1),e.renderToScreen&&(this.autoRenderToScreen=!1)),void 0!==t?i.splice(t,0,e):i.push(e),this.autoRenderToScreen&&(i[i.length-1].renderToScreen=!0),e.needsDepthTexture||null!==this.depthTexture)if(null===this.depthTexture){let t=this.createDepthTexture();for(e of i)e.setDepthTexture(t)}else{let t=this.depthRenderTarget.depthTexture;e.setDepthTexture(t)}}removePass(e){let t=this.passes,i=t.indexOf(e);if(-1!==i&&t.splice(i,1).length>0){if(null!==this.depthTexture&&!t.reduce((e,t)=>e||t.needsDepthTexture,!1)){let t=this.depthRenderTarget.depthTexture;e.getDepthTexture()===t&&e.setDepthTexture(null),this.deleteDepthTexture()}this.autoRenderToScreen&&i===t.length&&(e.renderToScreen=!1,t.length>0&&(t[t.length-1].renderToScreen=!0))}}removeAllPasses(){let e=this.passes;this.deleteDepthTexture(),e.length>0&&(this.autoRenderToScreen&&(e[e.length-1].renderToScreen=!1),this.passes=[])}render(e){let t,i=this.renderer,n=this.copyPass,r=this.inputBuffer,a=this.outputBuffer,s=!1;for(let o of(void 0===e&&(this.timer.update(),e=this.timer.getDelta()),this.passes))if(o.enabled){if(r.depthTexture=this.depthTexture,a.depthTexture=null,o.render(i,r,a,e,s),o.needsDepthBlit&&null!==this.depthRenderTarget&&this.blitDepthBuffer(r),o.needsSwap){if(s){n.renderToScreen=o.renderToScreen;let t=i.getContext(),l=i.state.buffers.stencil;l.setFunc(t.NOTEQUAL,1,0xffffffff),n.render(i,r,a,e,s),l.setFunc(t.EQUAL,1,0xffffffff)}t=r,r=a,a=t}o instanceof K?s=!0:o instanceof V&&(s=!1)}}setSize(e,t,i){let n=this.renderer,r=n.getSize(new k.Vector2);(void 0===e||void 0===t)&&(e=r.width,t=r.height),(r.width!==e||r.height!==t)&&n.setSize(e,t,i);let a=n.getDrawingBufferSize(new k.Vector2);for(let e of(this.inputBuffer.setSize(a.width,a.height),this.outputBuffer.setSize(a.width,a.height),null!==this.depthRenderTarget&&this.depthRenderTarget.setSize(a.width,a.height),this.passes))e.setSize(a.width,a.height)}reset(){this.dispose(),this.autoRenderToScreen=!0}dispose(){for(let e of this.passes)e.dispose();this.passes=[],null!==this.inputBuffer&&this.inputBuffer.dispose(),null!==this.outputBuffer&&this.outputBuffer.dispose(),this.deleteDepthTexture(),this.copyPass.dispose(),this.timer.dispose(),G.fullscreenGeometry.dispose()}},$={FRAGMENT_HEAD:"FRAGMENT_HEAD",FRAGMENT_MAIN_UV:"FRAGMENT_MAIN_UV",FRAGMENT_MAIN_IMAGE:"FRAGMENT_MAIN_IMAGE",VERTEX_HEAD:"VERTEX_HEAD",VERTEX_MAIN_SUPPORT:"VERTEX_MAIN_SUPPORT"},ee=class{constructor(){this.shaderParts=new Map([[$.FRAGMENT_HEAD,null],[$.FRAGMENT_MAIN_UV,null],[$.FRAGMENT_MAIN_IMAGE,null],[$.VERTEX_HEAD,null],[$.VERTEX_MAIN_SUPPORT,null]]),this.defines=new Map,this.uniforms=new Map,this.blendModes=new Map,this.extensions=new Set,this.attributes=0,this.varyings=new Set,this.uvTransformation=!1,this.readDepth=!1,this.colorSpace=k.LinearSRGBColorSpace}},et=!1,ei=class{constructor(e=null){this.originalMaterials=new Map,this.material=null,this.materials=null,this.materialsBackSide=null,this.materialsDoubleSide=null,this.materialsFlatShaded=null,this.materialsFlatShadedBackSide=null,this.materialsFlatShadedDoubleSide=null,this.setMaterial(e),this.meshCount=0,this.replaceMaterial=e=>{if(e.isMesh){let t;if(e.material.flatShading)switch(e.material.side){case k.DoubleSide:t=this.materialsFlatShadedDoubleSide;break;case k.BackSide:t=this.materialsFlatShadedBackSide;break;default:t=this.materialsFlatShaded}else switch(e.material.side){case k.DoubleSide:t=this.materialsDoubleSide;break;case k.BackSide:t=this.materialsBackSide;break;default:t=this.materials}this.originalMaterials.set(e,e.material),e.isSkinnedMesh?e.material=t[2]:e.isInstancedMesh?e.material=t[1]:e.material=t[0],++this.meshCount}}}cloneMaterial(e){if(!(e instanceof k.ShaderMaterial))return e.clone();let t=e.uniforms,i=new Map;for(let e in t){let n=t[e].value;n.isRenderTargetTexture&&(t[e].value=null,i.set(e,n))}let n=e.clone();for(let e of i)t[e[0]].value=e[1],n.uniforms[e[0]].value=e[1];return n}setMaterial(e){if(this.disposeMaterials(),this.material=e,null!==e){let t=this.materials=[this.cloneMaterial(e),this.cloneMaterial(e),this.cloneMaterial(e)];for(let i of t)i.uniforms=Object.assign({},e.uniforms),i.side=k.FrontSide;t[2].skinning=!0,this.materialsBackSide=t.map(t=>{let i=this.cloneMaterial(t);return i.uniforms=Object.assign({},e.uniforms),i.side=k.BackSide,i}),this.materialsDoubleSide=t.map(t=>{let i=this.cloneMaterial(t);return i.uniforms=Object.assign({},e.uniforms),i.side=k.DoubleSide,i}),this.materialsFlatShaded=t.map(t=>{let i=this.cloneMaterial(t);return i.uniforms=Object.assign({},e.uniforms),i.flatShading=!0,i}),this.materialsFlatShadedBackSide=t.map(t=>{let i=this.cloneMaterial(t);return i.uniforms=Object.assign({},e.uniforms),i.flatShading=!0,i.side=k.BackSide,i}),this.materialsFlatShadedDoubleSide=t.map(t=>{let i=this.cloneMaterial(t);return i.uniforms=Object.assign({},e.uniforms),i.flatShading=!0,i.side=k.DoubleSide,i})}}render(e,t,i){let n=e.shadowMap.enabled;if(e.shadowMap.enabled=!1,et){let n=this.originalMaterials;for(let r of(this.meshCount=0,t.traverse(this.replaceMaterial),e.render(t,i),n))r[0].material=r[1];this.meshCount!==n.size&&n.clear()}else{let n=t.overrideMaterial;t.overrideMaterial=this.material,e.render(t,i),t.overrideMaterial=n}e.shadowMap.enabled=n}disposeMaterials(){if(null!==this.material)for(let e of this.materials.concat(this.materialsBackSide).concat(this.materialsDoubleSide).concat(this.materialsFlatShaded).concat(this.materialsFlatShadedBackSide).concat(this.materialsFlatShadedDoubleSide))e.dispose()}dispose(){this.originalMaterials.clear(),this.disposeMaterials()}static get workaroundEnabled(){return et}static set workaroundEnabled(e){et=e}},en=class extends k.EventDispatcher{constructor(e=null,t=-1,i=-1,n=1){super(),null!==e&&this.addEventListener("change",()=>e.setSize(this.baseSize.width,this.baseSize.height)),this.baseSize=new k.Vector2(1,1),this.preferredSize=new k.Vector2(t,i),this.target=this.preferredSize,this.s=n,this.effectiveSize=new k.Vector2,this.addEventListener("change",()=>this.updateEffectiveSize()),this.updateEffectiveSize()}updateEffectiveSize(){let e=this.baseSize,t=this.preferredSize,i=this.effectiveSize,n=this.scale;-1!==t.width?i.width=t.width:-1!==t.height?i.width=Math.round(t.height*(e.width/Math.max(e.height,1))):i.width=Math.round(e.width*n),-1!==t.height?i.height=t.height:-1!==t.width?i.height=Math.round(t.width/Math.max(e.width/Math.max(e.height,1),1)):i.height=Math.round(e.height*n)}get width(){return this.effectiveSize.width}set width(e){this.preferredWidth=e}get height(){return this.effectiveSize.height}set height(e){this.preferredHeight=e}getWidth(){return this.width}getHeight(){return this.height}get scale(){return this.s}set scale(e){this.s!==e&&(this.s=e,this.preferredSize.setScalar(-1),this.dispatchEvent({type:"change"}))}getScale(){return this.scale}setScale(e){this.scale=e}get baseWidth(){return this.baseSize.width}set baseWidth(e){this.baseSize.width!==e&&(this.baseSize.width=e,this.dispatchEvent({type:"change"}))}getBaseWidth(){return this.baseWidth}setBaseWidth(e){this.baseWidth=e}get baseHeight(){return this.baseSize.height}set baseHeight(e){this.baseSize.height!==e&&(this.baseSize.height=e,this.dispatchEvent({type:"change"}))}getBaseHeight(){return this.baseHeight}setBaseHeight(e){this.baseHeight=e}setBaseSize(e,t){(this.baseSize.width!==e||this.baseSize.height!==t)&&(this.baseSize.set(e,t),this.dispatchEvent({type:"change"}))}get preferredWidth(){return this.preferredSize.width}set preferredWidth(e){this.preferredSize.width!==e&&(this.preferredSize.width=e,this.dispatchEvent({type:"change"}))}getPreferredWidth(){return this.preferredWidth}setPreferredWidth(e){this.preferredWidth=e}get preferredHeight(){return this.preferredSize.height}set preferredHeight(e){this.preferredSize.height!==e&&(this.preferredSize.height=e,this.dispatchEvent({type:"change"}))}getPreferredHeight(){return this.preferredHeight}setPreferredHeight(e){this.preferredHeight=e}setPreferredSize(e,t){(this.preferredSize.width!==e||this.preferredSize.height!==t)&&(this.preferredSize.set(e,t),this.dispatchEvent({type:"change"}))}copy(e){this.s=e.scale,this.baseSize.set(e.baseWidth,e.baseHeight),this.preferredSize.set(e.preferredWidth,e.preferredHeight),this.dispatchEvent({type:"change"})}static get AUTO_SIZE(){return -1}},er=new class{constructor(e=0){this.nextId=e}getNextId(){return this.nextId++}reset(e=0){return this.nextId=e,this}}(2),ea=class extends Set{constructor(e,t=er.getNextId()){super(),this.exclusive=!1,this._layer=t,(this._layer<1||this._layer>31)&&(console.warn("Layer out of range, resetting to 2"),er.reset(2),this._layer=er.getNextId()),void 0!==e&&this.set(e)}get layer(){return this._layer}set layer(e){let t=this._layer;for(let i of this)i.layers.disable(t),i.layers.enable(e);this._layer=e}getLayer(){return this.layer}setLayer(e){this.layer=e}isExclusive(){return this.exclusive}setExclusive(e){this.exclusive=e}clear(){let e=this.layer;for(let t of this)t.layers.disable(e);return super.clear()}set(e){for(let t of(this.clear(),e))this.add(t);return this}indexOf(e){return this.has(e)?0:-1}add(e){return this.exclusive?e.layers.set(this.layer):e.layers.enable(this.layer),super.add(e)}delete(e){return this.has(e)&&e.layers.disable(this.layer),super.delete(e)}toggle(e){let t;return this.has(e)?(this.delete(e),t=!1):(this.add(e),t=!0),t}setVisible(e){for(let t of this)e?t.layers.enable(0):t.layers.disable(0);return this}},es=new Map([[0,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=dst.rgb+src.rgb;return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[1,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){return mix(dst,src,src.a*opacity);}"],[2,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=(dst.rgb+src.rgb)*0.5;return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[3,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 a=RGBToHSL(dst.rgb);vec3 b=RGBToHSL(src.rgb);vec3 c=HSLToRGB(vec3(b.xy,a.z));return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[4,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 a=dst.rgb,b=src.rgb;vec3 c=mix(step(0.0,b)*(1.0-min(vec3(1.0),(1.0-a)/max(b,1e-9))),vec3(1.0),step(1.0,a));return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[5,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 a=dst.rgb,b=src.rgb;vec3 c=step(0.0,a)*mix(min(vec3(1.0),a/max(1.0-b,1e-9)),vec3(1.0),step(1.0,b));return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[6,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=min(dst.rgb,src.rgb);return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[7,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=abs(dst.rgb-src.rgb);return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[8,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=dst.rgb/max(src.rgb,1e-9);return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[9,null],[10,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=dst.rgb+src.rgb-2.0*dst.rgb*src.rgb;return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[11,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 a=min(dst.rgb,1.0);vec3 b=min(src.rgb,1.0);vec3 c=mix(2.0*a*b,1.0-2.0*(1.0-a)*(1.0-b),step(0.5,b));return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[12,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=step(1.0,dst.rgb+src.rgb);return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[13,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 a=RGBToHSL(dst.rgb);vec3 b=RGBToHSL(src.rgb);vec3 c=HSLToRGB(vec3(b.x,a.yz));return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[14,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=max(1.0-src.rgb,0.0);return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[15,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=src.rgb*max(1.0-dst.rgb,0.0);return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[16,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=max(dst.rgb,src.rgb);return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[17,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=clamp(src.rgb+dst.rgb-1.0,0.0,1.0);return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[18,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=min(dst.rgb+src.rgb,1.0);return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[19,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=clamp(2.0*src.rgb+dst.rgb-1.0,0.0,1.0);return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[20,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 a=RGBToHSL(dst.rgb);vec3 b=RGBToHSL(src.rgb);vec3 c=HSLToRGB(vec3(a.xy,b.z));return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[21,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=dst.rgb*src.rgb;return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[22,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=max(1.0-abs(1.0-dst.rgb-src.rgb),0.0);return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[23,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){return mix(dst,src,opacity);}"],[24,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 a=2.0*src.rgb*dst.rgb;vec3 b=1.0-2.0*(1.0-src.rgb)*(1.0-dst.rgb);vec3 c=mix(a,b,step(0.5,dst.rgb));return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[25,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 src2=2.0*src.rgb;vec3 c=mix(mix(src2,dst.rgb,step(0.5*dst.rgb,src.rgb)),max(src2-1.0,vec3(0.0)),step(dst.rgb,src2-1.0));return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[26,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 a=min(dst.rgb*dst.rgb/max(1.0-src.rgb,1e-9),1.0);vec3 c=mix(a,src.rgb,step(1.0,src.rgb));return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[27,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 a=RGBToHSL(dst.rgb);vec3 b=RGBToHSL(src.rgb);vec3 c=HSLToRGB(vec3(a.x,b.y,a.z));return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[28,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=dst.rgb+src.rgb-min(dst.rgb*src.rgb,1.0);return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[29,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 src2=2.0*src.rgb;vec3 d=dst.rgb+(src2-1.0);vec3 w=step(0.5,src.rgb);vec3 a=dst.rgb-(1.0-src2)*dst.rgb*(1.0-dst.rgb);vec3 b=mix(d*(sqrt(dst.rgb)-dst.rgb),d*dst.rgb*((16.0*dst.rgb-12.0)*dst.rgb+3.0),w*(1.0-step(0.25,dst.rgb)));vec3 c=mix(a,b,w);return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[30,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){return src;}"],[31,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=max(dst.rgb-src.rgb,0.0);return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"],[32,"vec4 blend(const in vec4 dst,const in vec4 src,const in float opacity){vec3 c=mix(max(1.0-min((1.0-dst.rgb)/(2.0*src.rgb),1.0),0.0),min(dst.rgb/(2.0*(1.0-src.rgb)),1.0),step(0.5,src.rgb));return mix(dst,vec4(c,max(dst.a,src.a)),opacity);}"]]),eo=class extends k.EventDispatcher{constructor(e,t=1){super(),this._blendFunction=e,this.opacity=new k.Uniform(t)}getOpacity(){return this.opacity.value}setOpacity(e){this.opacity.value=e}get blendFunction(){return this._blendFunction}set blendFunction(e){this._blendFunction=e,this.dispatchEvent({type:"change"})}getBlendFunction(){return this.blendFunction}setBlendFunction(e){this.blendFunction=e}getShaderCode(){return es.get(this.blendFunction)}};k.CanvasTexture;var el=class extends k.EventDispatcher{constructor(e,t,{attributes:i=0,blendFunction:n=23,defines:r=new Map,uniforms:a=new Map,extensions:s=null,vertexShader:o=null}={}){super(),this.name=e,this.renderer=null,this.attributes=i,this.fragmentShader=t,this.vertexShader=o,this.defines=r,this.uniforms=a,this.extensions=s,this.blendMode=new eo(n),this.blendMode.addEventListener("change",e=>this.setChanged()),this._inputColorSpace=k.LinearSRGBColorSpace,this._outputColorSpace=k.NoColorSpace}get inputColorSpace(){return this._inputColorSpace}set inputColorSpace(e){this._inputColorSpace=e,this.setChanged()}get outputColorSpace(){return this._outputColorSpace}set outputColorSpace(e){this._outputColorSpace=e,this.setChanged()}set mainScene(e){}set mainCamera(e){}getName(){return this.name}setRenderer(e){this.renderer=e}getDefines(){return this.defines}getUniforms(){return this.uniforms}getExtensions(){return this.extensions}getBlendMode(){return this.blendMode}getAttributes(){return this.attributes}setAttributes(e){this.attributes=e,this.setChanged()}getFragmentShader(){return this.fragmentShader}setFragmentShader(e){this.fragmentShader=e,this.setChanged()}getVertexShader(){return this.vertexShader}setVertexShader(e){this.vertexShader=e,this.setChanged()}setChanged(){this.dispatchEvent({type:"change"})}setDepthTexture(e,t=k.BasicDepthPacking){}update(e,t,i){}setSize(e,t){}initialize(e,t,i){}dispose(){for(let e of Object.keys(this)){let t=this[e];(t instanceof k.WebGLRenderTarget||t instanceof k.Material||t instanceof k.Texture||t instanceof G)&&this[e].dispose()}}},eu={VERY_SMALL:0,SMALL:1,MEDIUM:2,LARGE:3,VERY_LARGE:4,HUGE:5},ec=`#ifdef FRAMEBUFFER_PRECISION_HIGH -uniform mediump sampler2D inputBuffer; -#else -uniform lowp sampler2D inputBuffer; -#endif -varying vec2 vUv0;varying vec2 vUv1;varying vec2 vUv2;varying vec2 vUv3;void main(){vec4 sum=texture2D(inputBuffer,vUv0);sum+=texture2D(inputBuffer,vUv1);sum+=texture2D(inputBuffer,vUv2);sum+=texture2D(inputBuffer,vUv3);gl_FragColor=sum*0.25; -#include -}`,eh=[new Float32Array([0,0]),new Float32Array([0,1,1]),new Float32Array([0,1,1,2]),new Float32Array([0,1,2,2,3]),new Float32Array([0,1,2,3,4,4,5]),new Float32Array([0,1,2,3,4,5,7,8,9,10])],ed=class extends k.ShaderMaterial{constructor(e=new k.Vector4){super({name:"KawaseBlurMaterial",uniforms:{inputBuffer:new k.Uniform(null),texelSize:new k.Uniform(new k.Vector4),scale:new k.Uniform(1),kernel:new k.Uniform(0)},blending:k.NoBlending,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:ec,vertexShader:"uniform vec4 texelSize;uniform float kernel;uniform float scale;varying vec2 vUv0;varying vec2 vUv1;varying vec2 vUv2;varying vec2 vUv3;void main(){vec2 uv=position.xy*0.5+0.5;vec2 dUv=(texelSize.xy*vec2(kernel)+texelSize.zw)*scale;vUv0=vec2(uv.x-dUv.x,uv.y+dUv.y);vUv1=vec2(uv.x+dUv.x,uv.y+dUv.y);vUv2=vec2(uv.x+dUv.x,uv.y-dUv.y);vUv3=vec2(uv.x-dUv.x,uv.y-dUv.y);gl_Position=vec4(position.xy,1.0,1.0);}"}),this.setTexelSize(e.x,e.y),this.kernelSize=eu.MEDIUM}set inputBuffer(e){this.uniforms.inputBuffer.value=e}setInputBuffer(e){this.inputBuffer=e}get kernelSequence(){return eh[this.kernelSize]}get scale(){return this.uniforms.scale.value}set scale(e){this.uniforms.scale.value=e}getScale(){return this.uniforms.scale.value}setScale(e){this.uniforms.scale.value=e}getKernel(){return null}get kernel(){return this.uniforms.kernel.value}set kernel(e){this.uniforms.kernel.value=e}setKernel(e){this.kernel=e}setTexelSize(e,t){this.uniforms.texelSize.value.set(e,t,.5*e,.5*t)}setSize(e,t){let i=1/e,n=1/t;this.uniforms.texelSize.value.set(i,n,.5*i,.5*n)}},ef=class extends G{constructor({kernelSize:e=eu.MEDIUM,resolutionScale:t=.5,width:i=en.AUTO_SIZE,height:n=en.AUTO_SIZE,resolutionX:r=i,resolutionY:a=n}={}){super("KawaseBlurPass"),this.renderTargetA=new k.WebGLRenderTarget(1,1,{depthBuffer:!1}),this.renderTargetA.texture.name="Blur.Target.A",this.renderTargetB=this.renderTargetA.clone(),this.renderTargetB.texture.name="Blur.Target.B";const s=this.resolution=new en(this,r,a,t);s.addEventListener("change",e=>this.setSize(s.baseWidth,s.baseHeight)),this._blurMaterial=new ed,this._blurMaterial.kernelSize=e,this.copyMaterial=new X}getResolution(){return this.resolution}get blurMaterial(){return this._blurMaterial}set blurMaterial(e){this._blurMaterial=e}get dithering(){return this.copyMaterial.dithering}set dithering(e){this.copyMaterial.dithering=e}get kernelSize(){return this.blurMaterial.kernelSize}set kernelSize(e){this.blurMaterial.kernelSize=e}get width(){return this.resolution.width}set width(e){this.resolution.preferredWidth=e}get height(){return this.resolution.height}set height(e){this.resolution.preferredHeight=e}get scale(){return this.blurMaterial.scale}set scale(e){this.blurMaterial.scale=e}getScale(){return this.blurMaterial.scale}setScale(e){this.blurMaterial.scale=e}getKernelSize(){return this.kernelSize}setKernelSize(e){this.kernelSize=e}getResolutionScale(){return this.resolution.scale}setResolutionScale(e){this.resolution.scale=e}render(e,t,i,n,r){let a=this.scene,s=this.camera,o=this.renderTargetA,l=this.renderTargetB,u=this.blurMaterial,c=u.kernelSequence,h=t;this.fullscreenMaterial=u;for(let t=0,i=c.length;t -#ifdef FRAMEBUFFER_PRECISION_HIGH -uniform mediump sampler2D inputBuffer; -#else -uniform lowp sampler2D inputBuffer; -#endif -#ifdef RANGE -uniform vec2 range; -#elif defined(THRESHOLD) -uniform float threshold;uniform float smoothing; -#endif -varying vec2 vUv;void main(){vec4 texel=texture2D(inputBuffer,vUv);float l=luminance(texel.rgb);float mask=1.0; -#ifdef RANGE -float low=step(range.x,l);float high=step(l,range.y);mask=low*high; -#elif defined(THRESHOLD) -mask=smoothstep(threshold,threshold+smoothing,l); -#endif -#ifdef COLOR -gl_FragColor=texel*mask; -#else -gl_FragColor=vec4(l*mask); -#endif -}`,em=class extends k.ShaderMaterial{constructor(e=!1,t=null){super({name:"LuminanceMaterial",defines:{THREE_REVISION:k.REVISION.replace(/\D+/g,"")},uniforms:{inputBuffer:new k.Uniform(null),threshold:new k.Uniform(0),smoothing:new k.Uniform(1),range:new k.Uniform(null)},blending:k.NoBlending,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:ep,vertexShader:j}),this.colorOutput=e,this.luminanceRange=t}set inputBuffer(e){this.uniforms.inputBuffer.value=e}setInputBuffer(e){this.uniforms.inputBuffer.value=e}get threshold(){return this.uniforms.threshold.value}set threshold(e){this.smoothing>0||e>0?this.defines.THRESHOLD="1":delete this.defines.THRESHOLD,this.uniforms.threshold.value=e}getThreshold(){return this.threshold}setThreshold(e){this.threshold=e}get smoothing(){return this.uniforms.smoothing.value}set smoothing(e){this.threshold>0||e>0?this.defines.THRESHOLD="1":delete this.defines.THRESHOLD,this.uniforms.smoothing.value=e}getSmoothingFactor(){return this.smoothing}setSmoothingFactor(e){this.smoothing=e}get useThreshold(){return this.threshold>0||this.smoothing>0}set useThreshold(e){}get colorOutput(){return void 0!==this.defines.COLOR}set colorOutput(e){e?this.defines.COLOR="1":delete this.defines.COLOR,this.needsUpdate=!0}isColorOutputEnabled(e){return this.colorOutput}setColorOutputEnabled(e){this.colorOutput=e}get useRange(){return null!==this.luminanceRange}set useRange(e){this.luminanceRange=null}get luminanceRange(){return this.uniforms.range.value}set luminanceRange(e){null!==e?this.defines.RANGE="1":delete this.defines.RANGE,this.uniforms.range.value=e,this.needsUpdate=!0}getLuminanceRange(){return this.luminanceRange}setLuminanceRange(e){this.luminanceRange=e}},eg=class extends G{constructor({renderTarget:e,luminanceRange:t,colorOutput:i,resolutionScale:n=1,width:r=en.AUTO_SIZE,height:a=en.AUTO_SIZE,resolutionX:s=r,resolutionY:o=a}={}){super("LuminancePass"),this.fullscreenMaterial=new em(i,t),this.needsSwap=!1,this.renderTarget=e,void 0===this.renderTarget&&(this.renderTarget=new k.WebGLRenderTarget(1,1,{depthBuffer:!1}),this.renderTarget.texture.name="LuminancePass.Target");const l=this.resolution=new en(this,s,o,n);l.addEventListener("change",e=>this.setSize(l.baseWidth,l.baseHeight))}get texture(){return this.renderTarget.texture}getTexture(){return this.renderTarget.texture}getResolution(){return this.resolution}render(e,t,i,n,r){this.fullscreenMaterial.inputBuffer=t.texture,e.setRenderTarget(this.renderToScreen?null:this.renderTarget),e.render(this.scene,this.camera)}setSize(e,t){let i=this.resolution;i.setBaseSize(e,t),this.renderTarget.setSize(i.width,i.height)}initialize(e,t,i){void 0!==i&&i!==k.UnsignedByteType&&(this.renderTarget.texture.type=i,this.fullscreenMaterial.defines.FRAMEBUFFER_PRECISION_HIGH="1")}},ev=`#ifdef FRAMEBUFFER_PRECISION_HIGH -uniform mediump sampler2D inputBuffer; -#else -uniform lowp sampler2D inputBuffer; -#endif -#define WEIGHT_INNER 0.125 -#define WEIGHT_OUTER 0.05556 -varying vec2 vUv;varying vec2 vUv00;varying vec2 vUv01;varying vec2 vUv02;varying vec2 vUv03;varying vec2 vUv04;varying vec2 vUv05;varying vec2 vUv06;varying vec2 vUv07;varying vec2 vUv08;varying vec2 vUv09;varying vec2 vUv10;varying vec2 vUv11;float clampToBorder(const in vec2 uv){return float(uv.s>=0.0&&uv.s<=1.0&&uv.t>=0.0&&uv.t<=1.0);}void main(){vec4 c=vec4(0.0);vec4 w=WEIGHT_INNER*vec4(clampToBorder(vUv00),clampToBorder(vUv01),clampToBorder(vUv02),clampToBorder(vUv03));c+=w.x*texture2D(inputBuffer,vUv00);c+=w.y*texture2D(inputBuffer,vUv01);c+=w.z*texture2D(inputBuffer,vUv02);c+=w.w*texture2D(inputBuffer,vUv03);w=WEIGHT_OUTER*vec4(clampToBorder(vUv04),clampToBorder(vUv05),clampToBorder(vUv06),clampToBorder(vUv07));c+=w.x*texture2D(inputBuffer,vUv04);c+=w.y*texture2D(inputBuffer,vUv05);c+=w.z*texture2D(inputBuffer,vUv06);c+=w.w*texture2D(inputBuffer,vUv07);w=WEIGHT_OUTER*vec4(clampToBorder(vUv08),clampToBorder(vUv09),clampToBorder(vUv10),clampToBorder(vUv11));c+=w.x*texture2D(inputBuffer,vUv08);c+=w.y*texture2D(inputBuffer,vUv09);c+=w.z*texture2D(inputBuffer,vUv10);c+=w.w*texture2D(inputBuffer,vUv11);c+=WEIGHT_OUTER*texture2D(inputBuffer,vUv);gl_FragColor=c; -#include -}`,ex=class extends k.ShaderMaterial{constructor(){super({name:"DownsamplingMaterial",uniforms:{inputBuffer:new k.Uniform(null),texelSize:new k.Uniform(new k.Vector2)},blending:k.NoBlending,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:ev,vertexShader:"uniform vec2 texelSize;varying vec2 vUv;varying vec2 vUv00;varying vec2 vUv01;varying vec2 vUv02;varying vec2 vUv03;varying vec2 vUv04;varying vec2 vUv05;varying vec2 vUv06;varying vec2 vUv07;varying vec2 vUv08;varying vec2 vUv09;varying vec2 vUv10;varying vec2 vUv11;void main(){vUv=position.xy*0.5+0.5;vUv00=vUv+texelSize*vec2(-1.0,1.0);vUv01=vUv+texelSize*vec2(1.0,1.0);vUv02=vUv+texelSize*vec2(-1.0,-1.0);vUv03=vUv+texelSize*vec2(1.0,-1.0);vUv04=vUv+texelSize*vec2(-2.0,2.0);vUv05=vUv+texelSize*vec2(0.0,2.0);vUv06=vUv+texelSize*vec2(2.0,2.0);vUv07=vUv+texelSize*vec2(-2.0,0.0);vUv08=vUv+texelSize*vec2(2.0,0.0);vUv09=vUv+texelSize*vec2(-2.0,-2.0);vUv10=vUv+texelSize*vec2(0.0,-2.0);vUv11=vUv+texelSize*vec2(2.0,-2.0);gl_Position=vec4(position.xy,1.0,1.0);}"})}set inputBuffer(e){this.uniforms.inputBuffer.value=e}setSize(e,t){this.uniforms.texelSize.value.set(1/e,1/t)}},ey=`#ifdef FRAMEBUFFER_PRECISION_HIGH -uniform mediump sampler2D inputBuffer;uniform mediump sampler2D supportBuffer; -#else -uniform lowp sampler2D inputBuffer;uniform lowp sampler2D supportBuffer; -#endif -uniform float radius;varying vec2 vUv;varying vec2 vUv0;varying vec2 vUv1;varying vec2 vUv2;varying vec2 vUv3;varying vec2 vUv4;varying vec2 vUv5;varying vec2 vUv6;varying vec2 vUv7;void main(){vec4 c=vec4(0.0);c+=texture2D(inputBuffer,vUv0)*0.0625;c+=texture2D(inputBuffer,vUv1)*0.125;c+=texture2D(inputBuffer,vUv2)*0.0625;c+=texture2D(inputBuffer,vUv3)*0.125;c+=texture2D(inputBuffer,vUv)*0.25;c+=texture2D(inputBuffer,vUv4)*0.125;c+=texture2D(inputBuffer,vUv5)*0.0625;c+=texture2D(inputBuffer,vUv6)*0.125;c+=texture2D(inputBuffer,vUv7)*0.0625;vec4 baseColor=texture2D(supportBuffer,vUv);gl_FragColor=mix(baseColor,c,radius); -#include -}`,eS=class extends k.ShaderMaterial{constructor(){super({name:"UpsamplingMaterial",uniforms:{inputBuffer:new k.Uniform(null),supportBuffer:new k.Uniform(null),texelSize:new k.Uniform(new k.Vector2),radius:new k.Uniform(.85)},blending:k.NoBlending,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:ey,vertexShader:"uniform vec2 texelSize;varying vec2 vUv;varying vec2 vUv0;varying vec2 vUv1;varying vec2 vUv2;varying vec2 vUv3;varying vec2 vUv4;varying vec2 vUv5;varying vec2 vUv6;varying vec2 vUv7;void main(){vUv=position.xy*0.5+0.5;vUv0=vUv+texelSize*vec2(-1.0,1.0);vUv1=vUv+texelSize*vec2(0.0,1.0);vUv2=vUv+texelSize*vec2(1.0,1.0);vUv3=vUv+texelSize*vec2(-1.0,0.0);vUv4=vUv+texelSize*vec2(1.0,0.0);vUv5=vUv+texelSize*vec2(-1.0,-1.0);vUv6=vUv+texelSize*vec2(0.0,-1.0);vUv7=vUv+texelSize*vec2(1.0,-1.0);gl_Position=vec4(position.xy,1.0,1.0);}"})}set inputBuffer(e){this.uniforms.inputBuffer.value=e}set supportBuffer(e){this.uniforms.supportBuffer.value=e}get radius(){return this.uniforms.radius.value}set radius(e){this.uniforms.radius.value=e}setSize(e,t){this.uniforms.texelSize.value.set(1/e,1/t)}},eA=class extends G{constructor(){super("MipmapBlurPass"),this.needsSwap=!1,this.renderTarget=new k.WebGLRenderTarget(1,1,{depthBuffer:!1}),this.renderTarget.texture.name="Upsampling.Mipmap0",this.downsamplingMipmaps=[],this.upsamplingMipmaps=[],this.downsamplingMaterial=new ex,this.upsamplingMaterial=new eS,this.resolution=new k.Vector2}get texture(){return this.renderTarget.texture}get levels(){return this.downsamplingMipmaps.length}set levels(e){if(this.levels!==e){let t=this.renderTarget;this.dispose(),this.downsamplingMipmaps=[],this.upsamplingMipmaps=[];for(let i=0;i=0;--t){let i=c[t];l.setSize(h.width,h.height),l.inputBuffer=h.texture,l.supportBuffer=u[t].texture,e.setRenderTarget(i),e.render(a,s),h=i}}setSize(e,t){let i=this.resolution;i.set(e,t);let n=i.width,r=i.height;for(let e=0,t=this.downsamplingMipmaps.length;ethis.setSize(f.baseWidth,f.baseHeight))}get texture(){return this.mipmapBlurPass.enabled?this.mipmapBlurPass.texture:this.renderTarget.texture}getTexture(){return this.texture}getResolution(){return this.resolution}getBlurPass(){return this.blurPass}getLuminancePass(){return this.luminancePass}get luminanceMaterial(){return this.luminancePass.fullscreenMaterial}getLuminanceMaterial(){return this.luminancePass.fullscreenMaterial}get width(){return this.resolution.width}set width(e){this.resolution.preferredWidth=e}get height(){return this.resolution.height}set height(e){this.resolution.preferredHeight=e}get dithering(){return this.blurPass.dithering}set dithering(e){this.blurPass.dithering=e}get kernelSize(){return this.blurPass.kernelSize}set kernelSize(e){this.blurPass.kernelSize=e}get distinction(){return console.warn(this.name,"distinction was removed"),1}set distinction(e){console.warn(this.name,"distinction was removed")}get intensity(){return this.uniforms.get("intensity").value}set intensity(e){this.uniforms.get("intensity").value=e}getIntensity(){return this.intensity}setIntensity(e){this.intensity=e}getResolutionScale(){return this.resolution.scale}setResolutionScale(e){this.resolution.scale=e}update(e,t,i){let n=this.renderTarget,r=this.luminancePass;r.enabled?(r.render(e,t),this.mipmapBlurPass.enabled?this.mipmapBlurPass.render(e,r.renderTarget):this.blurPass.render(e,r.renderTarget,n)):this.mipmapBlurPass.enabled?this.mipmapBlurPass.render(e,t):this.blurPass.render(e,t,n)}setSize(e,t){let i=this.resolution;i.setBaseSize(e,t),this.renderTarget.setSize(i.width,i.height),this.blurPass.resolution.copy(i),this.luminancePass.setSize(e,t),this.mipmapBlurPass.setSize(e,t)}initialize(e,t,i){this.blurPass.initialize(e,t,i),this.luminancePass.initialize(e,t,i),this.mipmapBlurPass.initialize(e,t,i),void 0!==i&&(this.renderTarget.texture.type=i,null!==e&&e.outputColorSpace===k.SRGBColorSpace&&(this.renderTarget.texture.colorSpace=k.SRGBColorSpace))}},ew=class extends el{constructor({blendFunction:e=30,brightness:t=0,contrast:i=0}={}){super("BrightnessContrastEffect","uniform float brightness;uniform float contrast;void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){vec3 color=inputColor.rgb+vec3(brightness-0.5);if(contrast>0.0){color/=vec3(1.0-contrast);}else{color*=vec3(1.0+contrast);}outputColor=vec4(color+vec3(0.5),inputColor.a);}",{blendFunction:e,uniforms:new Map([["brightness",new k.Uniform(t)],["contrast",new k.Uniform(i)]])}),this.inputColorSpace=k.SRGBColorSpace}get brightness(){return this.uniforms.get("brightness").value}set brightness(e){this.uniforms.get("brightness").value=e}getBrightness(){return this.brightness}setBrightness(e){this.brightness=e}get contrast(){return this.uniforms.get("contrast").value}set contrast(e){this.uniforms.get("contrast").value=e}getContrast(){return this.contrast}setContrast(e){this.contrast=e}},eT=class extends el{constructor(e){super("ColorAverageEffect","void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){outputColor=vec4(vec3(average(inputColor.rgb)),inputColor.a);}",{blendFunction:e})}},eE=class extends el{constructor({blendFunction:e,bits:t=16}={}){super("ColorDepthEffect","uniform float factor;void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){outputColor=vec4(floor(inputColor.rgb*factor+0.5)/factor,inputColor.a);}",{blendFunction:e,uniforms:new Map([["factor",new k.Uniform(1)]])}),this.bits=0,this.bitDepth=t}get bitDepth(){return this.bits}set bitDepth(e){this.bits=e,this.uniforms.get("factor").value=Math.pow(2,e/3)}getBitDepth(){return this.bitDepth}setBitDepth(e){this.bitDepth=e}},e_=`#ifdef RADIAL_MODULATION -uniform float modulationOffset; -#endif -varying float vActive;varying vec2 vUvR;varying vec2 vUvB;void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){vec2 ra=inputColor.ra;vec2 ba=inputColor.ba; -#ifdef RADIAL_MODULATION -const vec2 center=vec2(0.5);float d=distance(uv,center)*2.0;d=max(d-modulationOffset,0.0);if(vActive>0.0&&d>0.0){ra=texture2D(inputBuffer,mix(uv,vUvR,d)).ra;ba=texture2D(inputBuffer,mix(uv,vUvB,d)).ba;} -#else -if(vActive>0.0){ra=texture2D(inputBuffer,vUvR).ra;ba=texture2D(inputBuffer,vUvB).ba;} -#endif -outputColor=vec4(ra.x,inputColor.g,ba.x,max(max(ra.y,ba.y),inputColor.a));}`,eC=class extends el{constructor({offset:e=new k.Vector2(.001,5e-4),radialModulation:t=!1,modulationOffset:i=.15}={}){super("ChromaticAberrationEffect",e_,{vertexShader:"uniform vec2 offset;varying float vActive;varying vec2 vUvR;varying vec2 vUvB;void mainSupport(const in vec2 uv){vec2 shift=offset*vec2(1.0,aspect);vActive=(shift.x!=0.0||shift.y!=0.0)?1.0:0.0;vUvR=uv+shift;vUvB=uv-shift;}",attributes:2,uniforms:new Map([["offset",new k.Uniform(e)],["modulationOffset",new k.Uniform(i)]])}),this.radialModulation=t}get offset(){return this.uniforms.get("offset").value}set offset(e){this.uniforms.get("offset").value=e}get radialModulation(){return this.defines.has("RADIAL_MODULATION")}set radialModulation(e){e?this.defines.set("RADIAL_MODULATION","1"):this.defines.delete("RADIAL_MODULATION"),this.setChanged()}get modulationOffset(){return this.uniforms.get("modulationOffset").value}set modulationOffset(e){this.uniforms.get("modulationOffset").value=e}getOffset(){return this.offset}setOffset(e){this.offset=e}},eR=`void mainImage(const in vec4 inputColor,const in vec2 uv,const in float depth,out vec4 outputColor){ -#ifdef INVERTED -vec3 color=vec3(1.0-depth); -#else -vec3 color=vec3(depth); -#endif -outputColor=vec4(color,inputColor.a);}`,eP=class extends el{constructor({blendFunction:e=30,inverted:t=!1}={}){super("DepthEffect",eR,{blendFunction:e,attributes:1}),this.inverted=t}get inverted(){return this.defines.has("INVERTED")}set inverted(e){this.inverted!==e&&(e?this.defines.set("INVERTED","1"):this.defines.delete("INVERTED"),this.setChanged())}isInverted(){return this.inverted}setInverted(e){this.inverted=e}},eD={DISCARD:0,MULTIPLY:1,MULTIPLY_RGB_SET_ALPHA:2,MULTIPLY_RGB:3},eI=`#ifdef FRAMEBUFFER_PRECISION_HIGH -uniform mediump sampler2D inputBuffer; -#else -uniform lowp sampler2D inputBuffer; -#endif -#if PASS == 1 -uniform vec4 kernel64[32]; -#else -uniform vec4 kernel16[8]; -#endif -uniform lowp sampler2D cocBuffer;uniform vec2 texelSize;uniform float scale;varying vec2 vUv;void main(){ -#ifdef FOREGROUND -vec2 cocNearFar=texture2D(cocBuffer,vUv).rg*scale;float coc=cocNearFar.x; -#else -float coc=texture2D(cocBuffer,vUv).g*scale; -#endif -if(coc==0.0){gl_FragColor=texture2D(inputBuffer,vUv);}else{ -#ifdef FOREGROUND -vec2 step=texelSize*max(cocNearFar.x,cocNearFar.y); -#else -vec2 step=texelSize*coc; -#endif -#if PASS == 1 -vec4 acc=vec4(0.0);for(int i=0;i<32;++i){vec4 kernel=kernel64[i];vec2 uv=step*kernel.xy+vUv;acc+=texture2D(inputBuffer,uv);uv=step*kernel.zw+vUv;acc+=texture2D(inputBuffer,uv);}gl_FragColor=acc/64.0; -#else -vec4 maxValue=texture2D(inputBuffer,vUv);for(int i=0;i<8;++i){vec4 kernel=kernel16[i];vec2 uv=step*kernel.xy+vUv;maxValue=max(texture2D(inputBuffer,uv),maxValue);uv=step*kernel.zw+vUv;maxValue=max(texture2D(inputBuffer,uv),maxValue);}gl_FragColor=maxValue; -#endif -}}`,eL=class extends k.ShaderMaterial{constructor(e=!1,t=!1){super({name:"BokehMaterial",defines:{PASS:e?"2":"1"},uniforms:{inputBuffer:new k.Uniform(null),cocBuffer:new k.Uniform(null),texelSize:new k.Uniform(new k.Vector2),kernel64:new k.Uniform(null),kernel16:new k.Uniform(null),scale:new k.Uniform(1)},blending:k.NoBlending,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:eI,vertexShader:j}),t&&(this.defines.FOREGROUND="1"),this.generateKernel()}set inputBuffer(e){this.uniforms.inputBuffer.value=e}setInputBuffer(e){this.uniforms.inputBuffer.value=e}set cocBuffer(e){this.uniforms.cocBuffer.value=e}setCoCBuffer(e){this.uniforms.cocBuffer.value=e}get scale(){return this.uniforms.scale.value}set scale(e){this.uniforms.scale.value=e}getScale(e){return this.scale}setScale(e){this.scale=e}generateKernel(){let e=new Float64Array(128),t=new Float64Array(32),i=0,n=0;for(let r=0,a=Math.sqrt(80);r<80;++r){let s=2.39996323*r,o=Math.sqrt(r)/a,l=o*Math.cos(s),u=o*Math.sin(s);r%5==0?(t[n++]=l,t[n++]=u):(e[i++]=l,e[i++]=u)}this.uniforms.kernel64.value=e,this.uniforms.kernel16.value=t}setTexelSize(e,t){this.uniforms.texelSize.value.set(e,t)}setSize(e,t){this.uniforms.texelSize.value.set(1/e,1/t)}},eB=`#include -#include -#ifdef GL_FRAGMENT_PRECISION_HIGH -uniform highp sampler2D depthBuffer; -#else -uniform mediump sampler2D depthBuffer; -#endif -uniform mat4 projectionMatrix;uniform mat4 projectionMatrixInverse;uniform float cameraNear;uniform float cameraFar;uniform float focusDistance;uniform float focusRange;varying vec2 vUv;float readDepth(const in vec2 uv){ -#if DEPTH_PACKING == 3201 -float depth=unpackRGBAToDepth(texture2D(depthBuffer,uv)); -#else -float depth=texture2D(depthBuffer,uv).r; -#endif -#if defined(USE_LOGARITHMIC_DEPTH_BUFFER) || defined(LOG_DEPTH) -float d=pow(2.0,depth*log2(cameraFar+1.0))-1.0;float a=cameraFar/(cameraFar-cameraNear);float b=cameraFar*cameraNear/(cameraNear-cameraFar);depth=a+b/d; -#elif defined(USE_REVERSED_DEPTH_BUFFER) -depth=1.0-depth; -#endif -return depth;} -#ifdef PERSPECTIVE_CAMERA -#define getViewZ(depth) perspectiveDepthToViewZ(depth, cameraNear, cameraFar) -#else -#define getViewZ(depth) orthographicDepthToViewZ(depth, cameraNear, cameraFar) -#endif -vec3 getViewPosition(const in vec2 screenPosition,const in float depth,const in float viewZ){vec4 clipPosition=vec4(vec3(screenPosition,depth)*2.0-1.0,1.0);float clipW=projectionMatrix[2][3]*viewZ+projectionMatrix[3][3];clipPosition*=clipW;return(projectionMatrixInverse*clipPosition).xyz;}vec3 getViewPosition(const in vec2 screenPosition,const in float depth){return getViewPosition(screenPosition,depth,getViewZ(depth));} -#define getDistance(viewPosition) length(viewPosition) -void main(){float depth=readDepth(vUv);vec3 viewPosition=getViewPosition(vUv,depth);float distance=getDistance(viewPosition);float signedDistance=distance-focusDistance;float magnitude=smoothstep(0.0,focusRange,abs(signedDistance));gl_FragColor.rg=magnitude*vec2(step(signedDistance,0.0),step(0.0,signedDistance));}`,eU=class extends k.ShaderMaterial{constructor(e=null){super({name:"CircleOfConfusionMaterial",defines:{DEPTH_PACKING:"0"},uniforms:{depthBuffer:new k.Uniform(null),projectionMatrix:new k.Uniform(null),projectionMatrixInverse:new k.Uniform(null),cameraNear:new k.Uniform(.3),cameraFar:new k.Uniform(1e3),focusDistance:new k.Uniform(0),focusRange:new k.Uniform(0)},blending:k.NoBlending,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:eB,vertexShader:j}),this.uniforms.focalLength=this.uniforms.focusRange,null!==e&&this.copyCameraSettings(e)}set depthBuffer(e){this.uniforms.depthBuffer.value=e}set depthPacking(e){this.defines.DEPTH_PACKING=e.toFixed(0),this.needsUpdate=!0}setDepthBuffer(e,t=k.BasicDepthPacking){this.depthBuffer=e,this.depthPacking=t}get focusDistance(){return this.uniforms.focusDistance.value}set focusDistance(e){this.uniforms.focusDistance.value=e}get worldFocusDistance(){return this.focusDistance}set worldFocusDistance(e){this.focusDistance=e}getFocusDistance(e){this.uniforms.focusDistance.value=e}setFocusDistance(e){this.uniforms.focusDistance.value=e}get focalLength(){return this.focusRange}set focalLength(e){this.focusRange=e}get focusRange(){return this.uniforms.focusRange.value}set focusRange(e){this.uniforms.focusRange.value=e}get worldFocusRange(){return this.focusRange}set worldFocusRange(e){this.focusRange=e}getFocalLength(e){return this.focusRange}setFocalLength(e){this.focusRange=e}adoptCameraSettings(e){this.copyCameraSettings(e)}copyCameraSettings(e){this.uniforms.projectionMatrix.value=e.projectionMatrix,this.uniforms.projectionMatrixInverse.value=e.projectionMatrixInverse,this.uniforms.cameraNear.value=e.near,this.uniforms.cameraFar.value=e.far;let t=void 0!==this.defines.PERSPECTIVE_CAMERA;e instanceof k.PerspectiveCamera?t||(this.defines.PERSPECTIVE_CAMERA=!0,this.needsUpdate=!0):t&&(delete this.defines.PERSPECTIVE_CAMERA,this.needsUpdate=!0)}},eN=`#ifdef FRAMEBUFFER_PRECISION_HIGH -uniform mediump sampler2D inputBuffer; -#else -uniform lowp sampler2D inputBuffer; -#endif -#ifdef MASK_PRECISION_HIGH -uniform mediump sampler2D maskTexture; -#else -uniform lowp sampler2D maskTexture; -#endif -#if MASK_FUNCTION != 0 -uniform float strength; -#endif -varying vec2 vUv;void main(){ -#if COLOR_CHANNEL == 0 -float mask=texture2D(maskTexture,vUv).r; -#elif COLOR_CHANNEL == 1 -float mask=texture2D(maskTexture,vUv).g; -#elif COLOR_CHANNEL == 2 -float mask=texture2D(maskTexture,vUv).b; -#else -float mask=texture2D(maskTexture,vUv).a; -#endif -#if MASK_FUNCTION == 0 -#ifdef INVERTED -mask=(mask>0.0)?0.0:1.0; -#else -mask=(mask>0.0)?1.0:0.0; -#endif -#else -mask=clamp(mask*strength,0.0,1.0); -#ifdef INVERTED -mask=1.0-mask; -#endif -#endif -#if MASK_FUNCTION == 3 -vec4 texel=texture2D(inputBuffer,vUv);gl_FragColor=vec4(mask*texel.rgb,texel.a); -#elif MASK_FUNCTION == 2 -gl_FragColor=vec4(mask*texture2D(inputBuffer,vUv).rgb,mask); -#else -gl_FragColor=mask*texture2D(inputBuffer,vUv); -#endif -}`,eF=class extends k.ShaderMaterial{constructor(e=null){super({name:"MaskMaterial",uniforms:{maskTexture:new k.Uniform(e),inputBuffer:new k.Uniform(null),strength:new k.Uniform(1)},blending:k.NoBlending,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:eN,vertexShader:j}),this.colorChannel=0,this.maskFunction=eD.DISCARD}set inputBuffer(e){this.uniforms.inputBuffer.value=e}setInputBuffer(e){this.uniforms.inputBuffer.value=e}set maskTexture(e){this.uniforms.maskTexture.value=e,delete this.defines.MASK_PRECISION_HIGH,e.type!==k.UnsignedByteType&&(this.defines.MASK_PRECISION_HIGH="1"),this.needsUpdate=!0}setMaskTexture(e){this.maskTexture=e}set colorChannel(e){this.defines.COLOR_CHANNEL=e.toFixed(0),this.needsUpdate=!0}setColorChannel(e){this.colorChannel=e}set maskFunction(e){this.defines.MASK_FUNCTION=e.toFixed(0),this.needsUpdate=!0}setMaskFunction(e){this.maskFunction=e}get inverted(){return void 0!==this.defines.INVERTED}set inverted(e){this.inverted&&!e?delete this.defines.INVERTED:e&&(this.defines.INVERTED="1"),this.needsUpdate=!0}isInverted(){return this.inverted}setInverted(e){this.inverted=e}get strength(){return this.uniforms.strength.value}set strength(e){this.uniforms.strength.value=e}getStrength(){return this.strength}setStrength(e){this.strength=e}},eO=class extends G{constructor(e,t="inputBuffer"){super("ShaderPass"),this.fullscreenMaterial=e,this.input=t}setInput(e){this.input=e}render(e,t,i,n,r){let a=this.fullscreenMaterial.uniforms;null!==t&&void 0!==a&&void 0!==a[this.input]&&(a[this.input].value=t.texture),e.setRenderTarget(this.renderToScreen?null:i),e.render(this.scene,this.camera)}initialize(e,t,i){void 0!==i&&i!==k.UnsignedByteType&&(this.fullscreenMaterial.defines.FRAMEBUFFER_PRECISION_HIGH="1")}},ez=`#ifdef FRAMEBUFFER_PRECISION_HIGH -uniform mediump sampler2D nearColorBuffer;uniform mediump sampler2D farColorBuffer; -#else -uniform lowp sampler2D nearColorBuffer;uniform lowp sampler2D farColorBuffer; -#endif -#if MASK_FUNCTION != 1 && MASK_FUNCTION != 2 -uniform lowp sampler2D farCoCBuffer; -#endif -uniform lowp sampler2D nearCoCBuffer;uniform float scale;void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){vec4 colorNear=texture2D(nearColorBuffer,uv);vec4 colorFar=texture2D(farColorBuffer,uv); -#if MASK_FUNCTION == 1 || MASK_FUNCTION == 2 -vec2 cocNearFar=vec2(texture2D(nearCoCBuffer,uv).r,colorFar.a);cocNearFar.x=min(cocNearFar.x*scale,1.0); -#else -vec2 cocNearFar=vec2(texture2D(nearCoCBuffer,uv).r,texture2D(farCoCBuffer,uv).g);cocNearFar=min(cocNearFar*scale,1.0);colorFar.a*=cocNearFar.y; -#endif -vec4 result=inputColor*(1.0-cocNearFar.y)+colorFar;result=mix(result,colorNear,cocNearFar.x);outputColor=result;}`,ek=new k.Vector3,eH=class extends el{constructor(e,{blendFunction:t,worldFocusDistance:i,worldFocusRange:n,focalLength:r,focusDistance:a=i||3,focusRange:s=n||r||2,bokehScale:o=1,resolutionScale:l=.5,width:u,height:c,resolutionX:h=u||en.AUTO_SIZE,resolutionY:d=c||en.AUTO_SIZE}={}){super("DepthOfFieldEffect",ez,{blendFunction:t,attributes:1,uniforms:new Map([["nearColorBuffer",new k.Uniform(null)],["farColorBuffer",new k.Uniform(null)],["nearCoCBuffer",new k.Uniform(null)],["farCoCBuffer",new k.Uniform(null)],["scale",new k.Uniform(1)]])}),this.camera=e,this.renderTarget=new k.WebGLRenderTarget(1,1,{depthBuffer:!1}),this.renderTarget.texture.name="DoF.Intermediate",this.renderTargetMasked=this.renderTarget.clone(),this.renderTargetMasked.texture.name="DoF.Masked.Far",this.renderTargetNear=this.renderTarget.clone(),this.renderTargetNear.texture.name="DoF.Bokeh.Near",this.uniforms.get("nearColorBuffer").value=this.renderTargetNear.texture,this.renderTargetFar=this.renderTarget.clone(),this.renderTargetFar.texture.name="DoF.Bokeh.Far",this.uniforms.get("farColorBuffer").value=this.renderTargetFar.texture,this.renderTargetCoC=this.renderTarget.clone(),this.renderTargetCoC.texture.name="DoF.CoC",this.uniforms.get("farCoCBuffer").value=this.renderTargetCoC.texture,this.renderTargetCoCBlurred=this.renderTargetCoC.clone(),this.renderTargetCoCBlurred.texture.name="DoF.CoC.Blurred",this.uniforms.get("nearCoCBuffer").value=this.renderTargetCoCBlurred.texture,this.cocPass=new eO(new eU(e));const f=this.cocMaterial;f.focusDistance=a,f.focusRange=s,this.blurPass=new ef({resolutionScale:l,resolutionX:h,resolutionY:d,kernelSize:eu.MEDIUM}),this.maskPass=new eO(new eF(this.renderTargetCoC.texture)),this.maskPass.fullscreenMaterial.colorChannel=1,this.maskFunction=eD.MULTIPLY_RGB,this.bokehNearBasePass=new eO(new eL(!1,!0)),this.bokehNearBasePass.fullscreenMaterial.cocBuffer=this.renderTargetCoCBlurred.texture,this.bokehNearFillPass=new eO(new eL(!0,!0)),this.bokehNearFillPass.fullscreenMaterial.cocBuffer=this.renderTargetCoCBlurred.texture,this.bokehFarBasePass=new eO(new eL(!1,!1)),this.bokehFarBasePass.fullscreenMaterial.cocBuffer=this.renderTargetCoC.texture,this.bokehFarFillPass=new eO(new eL(!0,!1)),this.bokehFarFillPass.fullscreenMaterial.cocBuffer=this.renderTargetCoC.texture,this.target=null;const p=this.resolution=new en(this,h,d,l);p.addEventListener("change",e=>this.setSize(p.baseWidth,p.baseHeight)),this.bokehScale=o}set mainCamera(e){this.camera=e,this.cocMaterial.copyCameraSettings(e)}get cocTexture(){return this.renderTargetCoC.texture}get maskFunction(){return this.maskPass.fullscreenMaterial.maskFunction}set maskFunction(e){this.maskFunction!==e&&(this.defines.set("MASK_FUNCTION",e.toFixed(0)),this.maskPass.fullscreenMaterial.maskFunction=e,this.setChanged())}get cocMaterial(){return this.cocPass.fullscreenMaterial}get circleOfConfusionMaterial(){return this.cocMaterial}getCircleOfConfusionMaterial(){return this.cocMaterial}getBlurPass(){return this.blurPass}getResolution(){return this.resolution}get bokehScale(){return this.uniforms.get("scale").value}set bokehScale(e){this.bokehNearBasePass.fullscreenMaterial.scale=e,this.bokehNearFillPass.fullscreenMaterial.scale=e,this.bokehFarBasePass.fullscreenMaterial.scale=e,this.bokehFarFillPass.fullscreenMaterial.scale=e,this.maskPass.fullscreenMaterial.strength=e,this.uniforms.get("scale").value=e}getBokehScale(){return this.bokehScale}setBokehScale(e){this.bokehScale=e}getTarget(){return this.target}setTarget(e){this.target=e}calculateFocusDistance(e){return this.camera.getWorldPosition(ek).distanceTo(e)}setDepthTexture(e,t=k.BasicDepthPacking){this.cocMaterial.depthBuffer=e,this.cocMaterial.depthPacking=t}update(e,t,i){let n=this.renderTarget,r=this.renderTargetCoC,a=this.renderTargetCoCBlurred,s=this.renderTargetMasked;if(null!==this.target){let e=this.calculateFocusDistance(this.target);this.cocMaterial.focusDistance=e}this.cocPass.render(e,null,r),this.blurPass.render(e,r,a),this.maskPass.render(e,t,s),this.bokehFarBasePass.render(e,s,n),this.bokehFarFillPass.render(e,n,this.renderTargetFar),this.bokehNearBasePass.render(e,t,n),this.bokehNearFillPass.render(e,n,this.renderTargetNear)}setSize(e,t){let i=this.resolution;i.setBaseSize(e,t);let n=i.width,r=i.height;this.cocPass.setSize(e,t),this.blurPass.setSize(e,t),this.maskPass.setSize(e,t),this.renderTargetFar.setSize(e,t),this.renderTargetCoC.setSize(e,t),this.renderTargetMasked.setSize(e,t),this.renderTarget.setSize(n,r),this.renderTargetNear.setSize(n,r),this.renderTargetCoCBlurred.setSize(n,r),this.bokehNearBasePass.fullscreenMaterial.setSize(e,t),this.bokehNearFillPass.fullscreenMaterial.setSize(e,t),this.bokehFarBasePass.fullscreenMaterial.setSize(e,t),this.bokehFarFillPass.fullscreenMaterial.setSize(e,t)}initialize(e,t,i){this.cocPass.initialize(e,t,i),this.maskPass.initialize(e,t,i),this.bokehNearBasePass.initialize(e,t,i),this.bokehNearFillPass.initialize(e,t,i),this.bokehFarBasePass.initialize(e,t,i),this.bokehFarFillPass.initialize(e,t,i),this.blurPass.initialize(e,t,k.UnsignedByteType),e.capabilities.logarithmicDepthBuffer&&(this.cocPass.fullscreenMaterial.defines.LOG_DEPTH="1"),void 0!==i&&(this.renderTarget.texture.type=i,this.renderTargetNear.texture.type=i,this.renderTargetFar.texture.type=i,this.renderTargetMasked.texture.type=i,null!==e&&e.outputColorSpace===k.SRGBColorSpace&&(this.renderTarget.texture.colorSpace=k.SRGBColorSpace,this.renderTargetNear.texture.colorSpace=k.SRGBColorSpace,this.renderTargetFar.texture.colorSpace=k.SRGBColorSpace,this.renderTargetMasked.texture.colorSpace=k.SRGBColorSpace))}},eG=class extends el{constructor({blendFunction:e,angle:t=.5*Math.PI,scale:i=1}={}){super("DotScreenEffect","uniform vec2 angle;uniform float scale;float pattern(const in vec2 uv){vec2 point=scale*vec2(dot(angle.yx,vec2(uv.x,-uv.y)),dot(angle,uv));return(sin(point.x)*sin(point.y))*4.0;}void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){vec3 color=vec3(inputColor.rgb*10.0-5.0+pattern(uv*resolution));outputColor=vec4(color,inputColor.a);}",{blendFunction:e,uniforms:new Map([["angle",new k.Uniform(new k.Vector2)],["scale",new k.Uniform(i)]])}),this.angle=t}get angle(){return Math.acos(this.uniforms.get("angle").value.y)}set angle(e){this.uniforms.get("angle").value.set(Math.sin(e),Math.cos(e))}getAngle(){return this.angle}setAngle(e){this.angle=e}get scale(){return this.uniforms.get("scale").value}set scale(e){this.uniforms.get("scale").value=e}},eV=`#define QUALITY(q) ((q) < 5 ? 1.0 : ((q) > 5 ? ((q) < 10 ? 2.0 : ((q) < 11 ? 4.0 : 8.0)) : 1.5)) -#define ONE_OVER_TWELVE 0.08333333333333333 -varying vec2 vUvDown;varying vec2 vUvUp;varying vec2 vUvLeft;varying vec2 vUvRight;varying vec2 vUvDownLeft;varying vec2 vUvUpRight;varying vec2 vUvUpLeft;varying vec2 vUvDownRight;vec4 fxaa(const in vec4 inputColor,const in vec2 uv){float lumaCenter=luminance(inputColor.rgb);float lumaDown=luminance(texture2D(inputBuffer,vUvDown).rgb);float lumaUp=luminance(texture2D(inputBuffer,vUvUp).rgb);float lumaLeft=luminance(texture2D(inputBuffer,vUvLeft).rgb);float lumaRight=luminance(texture2D(inputBuffer,vUvRight).rgb);float lumaMin=min(lumaCenter,min(min(lumaDown,lumaUp),min(lumaLeft,lumaRight)));float lumaMax=max(lumaCenter,max(max(lumaDown,lumaUp),max(lumaLeft,lumaRight)));float lumaRange=lumaMax-lumaMin;if(lumaRange=edgeVertical);float stepLength=isHorizontal?texelSize.y:texelSize.x;float luma1=isHorizontal?lumaDown:lumaLeft;float luma2=isHorizontal?lumaUp:lumaRight;float gradient1=abs(luma1-lumaCenter);float gradient2=abs(luma2-lumaCenter);bool is1Steepest=gradient1>=gradient2;float gradientScaled=0.25*max(gradient1,gradient2);float lumaLocalAverage=0.0;if(is1Steepest){stepLength=-stepLength;lumaLocalAverage=0.5*(luma1+lumaCenter);}else{lumaLocalAverage=0.5*(luma2+lumaCenter);}vec2 currentUv=uv;if(isHorizontal){currentUv.y+=stepLength*0.5;}else{currentUv.x+=stepLength*0.5;}vec2 offset=isHorizontal?vec2(texelSize.x,0.0):vec2(0.0,texelSize.y);vec2 uv1=currentUv-offset*QUALITY(0);vec2 uv2=currentUv+offset*QUALITY(0);float lumaEnd1=luminance(texture2D(inputBuffer,uv1).rgb);float lumaEnd2=luminance(texture2D(inputBuffer,uv2).rgb);lumaEnd1-=lumaLocalAverage;lumaEnd2-=lumaLocalAverage;bool reached1=abs(lumaEnd1)>=gradientScaled;bool reached2=abs(lumaEnd2)>=gradientScaled;bool reachedBoth=reached1&&reached2;if(!reached1){uv1-=offset*QUALITY(1);}if(!reached2){uv2+=offset*QUALITY(1);}if(!reachedBoth){for(int i=2;i=gradientScaled;reached2=abs(lumaEnd2)>=gradientScaled;reachedBoth=reached1&&reached2;if(!reached1){uv1-=offset*QUALITY(i);}if(!reached2){uv2+=offset*QUALITY(i);}if(reachedBoth){break;}}}float distance1=isHorizontal?(uv.x-uv1.x):(uv.y-uv1.y);float distance2=isHorizontal?(uv2.x-uv.x):(uv2.y-uv.y);bool isDirection1=distance1distortion.x-columns*random){float sx=clamp(ceil(seeds.x),0.0,1.0);uv.y=sx*(1.0-(uv.y+distortion.y))+(1.0-sx)*distortion.y;}if(uv.xdistortion.y-columns*random){float sy=clamp(ceil(seeds.y),0.0,1.0);uv.x=sy*distortion.x+(1.0-sy)*(1.0-(uv.x+distortion.x));}vec2 normal=texture2D(perturbationMap,uv*random*random).rg;uv+=normal*seeds*(random*0.2);}}",{uniforms:new Map([["perturbationMap",new k.Uniform(null)],["columns",new k.Uniform(r)],["active",new k.Uniform(!1)],["random",new k.Uniform(1)],["seeds",new k.Uniform(new k.Vector2)],["distortion",new k.Uniform(new k.Vector2)]])}),null===s){const e=new eX(o,o,k.RGBAFormat);e.name=eY,this.perturbationMap=e}else this.perturbationMap=s;this.time=0,this.distortion=this.uniforms.get("distortion").value,this.delay=t,this.duration=i,this.breakPoint=new k.Vector2(eQ(this.delay.x,this.delay.y),eQ(this.duration.x,this.duration.y)),this.strength=n,this.mode=ej.SPORADIC,this.ratio=a,this.chromaticAberrationOffset=e}get seeds(){return this.uniforms.get("seeds").value}get active(){return this.uniforms.get("active").value}isActive(){return this.active}get minDelay(){return this.delay.x}set minDelay(e){this.delay.x=e}getMinDelay(){return this.delay.x}setMinDelay(e){this.delay.x=e}get maxDelay(){return this.delay.y}set maxDelay(e){this.delay.y=e}getMaxDelay(){return this.delay.y}setMaxDelay(e){this.delay.y=e}get minDuration(){return this.duration.x}set minDuration(e){this.duration.x=e}getMinDuration(){return this.duration.x}setMinDuration(e){this.duration.x=e}get maxDuration(){return this.duration.y}set maxDuration(e){this.duration.y=e}getMaxDuration(){return this.duration.y}setMaxDuration(e){this.duration.y=e}get minStrength(){return this.strength.x}set minStrength(e){this.strength.x=e}getMinStrength(){return this.strength.x}setMinStrength(e){this.strength.x=e}get maxStrength(){return this.strength.y}set maxStrength(e){this.strength.y=e}getMaxStrength(){return this.strength.y}setMaxStrength(e){this.strength.y=e}getMode(){return this.mode}setMode(e){this.mode=e}getGlitchRatio(){return 1-this.ratio}setGlitchRatio(e){this.ratio=Math.min(Math.max(1-e,0),1)}get columns(){return this.uniforms.get("columns").value}set columns(e){this.uniforms.get("columns").value=e}getGlitchColumns(){return this.columns}setGlitchColumns(e){this.columns=e}getChromaticAberrationOffset(){return this.chromaticAberrationOffset}setChromaticAberrationOffset(e){this.chromaticAberrationOffset=e}get perturbationMap(){return this.uniforms.get("perturbationMap").value}set perturbationMap(e){let t=this.perturbationMap;null!==t&&t.name===eY&&t.dispose(),e.minFilter=e.magFilter=k.NearestFilter,e.wrapS=e.wrapT=k.RepeatWrapping,e.generateMipmaps=!1,this.uniforms.get("perturbationMap").value=e}getPerturbationMap(){return this.perturbationMap}setPerturbationMap(e){this.perturbationMap=e}generatePerturbationMap(e=64){let t=new eX(e,e,k.RGBAFormat);return t.name=eY,t}update(e,t,i){let n,r=this.mode,a=this.breakPoint,s=this.chromaticAberrationOffset,o=this.strength,l=this.time,u=!1,c=0,h=0;r!==ej.DISABLED&&(r===ej.SPORADIC&&(l+=i,n=l>a.x,l>=a.x+a.y&&(a.set(eQ(this.delay.x,this.delay.y),eQ(this.duration.x,this.duration.y)),l=0)),c=Math.random(),this.uniforms.get("random").value=c,n&&c>this.ratio||r===ej.CONSTANT_WILD?(u=!0,c*=.03*o.y,h=eQ(-Math.PI,Math.PI),this.seeds.set(eQ(-o.y,o.y),eQ(-o.y,o.y)),this.distortion.set(eQ(0,1),eQ(0,1))):(n||r===ej.CONSTANT_MILD)&&(u=!0,c*=.03*o.x,h=eQ(-Math.PI,Math.PI),this.seeds.set(eQ(-o.x,o.x),eQ(-o.x,o.x)),this.distortion.set(eQ(0,1),eQ(0,1))),this.time=l),null!==s&&(u?s.set(Math.cos(h),Math.sin(h)).multiplyScalar(c):s.set(0,0)),this.uniforms.get("active").value=u}dispose(){let e=this.perturbationMap;null!==e&&e.name===eY&&e.dispose()}},eK=`#include -#include -#ifdef FRAMEBUFFER_PRECISION_HIGH -uniform mediump sampler2D inputBuffer; -#else -uniform lowp sampler2D inputBuffer; -#endif -uniform vec2 lightPosition;uniform float exposure;uniform float decay;uniform float density;uniform float weight;uniform float clampMax;varying vec2 vUv;void main(){vec2 coord=vUv;vec2 delta=lightPosition-coord;delta*=1.0/SAMPLES_FLOAT*density;float illuminationDecay=1.0;vec4 color=vec4(0.0);for(int i=0;i -}`,eZ=class extends k.ShaderMaterial{constructor(e){super({name:"GodRaysMaterial",defines:{SAMPLES_INT:"60",SAMPLES_FLOAT:"60.0"},uniforms:{inputBuffer:new k.Uniform(null),lightPosition:new k.Uniform(e),density:new k.Uniform(1),decay:new k.Uniform(1),weight:new k.Uniform(1),exposure:new k.Uniform(1),clampMax:new k.Uniform(1)},blending:k.NoBlending,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:eK,vertexShader:j})}set inputBuffer(e){this.uniforms.inputBuffer.value=e}setInputBuffer(e){this.uniforms.inputBuffer.value=e}get lightPosition(){return this.uniforms.lightPosition.value}getLightPosition(){return this.uniforms.lightPosition.value}setLightPosition(e){this.uniforms.lightPosition.value=e}get density(){return this.uniforms.density.value}set density(e){this.uniforms.density.value=e}getDensity(){return this.uniforms.density.value}setDensity(e){this.uniforms.density.value=e}get decay(){return this.uniforms.decay.value}set decay(e){this.uniforms.decay.value=e}getDecay(){return this.uniforms.decay.value}setDecay(e){this.uniforms.decay.value=e}get weight(){return this.uniforms.weight.value}set weight(e){this.uniforms.weight.value=e}getWeight(){return this.uniforms.weight.value}setWeight(e){this.uniforms.weight.value=e}get exposure(){return this.uniforms.exposure.value}set exposure(e){this.uniforms.exposure.value=e}getExposure(){return this.uniforms.exposure.value}setExposure(e){this.uniforms.exposure.value=e}get maxIntensity(){return this.uniforms.clampMax.value}set maxIntensity(e){this.uniforms.clampMax.value=e}getMaxIntensity(){return this.uniforms.clampMax.value}setMaxIntensity(e){this.uniforms.clampMax.value=e}get samples(){return Number(this.defines.SAMPLES_INT)}set samples(e){let t=Math.floor(e);this.defines.SAMPLES_INT=t.toFixed(0),this.defines.SAMPLES_FLOAT=t.toFixed(1),this.needsUpdate=!0}getSamples(){return this.samples}setSamples(e){this.samples=e}},eJ=class extends G{constructor(e,t,i=null){super("RenderPass",e,t),this.needsSwap=!1,this.needsDepthBlit=!0,this.clearPass=new q,this.overrideMaterialManager=null===i?null:new ei(i),this.ignoreBackground=!1,this.skipShadowMapUpdate=!1,this.selection=null}set mainScene(e){this.scene=e}set mainCamera(e){this.camera=e}get renderToScreen(){return super.renderToScreen}set renderToScreen(e){super.renderToScreen=e,this.clearPass.renderToScreen=e}get overrideMaterial(){let e=this.overrideMaterialManager;return null!==e?e.material:null}set overrideMaterial(e){let t=this.overrideMaterialManager;null!==e?null!==t?t.setMaterial(e):this.overrideMaterialManager=new ei(e):null!==t&&(t.dispose(),this.overrideMaterialManager=null)}getOverrideMaterial(){return this.overrideMaterial}setOverrideMaterial(e){this.overrideMaterial=e}get clear(){return this.clearPass.enabled}set clear(e){this.clearPass.enabled=e}getSelection(){return this.selection}setSelection(e){this.selection=e}isBackgroundDisabled(){return this.ignoreBackground}setBackgroundDisabled(e){this.ignoreBackground=e}isShadowMapDisabled(){return this.skipShadowMapUpdate}setShadowMapDisabled(e){this.skipShadowMapUpdate=e}getClearPass(){return this.clearPass}render(e,t,i,n,r){let a=this.scene,s=this.camera,o=this.selection,l=s.layers.mask,u=a.background,c=e.shadowMap.autoUpdate,h=this.renderToScreen?null:t;null!==o&&s.layers.set(o.getLayer()),this.skipShadowMapUpdate&&(e.shadowMap.autoUpdate=!1),(this.ignoreBackground||null!==this.clearPass.overrideClearColor)&&(a.background=null),this.clearPass.enabled&&this.clearPass.render(e,t),e.setRenderTarget(h),null!==this.overrideMaterialManager?this.overrideMaterialManager.render(e,a,s):e.render(a,s),s.layers.mask=l,a.background=u,e.shadowMap.autoUpdate=c}},e$=`#ifdef FRAMEBUFFER_PRECISION_HIGH -uniform mediump sampler2D map; -#else -uniform lowp sampler2D map; -#endif -void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){outputColor=texture2D(map,uv);}`,e0=new k.Vector3,e1=new k.Matrix4,e2=class extends el{constructor(e,t,{blendFunction:i=28,samples:n=60,density:r=.96,decay:a=.9,weight:s=.4,exposure:o=.6,clampMax:l=1,blur:u=!0,kernelSize:c=eu.SMALL,resolutionScale:h=.5,width:d=en.AUTO_SIZE,height:f=en.AUTO_SIZE,resolutionX:p=d,resolutionY:m=f}={}){super("GodRaysEffect",e$,{blendFunction:i,attributes:1,uniforms:new Map([["map",new k.Uniform(null)]])}),this.camera=e,this._lightSource=t,this.lightSource=t,this.lightScene=new k.Scene,this.screenPosition=new k.Vector2,this.renderTargetA=new k.WebGLRenderTarget(1,1,{depthBuffer:!1}),this.renderTargetA.texture.name="GodRays.Target.A",this.renderTargetB=this.renderTargetA.clone(),this.renderTargetB.texture.name="GodRays.Target.B",this.uniforms.get("map").value=this.renderTargetB.texture,this.renderTargetLight=new k.WebGLRenderTarget(1,1),this.renderTargetLight.texture.name="GodRays.Light",this.renderTargetLight.depthTexture=new k.DepthTexture,this.renderPassLight=new eJ(this.lightScene,e),this.renderPassLight.clearPass.enabled=!1,this.blurPass=new ef({kernelSize:c}),this.blurPass.enabled=u,this.copyPass=new Y(this.renderTargetLight),this.copyPass.fullscreenMaterial.channelWeights=new k.Vector4(0,0,0,1),this.godRaysPass=new eO(new eZ(this.screenPosition));const g=this.godRaysMaterial;g.density=r,g.decay=a,g.weight=s,g.exposure=o,g.maxIntensity=l,g.samples=n;const v=this.resolution=new en(this,p,m,h);v.addEventListener("change",e=>this.setSize(v.baseWidth,v.baseHeight))}set mainCamera(e){this.camera=e,this.renderPassLight.mainCamera=e}get lightSource(){return this._lightSource}set lightSource(e){this._lightSource=e,null!==e&&(e.material.depthWrite=!1,e.material.transparent=!0)}getBlurPass(){return this.blurPass}get texture(){return this.renderTargetB.texture}getTexture(){return this.texture}get godRaysMaterial(){return this.godRaysPass.fullscreenMaterial}getGodRaysMaterial(){return this.godRaysMaterial}getResolution(){return this.resolution}get width(){return this.resolution.width}set width(e){this.resolution.preferredWidth=e}get height(){return this.resolution.height}set height(e){this.resolution.preferredHeight=e}get dithering(){return this.godRaysMaterial.dithering}set dithering(e){let t=this.godRaysMaterial;t.dithering=e,t.needsUpdate=!0}get blur(){return this.blurPass.enabled}set blur(e){this.blurPass.enabled=e}get kernelSize(){return this.blurPass.kernelSize}set kernelSize(e){this.blurPass.kernelSize=e}getResolutionScale(){return this.resolution.scale}setResolutionScale(e){this.resolution.scale=e}get samples(){return this.godRaysMaterial.samples}set samples(e){this.godRaysMaterial.samples=e}setDepthTexture(e,t=k.BasicDepthPacking){this.copyPass.fullscreenMaterial.depthBuffer=e,this.copyPass.fullscreenMaterial.depthPacking=t}update(e,t,i){let n=this.lightSource,r=n.parent,a=n.matrixAutoUpdate,s=this.renderTargetA,o=this.renderTargetLight;n.material.depthWrite=!0,n.matrixAutoUpdate=!1,n.updateWorldMatrix(!0,!1),null!==r&&(a||e1.copy(n.matrix),n.matrix.copy(n.matrixWorld)),this.lightScene.add(n),this.copyPass.render(e,t),this.renderPassLight.render(e,o),n.material.depthWrite=!1,n.matrixAutoUpdate=a,null!==r&&(a||n.matrix.copy(e1),r.add(n)),e0.setFromMatrixPosition(n.matrixWorld).project(this.camera),this.screenPosition.set(Math.min(Math.max((e0.x+1)*.5,-1),2),Math.min(Math.max((e0.y+1)*.5,-1),2));let l=o;this.blurPass.enabled&&(this.blurPass.render(e,l,s),l=s),this.godRaysPass.render(e,l,this.renderTargetB)}setSize(e,t){let i=this.resolution;i.setBaseSize(e,t);let n=i.width,r=i.height;this.renderTargetLight.setSize(e,t),this.renderTargetA.setSize(n,r),this.renderTargetB.setSize(n,r),this.blurPass.resolution.copy(i)}initialize(e,t,i){this.blurPass.initialize(e,t,i),this.renderPassLight.initialize(e,t,i),this.copyPass.initialize(e,t,i),this.godRaysPass.initialize(e,t,i),void 0!==i&&(this.renderTargetA.texture.type=i,this.renderTargetB.texture.type=i,this.renderTargetLight.texture.type=i,null!==e&&e.outputColorSpace===k.SRGBColorSpace&&(this.renderTargetA.texture.colorSpace=k.SRGBColorSpace,this.renderTargetB.texture.colorSpace=k.SRGBColorSpace,this.renderTargetLight.texture.colorSpace=k.SRGBColorSpace))}},e3=class extends el{constructor({blendFunction:e=24,scale:t=1,lineWidth:i=0}={}){super("GridEffect","uniform vec2 scale;uniform float lineWidth;void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){float grid=0.5-max(abs(mod(uv.x*scale.x,1.0)-0.5),abs(mod(uv.y*scale.y,1.0)-0.5));outputColor=vec4(vec3(smoothstep(0.0,lineWidth,grid)),inputColor.a);}",{blendFunction:e,uniforms:new Map([["scale",new k.Uniform(new k.Vector2)],["lineWidth",new k.Uniform(i)]])}),this.resolution=new k.Vector2,this.s=0,this.scale=t,this.l=0,this.lineWidth=i}get scale(){return this.s}set scale(e){this.s=Math.max(e,1e-6),this.setSize(this.resolution.width,this.resolution.height)}getScale(){return this.scale}setScale(e){this.scale=e}get lineWidth(){return this.l}set lineWidth(e){this.l=e,this.setSize(this.resolution.width,this.resolution.height)}getLineWidth(){return this.lineWidth}setLineWidth(e){this.lineWidth=e}setSize(e,t){this.resolution.set(e,t);let i=e/t,n=this.scale*(.125*t);this.uniforms.get("scale").value.set(i*n,n),this.uniforms.get("lineWidth").value=n/t+this.lineWidth}},e4=class extends el{constructor({blendFunction:e=30,hue:t=0,saturation:i=0}={}){super("HueSaturationEffect","uniform vec3 hue;uniform float saturation;void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){vec3 color=vec3(dot(inputColor.rgb,hue.xyz),dot(inputColor.rgb,hue.zxy),dot(inputColor.rgb,hue.yzx));float average=(color.r+color.g+color.b)/3.0;vec3 diff=average-color;if(saturation>0.0){color+=diff*(1.0-1.0/(1.001-saturation));}else{color+=diff*-saturation;}outputColor=vec4(min(color,1.0),inputColor.a);}",{blendFunction:e,uniforms:new Map([["hue",new k.Uniform(new k.Vector3)],["saturation",new k.Uniform(i)]])}),this.hue=t}get saturation(){return this.uniforms.get("saturation").value}set saturation(e){this.uniforms.get("saturation").value=e}getSaturation(){return this.saturation}setSaturation(e){this.saturation=e}get hue(){return Math.acos((3*this.uniforms.get("hue").value.x-1)/2)}set hue(e){let t=Math.sin(e),i=Math.cos(e);this.uniforms.get("hue").value.set((2*i+1)/3,(-Math.sqrt(3)*t-i+1)/3,(Math.sqrt(3)*t-i+1)/3)}getHue(){return this.hue}setHue(e){this.hue=e}};function e5(e,t,i){let n=document.createElement("canvas"),r=n.getContext("2d");if(n.width=e,n.height=t,i instanceof Image)r.drawImage(i,0,0);else{let n=r.createImageData(e,t);n.data.set(i),r.putImageData(n,0,0)}return n}var e6=class e{constructor(e=0,t=0,i=null){this.width=e,this.height=t,this.data=i}toCanvas(){return"u"{let s=URL.createObjectURL(new Blob(['(()=>{var O={SCALE_UP:"lut.scaleup"};var _=[new Float32Array(3),new Float32Array(3)],n=[new Float32Array(3),new Float32Array(3),new Float32Array(3),new Float32Array(3)],Z=[[new Float32Array([0,0,0]),new Float32Array([1,0,0]),new Float32Array([1,1,0]),new Float32Array([1,1,1])],[new Float32Array([0,0,0]),new Float32Array([1,0,0]),new Float32Array([1,0,1]),new Float32Array([1,1,1])],[new Float32Array([0,0,0]),new Float32Array([0,0,1]),new Float32Array([1,0,1]),new Float32Array([1,1,1])],[new Float32Array([0,0,0]),new Float32Array([0,1,0]),new Float32Array([1,1,0]),new Float32Array([1,1,1])],[new Float32Array([0,0,0]),new Float32Array([0,1,0]),new Float32Array([0,1,1]),new Float32Array([1,1,1])],[new Float32Array([0,0,0]),new Float32Array([0,0,1]),new Float32Array([0,1,1]),new Float32Array([1,1,1])]];function d(a,t,r,m){let i=r[0]-t[0],e=r[1]-t[1],y=r[2]-t[2],h=a[0]-t[0],A=a[1]-t[1],w=a[2]-t[2],c=e*w-y*A,l=y*h-i*w,x=i*A-e*h,u=Math.sqrt(c*c+l*l+x*x),b=u*.5,s=c/u,F=l/u,f=x/u,p=-(a[0]*s+a[1]*F+a[2]*f),M=m[0]*s+m[1]*F+m[2]*f;return Math.abs(M+p)*b/3}function V(a,t,r,m,i,e){let y=(r+m*t+i*t*t)*4;e[0]=a[y+0],e[1]=a[y+1],e[2]=a[y+2]}function k(a,t,r,m,i,e){let y=r*(t-1),h=m*(t-1),A=i*(t-1),w=Math.floor(y),c=Math.floor(h),l=Math.floor(A),x=Math.ceil(y),u=Math.ceil(h),b=Math.ceil(A),s=y-w,F=h-c,f=A-l;if(w===y&&c===h&&l===A)V(a,t,y,h,A,e);else{let p;s>=F&&F>=f?p=Z[0]:s>=f&&f>=F?p=Z[1]:f>=s&&s>=F?p=Z[2]:F>=s&&s>=f?p=Z[3]:F>=f&&f>=s?p=Z[4]:f>=F&&F>=s&&(p=Z[5]);let[M,g,X,Y]=p,P=_[0];P[0]=s,P[1]=F,P[2]=f;let o=_[1],L=x-w,S=u-c,U=b-l;o[0]=L*M[0]+w,o[1]=S*M[1]+c,o[2]=U*M[2]+l,V(a,t,o[0],o[1],o[2],n[0]),o[0]=L*g[0]+w,o[1]=S*g[1]+c,o[2]=U*g[2]+l,V(a,t,o[0],o[1],o[2],n[1]),o[0]=L*X[0]+w,o[1]=S*X[1]+c,o[2]=U*X[2]+l,V(a,t,o[0],o[1],o[2],n[2]),o[0]=L*Y[0]+w,o[1]=S*Y[1]+c,o[2]=U*Y[2]+l,V(a,t,o[0],o[1],o[2],n[3]);let T=d(g,X,Y,P)*6,q=d(M,X,Y,P)*6,C=d(M,g,Y,P)*6,E=d(M,g,X,P)*6;n[0][0]*=T,n[0][1]*=T,n[0][2]*=T,n[1][0]*=q,n[1][1]*=q,n[1][2]*=q,n[2][0]*=C,n[2][1]*=C,n[2][2]*=C,n[3][0]*=E,n[3][1]*=E,n[3][2]*=E,e[0]=n[0][0]+n[1][0]+n[2][0]+n[3][0],e[1]=n[0][1]+n[1][1]+n[2][1]+n[3][1],e[2]=n[0][2]+n[1][2]+n[2][2]+n[3][2]}}var v=class{static expand(t,r){let m=Math.cbrt(t.length/4),i=new Float32Array(3),e=new t.constructor(r**3*4),y=t instanceof Uint8Array?255:1,h=r**2,A=1/(r-1);for(let w=0;w{let t=a.data,r=t.data;t.operation===O.SCALE_UP&&(r=v.expand(r,t.size)),postMessage(r,[r.buffer]),close()});})();\n'],{type:"text/javascript"})),o=new Worker(s);o.addEventListener("error",e=>a(e.error)),o.addEventListener("message",i=>{let n=new e(i.data,t);this.colorSpace=n.colorSpace,n.type=this.type,n.name=this.name,URL.revokeObjectURL(s),r(n)});let l=i?[n.data.buffer]:[];o.postMessage({operation:"lut.scaleup",data:n.data,size:t},l)})}applyLUT(e){let t=this.image,i=e.image,n=Math.min(t.width,t.height,t.depth);if(n!==Math.min(i.width,i.height,i.depth))console.error("Size mismatch");else if(e.type!==k.FloatType||this.type!==k.FloatType)console.error("Both LUTs must be FloatType textures");else if(e.format!==k.RGBAFormat||this.format!==k.RGBAFormat)console.error("Both LUTs must be RGBA textures");else{let e=t.data,r=i.data,a=n**2,s=n-1;for(let t=0,i=n**3;ta){i=new Uint8Array(e.length);for(let t=0;t=f.g){if(f.g>f.b){frac=f.rgb;v2=vec3(v4.x,v1.y,v1.z);v3=vec3(v4.x,v4.y,v1.z);}else if(f.r>=f.b){frac=f.rbg;v2=vec3(v4.x,v1.y,v1.z);v3=vec3(v4.x,v1.y,v4.z);}else{frac=f.brg;v2=vec3(v1.x,v1.y,v4.z);v3=vec3(v4.x,v1.y,v4.z);}}else{if(f.b>f.g){frac=f.bgr;v2=vec3(v1.x,v1.y,v4.z);v3=vec3(v1.x,v4.y,v4.z);}else if(f.r>=f.b){frac=f.grb;v2=vec3(v1.x,v4.y,v1.z);v3=vec3(v4.x,v4.y,v1.z);}else{frac=f.gbr;v2=vec3(v1.x,v4.y,v1.z);v3=vec3(v1.x,v4.y,v4.z);}}vec4 n1=texture(lut,v1);vec4 n2=texture(lut,v2);vec4 n3=texture(lut,v3);vec4 n4=texture(lut,v4);vec4 weights=vec4(1.0-frac.x,frac.x-frac.y,frac.y-frac.z,frac.z);vec4 result=weights*mat4(vec4(n1.r,n2.r,n3.r,n4.r),vec4(n1.g,n2.g,n3.g,n4.g),vec4(n1.b,n2.b,n3.b,n4.b),vec4(1.0));return vec4(result.rgb,1.0); -#else -return texture(lut,rgb); -#endif -} -#else -#ifdef LUT_PRECISION_HIGH -#ifdef GL_FRAGMENT_PRECISION_HIGH -uniform highp sampler2D lut; -#else -uniform mediump sampler2D lut; -#endif -#else -uniform lowp sampler2D lut; -#endif -vec4 applyLUT(const in vec3 rgb){float slice=rgb.b*LUT_SIZE;float slice0=floor(slice);float interp=slice-slice0;float centeredInterp=interp-0.5;float slice1=slice0+sign(centeredInterp); -#ifdef LUT_STRIP_HORIZONTAL -float xOffset=clamp(rgb.r*LUT_TEXEL_HEIGHT,LUT_TEXEL_WIDTH*0.5,LUT_TEXEL_HEIGHT-LUT_TEXEL_WIDTH*0.5);vec2 uv0=vec2(slice0*LUT_TEXEL_HEIGHT+xOffset,rgb.g);vec2 uv1=vec2(slice1*LUT_TEXEL_HEIGHT+xOffset,rgb.g); -#else -float yOffset=clamp(rgb.g*LUT_TEXEL_WIDTH,LUT_TEXEL_HEIGHT*0.5,LUT_TEXEL_WIDTH-LUT_TEXEL_HEIGHT*0.5);vec2 uv0=vec2(rgb.r,slice0*LUT_TEXEL_WIDTH+yOffset);vec2 uv1=vec2(rgb.r,slice1*LUT_TEXEL_WIDTH+yOffset); -#endif -vec4 sample0=texture2D(lut,uv0);vec4 sample1=texture2D(lut,uv1);return mix(sample0,sample1,abs(centeredInterp));} -#endif -void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){vec3 c=inputColor.rgb; -#ifdef CUSTOM_INPUT_DOMAIN -if(c.r>=domainMin.r&&c.g>=domainMin.g&&c.b>=domainMin.b&&c.r<=domainMax.r&&c.g<=domainMax.g&&c.b<=domainMax.b){c=applyLUT(scale*c+offset).rgb;}else{c=inputColor.rgb;} -#else -#if !defined(LUT_3D) || defined(TETRAHEDRAL_INTERPOLATION) -c=clamp(c,0.0,1.0); -#endif -c=applyLUT(scale*c+offset).rgb; -#endif -outputColor=vec4(c,inputColor.a);}`,te=class extends el{constructor(e,{blendFunction:t=30,tetrahedralInterpolation:i=!1,inputColorSpace:n=k.SRGBColorSpace}={}){super("LUT3DEffect",e7,{blendFunction:t,uniforms:new Map([["lut",new k.Uniform(null)],["scale",new k.Uniform(new k.Vector3)],["offset",new k.Uniform(new k.Vector3)],["domainMin",new k.Uniform(null)],["domainMax",new k.Uniform(null)]])}),this.tetrahedralInterpolation=i,this.inputColorSpace=n,this.lut=e}get lut(){return this.uniforms.get("lut").value}set lut(e){let t=this.defines,i=this.uniforms;if(this.lut!==e&&(i.get("lut").value=e,null!==e)){let n=e.image,r=this.tetrahedralInterpolation;if(t.clear(),t.set("LUT_SIZE",Math.min(n.width,n.height).toFixed(16)),t.set("LUT_TEXEL_WIDTH",(1/n.width).toFixed(16)),t.set("LUT_TEXEL_HEIGHT",(1/n.height).toFixed(16)),i.get("domainMin").value=null,i.get("domainMax").value=null,(e.type===k.FloatType||e.type===k.HalfFloatType)&&t.set("LUT_PRECISION_HIGH","1"),n.width>n.height?t.set("LUT_STRIP_HORIZONTAL","1"):e instanceof k.Data3DTexture&&t.set("LUT_3D","1"),e instanceof e9){let n=e.domainMin,r=e.domainMax;(0!==n.x||0!==n.y||0!==n.z||1!==r.x||1!==r.y||1!==r.z)&&(t.set("CUSTOM_INPUT_DOMAIN","1"),i.get("domainMin").value=n.clone(),i.get("domainMax").value=r.clone())}this.tetrahedralInterpolation=r}}getLUT(){return this.lut}setLUT(e){this.lut=e}updateScaleOffset(){let e=this.lut;if(null!==e){let t=Math.min(e.image.width,e.image.height),i=this.uniforms.get("scale").value,n=this.uniforms.get("offset").value;if(this.tetrahedralInterpolation&&e instanceof k.Data3DTexture)if(this.defines.has("CUSTOM_INPUT_DOMAIN")){let r=e.domainMax.clone().sub(e.domainMin);i.setScalar(t-1).divide(r),n.copy(e.domainMin).negate().multiply(i)}else i.setScalar(t-1),n.setScalar(0);else if(this.defines.has("CUSTOM_INPUT_DOMAIN")){let r=e.domainMax.clone().sub(e.domainMin).multiplyScalar(t);i.setScalar(t-1).divide(r),n.copy(e.domainMin).negate().multiply(i).addScalar(1/(2*t))}else i.setScalar((t-1)/t),n.setScalar(1/(2*t))}}configureTetrahedralInterpolation(){let e=this.lut;null!==e&&(e.minFilter=k.LinearFilter,e.magFilter=k.LinearFilter,this.tetrahedralInterpolation&&(e instanceof k.Data3DTexture?(e.minFilter=k.NearestFilter,e.magFilter=k.NearestFilter):console.warn("Tetrahedral interpolation requires a 3D texture")),e.needsUpdate=!0)}get tetrahedralInterpolation(){return this.defines.has("TETRAHEDRAL_INTERPOLATION")}set tetrahedralInterpolation(e){e?this.defines.set("TETRAHEDRAL_INTERPOLATION","1"):this.defines.delete("TETRAHEDRAL_INTERPOLATION"),this.configureTetrahedralInterpolation(),this.updateScaleOffset(),this.setChanged()}setTetrahedralInterpolationEnabled(e){this.tetrahedralInterpolation=e}},tt=`void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){vec3 noise=vec3(rand(uv*(1.0+time))); -#ifdef PREMULTIPLY -outputColor=vec4(min(inputColor.rgb*noise,vec3(1.0)),inputColor.a); -#else -outputColor=vec4(noise,inputColor.a); -#endif -}`,ti=class extends el{constructor({blendFunction:e=28,premultiply:t=!1}={}){super("NoiseEffect",tt,{blendFunction:e}),this.premultiply=t}get premultiply(){return this.defines.has("PREMULTIPLY")}set premultiply(e){this.premultiply!==e&&(e?this.defines.set("PREMULTIPLY","1"):this.defines.delete("PREMULTIPLY"),this.setChanged())}isPremultiplied(){return this.premultiply}setPremultiplied(e){this.premultiply=e}},tn=`#include -#include -#ifdef GL_FRAGMENT_PRECISION_HIGH -uniform highp sampler2D depthBuffer; -#else -uniform mediump sampler2D depthBuffer; -#endif -uniform float cameraNear;uniform float cameraFar;centroid varying float vViewZ;centroid varying vec4 vProjTexCoord;void main(){ -#include -vec2 projTexCoord=(vProjTexCoord.xy/vProjTexCoord.w)*0.5+0.5; -#if DEPTH_PACKING == 3201 -float depth=unpackRGBAToDepth(texture2D(depthBuffer,projTexCoord)); -#else -float depth=texture2D(depthBuffer,projTexCoord).r; -#endif -#if defined(USE_LOGARITHMIC_DEPTH_BUFFER) || defined(LOG_DEPTH) -float d=pow(2.0,depth*log2(cameraFar+1.0))-1.0;float a=cameraFar/(cameraFar-cameraNear);float b=cameraFar*cameraNear/(cameraNear-cameraFar);depth=a+b/d; -#elif defined(USE_REVERSED_DEPTH_BUFFER) -depth=1.0-depth; -#endif -#ifdef PERSPECTIVE_CAMERA -float viewZ=perspectiveDepthToViewZ(depth,cameraNear,cameraFar); -#else -float viewZ=orthographicDepthToViewZ(depth,cameraNear,cameraFar); -#endif -float depthTest=(-vViewZ>-viewZ)?1.0:0.0;gl_FragColor.rg=vec2(0.0,depthTest);}`,tr=`#include -#include -#include -#include -varying float vViewZ;varying vec4 vProjTexCoord;void main(){ -#include -#include -#include -#include -#include -vViewZ=mvPosition.z;vProjTexCoord=gl_Position; -#include -}`,ta=class extends k.ShaderMaterial{constructor(e=null,t){super({name:"DepthComparisonMaterial",defines:{DEPTH_PACKING:"0"},uniforms:{depthBuffer:new k.Uniform(null),cameraNear:new k.Uniform(.3),cameraFar:new k.Uniform(1e3)},blending:k.NoBlending,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:tn,vertexShader:tr}),this.depthBuffer=e,this.depthPacking=k.RGBADepthPacking,this.copyCameraSettings(t)}set depthBuffer(e){this.uniforms.depthBuffer.value=e}set depthPacking(e){this.defines.DEPTH_PACKING=e.toFixed(0),this.needsUpdate=!0}setDepthBuffer(e,t=k.RGBADepthPacking){this.depthBuffer=e,this.depthPacking=t}adoptCameraSettings(e){this.copyCameraSettings(e)}copyCameraSettings(e){e&&(this.uniforms.cameraNear.value=e.near,this.uniforms.cameraFar.value=e.far,e instanceof k.PerspectiveCamera?this.defines.PERSPECTIVE_CAMERA="1":delete this.defines.PERSPECTIVE_CAMERA,this.needsUpdate=!0)}},ts=class extends k.ShaderMaterial{constructor(e=new k.Vector2){super({name:"OutlineMaterial",uniforms:{inputBuffer:new k.Uniform(null),texelSize:new k.Uniform(new k.Vector2)},blending:k.NoBlending,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:"uniform lowp sampler2D inputBuffer;varying vec2 vUv0;varying vec2 vUv1;varying vec2 vUv2;varying vec2 vUv3;void main(){vec2 c0=texture2D(inputBuffer,vUv0).rg;vec2 c1=texture2D(inputBuffer,vUv1).rg;vec2 c2=texture2D(inputBuffer,vUv2).rg;vec2 c3=texture2D(inputBuffer,vUv3).rg;float d0=(c0.x-c1.x)*0.5;float d1=(c2.x-c3.x)*0.5;float d=length(vec2(d0,d1));float a0=min(c0.y,c1.y);float a1=min(c2.y,c3.y);float visibilityFactor=min(a0,a1);gl_FragColor.rg=(1.0-visibilityFactor>0.001)?vec2(d,0.0):vec2(0.0,d);}",vertexShader:"uniform vec2 texelSize;varying vec2 vUv0;varying vec2 vUv1;varying vec2 vUv2;varying vec2 vUv3;void main(){vec2 uv=position.xy*0.5+0.5;vUv0=vec2(uv.x+texelSize.x,uv.y);vUv1=vec2(uv.x-texelSize.x,uv.y);vUv2=vec2(uv.x,uv.y+texelSize.y);vUv3=vec2(uv.x,uv.y-texelSize.y);gl_Position=vec4(position.xy,1.0,1.0);}"}),this.uniforms.texelSize.value.set(e.x,e.y),this.uniforms.maskTexture=this.uniforms.inputBuffer}set inputBuffer(e){this.uniforms.inputBuffer.value=e}setInputBuffer(e){this.uniforms.inputBuffer.value=e}setTexelSize(e,t){this.uniforms.texelSize.value.set(e,t)}setSize(e,t){this.uniforms.texelSize.value.set(1/e,1/t)}},to=class extends G{constructor(e,t,{renderTarget:i,resolutionScale:n=1,width:r=en.AUTO_SIZE,height:a=en.AUTO_SIZE,resolutionX:s=r,resolutionY:o=a}={}){super("DepthPass"),this.needsSwap=!1,this.renderPass=new eJ(e,t,new k.MeshDepthMaterial({depthPacking:k.RGBADepthPacking}));const l=this.renderPass;l.skipShadowMapUpdate=!0,l.ignoreBackground=!0,this.renderTarget=i,void 0===this.renderTarget&&(this.renderTarget=new k.WebGLRenderTarget(1,1,{minFilter:k.NearestFilter,magFilter:k.NearestFilter}),this.renderTarget.texture.name="DepthPass.Target");const u=this.resolution=new en(this,s,o,n);u.addEventListener("change",e=>this.setSize(u.baseWidth,u.baseHeight))}set mainScene(e){this.renderPass.mainScene=e}set mainCamera(e){this.renderPass.mainCamera=e}get texture(){return this.renderTarget.texture}getTexture(){return this.renderTarget.texture}getResolution(){return this.resolution}getResolutionScale(){return this.resolution.scale}setResolutionScale(e){this.resolution.scale=e}render(e,t,i,n,r){let a=this.renderToScreen?null:this.renderTarget;this.renderPass.render(e,a)}setSize(e,t){let i=this.resolution;i.setBaseSize(e,t),this.renderTarget.setSize(i.width,i.height)}initialize(e,t,i){let n=0xffffff*!e.capabilities.reversedDepthBuffer,r=this.renderPass.clearPass;r.overrideClearColor=new k.Color(n),r.overrideClearAlpha=1}},tl=`uniform lowp sampler2D edgeTexture;uniform lowp sampler2D maskTexture;uniform vec3 visibleEdgeColor;uniform vec3 hiddenEdgeColor;uniform float pulse;uniform float edgeStrength; -#ifdef USE_PATTERN -uniform lowp sampler2D patternTexture;varying vec2 vUvPattern; -#endif -void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){vec2 edge=texture2D(edgeTexture,uv).rg;vec2 mask=texture2D(maskTexture,uv).rg; -#ifndef X_RAY -edge.y=0.0; -#endif -edge*=(edgeStrength*mask.x*pulse);vec3 color=edge.x*visibleEdgeColor+edge.y*hiddenEdgeColor;float visibilityFactor=0.0; -#ifdef USE_PATTERN -vec4 patternColor=texture2D(patternTexture,vUvPattern); -#ifdef X_RAY -float hiddenFactor=0.5; -#else -float hiddenFactor=0.0; -#endif -visibilityFactor=(1.0-mask.y>0.0)?1.0:hiddenFactor;visibilityFactor*=(1.0-mask.x)*patternColor.a;color+=visibilityFactor*patternColor.rgb; -#endif -float alpha=max(max(edge.x,edge.y),visibilityFactor); -#ifdef ALPHA -outputColor=vec4(color,alpha); -#else -outputColor=vec4(color,max(alpha,inputColor.a)); -#endif -}`,tu=class extends el{constructor(e,t,{blendFunction:i=28,patternTexture:n=null,patternScale:r=1,edgeStrength:a=1,pulseSpeed:s=0,visibleEdgeColor:o=0xffffff,hiddenEdgeColor:l=2230538,kernelSize:u=eu.VERY_SMALL,blur:c=!1,xRay:h=!0,multisampling:d=0,resolutionScale:f=.5,width:p=en.AUTO_SIZE,height:m=en.AUTO_SIZE,resolutionX:g=p,resolutionY:v=m}={}){super("OutlineEffect",tl,{uniforms:new Map([["maskTexture",new k.Uniform(null)],["edgeTexture",new k.Uniform(null)],["edgeStrength",new k.Uniform(a)],["visibleEdgeColor",new k.Uniform(new k.Color(o))],["hiddenEdgeColor",new k.Uniform(new k.Color(l))],["pulse",new k.Uniform(1)],["patternScale",new k.Uniform(r)],["patternTexture",new k.Uniform(null)]])}),this.blendMode.addEventListener("change",e=>{1===this.blendMode.blendFunction?this.defines.set("ALPHA","1"):this.defines.delete("ALPHA"),this.setChanged()}),this.blendMode.blendFunction=i,this.patternTexture=n,this.xRay=h,this.scene=e,this.camera=t,this.renderTargetMask=new k.WebGLRenderTarget(1,1),this.renderTargetMask.samples=d,this.renderTargetMask.texture.name="Outline.Mask",this.uniforms.get("maskTexture").value=this.renderTargetMask.texture,this.renderTargetOutline=new k.WebGLRenderTarget(1,1,{depthBuffer:!1}),this.renderTargetOutline.texture.name="Outline.Edges",this.uniforms.get("edgeTexture").value=this.renderTargetOutline.texture,this.clearPass=new q,this.clearPass.overrideClearColor=new k.Color(0),this.clearPass.overrideClearAlpha=1,this.depthPass=new to(e,t),this.maskPass=new eJ(e,t,new ta(this.depthPass.texture,t));const x=this.maskPass.clearPass;x.overrideClearColor=new k.Color(0xffffff),x.overrideClearAlpha=1,this.blurPass=new ef({resolutionScale:f,resolutionX:g,resolutionY:v,kernelSize:u}),this.blurPass.enabled=c;const y=this.blurPass.resolution;y.addEventListener("change",e=>this.setSize(y.baseWidth,y.baseHeight)),this.outlinePass=new eO(new ts),this.outlinePass.fullscreenMaterial.inputBuffer=this.renderTargetMask.texture,this.time=0,this.forceUpdate=!0,this.selection=new ea,this.pulseSpeed=s}set mainScene(e){this.scene=e,this.depthPass.mainScene=e,this.maskPass.mainScene=e}set mainCamera(e){this.camera=e,this.depthPass.mainCamera=e,this.maskPass.mainCamera=e,this.maskPass.overrideMaterial.copyCameraSettings(e)}get resolution(){return this.blurPass.resolution}getResolution(){return this.blurPass.getResolution()}get multisampling(){return this.renderTargetMask.samples}set multisampling(e){this.renderTargetMask.samples=e,this.renderTargetMask.dispose()}get patternScale(){return this.uniforms.get("patternScale").value}set patternScale(e){this.uniforms.get("patternScale").value=e}get edgeStrength(){return this.uniforms.get("edgeStrength").value}set edgeStrength(e){this.uniforms.get("edgeStrength").value=e}get visibleEdgeColor(){return this.uniforms.get("visibleEdgeColor").value}set visibleEdgeColor(e){this.uniforms.get("visibleEdgeColor").value=e}get hiddenEdgeColor(){return this.uniforms.get("hiddenEdgeColor").value}set hiddenEdgeColor(e){this.uniforms.get("hiddenEdgeColor").value=e}getBlurPass(){return this.blurPass}getSelection(){return this.selection}getPulseSpeed(){return this.pulseSpeed}setPulseSpeed(e){this.pulseSpeed=e}get width(){return this.resolution.width}set width(e){this.resolution.preferredWidth=e}get height(){return this.resolution.height}set height(e){this.resolution.preferredHeight=e}get selectionLayer(){return this.selection.layer}set selectionLayer(e){this.selection.layer=e}get dithering(){return this.blurPass.dithering}set dithering(e){this.blurPass.dithering=e}get kernelSize(){return this.blurPass.kernelSize}set kernelSize(e){this.blurPass.kernelSize=e}get blur(){return this.blurPass.enabled}set blur(e){this.blurPass.enabled=e}get xRay(){return this.defines.has("X_RAY")}set xRay(e){this.xRay!==e&&(e?this.defines.set("X_RAY","1"):this.defines.delete("X_RAY"),this.setChanged())}isXRayEnabled(){return this.xRay}setXRayEnabled(e){this.xRay=e}get patternTexture(){return this.uniforms.get("patternTexture").value}set patternTexture(e){null!==e?(e.wrapS=e.wrapT=k.RepeatWrapping,this.defines.set("USE_PATTERN","1"),this.setVertexShader("uniform float patternScale;varying vec2 vUvPattern;void mainSupport(const in vec2 uv){vUvPattern=uv*vec2(aspect,1.0)*patternScale;}")):(this.defines.delete("USE_PATTERN"),this.setVertexShader(null)),this.uniforms.get("patternTexture").value=e,this.setChanged()}setPatternTexture(e){this.patternTexture=e}getResolutionScale(){return this.resolution.scale}setResolutionScale(e){this.resolution.scale=e}setSelection(e){return this.selection.set(e),this}clearSelection(){return this.selection.clear(),this}selectObject(e){return this.selection.add(e),this}deselectObject(e){return this.selection.delete(e),this}update(e,t,i){let n=this.scene,r=this.camera,a=this.selection,s=this.uniforms.get("pulse"),o=n.background,l=r.layers.mask;(this.forceUpdate||a.size>0)&&(n.background=null,s.value=1,this.pulseSpeed>0&&(s.value=.375*Math.cos(this.time*this.pulseSpeed*10)+.625),this.time+=i,a.setVisible(!1),this.depthPass.render(e),a.setVisible(!0),r.layers.set(a.layer),this.maskPass.render(e,this.renderTargetMask),r.layers.mask=l,n.background=o,this.outlinePass.render(e,null,this.renderTargetOutline),this.blurPass.enabled&&this.blurPass.render(e,this.renderTargetOutline,this.renderTargetOutline)),this.forceUpdate=a.size>0}setSize(e,t){this.blurPass.setSize(e,t),this.renderTargetMask.setSize(e,t);let i=this.resolution;i.setBaseSize(e,t);let n=i.width,r=i.height;this.depthPass.setSize(n,r),this.renderTargetOutline.setSize(n,r),this.outlinePass.fullscreenMaterial.setSize(n,r)}initialize(e,t,i){this.blurPass.initialize(e,t,k.UnsignedByteType),void 0!==i&&(this.depthPass.initialize(e,t,i),this.maskPass.initialize(e,t,i),this.outlinePass.initialize(e,t,i))}},tc=class extends el{constructor(e=30){super("PixelationEffect","uniform bool active;uniform vec4 d;void mainUv(inout vec2 uv){if(active){uv=d.xy*(floor(uv*d.zw)+0.5);}}",{uniforms:new Map([["active",new k.Uniform(!1)],["d",new k.Uniform(new k.Vector4)]])}),this.resolution=new k.Vector2,this._granularity=0,this.granularity=e}get granularity(){return this._granularity}set granularity(e){let t=Math.floor(e);t%2>0&&(t+=1),this._granularity=t,this.uniforms.get("active").value=t>0,this.setSize(this.resolution.width,this.resolution.height)}getGranularity(){return this.granularity}setGranularity(e){this.granularity=e}setSize(e,t){let i=this.resolution;i.set(e,t);let n=this.granularity,r=n/i.x,a=n/i.y;this.uniforms.get("d").value.set(r,a,1/r,1/a)}},th=`uniform float count; -#ifdef SCROLL -uniform float scrollSpeed; -#endif -void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){float y=uv.y; -#ifdef SCROLL -y+=time*scrollSpeed; -#endif -vec2 sl=vec2(sin(y*count),cos(y*count));outputColor=vec4(sl.xyx,inputColor.a);}`,td=class extends el{constructor({blendFunction:e=24,density:t=1.25,scrollSpeed:i=0}={}){super("ScanlineEffect",th,{blendFunction:e,uniforms:new Map([["count",new k.Uniform(0)],["scrollSpeed",new k.Uniform(0)]])}),this.resolution=new k.Vector2,this.d=t,this.scrollSpeed=i}get density(){return this.d}set density(e){this.d=e,this.setSize(this.resolution.width,this.resolution.height)}getDensity(){return this.density}setDensity(e){this.density=e}get scrollSpeed(){return this.uniforms.get("scrollSpeed").value}set scrollSpeed(e){this.uniforms.get("scrollSpeed").value=e,0===e?this.defines.delete("SCROLL")&&this.setChanged():this.defines.has("SCROLL")||(this.defines.set("SCROLL","1"),this.setChanged())}setSize(e,t){this.resolution.set(e,t),this.uniforms.get("count").value=Math.round(t*this.density)}},tf=.5*Math.PI,tp=new k.Vector3,tm=new k.Vector3,tg=class extends el{constructor(e,t=new k.Vector3,{speed:i=2,maxRadius:n=1,waveSize:r=.2,amplitude:a=.05}={}){super("ShockWaveEffect","uniform bool active;uniform vec2 center;uniform float waveSize;uniform float radius;uniform float maxRadius;uniform float amplitude;varying float vSize;void mainUv(inout vec2 uv){if(active){vec2 aspectCorrection=vec2(aspect,1.0);vec2 difference=uv*aspectCorrection-center*aspectCorrection;float distance=sqrt(dot(difference,difference))*vSize;if(distance>radius){if(distancetf,s.value&&(a.get("cameraDistance").value=r.position.distanceTo(n),tp.copy(n).project(r),this.screenPosition.set((tp.x+1)*.5,(tp.y+1)*.5)),this.time+=i*this.speed;let t=this.time-e;a.get("radius").value=t,t>=(a.get("maxRadius").value+e)*2&&(this.active=!1,s.value=!1)}}},tv=`#include -#include -#ifdef GL_FRAGMENT_PRECISION_HIGH -uniform highp sampler2D depthBuffer0;uniform highp sampler2D depthBuffer1; -#else -uniform mediump sampler2D depthBuffer0;uniform mediump sampler2D depthBuffer1; -#endif -uniform sampler2D inputBuffer;uniform vec2 cameraNearFar;float getViewZ(const in float depth){ -#ifdef PERSPECTIVE_CAMERA -return perspectiveDepthToViewZ(depth,cameraNearFar.x,cameraNearFar.y); -#else -return orthographicDepthToViewZ(depth,cameraNearFar.x,cameraNearFar.y); -#endif -}varying vec2 vUv;void main(){vec2 depth; -#if DEPTH_PACKING_0 == 3201 -depth.x=unpackRGBAToDepth(texture2D(depthBuffer0,vUv)); -#else -depth.x=texture2D(depthBuffer0,vUv).r; -#endif -#if DEPTH_PACKING_1 == 3201 -depth.y=unpackRGBAToDepth(texture2D(depthBuffer1,vUv)); -#else -depth.y=texture2D(depthBuffer1,vUv).r; -#endif -#if defined(USE_LOGARITHMIC_DEPTH_BUFFER) || defined(LOG_DEPTH) -float a=cameraNearFar.y/(cameraNearFar.y-cameraNearFar.x);float b=cameraNearFar.y*cameraNearFar.x/(cameraNearFar.x-cameraNearFar.y);float c=log2(cameraNearFar.y+1.0);float d=pow(2.0,depth.x*c)-1.0;depth.x=a+b/d;d=pow(2.0,depth.y*c)-1.0;depth.y=a+b/d; -#elif defined(USE_REVERSED_DEPTH_BUFFER) -depth.x=1.0-depth.x;depth.y=1.0-depth.y; -#endif -bool isMaxDepth=(depth.x==1.0); -#ifdef PERSPECTIVE_CAMERA -depth.x=viewZToOrthographicDepth(getViewZ(depth.x),cameraNearFar.x,cameraNearFar.y);depth.y=viewZToOrthographicDepth(getViewZ(depth.y),cameraNearFar.x,cameraNearFar.y); -#endif -#if DEPTH_TEST_STRATEGY == 0 -bool keep=depthTest(depth.x,depth.y); -#elif DEPTH_TEST_STRATEGY == 1 -bool keep=isMaxDepth||depthTest(depth.x,depth.y); -#else -bool keep=!isMaxDepth&&depthTest(depth.x,depth.y); -#endif -if(keep){gl_FragColor=texture2D(inputBuffer,vUv);}else{discard;}}`,tx=class extends k.ShaderMaterial{constructor(){super({name:"DepthMaskMaterial",defines:{DEPTH_EPSILON:"0.0001",DEPTH_PACKING_0:"0",DEPTH_PACKING_1:"0",DEPTH_TEST_STRATEGY:1},uniforms:{inputBuffer:new k.Uniform(null),depthBuffer0:new k.Uniform(null),depthBuffer1:new k.Uniform(null),cameraNearFar:new k.Uniform(new k.Vector2(1,1))},blending:k.NoBlending,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:tv,vertexShader:j}),this.depthMode=k.LessDepth}set depthBuffer0(e){this.uniforms.depthBuffer0.value=e}set depthPacking0(e){this.defines.DEPTH_PACKING_0=e.toFixed(0),this.needsUpdate=!0}setDepthBuffer0(e,t=k.BasicDepthPacking){this.depthBuffer0=e,this.depthPacking0=t}set depthBuffer1(e){this.uniforms.depthBuffer1.value=e}set depthPacking1(e){this.defines.DEPTH_PACKING_1=e.toFixed(0),this.needsUpdate=!0}setDepthBuffer1(e,t=k.BasicDepthPacking){this.depthBuffer1=e,this.depthPacking1=t}get maxDepthStrategy(){return Number(this.defines.DEPTH_TEST_STRATEGY)}set maxDepthStrategy(e){this.defines.DEPTH_TEST_STRATEGY=e.toFixed(0),this.needsUpdate=!0}get keepFar(){return this.maxDepthStrategy}set keepFar(e){this.maxDepthStrategy=e?1:2}getMaxDepthStrategy(){return this.maxDepthStrategy}setMaxDepthStrategy(e){this.maxDepthStrategy=e}get epsilon(){return Number(this.defines.DEPTH_EPSILON)}set epsilon(e){this.defines.DEPTH_EPSILON=e.toFixed(16),this.needsUpdate=!0}getEpsilon(){return this.epsilon}setEpsilon(e){this.epsilon=e}get depthMode(){return Number(this.defines.DEPTH_MODE)}set depthMode(e){let t;switch(e){case k.NeverDepth:t="false";break;case k.AlwaysDepth:t="true";break;case k.EqualDepth:t="abs(d1 - d0) <= DEPTH_EPSILON";break;case k.NotEqualDepth:t="abs(d1 - d0) > DEPTH_EPSILON";break;case k.LessDepth:t="d0 > d1";break;case k.LessEqualDepth:t="d0 >= d1";break;case k.GreaterEqualDepth:t="d0 <= d1";break;case k.GreaterDepth:default:t="d0 < d1"}this.defines.DEPTH_MODE=e.toFixed(0),this.defines["depthTest(d0, d1)"]=t,this.needsUpdate=!0}getDepthMode(){return this.depthMode}setDepthMode(e){this.depthMode=e}adoptCameraSettings(e){this.copyCameraSettings(e)}copyCameraSettings(e){e&&(this.uniforms.cameraNearFar.value.set(e.near,e.far),e instanceof k.PerspectiveCamera?this.defines.PERSPECTIVE_CAMERA="1":delete this.defines.PERSPECTIVE_CAMERA,this.needsUpdate=!0)}},ty=class extends eb{constructor(e,t,i){super(i),this.setAttributes(1|this.getAttributes()),this.camera=t,this.depthPass=new to(e,t),this.clearPass=new q(!0,!1,!1),this.clearPass.overrideClearColor=new k.Color(0),this.depthMaskPass=new eO(new tx);const n=this.depthMaskMaterial;n.copyCameraSettings(t),n.depthBuffer1=this.depthPass.texture,n.depthPacking1=k.RGBADepthPacking,n.depthMode=k.EqualDepth,this.renderTargetMasked=new k.WebGLRenderTarget(1,1,{depthBuffer:!1}),this.renderTargetMasked.texture.name="Bloom.Masked",this.selection=new ea,this._inverted=!1,this._ignoreBackground=!1}set mainScene(e){this.depthPass.mainScene=e}set mainCamera(e){this.camera=e,this.depthPass.mainCamera=e,this.depthMaskMaterial.copyCameraSettings(e)}getSelection(){return this.selection}get depthMaskMaterial(){return this.depthMaskPass.fullscreenMaterial}get inverted(){return this._inverted}set inverted(e){this._inverted=e,this.depthMaskMaterial.depthMode=e?k.NotEqualDepth:k.EqualDepth}isInverted(){return this.inverted}setInverted(e){this.inverted=e}get ignoreBackground(){return this._ignoreBackground}set ignoreBackground(e){this._ignoreBackground=e,this.depthMaskMaterial.maxDepthStrategy=e?2:1}isBackgroundDisabled(){return this.ignoreBackground}setBackgroundDisabled(e){this.ignoreBackground=e}setDepthTexture(e,t=k.BasicDepthPacking){this.depthMaskMaterial.depthBuffer0=e,this.depthMaskMaterial.depthPacking0=t}update(e,t,i){let n=this.camera,r=this.selection,a=this.inverted,s=t;if(this.ignoreBackground||!a||r.size>0){let i=n.layers.mask;n.layers.set(r.layer),this.depthPass.render(e),n.layers.mask=i,s=this.renderTargetMasked,this.clearPass.render(e,s),this.depthMaskPass.render(e,t,s)}super.update(e,s,i)}setSize(e,t){super.setSize(e,t),this.renderTargetMasked.setSize(e,t),this.depthPass.setSize(e,t)}initialize(e,t,i){super.initialize(e,t,i),this.clearPass.initialize(e,t,i),this.depthPass.initialize(e,t,i),this.depthMaskPass.initialize(e,t,i),null!==e&&e.capabilities.logarithmicDepthBuffer&&(this.depthMaskPass.fullscreenMaterial.defines.LOG_DEPTH="1"),void 0!==i&&(this.renderTargetMasked.texture.type=i,null!==e&&e.outputColorSpace===k.SRGBColorSpace&&(this.renderTargetMasked.texture.colorSpace=k.SRGBColorSpace))}},tS=class extends el{constructor({blendFunction:e,intensity:t=1}={}){super("SepiaEffect","uniform vec3 weightsR;uniform vec3 weightsG;uniform vec3 weightsB;void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){vec3 color=vec3(dot(inputColor.rgb,weightsR),dot(inputColor.rgb,weightsG),dot(inputColor.rgb,weightsB));outputColor=vec4(color,inputColor.a);}",{blendFunction:e,uniforms:new Map([["weightsR",new k.Uniform(new k.Vector3(.393,.769,.189))],["weightsG",new k.Uniform(new k.Vector3(.349,.686,.168))],["weightsB",new k.Uniform(new k.Vector3(.272,.534,.131))]])})}get intensity(){return this.blendMode.opacity.value}set intensity(e){this.blendMode.opacity.value=e}getIntensity(){return this.intensity}setIntensity(e){this.intensity=e}get weightsR(){return this.uniforms.get("weightsR").value}get weightsG(){return this.uniforms.get("weightsG").value}get weightsB(){return this.uniforms.get("weightsB").value}},tA=`varying vec2 vUv;varying vec2 vUv0;varying vec2 vUv1; -#if EDGE_DETECTION_MODE != 0 -varying vec2 vUv2;varying vec2 vUv3;varying vec2 vUv4;varying vec2 vUv5; -#endif -#if EDGE_DETECTION_MODE == 1 -#include -#endif -#if EDGE_DETECTION_MODE == 0 || PREDICATION_MODE == 1 -#ifdef GL_FRAGMENT_PRECISION_HIGH -uniform highp sampler2D depthBuffer; -#else -uniform mediump sampler2D depthBuffer; -#endif -float readDepth(const in vec2 uv){ -#if DEPTH_PACKING == 3201 -return unpackRGBAToDepth(texture2D(depthBuffer,uv)); -#else -return texture2D(depthBuffer,uv).r; -#endif -}vec3 gatherNeighbors(){float p=readDepth(vUv);float pLeft=readDepth(vUv0);float pTop=readDepth(vUv1);return vec3(p,pLeft,pTop);} -#elif PREDICATION_MODE == 2 -uniform sampler2D predicationBuffer;vec3 gatherNeighbors(){float p=texture2D(predicationBuffer,vUv).r;float pLeft=texture2D(predicationBuffer,vUv0).r;float pTop=texture2D(predicationBuffer,vUv1).r;return vec3(p,pLeft,pTop);} -#endif -#if PREDICATION_MODE != 0 -vec2 calculatePredicatedThreshold(){vec3 neighbours=gatherNeighbors();vec2 delta=abs(neighbours.xx-neighbours.yz);vec2 edges=step(PREDICATION_THRESHOLD,delta);return PREDICATION_SCALE*EDGE_THRESHOLD*(1.0-PREDICATION_STRENGTH*edges);} -#endif -#if EDGE_DETECTION_MODE != 0 -uniform sampler2D inputBuffer; -#endif -void main(){ -#if EDGE_DETECTION_MODE == 0 -const vec2 threshold=vec2(DEPTH_THRESHOLD); -#elif PREDICATION_MODE != 0 -vec2 threshold=calculatePredicatedThreshold(); -#else -const vec2 threshold=vec2(EDGE_THRESHOLD); -#endif -#if EDGE_DETECTION_MODE == 0 -vec3 neighbors=gatherNeighbors();vec2 delta=abs(neighbors.xx-vec2(neighbors.y,neighbors.z));vec2 edges=step(threshold,delta);if(dot(edges,vec2(1.0))==0.0){discard;}gl_FragColor=vec4(edges,0.0,1.0); -#elif EDGE_DETECTION_MODE == 1 -float l=luminance(texture2D(inputBuffer,vUv).rgb);float lLeft=luminance(texture2D(inputBuffer,vUv0).rgb);float lTop=luminance(texture2D(inputBuffer,vUv1).rgb);vec4 delta;delta.xy=abs(l-vec2(lLeft,lTop));vec2 edges=step(threshold,delta.xy);if(dot(edges,vec2(1.0))==0.0){discard;}float lRight=luminance(texture2D(inputBuffer,vUv2).rgb);float lBottom=luminance(texture2D(inputBuffer,vUv3).rgb);delta.zw=abs(l-vec2(lRight,lBottom));vec2 maxDelta=max(delta.xy,delta.zw);float lLeftLeft=luminance(texture2D(inputBuffer,vUv4).rgb);float lTopTop=luminance(texture2D(inputBuffer,vUv5).rgb);delta.zw=abs(vec2(lLeft,lTop)-vec2(lLeftLeft,lTopTop));maxDelta=max(maxDelta.xy,delta.zw);float finalDelta=max(maxDelta.x,maxDelta.y);edges.xy*=step(finalDelta,LOCAL_CONTRAST_ADAPTATION_FACTOR*delta.xy);gl_FragColor=vec4(edges,0.0,1.0); -#elif EDGE_DETECTION_MODE == 2 -vec4 delta;vec3 c=texture2D(inputBuffer,vUv).rgb;vec3 cLeft=texture2D(inputBuffer,vUv0).rgb;vec3 t=abs(c-cLeft);delta.x=max(max(t.r,t.g),t.b);vec3 cTop=texture2D(inputBuffer,vUv1).rgb;t=abs(c-cTop);delta.y=max(max(t.r,t.g),t.b);vec2 edges=step(threshold,delta.xy);if(dot(edges,vec2(1.0))==0.0){discard;}vec3 cRight=texture2D(inputBuffer,vUv2).rgb;t=abs(c-cRight);delta.z=max(max(t.r,t.g),t.b);vec3 cBottom=texture2D(inputBuffer,vUv3).rgb;t=abs(c-cBottom);delta.w=max(max(t.r,t.g),t.b);vec2 maxDelta=max(delta.xy,delta.zw);vec3 cLeftLeft=texture2D(inputBuffer,vUv4).rgb;t=abs(c-cLeftLeft);delta.z=max(max(t.r,t.g),t.b);vec3 cTopTop=texture2D(inputBuffer,vUv5).rgb;t=abs(c-cTopTop);delta.w=max(max(t.r,t.g),t.b);maxDelta=max(maxDelta.xy,delta.zw);float finalDelta=max(maxDelta.x,maxDelta.y);edges*=step(finalDelta,LOCAL_CONTRAST_ADAPTATION_FACTOR*delta.xy);gl_FragColor=vec4(edges,0.0,1.0); -#endif -}`,tM=`uniform vec2 texelSize;varying vec2 vUv;varying vec2 vUv0;varying vec2 vUv1; -#if EDGE_DETECTION_MODE != 0 -varying vec2 vUv2;varying vec2 vUv3;varying vec2 vUv4;varying vec2 vUv5; -#endif -void main(){vUv=position.xy*0.5+0.5;vUv0=vUv+texelSize*vec2(-1.0,0.0);vUv1=vUv+texelSize*vec2(0.0,-1.0); -#if EDGE_DETECTION_MODE != 0 -vUv2=vUv+texelSize*vec2(1.0,0.0);vUv3=vUv+texelSize*vec2(0.0,1.0);vUv4=vUv+texelSize*vec2(-2.0,0.0);vUv5=vUv+texelSize*vec2(0.0,-2.0); -#endif -gl_Position=vec4(position.xy,1.0,1.0);}`,tb=class extends k.ShaderMaterial{constructor(e=new k.Vector2,t=2){super({name:"EdgeDetectionMaterial",defines:{THREE_REVISION:k.REVISION.replace(/\D+/g,""),LOCAL_CONTRAST_ADAPTATION_FACTOR:"2.0",EDGE_THRESHOLD:"0.1",DEPTH_THRESHOLD:"0.01",PREDICATION_MODE:"0",PREDICATION_THRESHOLD:"0.01",PREDICATION_SCALE:"2.0",PREDICATION_STRENGTH:"1.0",DEPTH_PACKING:"0"},uniforms:{inputBuffer:new k.Uniform(null),depthBuffer:new k.Uniform(null),predicationBuffer:new k.Uniform(null),texelSize:new k.Uniform(e)},blending:k.NoBlending,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:tA,vertexShader:tM}),this.edgeDetectionMode=t}set depthBuffer(e){this.uniforms.depthBuffer.value=e}set depthPacking(e){this.defines.DEPTH_PACKING=e.toFixed(0),this.needsUpdate=!0}setDepthBuffer(e,t=k.BasicDepthPacking){this.depthBuffer=e,this.depthPacking=t}get edgeDetectionMode(){return Number(this.defines.EDGE_DETECTION_MODE)}set edgeDetectionMode(e){this.defines.EDGE_DETECTION_MODE=e.toFixed(0),this.needsUpdate=!0}getEdgeDetectionMode(){return this.edgeDetectionMode}setEdgeDetectionMode(e){this.edgeDetectionMode=e}get localContrastAdaptationFactor(){return Number(this.defines.LOCAL_CONTRAST_ADAPTATION_FACTOR)}set localContrastAdaptationFactor(e){this.defines.LOCAL_CONTRAST_ADAPTATION_FACTOR=e.toFixed("6"),this.needsUpdate=!0}getLocalContrastAdaptationFactor(){return this.localContrastAdaptationFactor}setLocalContrastAdaptationFactor(e){this.localContrastAdaptationFactor=e}get edgeDetectionThreshold(){return Number(this.defines.EDGE_THRESHOLD)}set edgeDetectionThreshold(e){this.defines.EDGE_THRESHOLD=e.toFixed("6"),this.defines.DEPTH_THRESHOLD=(.1*e).toFixed("6"),this.needsUpdate=!0}getEdgeDetectionThreshold(){return this.edgeDetectionThreshold}setEdgeDetectionThreshold(e){this.edgeDetectionThreshold=e}get predicationMode(){return Number(this.defines.PREDICATION_MODE)}set predicationMode(e){this.defines.PREDICATION_MODE=e.toFixed(0),this.needsUpdate=!0}getPredicationMode(){return this.predicationMode}setPredicationMode(e){this.predicationMode=e}set predicationBuffer(e){this.uniforms.predicationBuffer.value=e}setPredicationBuffer(e){this.uniforms.predicationBuffer.value=e}get predicationThreshold(){return Number(this.defines.PREDICATION_THRESHOLD)}set predicationThreshold(e){this.defines.PREDICATION_THRESHOLD=e.toFixed("6"),this.needsUpdate=!0}getPredicationThreshold(){return this.predicationThreshold}setPredicationThreshold(e){this.predicationThreshold=e}get predicationScale(){return Number(this.defines.PREDICATION_SCALE)}set predicationScale(e){this.defines.PREDICATION_SCALE=e.toFixed("6"),this.needsUpdate=!0}getPredicationScale(){return this.predicationScale}setPredicationScale(e){this.predicationScale=e}get predicationStrength(){return Number(this.defines.PREDICATION_STRENGTH)}set predicationStrength(e){this.defines.PREDICATION_STRENGTH=e.toFixed("6"),this.needsUpdate=!0}getPredicationStrength(){return this.predicationStrength}setPredicationStrength(e){this.predicationStrength=e}setSize(e,t){this.uniforms.texelSize.value.set(1/e,1/t)}},tw=`#define sampleLevelZeroOffset(t, coord, offset) texture2D(t, coord + offset * texelSize) -#if __VERSION__ < 300 -#define round(v) floor(v + 0.5) -#endif -#ifdef FRAMEBUFFER_PRECISION_HIGH -uniform mediump sampler2D inputBuffer; -#else -uniform lowp sampler2D inputBuffer; -#endif -uniform lowp sampler2D areaTexture;uniform lowp sampler2D searchTexture;uniform vec2 texelSize;uniform vec2 resolution;varying vec2 vUv;varying vec4 vOffset[3];varying vec2 vPixCoord;void movec(const in bvec2 c,inout vec2 variable,const in vec2 value){if(c.x){variable.x=value.x;}if(c.y){variable.y=value.y;}}void movec(const in bvec4 c,inout vec4 variable,const in vec4 value){movec(c.xy,variable.xy,value.xy);movec(c.zw,variable.zw,value.zw);}vec2 decodeDiagBilinearAccess(in vec2 e){e.r=e.r*abs(5.0*e.r-5.0*0.75);return round(e);}vec4 decodeDiagBilinearAccess(in vec4 e){e.rb=e.rb*abs(5.0*e.rb-5.0*0.75);return round(e);}vec2 searchDiag1(const in vec2 texCoord,const in vec2 dir,out vec2 e){vec4 coord=vec4(texCoord,-1.0,1.0);vec3 t=vec3(texelSize,1.0);for(int i=0;i0.9)){break;}coord.xyz=t*vec3(dir,1.0)+coord.xyz;e=texture2D(inputBuffer,coord.xy).rg;coord.w=dot(e,vec2(0.5));}return coord.zw;}vec2 searchDiag2(const in vec2 texCoord,const in vec2 dir,out vec2 e){vec4 coord=vec4(texCoord,-1.0,1.0);coord.x+=0.25*texelSize.x;vec3 t=vec3(texelSize,1.0);for(int i=0;i0.9)){break;}coord.xyz=t*vec3(dir,1.0)+coord.xyz;e=texture2D(inputBuffer,coord.xy).rg;e=decodeDiagBilinearAccess(e);coord.w=dot(e,vec2(0.5));}return coord.zw;}vec2 areaDiag(const in vec2 dist,const in vec2 e,const in float offset){vec2 texCoord=vec2(AREATEX_MAX_DISTANCE_DIAG,AREATEX_MAX_DISTANCE_DIAG)*e+dist;texCoord=AREATEX_PIXEL_SIZE*texCoord+0.5*AREATEX_PIXEL_SIZE;texCoord.x+=0.5;texCoord.y+=AREATEX_SUBTEX_SIZE*offset;return texture2D(areaTexture,texCoord).rg;}vec2 calculateDiagWeights(const in vec2 texCoord,const in vec2 e,const in vec4 subsampleIndices){vec2 weights=vec2(0.0);vec4 d;vec2 end;if(e.r>0.0){d.xz=searchDiag1(texCoord,vec2(-1.0,1.0),end);d.x+=float(end.y>0.9);}else{d.xz=vec2(0.0);}d.yw=searchDiag1(texCoord,vec2(1.0,-1.0),end);if(d.x+d.y>2.0){vec4 coords=vec4(-d.x+0.25,d.x,d.y,-d.y-0.25)*texelSize.xyxy+texCoord.xyxy;vec4 c;c.xy=sampleLevelZeroOffset(inputBuffer,coords.xy,vec2(-1,0)).rg;c.zw=sampleLevelZeroOffset(inputBuffer,coords.zw,vec2(1,0)).rg;c.yxwz=decodeDiagBilinearAccess(c.xyzw);vec2 cc=vec2(2.0)*c.xz+c.yw;movec(bvec2(step(0.9,d.zw)),cc,vec2(0.0));weights+=areaDiag(d.xy,cc,subsampleIndices.z);}d.xz=searchDiag2(texCoord,vec2(-1.0,-1.0),end);if(sampleLevelZeroOffset(inputBuffer,texCoord,vec2(1,0)).r>0.0){d.yw=searchDiag2(texCoord,vec2(1.0),end);d.y+=float(end.y>0.9);}else{d.yw=vec2(0.0);}if(d.x+d.y>2.0){vec4 coords=vec4(-d.x,-d.x,d.y,d.y)*texelSize.xyxy+texCoord.xyxy;vec4 c;c.x=sampleLevelZeroOffset(inputBuffer,coords.xy,vec2(-1,0)).g;c.y=sampleLevelZeroOffset(inputBuffer,coords.xy,vec2(0,-1)).r;c.zw=sampleLevelZeroOffset(inputBuffer,coords.zw,vec2(1,0)).gr;vec2 cc=vec2(2.0)*c.xz+c.yw;movec(bvec2(step(0.9,d.zw)),cc,vec2(0.0));weights+=areaDiag(d.xy,cc,subsampleIndices.w).gr;}return weights;}float searchLength(const in vec2 e,const in float offset){vec2 scale=SEARCHTEX_SIZE*vec2(0.5,-1.0);vec2 bias=SEARCHTEX_SIZE*vec2(offset,1.0);scale+=vec2(-1.0,1.0);bias+=vec2(0.5,-0.5);scale*=1.0/SEARCHTEX_PACKED_SIZE;bias*=1.0/SEARCHTEX_PACKED_SIZE;return texture2D(searchTexture,scale*e+bias).r;}float searchXLeft(in vec2 texCoord,const in float end){vec2 e=vec2(0.0,1.0);for(int i=0;iend&&e.g>0.8281&&e.r==0.0)){break;}e=texture2D(inputBuffer,texCoord).rg;texCoord=vec2(-2.0,0.0)*texelSize+texCoord;}float offset=-(255.0/127.0)*searchLength(e,0.0)+3.25;return texelSize.x*offset+texCoord.x;}float searchXRight(vec2 texCoord,const in float end){vec2 e=vec2(0.0,1.0);for(int i=0;i0.8281&&e.r==0.0)){break;}e=texture2D(inputBuffer,texCoord).rg;texCoord=vec2(2.0,0.0)*texelSize.xy+texCoord;}float offset=-(255.0/127.0)*searchLength(e,0.5)+3.25;return-texelSize.x*offset+texCoord.x;}float searchYUp(vec2 texCoord,const in float end){vec2 e=vec2(1.0,0.0);for(int i=0;iend&&e.r>0.8281&&e.g==0.0)){break;}e=texture2D(inputBuffer,texCoord).rg;texCoord=-vec2(0.0,2.0)*texelSize.xy+texCoord;}float offset=-(255.0/127.0)*searchLength(e.gr,0.0)+3.25;return texelSize.y*offset+texCoord.y;}float searchYDown(vec2 texCoord,const in float end){vec2 e=vec2(1.0,0.0);for(int i=0;i0.8281&&e.g==0.0)){break;}e=texture2D(inputBuffer,texCoord).rg;texCoord=vec2(0.0,2.0)*texelSize.xy+texCoord;}float offset=-(255.0/127.0)*searchLength(e.gr,0.5)+3.25;return-texelSize.y*offset+texCoord.y;}vec2 area(const in vec2 dist,const in float e1,const in float e2,const in float offset){vec2 texCoord=vec2(AREATEX_MAX_DISTANCE)*round(4.0*vec2(e1,e2))+dist;texCoord=AREATEX_PIXEL_SIZE*texCoord+0.5*AREATEX_PIXEL_SIZE;texCoord.y=AREATEX_SUBTEX_SIZE*offset+texCoord.y;return texture2D(areaTexture,texCoord).rg;}void detectHorizontalCornerPattern(inout vec2 weights,const in vec4 texCoord,const in vec2 d){ -#if !defined(DISABLE_CORNER_DETECTION) -vec2 leftRight=step(d.xy,d.yx);vec2 rounding=(1.0-CORNER_ROUNDING_NORM)*leftRight;rounding/=leftRight.x+leftRight.y;vec2 factor=vec2(1.0);factor.x-=rounding.x*sampleLevelZeroOffset(inputBuffer,texCoord.xy,vec2(0,1)).r;factor.x-=rounding.y*sampleLevelZeroOffset(inputBuffer,texCoord.zw,vec2(1,1)).r;factor.y-=rounding.x*sampleLevelZeroOffset(inputBuffer,texCoord.xy,vec2(0,-2)).r;factor.y-=rounding.y*sampleLevelZeroOffset(inputBuffer,texCoord.zw,vec2(1,-2)).r;weights*=clamp(factor,0.0,1.0); -#endif -}void detectVerticalCornerPattern(inout vec2 weights,const in vec4 texCoord,const in vec2 d){ -#if !defined(DISABLE_CORNER_DETECTION) -vec2 leftRight=step(d.xy,d.yx);vec2 rounding=(1.0-CORNER_ROUNDING_NORM)*leftRight;rounding/=leftRight.x+leftRight.y;vec2 factor=vec2(1.0);factor.x-=rounding.x*sampleLevelZeroOffset(inputBuffer,texCoord.xy,vec2(1,0)).g;factor.x-=rounding.y*sampleLevelZeroOffset(inputBuffer,texCoord.zw,vec2(1,1)).g;factor.y-=rounding.x*sampleLevelZeroOffset(inputBuffer,texCoord.xy,vec2(-2,0)).g;factor.y-=rounding.y*sampleLevelZeroOffset(inputBuffer,texCoord.zw,vec2(-2,1)).g;weights*=clamp(factor,0.0,1.0); -#endif -}void main(){vec4 weights=vec4(0.0);vec4 subsampleIndices=vec4(0.0);vec2 e=texture2D(inputBuffer,vUv).rg;if(e.g>0.0){ -#if !defined(DISABLE_DIAG_DETECTION) -weights.rg=calculateDiagWeights(vUv,e,subsampleIndices);if(weights.r==-weights.g){ -#endif -vec2 d;vec3 coords;coords.x=searchXLeft(vOffset[0].xy,vOffset[2].x);coords.y=vOffset[1].y;d.x=coords.x;float e1=texture2D(inputBuffer,coords.xy).r;coords.z=searchXRight(vOffset[0].zw,vOffset[2].y);d.y=coords.z;d=round(resolution.xx*d+-vPixCoord.xx);vec2 sqrtD=sqrt(abs(d));float e2=sampleLevelZeroOffset(inputBuffer,coords.zy,vec2(1,0)).r;weights.rg=area(sqrtD,e1,e2,subsampleIndices.y);coords.y=vUv.y;detectHorizontalCornerPattern(weights.rg,coords.xyzy,d); -#if !defined(DISABLE_DIAG_DETECTION) -}else{e.r=0.0;} -#endif -}if(e.r>0.0){vec2 d;vec3 coords;coords.y=searchYUp(vOffset[1].xy,vOffset[2].z);coords.x=vOffset[0].x;d.x=coords.y;float e1=texture2D(inputBuffer,coords.xy).g;coords.z=searchYDown(vOffset[1].zw,vOffset[2].w);d.y=coords.z;d=round(resolution.yy*d-vPixCoord.yy);vec2 sqrtD=sqrt(abs(d));float e2=sampleLevelZeroOffset(inputBuffer,coords.xz,vec2(0,1)).g;weights.ba=area(sqrtD,e1,e2,subsampleIndices.x);coords.x=vUv.x;detectVerticalCornerPattern(weights.ba,coords.xyxz,d);}gl_FragColor=weights;}`,tT=class extends k.ShaderMaterial{constructor(e=new k.Vector2,t=new k.Vector2){super({name:"SMAAWeightsMaterial",defines:{MAX_SEARCH_STEPS_INT:"16",MAX_SEARCH_STEPS_FLOAT:"16.0",MAX_SEARCH_STEPS_DIAG_INT:"8",MAX_SEARCH_STEPS_DIAG_FLOAT:"8.0",CORNER_ROUNDING:"25",CORNER_ROUNDING_NORM:"0.25",AREATEX_MAX_DISTANCE:"16.0",AREATEX_MAX_DISTANCE_DIAG:"20.0",AREATEX_PIXEL_SIZE:"(1.0 / vec2(160.0, 560.0))",AREATEX_SUBTEX_SIZE:"(1.0 / 7.0)",SEARCHTEX_SIZE:"vec2(66.0, 33.0)",SEARCHTEX_PACKED_SIZE:"vec2(64.0, 16.0)"},uniforms:{inputBuffer:new k.Uniform(null),searchTexture:new k.Uniform(null),areaTexture:new k.Uniform(null),resolution:new k.Uniform(t),texelSize:new k.Uniform(e)},blending:k.NoBlending,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:tw,vertexShader:"uniform vec2 texelSize;uniform vec2 resolution;varying vec2 vUv;varying vec4 vOffset[3];varying vec2 vPixCoord;void main(){vUv=position.xy*0.5+0.5;vPixCoord=vUv*resolution;vOffset[0]=vUv.xyxy+texelSize.xyxy*vec4(-0.25,-0.125,1.25,-0.125);vOffset[1]=vUv.xyxy+texelSize.xyxy*vec4(-0.125,-0.25,-0.125,1.25);vOffset[2]=vec4(vOffset[0].xz,vOffset[1].yw)+vec4(-2.0,2.0,-2.0,2.0)*texelSize.xxyy*MAX_SEARCH_STEPS_FLOAT;gl_Position=vec4(position.xy,1.0,1.0);}"})}set inputBuffer(e){this.uniforms.inputBuffer.value=e}setInputBuffer(e){this.uniforms.inputBuffer.value=e}get searchTexture(){return this.uniforms.searchTexture.value}set searchTexture(e){this.uniforms.searchTexture.value=e}get areaTexture(){return this.uniforms.areaTexture.value}set areaTexture(e){this.uniforms.areaTexture.value=e}setLookupTextures(e,t){this.searchTexture=e,this.areaTexture=t}get orthogonalSearchSteps(){return Number(this.defines.MAX_SEARCH_STEPS_INT)}set orthogonalSearchSteps(e){let t=Math.min(Math.max(e,0),112);this.defines.MAX_SEARCH_STEPS_INT=t.toFixed("0"),this.defines.MAX_SEARCH_STEPS_FLOAT=t.toFixed("1"),this.needsUpdate=!0}setOrthogonalSearchSteps(e){this.orthogonalSearchSteps=e}get diagonalSearchSteps(){return Number(this.defines.MAX_SEARCH_STEPS_DIAG_INT)}set diagonalSearchSteps(e){let t=Math.min(Math.max(e,0),20);this.defines.MAX_SEARCH_STEPS_DIAG_INT=t.toFixed("0"),this.defines.MAX_SEARCH_STEPS_DIAG_FLOAT=t.toFixed("1"),this.needsUpdate=!0}setDiagonalSearchSteps(e){this.diagonalSearchSteps=e}get diagonalDetection(){return void 0===this.defines.DISABLE_DIAG_DETECTION}set diagonalDetection(e){e?delete this.defines.DISABLE_DIAG_DETECTION:this.defines.DISABLE_DIAG_DETECTION="1",this.needsUpdate=!0}isDiagonalDetectionEnabled(){return this.diagonalDetection}setDiagonalDetectionEnabled(e){this.diagonalDetection=e}get cornerRounding(){return Number(this.defines.CORNER_ROUNDING)}set cornerRounding(e){let t=Math.min(Math.max(e,0),100);this.defines.CORNER_ROUNDING=t.toFixed("4"),this.defines.CORNER_ROUNDING_NORM=(t/100).toFixed("4"),this.needsUpdate=!0}setCornerRounding(e){this.cornerRounding=e}get cornerDetection(){return void 0===this.defines.DISABLE_CORNER_DETECTION}set cornerDetection(e){e?delete this.defines.DISABLE_CORNER_DETECTION:this.defines.DISABLE_CORNER_DETECTION="1",this.needsUpdate=!0}isCornerRoundingEnabled(){return this.cornerDetection}setCornerRoundingEnabled(e){this.cornerDetection=e}setSize(e,t){let i=this.uniforms;i.texelSize.value.set(1/e,1/t),i.resolution.value.set(e,t)}},tE="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAAQCAYAAACm53kpAAAAeElEQVRYR+2XSwqAMAxEJ168ePEqwRSKhIIiuHjJqiU0gWE+1CQdApcVAMUAuARaMGCX1MIL/Ow13++9lW2s3mW9MWvsnWc/2fvGygwPAN4E8QzAA4CXAB6AHjG4JTHYI1ey3pcx6FHnEfhLDOIBKAmUBK6/ANUDTlROXAHd9EC1AAAAAElFTkSuQmCC",t_="data:image/png;base64,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",tC=class extends el{constructor({blendFunction:e=30,preset:t=1,edgeDetectionMode:i=2,predicationMode:n=0}={}){let r,a;super("SMAAEffect","uniform sampler2D weightMap;varying vec2 vOffset0;varying vec2 vOffset1;void movec(const in bvec2 c,inout vec2 variable,const in vec2 value){if(c.x){variable.x=value.x;}if(c.y){variable.y=value.y;}}void movec(const in bvec4 c,inout vec4 variable,const in vec4 value){movec(c.xy,variable.xy,value.xy);movec(c.zw,variable.zw,value.zw);}void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){vec4 a;a.x=texture2D(weightMap,vOffset0).a;a.y=texture2D(weightMap,vOffset1).g;a.wz=texture2D(weightMap,uv).rb;vec4 color=inputColor;if(dot(a,vec4(1.0))>=1e-5){bool h=max(a.x,a.z)>max(a.y,a.w);vec4 blendingOffset=vec4(0.0,a.y,0.0,a.w);vec2 blendingWeight=a.yw;movec(bvec4(h),blendingOffset,vec4(a.x,0.0,a.z,0.0));movec(bvec2(h),blendingWeight,a.xz);blendingWeight/=dot(blendingWeight,vec2(1.0));vec4 blendingCoord=blendingOffset*vec4(texelSize,-texelSize)+uv.xyxy;color=blendingWeight.x*texture2D(inputBuffer,blendingCoord.xy);color+=blendingWeight.y*texture2D(inputBuffer,blendingCoord.zw);}outputColor=color;}",{vertexShader:"varying vec2 vOffset0;varying vec2 vOffset1;void mainSupport(const in vec2 uv){vOffset0=uv+texelSize*vec2(1.0,0.0);vOffset1=uv+texelSize*vec2(0.0,1.0);}",blendFunction:e,attributes:3,uniforms:new Map([["weightMap",new k.Uniform(null)]])}),arguments.length>1&&(r=arguments[0],a=arguments[1],arguments.length>2&&(t=arguments[2]),arguments.length>3&&(i=arguments[3])),this.renderTargetEdges=new k.WebGLRenderTarget(1,1,{depthBuffer:!1}),this.renderTargetEdges.texture.name="SMAA.Edges",this.renderTargetWeights=this.renderTargetEdges.clone(),this.renderTargetWeights.texture.name="SMAA.Weights",this.uniforms.get("weightMap").value=this.renderTargetWeights.texture,this.clearPass=new q(!0,!1,!1),this.clearPass.overrideClearColor=new k.Color(0),this.clearPass.overrideClearAlpha=1,this.edgeDetectionPass=new eO(new tb),this.edgeDetectionMaterial.edgeDetectionMode=i,this.edgeDetectionMaterial.predicationMode=n,this.weightsPass=new eO(new tT);const s=new k.LoadingManager;s.onLoad=()=>{let e=new k.Texture(r);e.name="SMAA.Search",e.magFilter=k.NearestFilter,e.minFilter=k.NearestFilter,e.generateMipmaps=!1,e.needsUpdate=!0,e.flipY=!0,this.weightsMaterial.searchTexture=e;let t=new k.Texture(a);t.name="SMAA.Area",t.magFilter=k.LinearFilter,t.minFilter=k.LinearFilter,t.generateMipmaps=!1,t.needsUpdate=!0,t.flipY=!1,this.weightsMaterial.areaTexture=t,this.dispatchEvent({type:"load"})},s.itemStart("search"),s.itemStart("area"),void 0!==r&&void 0!==a?(s.itemEnd("search"),s.itemEnd("area")):"u">typeof Image&&(r=new Image,a=new Image,r.addEventListener("load",()=>s.itemEnd("search")),a.addEventListener("load",()=>s.itemEnd("area")),r.src=tE,a.src=t_),this.applyPreset(t)}get edgesTexture(){return this.renderTargetEdges.texture}getEdgesTexture(){return this.edgesTexture}get weightsTexture(){return this.renderTargetWeights.texture}getWeightsTexture(){return this.weightsTexture}get edgeDetectionMaterial(){return this.edgeDetectionPass.fullscreenMaterial}get colorEdgesMaterial(){return this.edgeDetectionMaterial}getEdgeDetectionMaterial(){return this.edgeDetectionMaterial}get weightsMaterial(){return this.weightsPass.fullscreenMaterial}getWeightsMaterial(){return this.weightsMaterial}setEdgeDetectionThreshold(e){this.edgeDetectionMaterial.edgeDetectionThreshold=e}setOrthogonalSearchSteps(e){this.weightsMaterial.orthogonalSearchSteps=e}applyPreset(e){let t=this.edgeDetectionMaterial,i=this.weightsMaterial;switch(e){case 0:t.edgeDetectionThreshold=.15,i.orthogonalSearchSteps=4,i.diagonalDetection=!1,i.cornerDetection=!1;break;case 1:t.edgeDetectionThreshold=.1,i.orthogonalSearchSteps=8,i.diagonalDetection=!1,i.cornerDetection=!1;break;case 2:t.edgeDetectionThreshold=.1,i.orthogonalSearchSteps=16,i.diagonalSearchSteps=8,i.cornerRounding=25,i.diagonalDetection=!0,i.cornerDetection=!0;break;case 3:t.edgeDetectionThreshold=.05,i.orthogonalSearchSteps=32,i.diagonalSearchSteps=16,i.cornerRounding=25,i.diagonalDetection=!0,i.cornerDetection=!0}}setDepthTexture(e,t=k.BasicDepthPacking){this.edgeDetectionMaterial.depthBuffer=e,this.edgeDetectionMaterial.depthPacking=t}update(e,t,i){this.clearPass.render(e,this.renderTargetEdges),this.edgeDetectionPass.render(e,t,this.renderTargetEdges),this.weightsPass.render(e,this.renderTargetEdges,this.renderTargetWeights)}setSize(e,t){this.edgeDetectionMaterial.setSize(e,t),this.weightsMaterial.setSize(e,t),this.renderTargetEdges.setSize(e,t),this.renderTargetWeights.setSize(e,t)}dispose(){let{searchTexture:e,areaTexture:t}=this.weightsMaterial;null!==e&&null!==t&&(e.dispose(),t.dispose()),super.dispose()}static get searchImageDataURL(){return tE}static get areaImageDataURL(){return t_}};function tR(e,t,i){return Math.min(Math.max((e+t)/(t-i),0),1)}var tP=`#include -#include -uniform vec2 cameraNearFar; -#define cameraNear cameraNearFar.x -#define cameraFar cameraNearFar.y -#ifdef NORMAL_DEPTH -#ifdef GL_FRAGMENT_PRECISION_HIGH -uniform highp sampler2D normalDepthBuffer; -#else -uniform mediump sampler2D normalDepthBuffer; -#endif -float readDepth(const in vec2 uv){float depth=texture2D(normalDepthBuffer,uv).a; -#if defined(USE_LOGARITHMIC_DEPTH_BUFFER) || defined(LOG_DEPTH) -float d=pow(2.0,depth*log2(cameraFar+1.0))-1.0;float a=cameraFar/(cameraFar-cameraNear);float b=cameraFar*cameraNear/(cameraNear-cameraFar);depth=a+b/d; -#endif -return depth;} -#else -uniform lowp sampler2D normalBuffer; -#if DEPTH_PACKING == 3201 -uniform lowp sampler2D depthBuffer; -#elif defined(GL_FRAGMENT_PRECISION_HIGH) -uniform highp sampler2D depthBuffer; -#else -uniform mediump sampler2D depthBuffer; -#endif -float readDepth(const in vec2 uv){ -#if DEPTH_PACKING == 3201 -float depth=unpackRGBAToDepth(texture2D(depthBuffer,uv)); -#else -float depth=texture2D(depthBuffer,uv).r; -#endif -#if defined(USE_LOGARITHMIC_DEPTH_BUFFER) || defined(LOG_DEPTH) -float d=pow(2.0,depth*log2(cameraFar+1.0))-1.0;float a=cameraFar/(cameraFar-cameraNear);float b=cameraFar*cameraNear/(cameraNear-cameraFar);depth=a+b/d; -#endif -return depth;} -#endif -uniform lowp sampler2D noiseTexture;uniform mat4 inverseProjectionMatrix;uniform mat4 projectionMatrix;uniform vec2 texelSize;uniform float intensity;uniform float minRadiusScale;uniform float fade;uniform float bias;uniform vec2 distanceCutoff;uniform vec2 proximityCutoff;varying vec2 vUv;varying vec2 vUv2;float getViewZ(const in float depth){ -#ifdef PERSPECTIVE_CAMERA -return perspectiveDepthToViewZ(depth,cameraNear,cameraFar); -#else -return orthographicDepthToViewZ(depth,cameraNear,cameraFar); -#endif -}vec3 getViewPosition(const in vec2 screenPosition,const in float depth,const in float viewZ){vec4 clipPosition=vec4(vec3(screenPosition,depth)*2.0-1.0,1.0);float clipW=projectionMatrix[2][3]*viewZ+projectionMatrix[3][3];clipPosition*=clipW;return(inverseProjectionMatrix*clipPosition).xyz;}float getAmbientOcclusion(const in vec3 p,const in vec3 n,const in float depth,const in vec2 uv){float radiusScale=1.0-smoothstep(0.0,distanceCutoff.y,depth);radiusScale=radiusScale*(1.0-minRadiusScale)+minRadiusScale;float radius=RADIUS*radiusScale;float noise=texture2D(noiseTexture,vUv2).r;float baseAngle=noise*PI2;float rings=SPIRAL_TURNS*PI2;float occlusion=0.0;int taps=0;for(int i=0;i1.0||coords.t<0.0||coords.t>1.0){continue;}float sampleDepth=readDepth(coords);float viewZ=getViewZ(sampleDepth); -#ifdef PERSPECTIVE_CAMERA -float linearSampleDepth=viewZToOrthographicDepth(viewZ,cameraNear,cameraFar); -#else -float linearSampleDepth=sampleDepth; -#endif -float proximity=abs(depth-linearSampleDepth);if(proximity -#ifdef GL_FRAGMENT_PRECISION_HIGH -uniform highp sampler2D depthBuffer; -#else -uniform mediump sampler2D depthBuffer; -#endif -#ifdef DOWNSAMPLE_NORMALS -uniform lowp sampler2D normalBuffer; -#endif -varying vec2 vUv0;varying vec2 vUv1;varying vec2 vUv2;varying vec2 vUv3;float readDepth(const in vec2 uv){ -#if DEPTH_PACKING == 3201 -return unpackRGBAToDepth(texture2D(depthBuffer,uv)); -#else -return texture2D(depthBuffer,uv).r; -#endif -}int findBestDepth(const in float samples[4]){float c=(samples[0]+samples[1]+samples[2]+samples[3])*0.25;float distances[4];distances[0]=abs(c-samples[0]);distances[1]=abs(c-samples[1]);distances[2]=abs(c-samples[2]);distances[3]=abs(c-samples[3]);float maxDistance=max(max(distances[0],distances[1]),max(distances[2],distances[3]));int remaining[3];int rejected[3];int i,j,k;for(i=0,j=0,k=0;i<4;++i){if(distances[i]this.setSize(o.baseWidth,o.baseHeight))}get texture(){return this.renderTarget.texture}getTexture(){return this.renderTarget.texture}getResolution(){return this.resolution}setDepthTexture(e,t=k.BasicDepthPacking){this.fullscreenMaterial.depthBuffer=e,this.fullscreenMaterial.depthPacking=t}render(e,t,i,n,r){e.setRenderTarget(this.renderToScreen?null:this.renderTarget),e.render(this.scene,this.camera)}setSize(e,t){let i=this.resolution;i.setBaseSize(e,t),this.renderTarget.setSize(i.width,i.height),this.fullscreenMaterial.setSize(e,t)}initialize(e,t,i){let n=e.getContext();if(!(n.getExtension("EXT_color_buffer_float")||n.getExtension("EXT_color_buffer_half_float")))throw Error("Rendering to float texture is not supported.")}},tU=`uniform lowp sampler2D aoBuffer;uniform float luminanceInfluence;uniform float intensity; -#if defined(DEPTH_AWARE_UPSAMPLING) && defined(NORMAL_DEPTH) -#ifdef GL_FRAGMENT_PRECISION_HIGH -uniform highp sampler2D normalDepthBuffer; -#else -uniform mediump sampler2D normalDepthBuffer; -#endif -#endif -#ifdef COLORIZE -uniform vec3 color; -#endif -void mainImage(const in vec4 inputColor,const in vec2 uv,const in float depth,out vec4 outputColor){float aoLinear=texture2D(aoBuffer,uv).r; -#if defined(DEPTH_AWARE_UPSAMPLING) && defined(NORMAL_DEPTH) && __VERSION__ == 300 -vec4 normalDepth[4];normalDepth[0]=textureOffset(normalDepthBuffer,uv,ivec2(0,0));normalDepth[1]=textureOffset(normalDepthBuffer,uv,ivec2(0,1));normalDepth[2]=textureOffset(normalDepthBuffer,uv,ivec2(1,0));normalDepth[3]=textureOffset(normalDepthBuffer,uv,ivec2(1,1));float dot01=dot(normalDepth[0].rgb,normalDepth[1].rgb);float dot02=dot(normalDepth[0].rgb,normalDepth[2].rgb);float dot03=dot(normalDepth[0].rgb,normalDepth[3].rgb);float minDot=min(dot01,min(dot02,dot03));float s=step(THRESHOLD,minDot);float smallestDistance=1.0;int index;for(int i=0;i<4;++i){float distance=abs(depth-normalDepth[i].a);if(distancethis.setSize(_.baseWidth,_.baseHeight)),this.camera=e,this.depthDownsamplingPass=new tB({normalBuffer:t,resolutionScale:M}),this.depthDownsamplingPass.enabled=null===a,this.ssaoPass=new eO(new tD(e));const C=new eX(64,64,k.RGBAFormat);C.wrapS=C.wrapT=k.RepeatWrapping;const R=this.ssaoMaterial;R.normalBuffer=t,R.noiseTexture=C,R.minRadiusScale=m,R.samples=n,R.radius=v,R.rings=r,R.fade=S,R.bias=y,R.distanceThreshold=h,R.distanceFalloff=d,R.proximityThreshold=f,R.proximityFalloff=p,void 0!==o&&(R.worldDistanceThreshold=o),void 0!==l&&(R.worldDistanceFalloff=l),void 0!==u&&(R.worldProximityThreshold=u),void 0!==c&&(R.worldProximityFalloff=c),null!==a&&(this.ssaoMaterial.normalDepthBuffer=a,this.defines.set("NORMAL_DEPTH","1")),this.depthAwareUpsampling=s,this.color=A}set mainCamera(e){this.camera=e,this.ssaoMaterial.copyCameraSettings(e)}get normalBuffer(){return this.ssaoMaterial.normalBuffer}set normalBuffer(e){this.ssaoMaterial.normalBuffer=e,this.depthDownsamplingPass.fullscreenMaterial.normalBuffer=e}getResolution(){return this.resolution}get ssaoMaterial(){return this.ssaoPass.fullscreenMaterial}getSSAOMaterial(){return this.ssaoMaterial}get samples(){return this.ssaoMaterial.samples}set samples(e){this.ssaoMaterial.samples=e}get rings(){return this.ssaoMaterial.rings}set rings(e){this.ssaoMaterial.rings=e}get radius(){return this.ssaoMaterial.radius}set radius(e){this.ssaoMaterial.radius=e}get depthAwareUpsampling(){return this.defines.has("DEPTH_AWARE_UPSAMPLING")}set depthAwareUpsampling(e){this.depthAwareUpsampling!==e&&(e?this.defines.set("DEPTH_AWARE_UPSAMPLING","1"):this.defines.delete("DEPTH_AWARE_UPSAMPLING"),this.setChanged())}isDepthAwareUpsamplingEnabled(){return this.depthAwareUpsampling}setDepthAwareUpsamplingEnabled(e){this.depthAwareUpsampling=e}get distanceScaling(){return!0}set distanceScaling(e){}get color(){return this.uniforms.get("color").value}set color(e){let t=this.uniforms,i=this.defines;null!==e?i.has("COLORIZE")?t.get("color").value.set(e):(i.set("COLORIZE","1"),t.get("color").value=new k.Color(e),this.setChanged()):i.has("COLORIZE")&&(i.delete("COLORIZE"),t.get("color").value=null,this.setChanged())}get luminanceInfluence(){return this.uniforms.get("luminanceInfluence").value}set luminanceInfluence(e){this.uniforms.get("luminanceInfluence").value=e}get intensity(){return this.uniforms.get("intensity").value}set intensity(e){this.uniforms.get("intensity").value=e}getColor(){return this.color}setColor(e){this.color=e}setDistanceCutoff(e,t){this.ssaoMaterial.distanceThreshold=e,this.ssaoMaterial.distanceFalloff=t}setProximityCutoff(e,t){this.ssaoMaterial.proximityThreshold=e,this.ssaoMaterial.proximityFalloff=t}setDepthTexture(e,t=k.BasicDepthPacking){this.depthDownsamplingPass.setDepthTexture(e,t),this.ssaoMaterial.depthBuffer=e,this.ssaoMaterial.depthPacking=t}update(e,t,i){let n=this.renderTarget;this.depthDownsamplingPass.enabled&&this.depthDownsamplingPass.render(e),this.ssaoPass.render(e,null,n)}setSize(e,t){let i=this.resolution;i.setBaseSize(e,t);let n=i.width,r=i.height;this.ssaoMaterial.copyCameraSettings(this.camera),this.ssaoMaterial.setSize(n,r),this.renderTarget.setSize(n,r),this.depthDownsamplingPass.resolution.scale=i.scale,this.depthDownsamplingPass.setSize(e,t)}initialize(e,t,i){try{let n=this.uniforms.get("normalDepthBuffer").value;null===n&&(this.depthDownsamplingPass.initialize(e,t,i),n=this.depthDownsamplingPass.texture,this.uniforms.get("normalDepthBuffer").value=n,this.ssaoMaterial.normalDepthBuffer=n,this.defines.set("NORMAL_DEPTH","1"))}catch(e){this.depthDownsamplingPass.enabled=!1}}},tF=`#ifdef TEXTURE_PRECISION_HIGH -uniform mediump sampler2D map; -#else -uniform lowp sampler2D map; -#endif -varying vec2 vUv2;void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){ -#ifdef UV_TRANSFORM -vec4 texel=texture2D(map,vUv2); -#else -vec4 texel=texture2D(map,uv); -#endif -outputColor=TEXEL;outputColor.a=max(inputColor.a,outputColor.a);}`,tO=`#ifdef ASPECT_CORRECTION -uniform float scale; -#else -uniform mat3 uvTransform; -#endif -varying vec2 vUv2;void mainSupport(const in vec2 uv){ -#ifdef ASPECT_CORRECTION -vUv2=uv*vec2(aspect,1.0)*scale; -#else -vUv2=(uvTransform*vec3(uv,1.0)).xy; -#endif -}`,tz=class extends el{constructor({blendFunction:e,texture:t=null,aspectCorrection:i=!1}={}){super("TextureEffect",tF,{blendFunction:e,defines:new Map([["TEXEL","texel"]]),uniforms:new Map([["map",new k.Uniform(null)],["scale",new k.Uniform(1)],["uvTransform",new k.Uniform(null)]])}),this.texture=t,this.aspectCorrection=i}get texture(){return this.uniforms.get("map").value}set texture(e){let t=this.texture,i=this.uniforms,n=this.defines;t!==e&&(i.get("map").value=e,i.get("uvTransform").value=e.matrix,n.delete("TEXTURE_PRECISION_HIGH"),null!==e&&(e.matrixAutoUpdate?(n.set("UV_TRANSFORM","1"),this.setVertexShader(tO)):(n.delete("UV_TRANSFORM"),this.setVertexShader(null)),e.type!==k.UnsignedByteType&&n.set("TEXTURE_PRECISION_HIGH","1"),(null===t||t.type!==e.type||t.encoding!==e.encoding)&&this.setChanged()))}getTexture(){return this.texture}setTexture(e){this.texture=e}get aspectCorrection(){return this.defines.has("ASPECT_CORRECTION")}set aspectCorrection(e){this.aspectCorrection!==e&&(e?this.defines.set("ASPECT_CORRECTION","1"):this.defines.delete("ASPECT_CORRECTION"),this.setChanged())}get uvTransform(){let e=this.texture;return null!==e&&e.matrixAutoUpdate}set uvTransform(e){let t=this.texture;null!==t&&(t.matrixAutoUpdate=e)}setTextureSwizzleRGBA(e,t=e,i=e,n=e){let r="rgba",a="";(0!==e||1!==t||2!==i||3!==n)&&(a="."+r[e]+r[t]+r[i]+r[n]),this.defines.set("TEXEL","texel"+a),this.setChanged()}update(e,t,i){this.texture.matrixAutoUpdate&&this.texture.updateMatrix()}},tk=`#ifdef FRAMEBUFFER_PRECISION_HIGH -uniform mediump sampler2D inputBuffer; -#else -uniform lowp sampler2D inputBuffer; -#endif -uniform vec4 maskParams;varying vec2 vUv;varying vec2 vUv2;varying vec2 vOffset;float linearGradientMask(const in float x){return smoothstep(maskParams.x,maskParams.y,x)-smoothstep(maskParams.w,maskParams.z,x);}void main(){vec2 dUv=vOffset*(1.0-linearGradientMask(vUv2.y));vec4 sum=texture2D(inputBuffer,vec2(vUv.x-dUv.x,vUv.y+dUv.y));sum+=texture2D(inputBuffer,vec2(vUv.x+dUv.x,vUv.y+dUv.y));sum+=texture2D(inputBuffer,vec2(vUv.x+dUv.x,vUv.y-dUv.y));sum+=texture2D(inputBuffer,vec2(vUv.x-dUv.x,vUv.y-dUv.y));gl_FragColor=sum*0.25; -#include -}`,tH=class extends ed{constructor({kernelSize:e=eu.MEDIUM,offset:t=0,rotation:i=0,focusArea:n=.4,feather:r=.3}={}){super(),this.fragmentShader=tk,this.vertexShader="uniform vec4 texelSize;uniform float kernel;uniform float scale;uniform float aspect;uniform vec2 rotation;varying vec2 vUv;varying vec2 vUv2;varying vec2 vOffset;void main(){vec2 uv=position.xy*0.5+0.5;vUv=uv;vUv2=(uv-0.5)*2.0*vec2(aspect,1.0);vUv2=vec2(dot(rotation,vUv2),dot(rotation,vec2(vUv2.y,-vUv2.x)));vOffset=(texelSize.xy*vec2(kernel)+texelSize.zw)*scale;gl_Position=vec4(position.xy,1.0,1.0);}",this.kernelSize=e,this.uniforms.aspect=new k.Uniform(1),this.uniforms.rotation=new k.Uniform(new k.Vector2),this.uniforms.maskParams=new k.Uniform(new k.Vector4),this._offset=t,this._focusArea=n,this._feather=r,this.rotation=i,this.updateParams()}updateParams(){let e=this.uniforms.maskParams.value,t=Math.max(this.focusArea,0),i=Math.max(t-this.feather,0);e.set(this.offset-t,this.offset-i,this.offset+t,this.offset+i)}get rotation(){return Math.acos(this.uniforms.rotation.value.x)}set rotation(e){this.uniforms.rotation.value.set(Math.cos(e),Math.sin(e))}get offset(){return this._offset}set offset(e){this._offset=e,this.updateParams()}get focusArea(){return this._focusArea}set focusArea(e){this._focusArea=e,this.updateParams()}get feather(){return this._feather}set feather(e){this._feather=e,this.updateParams()}setSize(e,t){super.setSize(e,t),this.uniforms.aspect.value=e/t}},tG=class extends ef{constructor({offset:e=0,rotation:t=0,focusArea:i=.4,feather:n=.3,kernelSize:r=eu.MEDIUM,resolutionScale:a=.5,resolutionX:s=en.AUTO_SIZE,resolutionY:o=en.AUTO_SIZE}={}){super({kernelSize:r,resolutionScale:a,resolutionX:s,resolutionY:o}),this.blurMaterial=new tH({kernelSize:r,offset:e,rotation:t,focusArea:i,feather:n})}},tV=`#ifdef FRAMEBUFFER_PRECISION_HIGH -uniform mediump sampler2D map; -#else -uniform lowp sampler2D map; -#endif -uniform vec2 maskParams;varying vec2 vUv2;float linearGradientMask(const in float x){return step(maskParams.x,x)-step(maskParams.y,x);}void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){float mask=linearGradientMask(vUv2.y);vec4 texel=texture2D(map,uv);outputColor=mix(texel,inputColor,mask);}`,tW=class extends el{constructor({blendFunction:e,offset:t=0,rotation:i=0,focusArea:n=.4,feather:r=.3,kernelSize:a=eu.MEDIUM,resolutionScale:s=.5,resolutionX:o=en.AUTO_SIZE,resolutionY:l=en.AUTO_SIZE}={}){super("TiltShiftEffect",tV,{vertexShader:"uniform vec2 rotation;varying vec2 vUv2;void mainSupport(const in vec2 uv){vUv2=(uv-0.5)*2.0*vec2(aspect,1.0);vUv2=vec2(dot(rotation,vUv2),dot(rotation,vec2(vUv2.y,-vUv2.x)));}",blendFunction:e,uniforms:new Map([["rotation",new k.Uniform(new k.Vector2)],["maskParams",new k.Uniform(new k.Vector2)],["map",new k.Uniform(null)]])}),this._offset=t,this._focusArea=n,this._feather=r,this.renderTarget=new k.WebGLRenderTarget(1,1,{depthBuffer:!1}),this.renderTarget.texture.name="TiltShift.Target",this.uniforms.get("map").value=this.renderTarget.texture,this.blurPass=new tG({kernelSize:a,resolutionScale:s,resolutionX:o,resolutionY:l,offset:t,rotation:i,focusArea:n,feather:r});const u=this.resolution=new en(this,o,l,s);u.addEventListener("change",e=>this.setSize(u.baseWidth,u.baseHeight)),this.rotation=i,this.updateParams()}updateParams(){let e=this.uniforms.get("maskParams").value,t=Math.max(this.focusArea-this.feather,0);e.set(this.offset-t,this.offset+t)}get rotation(){return Math.acos(this.uniforms.get("rotation").value.x)}set rotation(e){this.uniforms.get("rotation").value.set(Math.cos(e),Math.sin(e)),this.blurPass.blurMaterial.rotation=e}get offset(){return this._offset}set offset(e){this._offset=e,this.blurPass.blurMaterial.offset=e,this.updateParams()}get focusArea(){return this._focusArea}set focusArea(e){this._focusArea=e,this.blurPass.blurMaterial.focusArea=e,this.updateParams()}get feather(){return this._feather}set feather(e){this._feather=e,this.blurPass.blurMaterial.feather=e,this.updateParams()}get bias(){return 0}set bias(e){}update(e,t,i){this.blurPass.render(e,t,this.renderTarget)}setSize(e,t){let i=this.resolution;i.setBaseSize(e,t),this.renderTarget.setSize(i.width,i.height),this.blurPass.resolution.copy(i)}initialize(e,t,i){this.blurPass.initialize(e,t,i),void 0!==i&&(this.renderTarget.texture.type=i,null!==e&&e.outputColorSpace===k.SRGBColorSpace&&(this.renderTarget.texture.colorSpace=k.SRGBColorSpace))}},tj=`#include -#define packFloatToRGBA(v) packDepthToRGBA(v) -#define unpackRGBAToFloat(v) unpackRGBAToDepth(v) -uniform lowp sampler2D luminanceBuffer0;uniform lowp sampler2D luminanceBuffer1;uniform float minLuminance;uniform float deltaTime;uniform float tau;varying vec2 vUv;void main(){float l0=unpackRGBAToFloat(texture2D(luminanceBuffer0,vUv)); -#if __VERSION__ < 300 -float l1=texture2DLodEXT(luminanceBuffer1,vUv,MIP_LEVEL_1X1).r; -#else -float l1=textureLod(luminanceBuffer1,vUv,MIP_LEVEL_1X1).r; -#endif -l0=max(minLuminance,l0);l1=max(minLuminance,l1);float adaptedLum=l0+(l1-l0)*(1.0-exp(-deltaTime*tau));gl_FragColor=(adaptedLum==1.0)?vec4(1.0):packFloatToRGBA(adaptedLum);}`,tX=class extends k.ShaderMaterial{constructor(){super({name:"AdaptiveLuminanceMaterial",defines:{MIP_LEVEL_1X1:"0.0"},uniforms:{luminanceBuffer0:new k.Uniform(null),luminanceBuffer1:new k.Uniform(null),minLuminance:new k.Uniform(.01),deltaTime:new k.Uniform(0),tau:new k.Uniform(1)},extensions:{shaderTextureLOD:!0},blending:k.NoBlending,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:tj,vertexShader:j})}set luminanceBuffer0(e){this.uniforms.luminanceBuffer0.value=e}setLuminanceBuffer0(e){this.uniforms.luminanceBuffer0.value=e}set luminanceBuffer1(e){this.uniforms.luminanceBuffer1.value=e}setLuminanceBuffer1(e){this.uniforms.luminanceBuffer1.value=e}set mipLevel1x1(e){this.defines.MIP_LEVEL_1X1=e.toFixed(1),this.needsUpdate=!0}setMipLevel1x1(e){this.mipLevel1x1=e}set deltaTime(e){this.uniforms.deltaTime.value=e}setDeltaTime(e){this.uniforms.deltaTime.value=e}get minLuminance(){return this.uniforms.minLuminance.value}set minLuminance(e){this.uniforms.minLuminance.value=e}getMinLuminance(){return this.uniforms.minLuminance.value}setMinLuminance(e){this.uniforms.minLuminance.value=e}get adaptationRate(){return this.uniforms.tau.value}set adaptationRate(e){this.uniforms.tau.value=e}getAdaptationRate(){return this.uniforms.tau.value}setAdaptationRate(e){this.uniforms.tau.value=e}},tY=class extends G{constructor(e,{minLuminance:t=.01,adaptationRate:i=1}={}){super("AdaptiveLuminancePass"),this.fullscreenMaterial=new tX,this.needsSwap=!1,this.renderTargetPrevious=new k.WebGLRenderTarget(1,1,{minFilter:k.NearestFilter,magFilter:k.NearestFilter,depthBuffer:!1}),this.renderTargetPrevious.texture.name="Luminance.Previous";const n=this.fullscreenMaterial;n.luminanceBuffer0=this.renderTargetPrevious.texture,n.luminanceBuffer1=e,n.minLuminance=t,n.adaptationRate=i,this.renderTargetAdapted=this.renderTargetPrevious.clone(),this.renderTargetAdapted.texture.name="Luminance.Adapted",this.copyPass=new Y(this.renderTargetPrevious,!1)}get texture(){return this.renderTargetAdapted.texture}getTexture(){return this.renderTargetAdapted.texture}set mipLevel1x1(e){this.fullscreenMaterial.mipLevel1x1=e}get adaptationRate(){return this.fullscreenMaterial.adaptationRate}set adaptationRate(e){this.fullscreenMaterial.adaptationRate=e}render(e,t,i,n,r){this.fullscreenMaterial.deltaTime=n,e.setRenderTarget(this.renderToScreen?null:this.renderTargetAdapted),e.render(this.scene,this.camera),this.copyPass.render(e,this.renderTargetAdapted)}},tQ=`#include -uniform float whitePoint; -#if TONE_MAPPING_MODE == 2 || TONE_MAPPING_MODE == 3 -uniform float middleGrey; -#if TONE_MAPPING_MODE == 3 -uniform lowp sampler2D luminanceBuffer; -#else -uniform float averageLuminance; -#endif -vec3 Reinhard2ToneMapping(vec3 color){color*=toneMappingExposure;float l=luminance(color); -#if TONE_MAPPING_MODE == 3 -float lumAvg=unpackRGBAToFloat(texture2D(luminanceBuffer,vec2(0.5))); -#else -float lumAvg=averageLuminance; -#endif -float lumScaled=(l*middleGrey)/max(lumAvg,1e-6);float lumCompressed=lumScaled*(1.0+lumScaled/(whitePoint*whitePoint));lumCompressed/=(1.0+lumScaled);return clamp(lumCompressed*color,0.0,1.0);} -#elif TONE_MAPPING_MODE == 4 -#define A 0.15 -#define B 0.50 -#define C 0.10 -#define D 0.20 -#define E 0.02 -#define F 0.30 -vec3 Uncharted2Helper(const in vec3 x){return((x*(A*x+C*B)+D*E)/(x*(A*x+B)+D*F))-E/F;}vec3 Uncharted2ToneMapping(vec3 color){color*=toneMappingExposure;return clamp(Uncharted2Helper(color)/Uncharted2Helper(vec3(whitePoint)),0.0,1.0);} -#endif -void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){ -#if TONE_MAPPING_MODE == 2 || TONE_MAPPING_MODE == 3 -outputColor=vec4(Reinhard2ToneMapping(inputColor.rgb),inputColor.a); -#elif TONE_MAPPING_MODE == 4 -outputColor=vec4(Uncharted2ToneMapping(inputColor.rgb),inputColor.a); -#else -outputColor=vec4(toneMapping(inputColor.rgb),inputColor.a); -#endif -}`,tq=class extends el{constructor({blendFunction:e=30,adaptive:t=!1,mode:i=t?3:7,resolution:n=256,maxLuminance:r=4,whitePoint:a=r,middleGrey:s=.6,minLuminance:o=.01,averageLuminance:l=1,adaptationRate:u=1}={}){super("ToneMappingEffect",tQ,{blendFunction:e,uniforms:new Map([["luminanceBuffer",new k.Uniform(null)],["maxLuminance",new k.Uniform(r)],["whitePoint",new k.Uniform(a)],["middleGrey",new k.Uniform(s)],["averageLuminance",new k.Uniform(l)]])}),this.renderTargetLuminance=new k.WebGLRenderTarget(1,1,{minFilter:k.LinearMipmapLinearFilter,depthBuffer:!1}),this.renderTargetLuminance.texture.generateMipmaps=!0,this.renderTargetLuminance.texture.name="Luminance",this.luminancePass=new eg({renderTarget:this.renderTargetLuminance}),this.adaptiveLuminancePass=new tY(this.luminancePass.texture,{minLuminance:o,adaptationRate:u}),this.uniforms.get("luminanceBuffer").value=this.adaptiveLuminancePass.texture,this.resolution=n,this.mode=i}get mode(){return Number(this.defines.get("TONE_MAPPING_MODE"))}set mode(e){if(this.mode===e)return;let t=k.REVISION.replace(/\D+/g,"");switch(this.defines.clear(),this.defines.set("TONE_MAPPING_MODE",e.toFixed(0)),e){case 0:this.defines.set("toneMapping(texel)","LinearToneMapping(texel)");break;case 1:this.defines.set("toneMapping(texel)","ReinhardToneMapping(texel)");break;case 5:case 5:this.defines.set("toneMapping(texel)",t>=168?"CineonToneMapping(texel)":"OptimizedCineonToneMapping(texel)");break;case 6:this.defines.set("toneMapping(texel)","ACESFilmicToneMapping(texel)");break;case 7:this.defines.set("toneMapping(texel)","AgXToneMapping(texel)");break;case 8:this.defines.set("toneMapping(texel)","NeutralToneMapping(texel)");break;default:this.defines.set("toneMapping(texel)","texel")}this.adaptiveLuminancePass.enabled=3===e,this.setChanged()}getMode(){return this.mode}setMode(e){this.mode=e}get whitePoint(){return this.uniforms.get("whitePoint").value}set whitePoint(e){this.uniforms.get("whitePoint").value=e}get middleGrey(){return this.uniforms.get("middleGrey").value}set middleGrey(e){this.uniforms.get("middleGrey").value=e}get averageLuminance(){return this.uniforms.get("averageLuminance").value}set averageLuminance(e){this.uniforms.get("averageLuminance").value=e}get adaptiveLuminanceMaterial(){return this.adaptiveLuminancePass.fullscreenMaterial}getAdaptiveLuminanceMaterial(){return this.adaptiveLuminanceMaterial}get resolution(){return this.luminancePass.resolution.width}set resolution(e){let t=Math.max(0,Math.ceil(Math.log2(e))),i=Math.pow(2,t);this.luminancePass.resolution.setPreferredSize(i,i),this.adaptiveLuminanceMaterial.mipLevel1x1=t}getResolution(){return this.resolution}setResolution(e){this.resolution=e}get adaptive(){return 3===this.mode}set adaptive(e){this.mode=e?3:2}get adaptationRate(){return this.adaptiveLuminanceMaterial.adaptationRate}set adaptationRate(e){this.adaptiveLuminanceMaterial.adaptationRate=e}get distinction(){return console.warn(this.name,"distinction was removed."),1}set distinction(e){console.warn(this.name,"distinction was removed.")}update(e,t,i){this.adaptiveLuminancePass.enabled&&(this.luminancePass.render(e,t),this.adaptiveLuminancePass.render(e,null,null,i))}initialize(e,t,i){this.adaptiveLuminancePass.initialize(e,t,i)}},tK=`uniform float offset;uniform float darkness;void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){const vec2 center=vec2(0.5);vec3 color=inputColor.rgb; -#if VIGNETTE_TECHNIQUE == 0 -float d=distance(uv,center);color*=smoothstep(0.8,offset*0.799,d*(darkness+offset)); -#else -vec2 coord=(uv-center)*vec2(offset);color=mix(color,vec3(1.0-darkness),dot(coord,coord)); -#endif -outputColor=vec4(color,inputColor.a);}`,tZ=class extends el{constructor({blendFunction:e,eskil:t=!1,technique:i=1*!!t,offset:n=.5,darkness:r=.5}={}){super("VignetteEffect",tK,{blendFunction:e,defines:new Map([["VIGNETTE_TECHNIQUE",i.toFixed(0)]]),uniforms:new Map([["offset",new k.Uniform(n)],["darkness",new k.Uniform(r)]])})}get technique(){return Number(this.defines.get("VIGNETTE_TECHNIQUE"))}set technique(e){this.technique!==e&&(this.defines.set("VIGNETTE_TECHNIQUE",e.toFixed(0)),this.setChanged())}get eskil(){return 1===this.technique}set eskil(e){this.technique=1*!!e}getTechnique(){return this.technique}setTechnique(e){this.technique=e}get offset(){return this.uniforms.get("offset").value}set offset(e){this.uniforms.get("offset").value=e}getOffset(){return this.offset}setOffset(e){this.offset=e}get darkness(){return this.uniforms.get("darkness").value}set darkness(e){this.uniforms.get("darkness").value=e}getDarkness(){return this.darkness}setDarkness(e){this.darkness=e}};k.Loader,k.Loader,k.Loader;k.ShaderMaterial;var tJ=`#include -varying vec2 vUv; -#ifdef NORMAL_DEPTH -#ifdef GL_FRAGMENT_PRECISION_HIGH -uniform highp sampler2D normalDepthBuffer; -#else -uniform mediump sampler2D normalDepthBuffer; -#endif -float readDepth(const in vec2 uv){return texture2D(normalDepthBuffer,uv).a;} -#else -#if INPUT_DEPTH_PACKING == 3201 -uniform lowp sampler2D depthBuffer; -#elif defined(GL_FRAGMENT_PRECISION_HIGH) -uniform highp sampler2D depthBuffer; -#else -uniform mediump sampler2D depthBuffer; -#endif -float readDepth(const in vec2 uv){ -#if INPUT_DEPTH_PACKING == 3201 -return unpackRGBAToDepth(texture2D(depthBuffer,uv)); -#else -return texture2D(depthBuffer,uv).r; -#endif -} -#endif -void main(){ -#if INPUT_DEPTH_PACKING == OUTPUT_DEPTH_PACKING -gl_FragColor=texture2D(depthBuffer,vUv); -#else -float depth=readDepth(vUv); -#if OUTPUT_DEPTH_PACKING == 3201 -gl_FragColor=(depth==1.0)?vec4(1.0):packDepthToRGBA(depth); -#else -gl_FragColor=vec4(vec3(depth),1.0); -#endif -#endif -}`,t$=`varying vec2 vUv; -#if DEPTH_COPY_MODE == 1 -uniform vec2 texelPosition; -#endif -void main(){ -#if DEPTH_COPY_MODE == 1 -vUv=texelPosition; -#else -vUv=position.xy*0.5+0.5; -#endif -gl_Position=vec4(position.xy,1.0,1.0);}`,t0=class extends k.ShaderMaterial{constructor(){super({name:"DepthCopyMaterial",defines:{INPUT_DEPTH_PACKING:"0",OUTPUT_DEPTH_PACKING:"0",DEPTH_COPY_MODE:"0"},uniforms:{depthBuffer:new k.Uniform(null),texelPosition:new k.Uniform(new k.Vector2)},blending:k.NoBlending,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:tJ,vertexShader:t$}),this.depthCopyMode=0}get depthBuffer(){return this.uniforms.depthBuffer.value}set depthBuffer(e){this.uniforms.depthBuffer.value=e}set inputDepthPacking(e){this.defines.INPUT_DEPTH_PACKING=e.toFixed(0),this.needsUpdate=!0}get outputDepthPacking(){return Number(this.defines.OUTPUT_DEPTH_PACKING)}set outputDepthPacking(e){this.defines.OUTPUT_DEPTH_PACKING=e.toFixed(0),this.needsUpdate=!0}setDepthBuffer(e,t=k.BasicDepthPacking){this.depthBuffer=e,this.inputDepthPacking=t}getInputDepthPacking(){return Number(this.defines.INPUT_DEPTH_PACKING)}setInputDepthPacking(e){this.defines.INPUT_DEPTH_PACKING=e.toFixed(0),this.needsUpdate=!0}getOutputDepthPacking(){return Number(this.defines.OUTPUT_DEPTH_PACKING)}setOutputDepthPacking(e){this.defines.OUTPUT_DEPTH_PACKING=e.toFixed(0),this.needsUpdate=!0}get texelPosition(){return this.uniforms.texelPosition.value}getTexelPosition(){return this.uniforms.texelPosition.value}setTexelPosition(e){this.uniforms.texelPosition.value=e}get mode(){return this.depthCopyMode}set mode(e){this.depthCopyMode=e,this.defines.DEPTH_COPY_MODE=e.toFixed(0),this.needsUpdate=!0}getMode(){return this.mode}setMode(e){this.mode=e}},t1=`#include -#include -#include -#define packFloatToRGBA(v) packDepthToRGBA(v) -#define unpackRGBAToFloat(v) unpackRGBAToDepth(v) -#ifdef FRAMEBUFFER_PRECISION_HIGH -uniform mediump sampler2D inputBuffer; -#else -uniform lowp sampler2D inputBuffer; -#endif -#if DEPTH_PACKING == 3201 -uniform lowp sampler2D depthBuffer; -#elif defined(GL_FRAGMENT_PRECISION_HIGH) -uniform highp sampler2D depthBuffer; -#else -uniform mediump sampler2D depthBuffer; -#endif -uniform vec2 resolution;uniform vec2 texelSize;uniform float cameraNear;uniform float cameraFar;uniform float aspect;uniform float time;varying vec2 vUv;vec4 sRGBToLinear(const in vec4 value){return vec4(mix(pow(value.rgb*0.9478672986+vec3(0.0521327014),vec3(2.4)),value.rgb*0.0773993808,vec3(lessThanEqual(value.rgb,vec3(0.04045)))),value.a);}float readDepth(const in vec2 uv){ -#if DEPTH_PACKING == 3201 -float depth=unpackRGBAToDepth(texture2D(depthBuffer,uv)); -#else -float depth=texture2D(depthBuffer,uv).r; -#endif -#if defined(USE_LOGARITHMIC_DEPTH_BUFFER) || defined(LOG_DEPTH) -float d=pow(2.0,depth*log2(cameraFar+1.0))-1.0;float a=cameraFar/(cameraFar-cameraNear);float b=cameraFar*cameraNear/(cameraNear-cameraFar);depth=a+b/d; -#elif defined(USE_REVERSED_DEPTH_BUFFER) -depth=1.0-depth; -#endif -return depth;}float getViewZ(const in float depth){ -#ifdef PERSPECTIVE_CAMERA -return perspectiveDepthToViewZ(depth,cameraNear,cameraFar); -#else -return orthographicDepthToViewZ(depth,cameraNear,cameraFar); -#endif -}vec3 RGBToHCV(const in vec3 RGB){vec4 P=mix(vec4(RGB.bg,-1.0,2.0/3.0),vec4(RGB.gb,0.0,-1.0/3.0),step(RGB.b,RGB.g));vec4 Q=mix(vec4(P.xyw,RGB.r),vec4(RGB.r,P.yzx),step(P.x,RGB.r));float C=Q.x-min(Q.w,Q.y);float H=abs((Q.w-Q.y)/(6.0*C+EPSILON)+Q.z);return vec3(H,C,Q.x);}vec3 RGBToHSL(const in vec3 RGB){vec3 HCV=RGBToHCV(RGB);float L=HCV.z-HCV.y*0.5;float S=HCV.y/(1.0-abs(L*2.0-1.0)+EPSILON);return vec3(HCV.x,S,L);}vec3 HueToRGB(const in float H){float R=abs(H*6.0-3.0)-1.0;float G=2.0-abs(H*6.0-2.0);float B=2.0-abs(H*6.0-4.0);return clamp(vec3(R,G,B),0.0,1.0);}vec3 HSLToRGB(const in vec3 HSL){vec3 RGB=HueToRGB(HSL.x);float C=(1.0-abs(2.0*HSL.z-1.0))*HSL.y;return(RGB-0.5)*C+HSL.z;}FRAGMENT_HEAD void main(){FRAGMENT_MAIN_UV vec4 color0=texture2D(inputBuffer,UV);vec4 color1=vec4(0.0);FRAGMENT_MAIN_IMAGE color0.a=clamp(color0.a,0.0,1.0);gl_FragColor=color0; -#ifdef ENCODE_OUTPUT -#include -#endif -#include -}`,t2=class extends k.ShaderMaterial{constructor(e,t,i,n,r=!1){super({name:"EffectMaterial",defines:{THREE_REVISION:k.REVISION.replace(/\D+/g,""),DEPTH_PACKING:"0",ENCODE_OUTPUT:"1"},uniforms:{inputBuffer:new k.Uniform(null),depthBuffer:new k.Uniform(null),resolution:new k.Uniform(new k.Vector2),texelSize:new k.Uniform(new k.Vector2),cameraNear:new k.Uniform(.3),cameraFar:new k.Uniform(1e3),aspect:new k.Uniform(1),time:new k.Uniform(0)},blending:k.NoBlending,toneMapped:!1,depthWrite:!1,depthTest:!1,dithering:r}),e&&this.setShaderParts(e),t&&this.setDefines(t),i&&this.setUniforms(i),this.copyCameraSettings(n)}set inputBuffer(e){this.uniforms.inputBuffer.value=e}setInputBuffer(e){this.uniforms.inputBuffer.value=e}get depthBuffer(){return this.uniforms.depthBuffer.value}set depthBuffer(e){this.uniforms.depthBuffer.value=e}get depthPacking(){return Number(this.defines.DEPTH_PACKING)}set depthPacking(e){this.defines.DEPTH_PACKING=e.toFixed(0),this.needsUpdate=!0}setDepthBuffer(e,t=k.BasicDepthPacking){this.depthBuffer=e,this.depthPacking=t}setShaderData(e){this.setShaderParts(e.shaderParts),this.setDefines(e.defines),this.setUniforms(e.uniforms),this.setExtensions(e.extensions)}setShaderParts(e){return this.fragmentShader=t1.replace($.FRAGMENT_HEAD,e.get($.FRAGMENT_HEAD)||"").replace($.FRAGMENT_MAIN_UV,e.get($.FRAGMENT_MAIN_UV)||"").replace($.FRAGMENT_MAIN_IMAGE,e.get($.FRAGMENT_MAIN_IMAGE)||""),this.vertexShader="uniform vec2 resolution;uniform vec2 texelSize;uniform float cameraNear;uniform float cameraFar;uniform float aspect;uniform float time;varying vec2 vUv;VERTEX_HEAD void main(){vUv=position.xy*0.5+0.5;VERTEX_MAIN_SUPPORT gl_Position=vec4(position.xy,1.0,1.0);}".replace($.VERTEX_HEAD,e.get($.VERTEX_HEAD)||"").replace($.VERTEX_MAIN_SUPPORT,e.get($.VERTEX_MAIN_SUPPORT)||""),this.needsUpdate=!0,this}setDefines(e){for(let t of e.entries())this.defines[t[0]]=t[1];return this.needsUpdate=!0,this}setUniforms(e){for(let t of e.entries())this.uniforms[t[0]]=t[1];return this}setExtensions(e){for(let t of(this.extensions={},e))this.extensions[t]=!0;return this}get encodeOutput(){return void 0!==this.defines.ENCODE_OUTPUT}set encodeOutput(e){this.encodeOutput!==e&&(e?this.defines.ENCODE_OUTPUT="1":delete this.defines.ENCODE_OUTPUT,this.needsUpdate=!0)}isOutputEncodingEnabled(e){return this.encodeOutput}setOutputEncodingEnabled(e){this.encodeOutput=e}get time(){return this.uniforms.time.value}set time(e){this.uniforms.time.value=e}setDeltaTime(e){this.uniforms.time.value+=e}adoptCameraSettings(e){this.copyCameraSettings(e)}copyCameraSettings(e){e&&(this.uniforms.cameraNear.value=e.near,this.uniforms.cameraFar.value=e.far,e instanceof k.PerspectiveCamera?this.defines.PERSPECTIVE_CAMERA="1":delete this.defines.PERSPECTIVE_CAMERA,this.needsUpdate=!0)}setSize(e,t){let i=this.uniforms;i.resolution.value.set(e,t),i.texelSize.value.set(1/e,1/t),i.aspect.value=e/t}static get Section(){return $}};k.ShaderMaterial;var t3=class extends G{constructor({depthPacking:e=k.RGBADepthPacking}={}){super("DepthCopyPass");const t=new t0;t.outputDepthPacking=e,this.fullscreenMaterial=t,this.needsDepthTexture=!0,this.needsSwap=!1,this.renderTarget=new k.WebGLRenderTarget(1,1,{type:e===k.RGBADepthPacking?k.UnsignedByteType:k.FloatType,minFilter:k.NearestFilter,magFilter:k.NearestFilter,depthBuffer:!1}),this.renderTarget.texture.name="DepthCopyPass.Target"}get texture(){return this.renderTarget.texture}getTexture(){return this.renderTarget.texture}get depthPacking(){return this.fullscreenMaterial.outputDepthPacking}getDepthPacking(){return this.fullscreenMaterial.outputDepthPacking}setDepthTexture(e,t=k.BasicDepthPacking){this.fullscreenMaterial.depthBuffer=e,this.fullscreenMaterial.inputDepthPacking=t}render(e,t,i,n,r){e.setRenderTarget(this.renderToScreen?null:this.renderTarget),e.render(this.scene,this.camera)}setSize(e,t){this.renderTarget.setSize(e,t)}},t4=Number(k.REVISION.replace(/\D+/g,"")),t5=255/256,t6=new Float32Array([255/256/0x1000000,255/256/65536,255/256/256,255/256]),t8=new Float32Array([t5,t5/256,t5/65536,1/0x1000000]),t9=class extends t3{constructor({depthPacking:e=k.RGBADepthPacking,mode:t=1}={}){if(e!==k.RGBADepthPacking&&e!==k.BasicDepthPacking)throw Error(`Unsupported depth packing: ${e}`);super({depthPacking:e}),this.name="DepthPickingPass",this.fullscreenMaterial.mode=t,this.pixelBuffer=e===k.RGBADepthPacking?new Uint8Array(4):new Float32Array(4),this.callback=null}readDepth(e){return this.fullscreenMaterial.texelPosition.set(.5*e.x+.5,.5*e.y+.5),new Promise(e=>{this.callback=e})}render(e,t,i,n,r){let a=this.fullscreenMaterial,s=a.mode;if(0===s&&super.render(e),null!==this.callback){let t,i=this.renderTarget,n=this.pixelBuffer,r=i.texture.type!==k.FloatType,o=0,l=0;if(1===s)super.render(e);else{let e=a.texelPosition;o=Math.round(e.x*i.width),l=Math.round(e.y*i.height)}e.readRenderTargetPixels(i,o,l,1,1,n),this.callback(r?(t=t4>=167?t8:t6,(n[0]*t[0]+n[1]*t[1]+n[2]*t[2]+n[3]*t[3])/255):n[0]),this.callback=null}}setSize(e,t){0===this.fullscreenMaterial.mode&&super.setSize(e,t)}};function t7(e,t,i){for(let n of t){let t="$1"+e+n.charAt(0).toUpperCase()+n.slice(1),r=RegExp("([^\\.])(\\b"+n+"\\b)","g");for(let e of i.entries())null!==e[1]&&i.set(e[0],e[1].replace(r,t))}}var ie=class extends G{constructor(e,...t){super("EffectPass"),this.fullscreenMaterial=new t2(null,null,null,e),this.listener=e=>this.handleEvent(e),this.effects=[],this.setEffects(t),this.skipRendering=!1,this.minTime=1,this.maxTime=1/0,this.timeScale=1}set mainScene(e){for(let t of this.effects)t.mainScene=e}set mainCamera(e){for(let t of(this.fullscreenMaterial.copyCameraSettings(e),this.effects))t.mainCamera=e}get encodeOutput(){return this.fullscreenMaterial.encodeOutput}set encodeOutput(e){this.fullscreenMaterial.encodeOutput=e}get dithering(){return this.fullscreenMaterial.dithering}set dithering(e){let t=this.fullscreenMaterial;t.dithering=e,t.needsUpdate=!0}setEffects(e){for(let e of this.effects)e.removeEventListener("change",this.listener);for(let t of(this.effects=e.sort((e,t)=>t.attributes-e.attributes),this.effects))t.addEventListener("change",this.listener)}updateMaterial(){let e=new ee,t=0;for(let i of this.effects)if(9===i.blendMode.blendFunction)e.attributes|=1&i.getAttributes();else if((e.attributes&i.getAttributes()&2)!=0)throw Error(`Convolution effects cannot be merged (${i.name})`);else!function(e,t,i){let n=t.getFragmentShader(),r=t.getVertexShader(),a=void 0!==n&&/mainImage/.test(n),s=void 0!==n&&/mainUv/.test(n);if(i.attributes|=t.getAttributes(),void 0===n)throw Error(`Missing fragment shader (${t.name})`);if(s&&(2&i.attributes)!=0)throw Error(`Effects that transform UVs are incompatible with convolution effects (${t.name})`);if(a||s){let o=/\w+\s+(\w+)\([\w\s,]*\)\s*{/g,l=i.shaderParts,u=l.get($.FRAGMENT_HEAD)||"",c=l.get($.FRAGMENT_MAIN_UV)||"",h=l.get($.FRAGMENT_MAIN_IMAGE)||"",d=l.get($.VERTEX_HEAD)||"",f=l.get($.VERTEX_MAIN_SUPPORT)||"",p=new Set,m=new Set;if(s&&(c+=` ${e}MainUv(UV); -`,i.uvTransformation=!0),null!==r&&/mainSupport/.test(r)){let t=/mainSupport *\([\w\s]*?uv\s*?\)/.test(r);for(let n of(f+=` ${e}MainSupport(`,f+=t?"vUv);\n":");\n",r.matchAll(/(?:varying\s+\w+\s+([\S\s]*?);)/g)))for(let e of n[1].split(/\s*,\s*/))i.varyings.add(e),p.add(e),m.add(e);for(let e of r.matchAll(o))m.add(e[1])}for(let e of n.matchAll(o))m.add(e[1]);for(let e of t.defines.keys())m.add(e.replace(/\([\w\s,]*\)/g,""));for(let e of t.uniforms.keys())m.add(e);m.delete("while"),m.delete("for"),m.delete("if"),t.uniforms.forEach((t,n)=>i.uniforms.set(e+n.charAt(0).toUpperCase()+n.slice(1),t)),t.defines.forEach((t,n)=>i.defines.set(e+n.charAt(0).toUpperCase()+n.slice(1),t));let g=new Map([["fragment",n],["vertex",r]]);t7(e,m,i.defines),t7(e,m,g),n=g.get("fragment"),r=g.get("vertex");let v=t.blendMode;if(i.blendModes.set(v.blendFunction,v),a){null!==t.inputColorSpace&&t.inputColorSpace!==i.colorSpace&&(h+=t.inputColorSpace===k.SRGBColorSpace?"color0 = sRGBTransferOETF(color0);\n ":"color0 = sRGBToLinear(color0);\n "),t.outputColorSpace!==k.NoColorSpace?i.colorSpace=t.outputColorSpace:null!==t.inputColorSpace&&(i.colorSpace=t.inputColorSpace),h+=`${e}MainImage(color0, UV, `,(1&i.attributes)!=0&&/MainImage *\([\w\s,]*?depth[\w\s,]*?\)/.test(n)&&(h+="depth, ",i.readDepth=!0),h+="color1);\n ";let r=e+"BlendOpacity";i.uniforms.set(r,v.opacity),h+=`color0 = blend${v.blendFunction}(color0, color1, ${r}); - - `,u+=`uniform float ${r}; - -`}if(u+=n+"\n",null!==r&&(d+=r+"\n"),l.set($.FRAGMENT_HEAD,u),l.set($.FRAGMENT_MAIN_UV,c),l.set($.FRAGMENT_MAIN_IMAGE,h),l.set($.VERTEX_HEAD,d),l.set($.VERTEX_MAIN_SUPPORT,f),null!==t.extensions)for(let e of t.extensions)i.extensions.add(e)}else throw Error(`Could not find mainImage or mainUv function (${t.name})`)}("e"+t++,i,e);let i=e.shaderParts.get($.FRAGMENT_HEAD),n=e.shaderParts.get($.FRAGMENT_MAIN_IMAGE),r=e.shaderParts.get($.FRAGMENT_MAIN_UV),a=/\bblend\b/g;for(let t of e.blendModes.values())i+=t.getShaderCode().replace(a,`blend${t.blendFunction}`)+"\n";for(let[t,a]of((1&e.attributes)!=0?(e.readDepth&&(n="float depth = readDepth(UV);\n\n "+n),this.needsDepthTexture=null===this.getDepthTexture()):this.needsDepthTexture=!1,e.colorSpace===k.SRGBColorSpace&&(n+="color0 = sRGBToLinear(color0);\n "),e.uvTransformation?(r="vec2 transformedUv = vUv;\n"+r,e.defines.set("UV","transformedUv")):e.defines.set("UV","vUv"),e.shaderParts.set($.FRAGMENT_HEAD,i),e.shaderParts.set($.FRAGMENT_MAIN_IMAGE,n),e.shaderParts.set($.FRAGMENT_MAIN_UV,r),e.shaderParts))null!==a&&e.shaderParts.set(t,a.trim().replace(/^#/,"\n#"));this.skipRendering=0===t,this.needsSwap=!this.skipRendering,this.fullscreenMaterial.setShaderData(e)}recompile(){this.updateMaterial()}getDepthTexture(){return this.fullscreenMaterial.depthBuffer}setDepthTexture(e,t=k.BasicDepthPacking){for(let i of(this.fullscreenMaterial.depthBuffer=e,this.fullscreenMaterial.depthPacking=t,this.effects))i.setDepthTexture(e,t)}render(e,t,i,n,r){for(let i of this.effects)i.update(e,t,n);if(!this.skipRendering||this.renderToScreen){let r=this.fullscreenMaterial;r.inputBuffer=t.texture,r.time+=n*this.timeScale,e.setRenderTarget(this.renderToScreen?null:i),e.render(this.scene,this.camera)}}setSize(e,t){for(let i of(this.fullscreenMaterial.setSize(e,t),this.effects))i.setSize(e,t)}initialize(e,t,i){for(let n of(this.renderer=e,this.effects))n.initialize(e,t,i);this.updateMaterial(),void 0!==i&&i!==k.UnsignedByteType&&(this.fullscreenMaterial.defines.FRAMEBUFFER_PRECISION_HIGH="1")}dispose(){for(let e of(super.dispose(),this.effects))e.removeEventListener("change",this.listener),e.dispose()}handleEvent(e){"change"===e.type&&this.recompile()}},it=class extends G{constructor(e,t,{renderTarget:i,resolutionScale:n=1,width:r=en.AUTO_SIZE,height:a=en.AUTO_SIZE,resolutionX:s=r,resolutionY:o=a}={}){super("NormalPass"),this.needsSwap=!1,this.renderPass=new eJ(e,t,new k.MeshNormalMaterial);const l=this.renderPass;l.ignoreBackground=!0,l.skipShadowMapUpdate=!0;const u=l.getClearPass();u.overrideClearColor=new k.Color(7829503),u.overrideClearAlpha=1,this.renderTarget=i,void 0===this.renderTarget&&(this.renderTarget=new k.WebGLRenderTarget(1,1,{minFilter:k.NearestFilter,magFilter:k.NearestFilter}),this.renderTarget.texture.name="NormalPass.Target");const c=this.resolution=new en(this,s,o,n);c.addEventListener("change",e=>this.setSize(c.baseWidth,c.baseHeight))}set mainScene(e){this.renderPass.mainScene=e}set mainCamera(e){this.renderPass.mainCamera=e}get texture(){return this.renderTarget.texture}getTexture(){return this.renderTarget.texture}getResolution(){return this.resolution}getResolutionScale(){return this.resolution.scale}setResolutionScale(e){this.resolution.scale=e}render(e,t,i,n,r){let a=this.renderToScreen?null:this.renderTarget;this.renderPass.render(e,a,a)}setSize(e,t){let i=this.resolution;i.setBaseSize(e,t),this.renderTarget.setSize(i.width,i.height)}};function ii(e,t,i,n){var r;return(r=e+(t-e)*.75)+(i+(n-i)*.75-r)*.875}function ir(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}new Float32Array(3),new Float32Array(3),new Float32Array(3),new Float32Array(3),new Float32Array(3),new Float32Array(3),new Float32Array([0,0,0]),new Float32Array([1,0,0]),new Float32Array([1,1,0]),new Float32Array([1,1,1]),new Float32Array([0,0,0]),new Float32Array([1,0,0]),new Float32Array([1,0,1]),new Float32Array([1,1,1]),new Float32Array([0,0,0]),new Float32Array([0,0,1]),new Float32Array([1,0,1]),new Float32Array([1,1,1]),new Float32Array([0,0,0]),new Float32Array([0,1,0]),new Float32Array([1,1,0]),new Float32Array([1,1,1]),new Float32Array([0,0,0]),new Float32Array([0,1,0]),new Float32Array([0,1,1]),new Float32Array([1,1,1]),new Float32Array([0,0,0]),new Float32Array([0,0,1]),new Float32Array([0,1,1]),new Float32Array([1,1,1]),new Float32Array(2),new Float32Array(2),new Float32Array([0,-.25,.25,-.125,.125,-.375,.375]),new Float32Array([0,0]),new Float32Array([.25,-.25]),new Float32Array([-.25,.25]),new Float32Array([.125,-.125]),new Float32Array([-.125,.125]),new Uint8Array([0,0]),new Uint8Array([3,0]),new Uint8Array([0,3]),new Uint8Array([3,3]),new Uint8Array([1,0]),new Uint8Array([4,0]),new Uint8Array([1,3]),new Uint8Array([4,3]),new Uint8Array([0,1]),new Uint8Array([3,1]),new Uint8Array([0,4]),new Uint8Array([3,4]),new Uint8Array([1,1]),new Uint8Array([4,1]),new Uint8Array([1,4]),new Uint8Array([4,4]),new Uint8Array([0,0]),new Uint8Array([1,0]),new Uint8Array([0,2]),new Uint8Array([1,2]),new Uint8Array([2,0]),new Uint8Array([3,0]),new Uint8Array([2,2]),new Uint8Array([3,2]),new Uint8Array([0,1]),new Uint8Array([1,1]),new Uint8Array([0,3]),new Uint8Array([1,3]),new Uint8Array([2,1]),new Uint8Array([3,1]),new Uint8Array([2,3]),new Uint8Array([3,3]),ii(0,0,0,0),new Float32Array([0,0,0,0]),ii(0,0,0,1),new Float32Array([0,0,0,1]),ii(0,0,1,0),new Float32Array([0,0,1,0]),ii(0,0,1,1),new Float32Array([0,0,1,1]),ii(0,1,0,0),new Float32Array([0,1,0,0]),ii(0,1,0,1),new Float32Array([0,1,0,1]),ii(0,1,1,0),new Float32Array([0,1,1,0]),ii(0,1,1,1),new Float32Array([0,1,1,1]),ii(1,0,0,0),new Float32Array([1,0,0,0]),ii(1,0,0,1),new Float32Array([1,0,0,1]),ii(1,0,1,0),new Float32Array([1,0,1,0]),ii(1,0,1,1),new Float32Array([1,0,1,1]),ii(1,1,0,0),new Float32Array([1,1,0,0]),ii(1,1,0,1),new Float32Array([1,1,0,1]),ii(1,1,1,0),new Float32Array([1,1,1,0]),ii(1,1,1,1),new Float32Array([1,1,1,1]),e.s(["BloomEffect",0,eb,"BrightnessContrastEffect",0,ew,"ChromaticAberrationEffect",0,eC,"ColorAverageEffect",0,eT,"ColorDepthEffect",0,eE,"CopyPass",0,Y,"DepthDownsamplingPass",0,tB,"DepthEffect",0,eP,"DepthOfFieldEffect",0,eH,"DepthPickingPass",0,t9,"DotScreenEffect",0,eG,"Effect",0,el,"EffectComposer",0,J,"EffectPass",0,ie,"FXAAEffect",0,eW,"GlitchEffect",0,eq,"GlitchMode",0,ej,"GodRaysEffect",0,e2,"GridEffect",0,e3,"HueSaturationEffect",0,e4,"KernelSize",0,eu,"LUT3DEffect",0,te,"MaskFunction",0,eD,"NoiseEffect",0,ti,"NormalPass",0,it,"OutlineEffect",0,tu,"Pass",0,G,"PixelationEffect",0,tc,"RenderPass",0,eJ,"SMAAEffect",0,tC,"SSAOEffect",0,tN,"ScanlineEffect",0,td,"SelectiveBloomEffect",0,ty,"SepiaEffect",0,tS,"ShockWaveEffect",0,tg,"TextureEffect",0,tz,"TiltShiftEffect",0,tW,"ToneMappingEffect",0,tq,"VignetteEffect",0,tZ],33623);function ia(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=Array(t);itypeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||is(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}new B.Vector2,new B.Vector2;function il(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}var iu=function e(t,i,n){var r=this;il(this,e),ir(this,"dot2",function(e,t){return r.x*e+r.y*t}),ir(this,"dot3",function(e,t,i){return r.x*e+r.y*t+r.z*i}),this.x=t,this.y=i,this.z=n},ic=[new iu(1,1,0),new iu(-1,1,0),new iu(1,-1,0),new iu(-1,-1,0),new iu(1,0,1),new iu(-1,0,1),new iu(1,0,-1),new iu(-1,0,-1),new iu(0,1,1),new iu(0,-1,1),new iu(0,1,-1),new iu(0,-1,-1)],ih=[151,160,137,91,90,15,131,13,201,95,96,53,194,233,7,225,140,36,103,30,69,142,8,99,37,240,21,10,23,190,6,148,247,120,234,75,0,26,197,62,94,252,219,203,117,35,11,32,57,177,33,88,237,149,56,87,174,20,125,136,171,168,68,175,74,165,71,134,139,48,27,166,77,146,158,231,83,111,229,122,60,211,133,230,220,105,92,41,55,46,245,40,244,102,143,54,65,25,63,161,1,216,80,73,209,76,132,187,208,89,18,169,200,196,135,130,116,188,159,86,164,100,109,198,173,186,3,64,52,217,226,250,124,123,5,202,38,147,118,126,255,82,85,212,207,206,59,227,47,16,58,17,182,189,28,42,223,183,170,213,119,248,152,2,44,154,163,70,221,153,101,155,167,43,172,9,129,22,39,253,19,98,108,110,79,113,224,232,178,185,112,104,218,246,97,228,251,34,242,193,238,210,144,12,191,179,162,241,81,51,145,235,249,14,239,107,49,192,214,31,181,199,106,157,184,84,204,176,115,121,50,45,127,4,150,254,138,236,205,93,222,114,67,29,24,72,243,141,128,195,78,66,215,61,156,180],id=Array(512),ip=Array(512),im=0;(im=Math.floor(im))<256&&(im|=im<<8);for(var ig,iv=0;iv<256;iv++)ig=1&iv?ih[iv]^255&im:ih[iv]^im>>8&255,id[iv]=id[iv+256]=ig,ip[iv]=ip[iv+256]=ic[ig%12];function ix(e){var t=function(e){if("number"==typeof e)e=Math.abs(e);else if("string"==typeof e){var t=e;e=0;for(var i=0;i3&&void 0!==arguments[3]?arguments[3]:.25,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:.01,a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:1/0,s=arguments.length>6&&void 0!==arguments[6]?arguments[6]:iy,o=arguments.length>7&&void 0!==arguments[7]?arguments[7]:.001,l="velocity_"+t;if(void 0===e.__damp&&(e.__damp={}),void 0===e.__damp[l]&&(e.__damp[l]=0),Math.abs(e[t]-i)<=o)return e[t]=i,!1;var u=2/(n=Math.max(1e-4,n)),c=s(u*r),h=e[t]-i,d=i,f=a*n;h=Math.min(Math.max(h,-f),f),i=e[t]-h;var p=(e.__damp[l]+u*h)*r;e.__damp[l]=(e.__damp[l]-u*p)*c;var m=i+(h+p)*c;return d-e[t]>0==m>d&&(m=d,e.__damp[l]=(m-d)/r),e[t]=m,!0}function iA(e,t,i,n,r,a,s,o){var l,u,c,h;return iS(e,t,e[t]+(c=(l=i-e[t])-Math.floor(l/(u=2*Math.PI))*u,(h=Math.max(0,Math.min(u,c)))>Math.PI&&(h-=2*Math.PI),h),n,r,a,s,o)}var iM=new B.Vector2,ib=new B.Vector3;function iw(e,t,i,n,r,a,s){return"number"==typeof t?ib.setScalar(t):Array.isArray(t)?ib.set(t[0],t[1],t[2]):ib.copy(t),u=iS(e,"x",ib.x,i,n,r,a,s),c=iS(e,"y",ib.y,i,n,r,a,s),h=iS(e,"z",ib.z,i,n,r,a,s),u||c||h}var iT=new B.Vector4,iE=new B.Euler,i_=new B.Color,iC=new B.Quaternion,iR=new B.Vector4,iP=new B.Vector4,iD=new B.Vector4;function iI(e,t,i,n,r,a,s){Array.isArray(t)?iC.set(t[0],t[1],t[2],t[3]):iC.copy(t);var o=e.dot(iC)>0?1:-1;return iC.x*=o,iC.y*=o,iC.z*=o,iC.w*=o,M=iS(e,"x",iC.x,i,n,r,a,s),b=iS(e,"y",iC.y,i,n,r,a,s),w=iS(e,"z",iC.z,i,n,r,a,s),T=iS(e,"w",iC.w,i,n,r,a,s),iR.set(e.x,e.y,e.z,e.w).normalize(),iP.set(e.__damp.velocity_x,e.__damp.velocity_y,e.__damp.velocity_z,e.__damp.velocity_w),iD.copy(iR).multiplyScalar(iP.dot(iR)/iR.dot(iR)),e.__damp.velocity_x-=iD.x,e.__damp.velocity_y-=iD.y,e.__damp.velocity_z-=iD.z,e.__damp.velocity_w-=iD.w,e.set(iR.x,iR.y,iR.z,iR.w),M||b||w||T}var iL=new B.Spherical,iB=new B.Matrix4,iU=new B.Vector3,iN=new B.Quaternion,iF=new B.Vector3,iO=Object.freeze({__proto__:null,rsqw:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.01,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:1/(2*Math.PI);return i/Math.atan(1/t)*Math.atan(Math.sin(2*Math.PI*e*n)/t)},exp:iy,damp:iS,dampAngle:iA,damp2:function(e,t,i,n,r,a,s){return"number"==typeof t?iM.setScalar(t):Array.isArray(t)?iM.set(t[0],t[1]):iM.copy(t),o=iS(e,"x",iM.x,i,n,r,a,s),l=iS(e,"y",iM.y,i,n,r,a,s),o||l},damp3:iw,damp4:function(e,t,i,n,r,a,s){return"number"==typeof t?iT.setScalar(t):Array.isArray(t)?iT.set(t[0],t[1],t[2],t[3]):iT.copy(t),d=iS(e,"x",iT.x,i,n,r,a,s),f=iS(e,"y",iT.y,i,n,r,a,s),p=iS(e,"z",iT.z,i,n,r,a,s),m=iS(e,"w",iT.w,i,n,r,a,s),d||f||p||m},dampE:function(e,t,i,n,r,a,s){return Array.isArray(t)?iE.set(t[0],t[1],t[2],t[3]):iE.copy(t),g=iA(e,"x",iE.x,i,n,r,a,s),v=iA(e,"y",iE.y,i,n,r,a,s),x=iA(e,"z",iE.z,i,n,r,a,s),g||v||x},dampC:function(e,t,i,n,r,a,s){return t instanceof B.Color?i_.copy(t):Array.isArray(t)?i_.setRGB(t[0],t[1],t[2]):i_.set(t),y=iS(e,"r",i_.r,i,n,r,a,s),S=iS(e,"g",i_.g,i,n,r,a,s),A=iS(e,"b",i_.b,i,n,r,a,s),y||S||A},dampQ:iI,dampS:function(e,t,i,n,r,a,s){return Array.isArray(t)?iL.set(t[0],t[1],t[2]):iL.copy(t),E=iS(e,"radius",iL.radius,i,n,r,a,s),_=iA(e,"phi",iL.phi,i,n,r,a,s),C=iA(e,"theta",iL.theta,i,n,r,a,s),E||_||C},dampM:function(e,t,i,n,r,a,s){return void 0===e.__damp&&(e.__damp={position:new B.Vector3,rotation:new B.Quaternion,scale:new B.Vector3},e.decompose(e.__damp.position,e.__damp.rotation,e.__damp.scale)),Array.isArray(t)?iB.set.apply(iB,io(t)):iB.copy(t),iB.decompose(iU,iN,iF),R=iw(e.__damp.position,iU,i,n,r,a,s),P=iI(e.__damp.rotation,iN,i,n,r,a,s),D=iw(e.__damp.scale,iF,i,n,r,a,s),e.compose(e.__damp.position,e.__damp.rotation,e.__damp.scale),R||P||D}}),iz=B,ik=B;new ik.OrthographicCamera(-1,1,1,-1,0,1);class iH extends ik.BufferGeometry{constructor(){super(),this.setAttribute("position",new ik.Float32BufferAttribute([-1,3,0,-1,-1,0,3,-1,0],3)),this.setAttribute("uv",new ik.Float32BufferAttribute([0,2,0,0,2,0],2))}}new iH;class iG extends iz.BufferGeometry{boundingSphere=new iz.Sphere;constructor(){super(),this.setAttribute("position",new iz.BufferAttribute(new Float32Array([-1,-1,3,-1,-1,3]),2)),this.setAttribute("uv",new iz.BufferAttribute(new Float32Array([0,0,2,0,0,2]),2))}computeBoundingSphere(){}}Uint8Array.from(atob("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"),e=>e.charCodeAt(0)),parseInt(iz.REVISION.replace(/\D+/g,""))>=162?class extends iz.WebGLRenderTarget{constructor(e=1,t=1,i=1,n={}){super(e,t,{...n,count:i}),this.isWebGLMultipleRenderTargets=!0}get texture(){return this.textures}}:class extends iz.WebGLRenderTarget{constructor(e=1,t=1,i=1,n={}){super(e,t,n),this.isWebGLMultipleRenderTargets=!0;const r=this.texture;this.texture=[];for(let e=0;e(2&e.getAttributes())==2,ij=(0,L.memo)((0,L.forwardRef)(({children:e,camera:t,scene:i,resolutionScale:n,enabled:r=!0,renderPriority:a=1,autoClear:s=!0,depthBuffer:o,enableNormalPass:l,stencilBuffer:u,multisampling:c=8,frameBufferType:h=B.HalfFloatType},d)=>{let{gl:f,scene:p,camera:m,size:g}=(0,U.useThree)(),v=i||p,x=t||m,[y,S,A]=(0,L.useMemo)(()=>{let e=new J(f,{depthBuffer:o,stencilBuffer:u,multisampling:c,frameBufferType:h});e.addPass(new eJ(v,x));let t=null,i=null;return l&&((i=new it(v,x)).enabled=!1,e.addPass(i),void 0!==n&&((t=new tB({normalBuffer:i.texture,resolutionScale:n})).enabled=!1,e.addPass(t))),[e,i,t]},[x,f,o,u,c,h,v,l,n]);(0,L.useEffect)(()=>y?.setSize(g.width,g.height),[y,g]),(0,N.useFrame)((e,t)=>{if(r){let e=f.autoClear;f.autoClear=s,u&&!s&&f.clearStencil(),y.render(t),f.autoClear=e}},r?a:0);let M=(0,L.useRef)(null);(0,L.useLayoutEffect)(()=>{let e=[],t=M.current.__r3f;if(t&&y){let i=t.children;for(let t=0;t{for(let t of e)y?.removePass(t);S&&(S.enabled=!1),A&&(A.enabled=!1)}},[y,e,x,S,A]),(0,L.useEffect)(()=>{let e=f.toneMapping;return f.toneMapping=B.NoToneMapping,()=>{f.toneMapping=e}},[f]);let b=(0,L.useMemo)(()=>({composer:y,normalPass:S,downSamplingPass:A,resolutionScale:n,camera:x,scene:v}),[y,S,A,n,x,v]);return(0,L.useImperativeHandle)(d,()=>y,[y]),(0,I.jsx)(iV.Provider,{value:b,children:(0,I.jsx)("group",{ref:M,children:e})})})),iX=0,iY=new WeakMap,iQ=(0,L.forwardRef)(function({blendFunction:e,worldFocusDistance:t,worldFocusRange:i,focusDistance:n,focusRange:r,focalLength:a,bokehScale:s,resolutionScale:o,resolutionX:l,resolutionY:u,width:c,height:h,target:d,depthTexture:f,...p},m){let{camera:g}=(0,L.useContext)(iV),v=null!=d,x=(0,L.useMemo)(()=>{let d=new eH(g,{blendFunction:e,worldFocusDistance:t,worldFocusRange:i,focusDistance:n,focusRange:r,focalLength:a,bokehScale:s,resolutionScale:o,resolutionX:l,resolutionY:u,width:c,height:h});return v&&(d.target=new B.Vector3),f&&d.setDepthTexture(f.texture,f.packing),d.maskPass.maskFunction=eD.MULTIPLY_RGB_SET_ALPHA,d},[g,e,t,i,n,r,a,s,o,l,u,c,h,v,f]);return(0,L.useEffect)(()=>()=>{x.dispose()},[x]),(0,I.jsx)("primitive",{...p,ref:m,object:x,target:d})}),iq=(a=eb,s={blendFunction:0},function({blendFunction:e=s?.blendFunction,opacity:t=s?.opacity,...i}){let n=iY.get(a);if(!n){let e=`@react-three/postprocessing/${a.name}-${iX++}`;(0,F.extend)({[e]:a}),iY.set(a,n=e)}let r=(0,U.useThree)(e=>e.camera),o=L.default.useMemo(()=>[...s?.args??[],...i.args??[{...s,...i}]],[JSON.stringify(i)]);return(0,I.jsx)(n,{camera:r,"blendMode-blendFunction":e,"blendMode-opacity-value":t,...i,args:o})});var iK=((r=iK||{})[r.Linear=0]="Linear",r[r.Radial=1]="Radial",r[r.MirroredLinear=2]="MirroredLinear",r);e.s(["Bloom",0,iq,"EffectComposer",0,ij],79877)}]); \ No newline at end of file diff --git a/build/_next/static/chunks/0b-q_kb9hrnlj.js b/build/_next/static/chunks/0b-q_kb9hrnlj.js new file mode 100644 index 0000000..7845a5a --- /dev/null +++ b/build/_next/static/chunks/0b-q_kb9hrnlj.js @@ -0,0 +1,201 @@ +(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,67585,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"BailoutToCSR",{enumerable:!0,get:function(){return r}});let i=e.r(32061);function r({reason:e,children:t}){if("u"{"use strict";function i(e){return e.split("/").map(e=>encodeURIComponent(e)).join("/")}Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"encodeURIPath",{enumerable:!0,get:function(){return i}})},52157,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"PreloadChunks",{enumerable:!0,get:function(){return s}});let i=e.r(43476),r=e.r(74080),o=e.r(63599),l=e.r(9885),a=e.r(43369);function s({moduleIds:e}){if("u">typeof window)return null;let t=o.workAsyncStorage.getStore();if(void 0===t)return null;let n=[];if(t.reactLoadableManifest&&e){let i=t.reactLoadableManifest;for(let t of e){if(!i[t])continue;let e=i[t].files;n.push(...e)}}if(0===n.length)return null;let m=(0,a.getAssetTokenQuery)();return(0,i.jsx)(i.Fragment,{children:n.map(e=>{let n=`${t.assetPrefix}/_next/${(0,l.encodeURIPath)(e)}${m}`;return e.endsWith(".css")?(0,i.jsx)("link",{precedence:"dynamic",href:n,rel:"stylesheet",as:"style",nonce:t.nonce},e):((0,r.preload)(n,{as:"script",fetchPriority:"low",nonce:t.nonce}),null)})})}},69093,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"default",{enumerable:!0,get:function(){return m}});let i=e.r(43476),r=e.r(71645),o=e.r(67585),l=e.r(52157);function a(e){return{default:e&&"default"in e?e.default:e}}let s={loader:()=>Promise.resolve(a(()=>null)),loading:null,ssr:!0},m=function(e){let t={...s,...e},n=(0,r.lazy)(()=>t.loader().then(a)),m=t.loading;function c(e){let a=m?(0,i.jsx)(m,{isLoading:!0,pastDelay:!0,error:null}):null,s=!t.ssr||!!t.loading,c=s?r.Suspense:r.Fragment,d=t.ssr?(0,i.jsxs)(i.Fragment,{children:["u"{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"default",{enumerable:!0,get:function(){return r}});let i=e.r(55682)._(e.r(69093));function r(e,t){let n={};"function"==typeof e&&(n.loader=e);let r={...n,...t};return(0,i.default)({...r,modules:r.loadableGenerated?.modules})}("function"==typeof n.default||"object"==typeof n.default&&null!==n.default)&&void 0===n.default.__esModule&&(Object.defineProperty(n.default,"__esModule",{value:!0}),Object.assign(n.default,n),t.exports=n.default)},74528,e=>{"use strict";var t=e.i(43476),n=e.i(71645);e.s(["default",0,function(){let[e,i]=(0,n.useState)(0);(0,n.useEffect)(()=>{let e=setInterval(()=>{i(e=>+(0===e))},7e3);return()=>clearInterval(e)},[]);let r=e=>{i(e)};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:` + .howits-hero-custom-bg.elementor-repeater-item-3264830, + .howits-hero-custom-bg.elementor-repeater-item-6867061 { + background-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.1)), url('/images/home2-banner-1.jpg') !important; + background-position: center !important; + background-repeat: no-repeat !important; + background-size: cover !important; + } + + .howits-hero-custom-bg.elementor-repeater-item-6867061 { + background-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.1)), url('/images/home1-slide-2.png') !important; + background-position: center !important; + background-repeat: no-repeat !important; + background-size: cover !important; + } + + /* Center alignments for standard content slider elements */ + .elementor-element.elementor-element-6c7cbcb .slide-content { + display: flex !important; + flex-direction: column !important; + justify-content: center !important; + align-items: center !important; + text-align: center !important; + width: 100% !important; + height: 100% !important; + padding: 0 40px !important; + box-sizing: border-box !important; + } + + .elementor-element.elementor-element-6c7cbcb .slide-content-inner { + display: flex !important; + flex-direction: column !important; + justify-content: center !important; + align-items: center !important; + text-align: center !important; + width: 100% !important; + max-width: 1000px !important; + margin: 0 auto !important; + /* site.css gives the inner content-box sizing + 20px padding, + which makes it 40px wider than its parent and overflows. + Force border-box so width:100% actually fits. */ + box-sizing: border-box !important; + } + + .elementor-element.elementor-element-6c7cbcb .content-slider-item-heading, + .elementor-element.elementor-element-6c7cbcb .content-slider-item-heading .heading-content { + text-align: center !important; + display: block !important; + width: 100% !important; + margin-left: auto !important; + margin-right: auto !important; + } + + .elementor-element.elementor-element-6c7cbcb .content-slider-item-text { + display: flex !important; + justify-content: center !important; + width: 100% !important; + margin-top: 23px !important; + } + + .elementor-element.elementor-element-6c7cbcb .text-content { + text-align: center !important; + max-width: 820px !important; + margin: 0 auto !important; + } + + /* Larger, more readable hero subtitle on large/4K screens */ + .elementor-element.elementor-element-6c7cbcb .content-slider-item-text p { + font-size: clamp(16px, 1.35vw, 23px) !important; + line-height: 1.65 !important; + } + + @media (min-width: 1025px) { + /* Match Home's hero frame so the floating navbar sits with the same + breathing space. Home (.elementor-61) frames the hero card at 20px; + this page falls through to the shared kit's 32px base. */ + .elementor-element.elementor-element-741f56c { + padding: 20px !important; + } + .elementor-element.elementor-element-6c7cbcb .owl-carousel.owl-theme .content-item { + height: 800px !important; + min-height: 800px !important; + } + } + + @media (max-width: 1024px) { + .elementor-element.elementor-element-741f56c { + width: calc(100% - 40px) !important; + max-width: none !important; + margin-left: auto !important; + margin-right: auto !important; + overflow: hidden !important; + border-radius: 25px !important; + } + + /* Collapse the stage-outer to the slide height so no empty + black space is left below the hero card on mobile/tablet. */ + .elementor-element.elementor-element-6c7cbcb .owl-stage-outer { + height: 620px !important; + } + + .elementor-element.elementor-element-6c7cbcb .owl-carousel.owl-theme .content-item { + width: 100% !important; + min-height: 620px !important; + height: 620px !important; + border-radius: 25px !important; + overflow: hidden !important; + } + + .elementor-element.elementor-element-6c7cbcb .slide-content { + width: 100% !important; + min-height: 620px !important; + padding-left: 48px !important; + padding-right: 48px !important; + box-sizing: border-box !important; + } + } + + @media (max-width: 767px) { + .elementor-element.elementor-element-741f56c { + width: calc(100% - 24px) !important; + border-radius: 22px !important; + } + + .elementor-element.elementor-element-6c7cbcb .owl-stage-outer { + height: 560px !important; + } + + .elementor-element.elementor-element-6c7cbcb .owl-carousel.owl-theme .content-item { + min-height: 560px !important; + height: 560px !important; + border-radius: 22px !important; + } + + /* Center BOTH slides' content. Use the .elementor prefix + + repeater-item classes so these beat the per-slide rules in + site.css (slide 1 has no centering there; slide 2 carries an + asymmetric top margin). */ + .elementor .elementor-element.elementor-element-6c7cbcb .slide-content { + min-height: 560px !important; + padding-left: 22px !important; + padding-right: 22px !important; + align-items: center !important; + justify-content: center !important; + text-align: center !important; + } + + .elementor .elementor-element.elementor-element-6c7cbcb .elementor-repeater-item-3264830 .slide-content-inner, + .elementor .elementor-element.elementor-element-6c7cbcb .elementor-repeater-item-6867061 .slide-content-inner { + margin: 0 auto !important; + width: 100% !important; + max-width: 100% !important; + padding-left: 0 !important; + padding-right: 0 !important; + box-sizing: border-box !important; + align-items: center !important; + text-align: center !important; + } + + .elementor .elementor-element.elementor-element-6c7cbcb .content-slider-item-heading, + .elementor .elementor-element.elementor-element-6c7cbcb .content-slider-item-text, + .elementor .elementor-element.elementor-element-6c7cbcb .text-content { + text-align: center !important; + margin-left: auto !important; + margin-right: auto !important; + } + + /* Smaller, fitting heading so it never overflows the card edge. + site.css forced clamp(38px,11vw,48px) which clipped at 320px. */ + .elementor .elementor-element.elementor-element-6c7cbcb .elementor-repeater-item-3264830 .content-slider-item-heading, + .elementor .elementor-element.elementor-element-6c7cbcb .elementor-repeater-item-6867061 .content-slider-item-heading { + max-width: 100% !important; + font-size: clamp(26px, 8vw, 34px) !important; + line-height: 1.12 !important; + overflow-wrap: break-word !important; + } + + /* Slide counter ("01/02"): keep it bottom-RIGHT, aligned with the + hero text padding (22px) and lifted cleanly off the edge. */ + .elementor .elementor-element.elementor-element-6c7cbcb .slider-footer { + text-align: right !important; + margin-bottom: 24px !important; + } + .elementor .elementor-element.elementor-element-6c7cbcb .slider-footer .slider-pagination { + justify-content: flex-end !important; + margin-left: 22px !important; + margin-right: 22px !important; + } + /* The wide dot navigation eats the right side and shoves "01/02" to + the centre. Hide it on mobile (matching the home hero) so the + counter sits cleanly on the right. */ + .elementor .elementor-element.elementor-element-6c7cbcb .owl-dots { + display: none !important; + } + /* Hide the prev/next arrows on mobile (they overlap the counter) — + slides still auto-rotate, matching the home hero. */ + .elementor .elementor-element.elementor-element-6c7cbcb .owl-nav { + display: none !important; + } + } + `}}),(0,t.jsx)("div",{className:"elementor-element elementor-element-741f56c e-con-full e-flex cut-corner-no sticky-container-off e-con e-parent","data-id":"741f56c","data-element_type":"container","data-e-type":"container",children:(0,t.jsx)("div",{className:"elementor-element elementor-element-6c7cbcb elementor-widget elementor-widget-logico_content_slider","data-id":"6c7cbcb","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_content_slider.default",children:(0,t.jsx)("div",{className:"elementor-widget-container",children:(0,t.jsx)("div",{className:"logico-content-slider-widget",children:(0,t.jsx)("div",{className:"content-slider-wrapper",children:(0,t.jsx)("div",{className:"content-slider-container",children:(0,t.jsxs)("div",{className:"content-slider owl-carousel owl-theme nav-view-vertical nav-h-position-right nav-v-position-bottom owl-loaded owl-drag",children:[(0,t.jsx)("div",{className:"owl-stage-outer",style:{position:"relative",overflow:"hidden",height:"800px"},children:(0,t.jsxs)("div",{className:"owl-stage",style:{position:"relative",width:"100%",height:"100%"},children:[(0,t.jsx)("div",{className:`owl-item ${0===e?"active":""}`,style:{position:"relative",width:"100%",opacity:+(0===e),visibility:0===e?"visible":"hidden",transition:"opacity 0.8s ease-in-out, visibility 0.8s ease-in-out",zIndex:0===e?2:1},children:(0,t.jsx)("div",{className:"content-item slider-item elementor-repeater-item-3264830 slide-style-standard howits-hero-custom-bg",children:(0,t.jsx)("div",{className:"slide-content",children:(0,t.jsxs)("div",{className:"slide-content-inner",children:[(0,t.jsx)("h1",{className:"content-slider-item-heading logico-content-wrapper-1",children:(0,t.jsxs)("span",{className:"heading-content",children:["One Journey. Complete",(0,t.jsx)("br",{}),"Control."]})}),(0,t.jsx)("div",{className:"content-slider-item-text logico-content-wrapper-2",children:(0,t.jsx)("div",{className:"text-content",children:(0,t.jsx)("p",{children:"See how Doormile connects first, mid, and last mile into a seamless delivery experience powered by MileTruth™ AI."})})})]})})})}),(0,t.jsx)("div",{className:`owl-item ${1===e?"active":""}`,style:{position:"absolute",top:0,left:0,width:"100%",opacity:+(1===e),visibility:1===e?"visible":"hidden",transition:"opacity 0.8s ease-in-out, visibility 0.8s ease-in-out",zIndex:1===e?2:1},children:(0,t.jsx)("div",{className:"content-item slider-item elementor-repeater-item-6867061 slide-style-standard howits-hero-custom-bg",children:(0,t.jsx)("div",{className:"slide-content",children:(0,t.jsxs)("div",{className:"slide-content-inner",children:[(0,t.jsx)("h1",{className:"content-slider-item-heading logico-content-wrapper-1",children:(0,t.jsxs)("span",{className:"heading-content",children:["A New Logisitics",(0,t.jsx)("br",{}),"Experience"]})}),(0,t.jsx)("div",{className:"content-slider-item-text logico-content-wrapper-2",children:(0,t.jsx)("div",{className:"text-content",children:(0,t.jsx)("p",{children:"See how Doormile connects first, mid, and last mile into a seamless delivery experience powered by MileTruth™ AI."})})})]})})})})]})}),(0,t.jsxs)("div",{className:"owl-nav",children:[(0,t.jsx)("button",{type:"button",className:"owl-next",onClick:()=>i(e=>+(0===e)),"aria-label":"Next",style:{cursor:"pointer",border:"none",outline:"none"}}),(0,t.jsx)("button",{type:"button",className:"owl-prev",onClick:()=>i(e=>+(0===e)),"aria-label":"Previous",style:{cursor:"pointer",border:"none",outline:"none"}})]}),(0,t.jsx)("div",{className:"slider-footer slider-footer-position-after slider-footer-width-full slider-footer-view-inside",children:(0,t.jsx)("div",{className:"slider-footer-content",children:(0,t.jsxs)("div",{className:"slider-pagination",style:{display:"flex",justifyContent:"flex-end",alignItems:"center",gap:"10px"},children:[(0,t.jsxs)("div",{className:"slider-progress-wrapper",style:{marginRight:"35px",display:"flex",flexDirection:"column",alignItems:"flex-start"},children:[(0,t.jsxs)("div",{style:{fontSize:"16px",fontWeight:600,color:"#FFFFFF",marginBottom:"4px"},children:[(0,t.jsx)("span",{className:"slider-progress-current",children:0===e?"01":"02"})," / ",(0,t.jsx)("span",{className:"slider-progress-all",style:{opacity:.6},children:"02"})]}),(0,t.jsx)("div",{style:{width:"80px",height:"2px",background:"rgba(255, 255, 255, 0.2)",position:"relative",borderRadius:"1px",overflow:"hidden"},children:(0,t.jsx)("div",{style:{position:"absolute",left:0===e?"0":"50%",width:"50%",height:"100%",background:"#c01227",transition:"left 0.3s ease"}})})]}),(0,t.jsxs)("div",{className:"owl-dots owl-dots-6c7cbcb",style:{display:"none"},children:[(0,t.jsx)("button",{type:"button",role:"button",className:`owl-dot ${0===e?"active":""}`,onClick:()=>r(0),children:(0,t.jsx)("span",{})}),(0,t.jsx)("button",{type:"button",role:"button",className:`owl-dot ${1===e?"active":""}`,onClick:()=>r(1),children:(0,t.jsx)("span",{})})]})]})})})]})})})})})})})]})}])},16948,e=>{"use strict";var t=e.i(43476);let n=(0,e.i(70703).default)(()=>e.A(19386),{loadableGenerated:{modules:[88493]},ssr:!1,loading:()=>(0,t.jsx)("div",{style:{minHeight:"100vh"},"aria-hidden":!0})});e.s(["default",0,function(){return(0,t.jsx)(n,{})}])},19386,e=>{e.v(t=>Promise.all(["static/chunks/0b561qo91.1jg.js","static/chunks/07y.~m6x75v53.js","static/chunks/0o27ue53hohz_.js","static/chunks/17o_-ddqif28v.js","static/chunks/0zozt9p9-3srt.css"].map(t=>e.l(t))).then(()=>t(88493)))}]); \ No newline at end of file diff --git a/build/_next/static/chunks/0sbgg51muajoi.js b/build/_next/static/chunks/0b3v69j3z_cyv.js similarity index 54% rename from build/_next/static/chunks/0sbgg51muajoi.js rename to build/_next/static/chunks/0b3v69j3z_cyv.js index c299930..9bdab82 100644 --- a/build/_next/static/chunks/0sbgg51muajoi.js +++ b/build/_next/static/chunks/0b3v69j3z_cyv.js @@ -1,4 +1,4 @@ -(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,67585,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"BailoutToCSR",{enumerable:!0,get:function(){return i}});let a=e.r(32061);function i({reason:e,children:t}){if("u"{"use strict";function a(e){return e.split("/").map(e=>encodeURIComponent(e)).join("/")}Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"encodeURIPath",{enumerable:!0,get:function(){return a}})},52157,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"PreloadChunks",{enumerable:!0,get:function(){return d}});let a=e.r(43476),i=e.r(74080),r=e.r(63599),o=e.r(9885),s=e.r(43369);function d({moduleIds:e}){if("u">typeof window)return null;let t=r.workAsyncStorage.getStore();if(void 0===t)return null;let n=[];if(t.reactLoadableManifest&&e){let a=t.reactLoadableManifest;for(let t of e){if(!a[t])continue;let e=a[t].files;n.push(...e)}}if(0===n.length)return null;let l=(0,s.getAssetTokenQuery)();return(0,a.jsx)(a.Fragment,{children:n.map(e=>{let n=`${t.assetPrefix}/_next/${(0,o.encodeURIPath)(e)}${l}`;return e.endsWith(".css")?(0,a.jsx)("link",{precedence:"dynamic",href:n,rel:"stylesheet",as:"style",nonce:t.nonce},e):((0,i.preload)(n,{as:"script",fetchPriority:"low",nonce:t.nonce}),null)})})}},69093,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"default",{enumerable:!0,get:function(){return l}});let a=e.r(43476),i=e.r(71645),r=e.r(67585),o=e.r(52157);function s(e){return{default:e&&"default"in e?e.default:e}}let d={loader:()=>Promise.resolve(s(()=>null)),loading:null,ssr:!0},l=function(e){let t={...d,...e},n=(0,i.lazy)(()=>t.loader().then(s)),l=t.loading;function c(e){let s=l?(0,a.jsx)(l,{isLoading:!0,pastDelay:!0,error:null}):null,d=!t.ssr||!!t.loading,c=d?i.Suspense:i.Fragment,p=t.ssr?(0,a.jsxs)(a.Fragment,{children:["u"{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"default",{enumerable:!0,get:function(){return i}});let a=e.r(55682)._(e.r(69093));function i(e,t){let n={};"function"==typeof e&&(n.loader=e);let i={...n,...t};return(0,a.default)({...i,modules:i.loadableGenerated?.modules})}("function"==typeof n.default||"object"==typeof n.default&&null!==n.default)&&void 0===n.default.__esModule&&(Object.defineProperty(n.default,"__esModule",{value:!0}),Object.assign(n.default,n),t.exports=n.default)},14224,e=>{"use strict";var t=e.i(43476),n=e.i(71645),a=e.i(89970),i=e.i(83495);a.default.registerPlugin(i.ScrollTrigger);let r=[{icon:(0,t.jsx)("svg",{className:"evnd-icon",viewBox:"0 0 24 24",fill:"none",stroke:"#f59e0b",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,t.jsx)("polygon",{points:"13 2 3 14 12 14 11 22 21 10 12 10 13 2"})}),title:"Battery-Aware Routing",desc:"Battery level, health, and degradation are first-class inputs to route optimization — not afterthoughts."},{icon:(0,t.jsx)("svg",{className:"evnd-icon",viewBox:"0 0 24 24",fill:"none",stroke:"#94a3b8",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,t.jsx)("path",{d:"M18 10h-1.28A6 6 0 0 0 12 5V3M12 5V3M6 10h1.28A6 6 0 0 0 12 5M12 18v2M12 18v2M8 10v6a4 4 0 0 0 8 0v-6"})}),title:"Charging Integration",desc:"Seamlessly integrate charging stops without compromising delivery windows or SLA commitments."},{icon:(0,t.jsx)("svg",{className:"evnd-icon",viewBox:"0 0 24 24",fill:"none",stroke:"#ef4444",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,t.jsx)("path",{d:"m8 3 4 8 5-5 5 15H2L8 3z"})}),title:"Energy-Optimized Paths",desc:"Factor in elevation, speed limits, payload weight, and live weather for maximum range efficiency."},{icon:(0,t.jsx)("svg",{className:"evnd-icon",viewBox:"0 0 24 24",fill:"none",stroke:"#ef4444",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,t.jsx)("path",{d:"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"})}),title:"Predictable Operations",desc:"EVs become predictable assets, not operational risks. Full visibility from depot to doorstep."}],o=[{value:"100%",label:"ELECTRIC FLEET"},{value:"-40%",label:"COST / MILE"}],s=[{value:99.9,decimals:1,suffix:"%",label:"SLA Compliance"},{value:42,suffix:"%",label:"Distance Saved"},{value:37,suffix:"%",label:"Fewer Vehicles"},{value:45,suffix:"ms",label:"Dispatch Latency"}];function d({value:e,decimals:a=0,suffix:i="",duration:r=1700,className:o}){let[s,l]=(0,n.useState)(0),c=(0,n.useRef)(null),p=(0,n.useRef)(!1);return(0,n.useEffect)(()=>{let t=c.current;if(!t)return;if(window.matchMedia?.("(prefers-reduced-motion: reduce)").matches)return void requestAnimationFrame(()=>l(e));let n=new IntersectionObserver(t=>{for(let a of t)if(a.isIntersecting&&!p.current){p.current=!0;let t=performance.now(),a=e=>1-Math.pow(1-e,3),i=n=>{let o=Math.min(1,(n-t)/r);l(e*a(o)),o<1?requestAnimationFrame(i):l(e)};requestAnimationFrame(i),n.disconnect()}},{threshold:.2});return n.observe(t),()=>n.disconnect()},[e,r]),(0,t.jsxs)("b",{ref:c,className:o,children:[s.toFixed(a),i]})}function l({value:e,decimals:a=0,suffix:i="",active:r}){let[o,s]=(0,n.useState)(e),d=(0,n.useRef)(0);return(0,n.useEffect)(()=>{if(!r)return;if(window.matchMedia?.("(prefers-reduced-motion: reduce)").matches)return d.current=requestAnimationFrame(()=>s(e)),()=>cancelAnimationFrame(d.current);let t=performance.now(),n=a=>{let i=Math.min(1,Math.max(0,(a-t)/850));s(e*(1-Math.pow(1-i,3))),i<1?d.current=requestAnimationFrame(n):s(e)};return d.current=requestAnimationFrame(n),()=>cancelAnimationFrame(d.current)},[r,e]),(0,t.jsxs)("span",{className:"evnd__card-metric",children:[o.toFixed(a),(0,t.jsx)("i",{children:i})]})}let c=[[40,90],[150,150],[120,280],[250,330],[360,250],[60,420],[300,120],[330,430]],p=["M40 90 L150 150 L120 280 L250 330 L360 250","M60 420 L150 150 L300 120 L360 250","M120 280 L60 420 L250 330 L330 430"],m=[[14,22,0,13],[78,16,-3,16],[33,64,-7,14],[62,48,-1,18],[88,70,-5,15],[22,86,-9,17],[50,30,-4,19],[70,90,-2,14]];function g(){let e=(0,n.useRef)(null);return(0,n.useEffect)(()=>{let t=e.current;if(!t||window.matchMedia?.("(prefers-reduced-motion: reduce)").matches||window.matchMedia?.("(max-width: 767px)").matches)return;a.default.registerPlugin(i.ScrollTrigger);let n=Array.from(t.querySelectorAll("[data-depth]")),r=i.ScrollTrigger.create({trigger:t,start:"top bottom",end:"bottom top",scrub:!0,onUpdate:e=>{let t=e.progress-.5;for(let e of n){let n=parseFloat(e.dataset.depth||"0");a.default.set(e,{yPercent:t*n})}}});return()=>r.kill()},[]),(0,t.jsxs)("div",{ref:e,className:"evnd__bg","aria-hidden":"true",children:[(0,t.jsx)("div",{className:"evnd__bg-grid","data-depth":"4"}),(0,t.jsxs)("svg",{className:"evnd__bg-net","data-depth":"8",viewBox:"0 0 400 520",preserveAspectRatio:"xMidYMid slice",children:[(0,t.jsx)("g",{className:"evnd__bg-mesh",stroke:"currentColor",strokeWidth:"0.8",fill:"none",children:p.map((e,n)=>(0,t.jsx)("path",{d:e},n))}),(0,t.jsx)("g",{className:"evnd__bg-nodes",fill:"currentColor",children:c.map(([e,n],a)=>(0,t.jsx)("circle",{cx:e,cy:n,r:a%3==0?3:2,style:{animationDelay:`${-(.7*a)}s`}},a))}),(0,t.jsx)("path",{className:"evnd__bg-flow",d:p[0],fill:"none",stroke:"currentColor",strokeWidth:"1.4"}),(0,t.jsx)("path",{className:"evnd__bg-flow evnd__bg-flow--2",d:p[1],fill:"none",stroke:"currentColor",strokeWidth:"1.4"})]}),(0,t.jsx)("div",{className:"evnd__bg-glow evnd__bg-glow--a","data-depth":"11"}),(0,t.jsx)("div",{className:"evnd__bg-glow evnd__bg-glow--b","data-depth":"15"}),(0,t.jsx)("div",{className:"evnd__bg-particles","data-depth":"18",children:m.map(([e,n,a,i],r)=>(0,t.jsx)("span",{style:{left:`${e}%`,top:`${n}%`,animationDelay:`${a}s`,animationDuration:`${i}s`}},r))})]})}function h({slides:e,heading:a,theme:i}){let[r,o]=(0,n.useState)(0),[s,d]=(0,n.useState)(!1),[c,p]=(0,n.useState)(!1),m=(0,n.useRef)(null);(0,n.useEffect)(()=>{let e=m.current;if(!e)return;let t=new IntersectionObserver(([e])=>p(e.isIntersecting),{threshold:.35});return t.observe(e),()=>t.disconnect()},[]),(0,n.useEffect)(()=>{if(!c||s||e.length<2)return;let t=setTimeout(()=>{o(t=>(t+1)%e.length)},4e3);return()=>clearTimeout(t)},[r,c,s,e.length]);let u=i?{"--ca":i.accent,"--ca2":i.accent2,"--cg":i.glow}:void 0;return(0,t.jsxs)("div",{ref:m,className:"evnd__cards",style:u,onMouseEnter:()=>d(!0),onMouseLeave:()=>d(!1),children:[(0,t.jsx)(g,{}),a&&(0,t.jsxs)("div",{className:"evnd__cards-head",children:[(0,t.jsxs)("span",{className:"evnd__cards-live",children:[(0,t.jsx)("span",{className:"evnd__cards-livedot"}),a]}),(0,t.jsx)("span",{className:"evnd__cards-sys",children:"AI ENGINE"})]}),(0,t.jsx)("div",{className:"evnd__cards-stage",children:e.map((e,n)=>(0,t.jsxs)("div",{className:`evnd__card ${n===r?"is-active":""}`,"aria-hidden":n!==r||void 0,children:[(0,t.jsxs)("span",{className:"evnd__card-status",children:[(0,t.jsx)("span",{className:"evnd__card-statusdot"}),e.status]}),(0,t.jsxs)("div",{className:"evnd__card-hero",children:[(0,t.jsx)(l,{value:e.value,decimals:e.decimals,suffix:e.suffix,active:n===r}),(0,t.jsx)("span",{className:"evnd__card-metriclabel",children:e.metricLabel})]}),(0,t.jsx)("h3",{className:"evnd__card-title",children:e.title}),(0,t.jsx)("ul",{className:"evnd__card-kpis",children:e.kpis.map(e=>(0,t.jsxs)("li",{children:[(0,t.jsx)("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"3",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:(0,t.jsx)("polyline",{points:"20 6 9 17 4 12"})}),e]},e))}),(0,t.jsx)("p",{className:"evnd__card-desc",children:e.desc})]},e.title))}),(0,t.jsxs)("div",{className:"evnd__cards-nav",children:[(0,t.jsxs)("span",{className:"evnd__cards-counter",children:[String(r+1).padStart(2,"0"),"/",String(e.length).padStart(2,"0")]}),(0,t.jsx)("div",{className:"evnd__cards-bars",children:e.map((e,n)=>(0,t.jsx)("button",{type:"button","aria-label":`Go to ${e.title}`,className:`evnd__cards-bar ${n===r?"is-active":""}`,onClick:()=>o(n)},e.title))})]})]})}e.s(["default",0,function({bannerImage:e="/images/bg-header-5.png",cardNumber:l="",cardTitle:c="EV Logistics",cardSubtitle:p="Cleaner miles, lower costs",eyebrow:m="/ EV-Native Design /",titleLead:g="BUILT FOR ELECTRIC. ",titleAccent:u="NOT ADAPTED.",features:f=r,image:x="/images/premium-ev-van.png",imageAlt:v="DoorMile electric delivery van",badges:b=o,stats:_=s,gapTop:w=!1,gapBottom:y=!1,ariaLabel:j,mediaSlot:k,slides:N,cardsHeading:z,cardsTheme:L}){let S=(0,n.useRef)(null),E=!!N&&N.length>0;return(0,n.useEffect)(()=>{let e=S.current;if(!e)return;let t=i.ScrollTrigger.create({trigger:e,start:"top bottom",end:"bottom top",scrub:!0,onUpdate:()=>{if(window.innerWidth>=1021){let t=window.scrollY,n=e.getBoundingClientRect().top+t;a.default.set(e,{backgroundPosition:`center ${.3*(t-n)}px`})}else a.default.set(e,{backgroundPosition:""})}});return()=>t?.kill()},[]),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:` +(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,67585,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"BailoutToCSR",{enumerable:!0,get:function(){return i}});let a=e.r(32061);function i({reason:e,children:t}){if("u"{"use strict";function a(e){return e.split("/").map(e=>encodeURIComponent(e)).join("/")}Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"encodeURIPath",{enumerable:!0,get:function(){return a}})},52157,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"PreloadChunks",{enumerable:!0,get:function(){return d}});let a=e.r(43476),i=e.r(74080),r=e.r(63599),o=e.r(9885),s=e.r(43369);function d({moduleIds:e}){if("u">typeof window)return null;let t=r.workAsyncStorage.getStore();if(void 0===t)return null;let n=[];if(t.reactLoadableManifest&&e){let a=t.reactLoadableManifest;for(let t of e){if(!a[t])continue;let e=a[t].files;n.push(...e)}}if(0===n.length)return null;let l=(0,s.getAssetTokenQuery)();return(0,a.jsx)(a.Fragment,{children:n.map(e=>{let n=`${t.assetPrefix}/_next/${(0,o.encodeURIPath)(e)}${l}`;return e.endsWith(".css")?(0,a.jsx)("link",{precedence:"dynamic",href:n,rel:"stylesheet",as:"style",nonce:t.nonce},e):((0,i.preload)(n,{as:"script",fetchPriority:"low",nonce:t.nonce}),null)})})}},69093,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"default",{enumerable:!0,get:function(){return l}});let a=e.r(43476),i=e.r(71645),r=e.r(67585),o=e.r(52157);function s(e){return{default:e&&"default"in e?e.default:e}}let d={loader:()=>Promise.resolve(s(()=>null)),loading:null,ssr:!0},l=function(e){let t={...d,...e},n=(0,i.lazy)(()=>t.loader().then(s)),l=t.loading;function c(e){let s=l?(0,a.jsx)(l,{isLoading:!0,pastDelay:!0,error:null}):null,d=!t.ssr||!!t.loading,c=d?i.Suspense:i.Fragment,p=t.ssr?(0,a.jsxs)(a.Fragment,{children:["u"{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"default",{enumerable:!0,get:function(){return i}});let a=e.r(55682)._(e.r(69093));function i(e,t){let n={};"function"==typeof e&&(n.loader=e);let i={...n,...t};return(0,a.default)({...i,modules:i.loadableGenerated?.modules})}("function"==typeof n.default||"object"==typeof n.default&&null!==n.default)&&void 0===n.default.__esModule&&(Object.defineProperty(n.default,"__esModule",{value:!0}),Object.assign(n.default,n),t.exports=n.default)},5074,e=>{"use strict";var t=e.i(43476),n=e.i(71645);let a=[[[.04,.2],[.1,.12],[.18,.1],[.24,.13],[.29,.12],[.3,.18],[.27,.22],[.26,.28],[.22,.3],[.2,.38],[.17,.44],[.15,.4],[.16,.32],[.12,.3],[.09,.26],[.06,.24]],[[.21,.5],[.27,.48],[.31,.52],[.31,.6],[.29,.66],[.27,.74],[.24,.82],[.22,.8],[.22,.7],[.205,.62],[.2,.55]],[[.45,.16],[.5,.13],[.55,.15],[.57,.19],[.55,.24],[.5,.27],[.47,.25],[.455,.2]],[[.46,.34],[.53,.32],[.58,.36],[.585,.44],[.56,.52],[.53,.6],[.5,.66],[.47,.62],[.46,.52],[.45,.44],[.45,.38]],[[.56,.14],[.64,.1],[.74,.1],[.84,.14],[.9,.2],[.92,.26],[.86,.3],[.8,.3],[.74,.34],[.7,.34],[.66,.3],[.6,.3],[.575,.24],[.565,.18]],[[.81,.66],[.87,.64],[.92,.68],[.92,.74],[.86,.77],[.81,.74],[.8,.7]]],i=[[.115,.3],[.265,.255],[.285,.66],[.475,.185],[.605,.345],[.655,.4],[.745,.5],[.815,.275],[.865,.715]],r=[[0,1],[1,3],[3,4],[4,5],[5,6],[6,7],[7,8],[1,2],[3,7],[0,7]];e.s(["default",0,function({accent:e="#ef4444"}){let o=(0,n.useRef)(null);return(0,n.useEffect)(()=>{let[t,n,s]=function(e){let t=/^#?([0-9a-f]{6})$/i.exec(e.trim());if(!t)return[239,68,68];let n=parseInt(t[1],16);return[n>>16&255,n>>8&255,255&n]}(e),d=e=>`rgba(${t},${n},${s},${e})`,l=`rgb(${t},${n},${s})`,c=o.current,p=c?.parentElement;if(!c||!p)return;let m=c.getContext("2d");if(!m)return;let h=window.matchMedia?.("(prefers-reduced-motion: reduce)").matches,g=0,u=0,x=[],f=0,v=0,b=()=>{let e=p.getBoundingClientRect();g=Math.max(1,e.width),u=Math.max(1,e.height);let t=Math.min(window.devicePixelRatio||1,2);c.width=Math.round(g*t),c.height=Math.round(u*t),c.style.width=g+"px",c.style.height=u+"px",m.setTransform(t,0,0,t,0,0),(()=>{x=[];let e=Math.max(11,Math.min(17,g/70));for(let t=e/2;tt!=l>t&&e<(d-o)*(t-s)/(l-s)+o&&(a=!a)}return a}(e,i,r)){x.push({x:t,y:n});break}}})()},_=(e,t)=>({x:(e.x+t.x)/2,y:(e.y+t.y)/2-.28*Math.hypot(t.x-e.x,t.y-e.y)}),w=(e,t,n,a)=>{let i=1-a;return{x:i*i*e.x+2*i*a*t.x+a*a*n.x,y:i*i*e.y+2*i*a*t.y+a*a*n.y}},y=e=>{for(let e of(m.clearRect(0,0,g,u),m.fillStyle="rgba(120,122,130,0.55)",x))m.beginPath(),m.arc(e.x,e.y,1.15,0,2*Math.PI),m.fill();let t=i.map(([e,t])=>({x:e*g,y:t*u}));for(let[e,n]of(m.save(),m.setLineDash([4,7]),m.lineWidth=1,m.strokeStyle=d(.13),r)){let a=_(t[e],t[n]);m.beginPath(),m.moveTo(t[e].x,t[e].y),m.quadraticCurveTo(a.x,a.y,t[n].x,t[n].y),m.stroke()}m.restore(),m.save();for(let n=0;n{v||(v=e),y((e-v)/1e3),f=requestAnimationFrame(j)};b(),h?y(0):f=requestAnimationFrame(j);let k=new ResizeObserver(()=>{b(),h&&y(0)});return k.observe(p),()=>{cancelAnimationFrame(f),k.disconnect()}},[e]),(0,t.jsx)("canvas",{ref:o,className:"ind__map","aria-hidden":"true"})}])},14224,e=>{"use strict";var t=e.i(43476),n=e.i(71645),a=e.i(89970),i=e.i(83495),r=e.i(5074);a.default.registerPlugin(i.ScrollTrigger);let o=[{icon:(0,t.jsx)("svg",{className:"evnd-icon",viewBox:"0 0 24 24",fill:"none",stroke:"#f59e0b",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,t.jsx)("polygon",{points:"13 2 3 14 12 14 11 22 21 10 12 10 13 2"})}),title:"Battery-Aware Routing",desc:"Battery level, health, and degradation are first-class inputs to route optimization — not afterthoughts."},{icon:(0,t.jsx)("svg",{className:"evnd-icon",viewBox:"0 0 24 24",fill:"none",stroke:"#94a3b8",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,t.jsx)("path",{d:"M18 10h-1.28A6 6 0 0 0 12 5V3M12 5V3M6 10h1.28A6 6 0 0 0 12 5M12 18v2M12 18v2M8 10v6a4 4 0 0 0 8 0v-6"})}),title:"Charging Integration",desc:"Seamlessly integrate charging stops without compromising delivery windows or SLA commitments."},{icon:(0,t.jsx)("svg",{className:"evnd-icon",viewBox:"0 0 24 24",fill:"none",stroke:"#ef4444",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,t.jsx)("path",{d:"m8 3 4 8 5-5 5 15H2L8 3z"})}),title:"Energy-Optimized Paths",desc:"Factor in elevation, speed limits, payload weight, and live weather for maximum range efficiency."},{icon:(0,t.jsx)("svg",{className:"evnd-icon",viewBox:"0 0 24 24",fill:"none",stroke:"#ef4444",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,t.jsx)("path",{d:"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"})}),title:"Predictable Operations",desc:"EVs become predictable assets, not operational risks. Full visibility from depot to doorstep."}],s=[{value:"100%",label:"ELECTRIC FLEET"},{value:"-40%",label:"COST / MILE"}],d=[{value:99.9,decimals:1,suffix:"%",label:"SLA Compliance"},{value:42,suffix:"%",label:"Distance Saved"},{value:37,suffix:"%",label:"Fewer Vehicles"},{value:45,suffix:"ms",label:"Dispatch Latency"}];function l({value:e,decimals:a=0,suffix:i="",duration:r=1700,className:o}){let[s,d]=(0,n.useState)(0),c=(0,n.useRef)(null),p=(0,n.useRef)(!1);return(0,n.useEffect)(()=>{let t=c.current;if(!t)return;if(window.matchMedia?.("(prefers-reduced-motion: reduce)").matches)return void requestAnimationFrame(()=>d(e));let n=new IntersectionObserver(t=>{for(let a of t)if(a.isIntersecting&&!p.current){p.current=!0;let t=performance.now(),a=e=>1-Math.pow(1-e,3),i=n=>{let o=Math.min(1,(n-t)/r);d(e*a(o)),o<1?requestAnimationFrame(i):d(e)};requestAnimationFrame(i),n.disconnect()}},{threshold:.2});return n.observe(t),()=>n.disconnect()},[e,r]),(0,t.jsxs)("b",{ref:c,className:o,children:[s.toFixed(a),i]})}function c({accent:e}){return(0,t.jsx)("div",{className:"evnd__map","aria-hidden":"true",children:(0,t.jsx)(r.default,{accent:e})})}function p({metrics:e,features:n,heading:a,theme:i}){let r=i?{"--ca":i.accent,"--ca2":i.accent2,"--cg":i.glow}:void 0;return(0,t.jsxs)("div",{className:"evnd__dash",style:r,children:[a&&(0,t.jsxs)("div",{className:"evnd__dash-head",children:[(0,t.jsxs)("span",{className:"evnd__dash-live",children:[(0,t.jsx)("span",{className:"evnd__dash-livedot"}),a]}),(0,t.jsx)("span",{className:"evnd__dash-sys",children:"AI ENGINE"})]}),(0,t.jsx)("div",{className:"evnd__dash-kpis",children:e.map(e=>(0,t.jsxs)("div",{className:"evnd__kpi",children:[(0,t.jsx)(l,{value:e.value,decimals:e.decimals,suffix:e.suffix,className:"evnd__kpi-val"}),(0,t.jsx)("span",{className:"evnd__kpi-label",children:e.label})]},e.label))}),(0,t.jsx)("div",{className:"evnd__dash-feats",children:n.map(e=>(0,t.jsxs)("div",{className:"evnd__dfeat",children:[(0,t.jsx)("span",{className:"evnd__dfeat-ico","aria-hidden":"true",children:e.icon}),(0,t.jsxs)("div",{className:"evnd__dfeat-body",children:[(0,t.jsx)("span",{className:"evnd__dfeat-title",children:e.title}),(0,t.jsx)("p",{className:"evnd__dfeat-desc",children:e.desc})]})]},e.title))})]})}e.s(["default",0,function({bannerImage:e="/images/bg-header-5.png",cardNumber:r="",cardTitle:m="EV Logistics",cardSubtitle:h="Cleaner miles, lower costs",eyebrow:g="/ EV-Native Design /",titleLead:u="BUILT FOR ELECTRIC. ",titleAccent:x="NOT ADAPTED.",features:f=o,image:v="/images/premium-ev-van.png",imageAlt:b="DoorMile electric delivery van",badges:_=s,stats:w=d,gapTop:y=!1,gapBottom:j=!1,ariaLabel:k,mediaSlot:N,metrics:z,cardsHeading:S,cardsTheme:M}){let E=(0,n.useRef)(null),T=!!z&&z.length>0,P=T&&M?{"--ca":M.accent,"--ca2":M.accent2,"--cg":M.glow}:void 0;return(0,n.useEffect)(()=>{let e=E.current;if(!e)return;let t=i.ScrollTrigger.create({trigger:e,start:"top bottom",end:"bottom top",scrub:!0,onUpdate:()=>{if(window.innerWidth>=1021){let t=window.scrollY,n=e.getBoundingClientRect().top+t;a.default.set(e,{backgroundPosition:`center ${.3*(t-n)}px`})}else a.default.set(e,{backgroundPosition:""})}});return()=>t?.kill()},[]),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:` /* ============================================================ EV-Native Design — redesigned section bg #080808 \xb7 red #ef4444 \xb7 Manrope @@ -22,6 +22,74 @@ margin: 0 0 clamp(28px, 5vw, 64px); padding: 64px 48px clamp(48px, 6vw, 80px); } + /* ---- Tighten the space below the KPI bar (WF1/WF2 only) ---- + The base section reserves a tall padding-bottom (up to 80px) plus a + margin-bottom (up to 64px) that renders as a #0d0d0d band inside the + rounded container — together ~144px of empty space after the KPI bar. + The workflows end at the bar, so trim both: the bar now sits close to + the section's bottom edge, and the outer .evnd-gap-bottom (40px) still + provides clean separation to the next section. Scoped to .evnd--cards + (specificity beats the base + responsive .evnd rules at every + breakpoint) so the homepage EV section keeps its original spacing. */ + .evnd.evnd--cards { + padding-bottom: clamp(28px, 3vw, 40px); + margin-bottom: clamp(8px, 1vw, 14px); + } + /* ---- Tighten the banner → black-section transition (≥768px) ---- + From 768px up the floating title card overlaps with a FIXED budget + (margin-top:-298px into the banner, -70px into this section). The + workflow cards carry longer subtitles than the homepage card, so they + run taller than that budget and the overflow shows as a dark #0d0d0d + spacer between the hero image and this black section. Pull the section + up under the banner to swallow that strip — the card (z-index 2) stays + on top, so the overlapping card design is preserved. The flat top tucks + cleanly behind the banner. Not applied ≤767px, where the card sits + inline (no overlap) and no spacer exists — so mobile is unchanged. */ + @media (min-width: 768px) { + .evnd { margin-top: -60px; } + } + /* ---- Floating card sizing: content-driven, not container-driven ---- + The exported Elementor card reserves a lot of vertical space that the + short title + subtitle don't fill: the red text block (3b61435) carried + 64px/73px top/bottom padding and the empty white footer strip (5aea22e) + a 70px min-height. Trim both so the card height tracks the text, while + keeping the two-tone red/white design, the 25px corner radius, and the + typography untouched. These rules live in the (body) inline

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

404

This page could not be found.

404

This page could not be found.

\ No newline at end of file +
\ No newline at end of file diff --git a/build/_not-found.txt b/build/_not-found.txt index caf8aa9..ff2cab5 100644 --- a/build/_not-found.txt +++ b/build/_not-found.txt @@ -1,26 +1,26 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -c:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +c:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] d:"$Sreact.suspense" -10:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -12:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -14:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +10:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +12:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +14:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","_not-found"],"q":"","i":false,"f":[[["",{"children":["/_not-found",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:2:props:children:1:props:children:1:props:children:props:children:1:props:notFound:0:1:props:style","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:2:props:children:1:props:children:1:props:children:props:children:1:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:2:props:children:1:props:children:1:props:children:props:children:1:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:2:props:children:1:props:children:1:props:children:props:children:1:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],null,["$","$Lc",null,{"children":["$","$d",null,{"name":"Next.MetadataOutlet","children":"$@e"}]}]]}],{},null,false,null]},null,false,"$@f"]},null,false,null],["$","$1","h",{"children":[["$","meta",null,{"name":"robots","content":"noindex"}],["$","$L10",null,{"children":"$L11"}],["$","div",null,{"hidden":true,"children":["$","$L12",null,{"children":["$","$d",null,{"name":"Next.Metadata","children":"$L13"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$14",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","_not-found"],"q":"","i":false,"f":[[["",{"children":["/_not-found",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:2:props:children:1:props:children:1:props:children:props:children:1:props:notFound:0:1:props:style","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:2:props:children:1:props:children:1:props:children:props:children:1:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:2:props:children:1:props:children:1:props:children:props:children:1:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:2:props:children:1:props:children:1:props:children:props:children:1:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],null,["$","$Lc",null,{"children":["$","$d",null,{"name":"Next.MetadataOutlet","children":"$@e"}]}]]}],{},null,false,null]},null,false,"$@f"]},null,false,null],["$","$1","h",{"children":[["$","meta",null,{"name":"robots","content":"noindex"}],["$","$L10",null,{"children":"$L11"}],["$","div",null,{"hidden":true,"children":["$","$L12",null,{"children":["$","$d",null,{"name":"Next.Metadata","children":"$L13"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$14",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 15:[] f:"$W15" 11:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -16:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +16:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] e:null 13:[["$","title","0",{"children":"Doormile — Delivering Trust. Beyond Boundaries"}],["$","meta","1",{"name":"description","content":"Doormile powers last-mile logistics with MileTruth™ AI, providing connected miles, SLA protection, and carrier management."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L16","7",{}]] diff --git a/build/_not-found/__next._full.txt b/build/_not-found/__next._full.txt index caf8aa9..ff2cab5 100644 --- a/build/_not-found/__next._full.txt +++ b/build/_not-found/__next._full.txt @@ -1,26 +1,26 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -c:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +c:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] d:"$Sreact.suspense" -10:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -12:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -14:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +10:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +12:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +14:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","_not-found"],"q":"","i":false,"f":[[["",{"children":["/_not-found",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:2:props:children:1:props:children:1:props:children:props:children:1:props:notFound:0:1:props:style","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:2:props:children:1:props:children:1:props:children:props:children:1:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:2:props:children:1:props:children:1:props:children:props:children:1:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:2:props:children:1:props:children:1:props:children:props:children:1:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],null,["$","$Lc",null,{"children":["$","$d",null,{"name":"Next.MetadataOutlet","children":"$@e"}]}]]}],{},null,false,null]},null,false,"$@f"]},null,false,null],["$","$1","h",{"children":[["$","meta",null,{"name":"robots","content":"noindex"}],["$","$L10",null,{"children":"$L11"}],["$","div",null,{"hidden":true,"children":["$","$L12",null,{"children":["$","$d",null,{"name":"Next.Metadata","children":"$L13"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$14",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","_not-found"],"q":"","i":false,"f":[[["",{"children":["/_not-found",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:2:props:children:1:props:children:1:props:children:props:children:1:props:notFound:0:1:props:style","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:2:props:children:1:props:children:1:props:children:props:children:1:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:2:props:children:1:props:children:1:props:children:props:children:1:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:2:props:children:1:props:children:1:props:children:props:children:1:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],null,["$","$Lc",null,{"children":["$","$d",null,{"name":"Next.MetadataOutlet","children":"$@e"}]}]]}],{},null,false,null]},null,false,"$@f"]},null,false,null],["$","$1","h",{"children":[["$","meta",null,{"name":"robots","content":"noindex"}],["$","$L10",null,{"children":"$L11"}],["$","div",null,{"hidden":true,"children":["$","$L12",null,{"children":["$","$d",null,{"name":"Next.Metadata","children":"$L13"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$14",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 15:[] f:"$W15" 11:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -16:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +16:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] e:null 13:[["$","title","0",{"children":"Doormile — Delivering Trust. Beyond Boundaries"}],["$","meta","1",{"name":"description","content":"Doormile powers last-mile logistics with MileTruth™ AI, providing connected miles, SLA protection, and carrier management."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L16","7",{}]] diff --git a/build/_not-found/__next._head.txt b/build/_not-found/__next._head.txt index a055f6f..9162ba7 100644 --- a/build/_not-found/__next._head.txt +++ b/build/_not-found/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[["$","meta",null,{"name":"robots","content":"noindex"}],["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Doormile — Delivering Trust. Beyond Boundaries"}],["$","meta","1",{"name":"description","content":"Doormile powers last-mile logistics with MileTruth™ AI, providing connected miles, SLA protection, and carrier management."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[["$","meta",null,{"name":"robots","content":"noindex"}],["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Doormile — Delivering Trust. Beyond Boundaries"}],["$","meta","1",{"name":"description","content":"Doormile powers last-mile logistics with MileTruth™ AI, providing connected miles, SLA protection, and carrier management."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/_not-found/__next._index.txt b/build/_not-found/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/_not-found/__next._index.txt +++ b/build/_not-found/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/_not-found/__next._not-found.__PAGE__.txt b/build/_not-found/__next._not-found.__PAGE__.txt index 9818c0c..8317472 100644 --- a/build/_not-found/__next._not-found.__PAGE__.txt +++ b/build/_not-found/__next._not-found.__PAGE__.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 3:"$Sreact.suspense" -0:{"rsc":["$","$1","c",{"children":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],null,["$","$L2",null,{"children":["$","$3",null,{"name":"Next.MetadataOutlet","children":"$@4"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],null,["$","$L2",null,{"children":["$","$3",null,{"name":"Next.MetadataOutlet","children":"$@4"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 4:null diff --git a/build/_not-found/__next._not-found.txt b/build/_not-found/__next._not-found.txt index 1334b06..19dcdca 100644 --- a/build/_not-found/__next._not-found.txt +++ b/build/_not-found/__next._not-found.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/_not-found/__next._tree.txt b/build/_not-found/__next._tree.txt index bdbbc38..a7fe4e6 100644 --- a/build/_not-found/__next._tree.txt +++ b/build/_not-found/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"/_not-found","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"/_not-found","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/about-us.html b/build/about-us.html index f685559..5da0777 100644 --- a/build/about-us.html +++ b/build/about-us.html @@ -1,4 +1,4 @@ -About Us – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

/ Build Electric Vehicles /
EV Logistics

LOGISTICS BUILT FOR ELECTRIC VEHICLES 

Routes are optimized around battery levels and charging windows, not retrofitted as an afterthought.

Our algorithms factor in terrain, traffic, and payload weight to maximize range efficiency.

Seamless coordination with charging infrastructure to eliminate range anxiety for drivers.

Real-time emissions monitoring and sustainability reports for every delivery.

/Team /

Meet crew

Ratan Kumar
Ratan Kumar
COO & Operational Specialist
Parthiban
Parthiban
CGO & Growth Specialist
Aravinth
Aravinth
CFO & Finance Specialist
Fazul Ilahi
Fazul Ilahi
CTO & Technology Specialist
Suriya Kumar
Suriya Kumar
Engineering Head & AI Specialist

Ready to Start
Your Journey?

Join our Women Entrepreneurship program and become part of
India's fastest-growing logistics network.

/Team /

Meet crew

Ratan Kumar
Ratan Kumar
COO & Operational Specialist
Parthiban
Parthiban
CGO & Growth Specialist
Aravinth
Aravinth
CFO & Finance Specialist
Fazul Ilahi
Fazul Ilahi
CTO & Technology Specialist
Suriya Kumar
Suriya Kumar
Engineering Head & AI Specialist

Ready to Start
Your Journey?

Join our Women Entrepreneurship program and become part of
India's fastest-growing logistics network.

\ No newline at end of file + \ No newline at end of file diff --git a/build/about-us.txt b/build/about-us.txt index 1afa081..71c4040 100644 --- a/build/about-us.txt +++ b/build/about-us.txt @@ -1,16 +1,16 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -19:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +19:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -18,16 +18,16 @@ b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","about-us"],"q":"","i":false,"f":[[["",{"children":["about-us",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"86","className":"elementor elementor-86 elementor-59","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"\n .about-us-hero-content {\n width: 100% !important;\n text-align: center !important;\n color: #fff !important;\n padding: 40px !important;\n z-index: 2;\n display: flex !important;\n flex-direction: column !important;\n justify-content: center !important;\n align-items: center !important;\n height: 100% !important;\n }\n\n .about-us-hero-title {\n margin: 0 !important;\n font-family: \"Manrope\", Sans-serif !important;\n font-size: clamp(34px, 5.5vw, 68px) !important;\n font-weight: 850 !important;\n line-height: 1.1 !important;\n text-transform: uppercase !important;\n letter-spacing: -1.5px !important;\n color: #ffffff !important;\n text-align: center !important;\n }\n "}}],"$Lc"],"$Ld","$Le","$Lf","$L10","$L11","$L12","$L13"]}]}]}]}],["$L14","$L15"],"$L16"]}],{},null,false,null]},null,false,"$@17"]},null,false,null],"$L18",false]],"m":"$undefined","G":["$19",["$L1a"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -1b:I[24911,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"default"] -1c:I[61867,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"default"] -1f:I[47580,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"default"] -20:I[2012,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"default"] -23:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],""] -24:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +0:{"P":null,"c":["","about-us"],"q":"","i":false,"f":[[["",{"children":["about-us",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"86","className":"elementor elementor-86 elementor-59","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"\n .about-us-hero-content {\n width: 100% !important;\n text-align: center !important;\n color: #fff !important;\n padding: 40px !important;\n z-index: 2;\n display: flex !important;\n flex-direction: column !important;\n justify-content: center !important;\n align-items: center !important;\n height: 100% !important;\n }\n\n .about-us-hero-title {\n margin: 0 !important;\n font-family: \"Manrope\", Sans-serif !important;\n font-size: clamp(34px, 5.5vw, 68px) !important;\n font-weight: 850 !important;\n line-height: 1.1 !important;\n text-transform: uppercase !important;\n letter-spacing: -1.5px !important;\n color: #ffffff !important;\n text-align: center !important;\n }\n "}}],"$Lc"],"$Ld","$Le","$Lf","$L10","$L11","$L12","$L13"]}]}]}]}],["$L14","$L15"],"$L16"]}],{},null,false,null]},null,false,"$@17"]},null,false,null],"$L18",false]],"m":"$undefined","G":["$19",["$L1a"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +1b:I[24911,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"default"] +1c:I[61867,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"default"] +1f:I[47580,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"default"] +20:I[2012,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"default"] +23:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],""] +24:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 25:"$Sreact.suspense" -28:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -2a:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +28:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +2a:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] c:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"style":{"backgroundImage":"url('/images/about-bg.png')","--hero-overlay":"linear-gradient(to bottom, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.92) 60%, rgba(0, 0, 0, 0.98) 100%)"},"className":"custom-standard-hero-card","children":["$","div",null,{"className":"about-us-hero-content","children":["$","h3",null,{"className":"about-us-hero-title","children":["The Operators Building ",["$","br",null,{}]," ",["$","span",null,{"style":{"color":"#C01227"},"children":"Doormile"}]]}]}]}]}] d:["$","$L1b",null,{}] e:["$","$L1c",null,{}] @@ -314,19 +314,19 @@ e:["$","$L1c",null,{}] } 12:[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$21"}}],"$L22"] 13:["$","div",null,{"className":"we-container","children":["$","div",null,{"className":"we-cta reveal","children":["$","div",null,{"className":"we-cta-inner","children":[["$","h2",null,{"className":"we-cta-title","children":["Ready to Start",["$","br",null,{}],["$","em",null,{"children":"Your Journey?"}]]}],["$","p",null,{"className":"we-cta-sub","children":["Join our Women Entrepreneurship program and become part of ",["$","br",null,{}],"India's fastest-growing logistics network."]}],["$","div",null,{"className":"we-cta-btns","children":["$","$L23",null,{"href":"/contact","className":"btn-we-primary","style":{"textDecoration":"none"},"children":["Apply Now",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","style":{"marginLeft":"8px","display":"inline-block","verticalAlign":"middle"},"children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]}]]}]}]}] -14:["$","script","script-0",{"src":"/_next/static/chunks/0qm~m5xq2.z6g.js","async":true,"nonce":"$undefined"}] -15:["$","script","script-1",{"src":"/_next/static/chunks/0rn9tljn2_ryg.js","async":true,"nonce":"$undefined"}] +14:["$","script","script-0",{"src":"/_next/static/chunks/0hi948xn37ooj.js","async":true,"nonce":"$undefined"}] +15:["$","script","script-1",{"src":"/_next/static/chunks/0-4ghbvvrr_dw.js","async":true,"nonce":"$undefined"}] 16:["$","$L24",null,{"children":["$","$25",null,{"name":"Next.MetadataOutlet","children":"$@26"}]}] 27:[] 17:"$W27" 18:["$","$1","h",{"children":[null,["$","$L28",null,{"children":"$L29"}],["$","div",null,{"hidden":true,"children":["$","$L2a",null,{"children":["$","$25",null,{"name":"Next.Metadata","children":"$L2b"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -1a:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] -2d:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"Image"] +1a:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +2d:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"Image"] 1e:["$","div",null,{"id":"women-entrepreneurship","className":"elementor-element elementor-element-bbc6760 e-con-full e-flex cut-corner-no sticky-container-off e-con e-parent","data-id":"bbc6760","data-element_type":"container","data-e-type":"container","style":{"backgroundColor":"#1f1f1f","width":"calc(100% - 40px)","marginLeft":"20px","marginRight":"20px","borderRadius":"25px"},"children":[["$","div",null,{"className":"elementor-element elementor-element-13a7637 elementor-widget__width-auto elementor-absolute elementor-widget elementor-widget-logico_decorative_block","data-id":"13a7637","data-element_type":"widget","data-e-type":"widget","style":{"position":"absolute"},"children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"block-decoration animation-enable block-decoration-style-1","children":["$","div",null,{"className":"block-decoration-item"}]}]}]}],["$","div",null,{"style":{"backgroundImage":"url(/images/bg-header-women.png)"},"className":"elementor-element elementor-element-7da6646 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"7da6646","data-element_type":"container","data-e-type":"container"}],["$","div",null,{"className":"elementor-element elementor-element-8b5d6e6 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"8b5d6e6","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-1f766ea e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"1f766ea","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-3b61435 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"3b61435","data-element_type":"container","data-e-type":"container","data-settings":"{\"background_background\":\"classic\"}","children":[["$","div",null,{"className":"elementor-element elementor-element-c364d1c elementor-widget elementor-widget-text-editor","data-id":"c364d1c","data-element_type":"widget","data-e-type":"widget","data-widget_type":"text-editor.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","p",null,{"children":"01"}]}]}],["$","div",null,{"className":"elementor-element elementor-element-239afbb elementor-widget elementor-widget-logico_heading","data-id":"239afbb","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","h5",null,{"className":"logico-title","children":"Empowering Women"}]}]}],["$","div",null,{"className":"elementor-element elementor-element-0d307dd elementor-widget elementor-widget-text-editor","data-id":"0d307dd","data-element_type":"widget","data-e-type":"widget","data-widget_type":"text-editor.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","p",null,{"children":"Doormile empowers women in last-mile delivery."}]}]}]]}],["$","div",null,{"className":"elementor-element elementor-element-5aea22e e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"5aea22e","data-element_type":"container","data-e-type":"container","data-settings":"{\"background_background\":\"classic\"}","children":["$","div",null,{"className":"elementor-element elementor-element-46b9ffa elementor-widget elementor-widget-logico_button","data-id":"46b9ffa","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_button.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"button-widget","children":["$","div",null,{"className":"button-container","children":["$","a",null,{"href":"#","className":"logico-small-button","children":["Explore more",["$","svg",null,{"viewBox":"0 0 13 20","children":["$","polyline",null,{"points":"0.5 19.5 3 19.5 12.5 10 3 0.5"}]}]]}]}]}]}]}]}]]}]}],"$L2c"]}] 22:["$","div",null,{"className":"elementor-element elementor-element-c2c601a e-flex e-con-boxed cut-corner-no sticky-container-off e-con e-parent","data-id":"c2c601a","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"e-con-inner","children":["$","div",null,{"className":"elementor-element elementor-element-3306a27 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"3306a27","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-7afb238 elementor-widget elementor-widget-logico_heading","data-id":"7afb238","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"/Team /"}]}]}],["$","div",null,{"style":{"alignSelf":"flex-start","width":"100%"},"className":"elementor-element elementor-element-c46350e elementor-widget__width-initial elementor-widget elementor-widget-logico_heading","data-id":"c46350e","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","h3",null,{"className":"logico-title","style":{"textAlign":"left"},"children":"Meet crew"}]}]}],["$","div",null,{"className":"elementor-element elementor-element-ac909e5 elementor-widget elementor-widget-logico_team_listing","data-id":"ac909e5","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_team_listing.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-team-listing-widget","children":["$","div",null,{"className":"archive-listing","children":["$","div",null,{"className":"archive-listing-wrapper team-listing-wrapper team-grid-listing columns-5","children":[["$","div","0",{"className":"team-item-wrapper post-2866 team type-team status-publish has-post-thumbnail hentry","children":["$","div",null,{"className":"team-item","children":[["$","div",null,{"className":"team-item-media","children":["$","div",null,{"className":"post-media","children":["$","a",null,{"href":"#","children":["$","$L2d",null,{"src":"/images/Investor.png","alt":"Ratan Kumar","width":300,"height":360,"style":{"objectFit":"cover","width":"100%","height":"100%"}}]}]}]}],["$","div",null,{"className":"team-item-content","children":[["$","div",null,{"className":"post-title","children":["$","a",null,{"href":"#","children":"Ratan Kumar"}]}],["$","div",null,{"className":"team-item-position","dangerouslySetInnerHTML":{"__html":"COO & Operational Specialist"}}],["$","div",null,{"className":"team-item-socials","children":["$","ul",null,{"className":"team-socials wrapper-socials","children":["$","li",null,{"children":["$","a",null,{"href":"https://www.linkedin.com/","target":"_blank","rel":"noreferrer","className":"fab fa-linkedin-in"}]}]}]}]]}]]}]}],["$","div","1",{"className":"team-item-wrapper post-2866 team type-team status-publish has-post-thumbnail hentry","children":["$","div",null,{"className":"team-item","children":[["$","div",null,{"className":"team-item-media","children":["$","div",null,{"className":"post-media","children":["$","a",null,{"href":"#","children":["$","$L2d",null,{"src":"/images/Parthi.png","alt":"Parthiban","width":300,"height":360,"style":{"objectFit":"cover","width":"100%","height":"100%"}}]}]}]}],["$","div",null,{"className":"team-item-content","children":[["$","div",null,{"className":"post-title","children":["$","a",null,{"href":"#","children":"Parthiban"}]}],["$","div",null,{"className":"team-item-position","dangerouslySetInnerHTML":{"__html":"CGO & Growth Specialist"}}],["$","div",null,{"className":"team-item-socials","children":["$","ul",null,{"className":"team-socials wrapper-socials","children":["$","li",null,{"children":["$","a",null,{"href":"https://www.linkedin.com/","target":"_blank","rel":"noreferrer","className":"fab fa-linkedin-in"}]}]}]}]]}]]}]}],["$","div","2",{"className":"team-item-wrapper post-2866 team type-team status-publish has-post-thumbnail hentry","children":["$","div",null,{"className":"team-item","children":[["$","div",null,{"className":"team-item-media","children":["$","div",null,{"className":"post-media","children":"$L2e"}]}],"$L2f"]}]}],"$L30","$L31"]}]}]}]}]}]]}]}]}] -32:I[5074,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"default"] -33:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"ScrollReveal"] -34:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"StaggerChildren"] +32:I[5074,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"default"] +33:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"ScrollReveal"] +34:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"StaggerChildren"] 2c:["$","div",null,{"className":"elementor-element elementor-element-b6e14bd e-flex e-con-boxed cut-corner-no sticky-container-off e-con e-child","data-id":"b6e14bd","data-element_type":"container","data-e-type":"container","data-settings":"{\"background_background\":\"classic\"}","children":[["$","div",null,{"className":"ws-map","aria-hidden":"true","children":["$","$L32",null,{}]}],["$","div",null,{"className":"e-con-inner","children":["$","div",null,{"className":"elementor-element elementor-element-90cc867 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"90cc867","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-24c0280 elementor-widget__width-inherit elementor-widget elementor-widget-logico_heading","data-id":"24c0280","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"/ Women Empowerment /"}]}]}],["$","div",null,{"className":"elementor-element elementor-element-2ed47f3 e-con-full e-grid cut-corner-no sticky-container-off e-con e-child","data-id":"2ed47f3","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-36efec7 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"36efec7","data-element_type":"container","data-e-type":"container","children":[["$","$L33",null,{"duration":0.8,"yOffset":28,"triggerOnce":true,"children":["$","div",null,{"className":"elementor-element elementor-element-778840d elementor-widget elementor-widget-logico_heading","data-id":"778840d","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","h3",null,{"className":"logico-title","children":"Women Leading the Way"}]}]}]}],["$","div",null,{"className":"elementor-element elementor-element-bbfb67f elementor-widget elementor-widget-image","data-id":"bbfb67f","data-element_type":"widget","data-e-type":"widget","data-widget_type":"image.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","$L2d",null,{"src":"/images/bg-map-women.png","alt":"Women Map","width":626,"height":692,"style":{"maxWidth":"100%","height":"auto"}}]}]}]]}],["$","div",null,{"className":"elementor-element elementor-element-b2c956f e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"b2c956f","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"id":"ws-stories","children":[["$","$L34",null,{"className":"ws__stats","stagger":0.1,"duration":0.6,"yOffset":20,"triggerOnce":true,"children":[["$","div","Women Partners",{"className":"ws__stat","children":[["$","div",null,{"className":"ws__stat-num","children":["500",["$","span",null,{"children":"+"}]]}],["$","div",null,{"className":"ws__stat-label","children":"Women Partners"}]]}],["$","div","Cities",{"className":"ws__stat","children":[["$","div",null,{"className":"ws__stat-num","children":["35",["$","span",null,{"children":"+"}]]}],["$","div",null,{"className":"ws__stat-label","children":"Cities"}]]}],["$","div","Deliveries",{"className":"ws__stat","children":[["$","div",null,{"className":"ws__stat-num","children":["10K",["$","span",null,{"children":"+"}]]}],["$","div",null,{"className":"ws__stat-label","children":"Deliveries"}]]}]]}],["$","$L34",null,{"className":"ws__cards","stagger":0.08,"duration":0.6,"yOffset":24,"triggerOnce":true,"children":[["$","div","Women Leadership",{"className":"ws__card","children":[["$","span",null,{"className":"ws__card-icon","aria-hidden":"true","children":["$","svg",null,{"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"1.8","strokeLinecap":"round","strokeLinejoin":"round","children":[["$","circle",null,{"cx":"12","cy":"9","r":"5"}],["$","path",null,{"d":"M9 13.5 7.5 21 12 18l4.5 3-1.5-7.5"}]]}]}],["$","div",null,{"className":"ws__card-title","children":"Women Leadership"}],["$","p",null,{"className":"ws__card-desc","children":"Women driving decisions across operations, routing, and last-mile delivery every day."}]]}],["$","div","Entrepreneurship",{"className":"ws__card","children":["$L35","$L36","$L37"]}],"$L38","$L39"]}]]}]}]]}]]}]}]]}] 2e:["$","a",null,{"href":"#","children":["$","$L2d",null,{"src":"/images/Aravinth.png","alt":"Aravinth","width":300,"height":360,"style":{"objectFit":"cover","width":"100%","height":"100%"}}]}] 2f:["$","div",null,{"className":"team-item-content","children":[["$","div",null,{"className":"post-title","children":["$","a",null,{"href":"#","children":"Aravinth"}]}],["$","div",null,{"className":"team-item-position","dangerouslySetInnerHTML":{"__html":"CFO & Finance Specialist"}}],["$","div",null,{"className":"team-item-socials","children":["$","ul",null,{"className":"team-socials wrapper-socials","children":["$","li",null,{"children":["$","a",null,{"href":"https://www.linkedin.com/","target":"_blank","rel":"noreferrer","className":"fab fa-linkedin-in"}]}]}]}]]}] @@ -338,6 +338,6 @@ e:["$","$L1c",null,{}] 38:["$","div","Innovation",{"className":"ws__card","children":[["$","span",null,{"className":"ws__card-icon","aria-hidden":"true","children":["$","svg",null,{"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"1.8","strokeLinecap":"round","strokeLinejoin":"round","children":[["$","path",null,{"d":"M9 18h6M10 21h4"}],["$","path",null,{"d":"M12 3a6 6 0 0 0-3.8 10.6c.5.5.8 1.2.8 1.9v.5h6v-.5c0-.7.3-1.4.8-1.9A6 6 0 0 0 12 3Z"}]]}]}],["$","div",null,{"className":"ws__card-title","children":"Innovation"}],["$","p",null,{"className":"ws__card-desc","children":"Fresh thinking that reshapes how first and last-mile logistics actually work."}]]}] 39:["$","div","Community Growth",{"className":"ws__card","children":[["$","span",null,{"className":"ws__card-icon","aria-hidden":"true","children":["$","svg",null,{"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"1.8","strokeLinecap":"round","strokeLinejoin":"round","children":[["$","circle",null,{"cx":"9","cy":"8","r":"3"}],["$","path",null,{"d":"M3.5 20c0-3 2.5-5 5.5-5s5.5 2 5.5 5M16 5.5a3 3 0 0 1 0 5.8M20.5 20c0-2.3-1.4-3.9-3.3-4.6"}]]}]}],["$","div",null,{"className":"ws__card-title","children":"Community Growth"}],["$","p",null,{"className":"ws__card-desc","children":"Local hiring and training that lifts entire neighbourhoods, not just routes."}]]}] 29:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -3a:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +3a:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 26:null 2b:[["$","title","0",{"children":"About Us – Doormile"}],["$","meta","1",{"name":"description","content":"Meet the best crew and operators behind Doormile. Explore our roadmap, competitive edge, and operational excellence in EV and last-mile logistics."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L3a","7",{}]] diff --git a/build/about-us/__next._full.txt b/build/about-us/__next._full.txt index 1afa081..71c4040 100644 --- a/build/about-us/__next._full.txt +++ b/build/about-us/__next._full.txt @@ -1,16 +1,16 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -19:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +19:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -18,16 +18,16 @@ b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","about-us"],"q":"","i":false,"f":[[["",{"children":["about-us",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"86","className":"elementor elementor-86 elementor-59","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"\n .about-us-hero-content {\n width: 100% !important;\n text-align: center !important;\n color: #fff !important;\n padding: 40px !important;\n z-index: 2;\n display: flex !important;\n flex-direction: column !important;\n justify-content: center !important;\n align-items: center !important;\n height: 100% !important;\n }\n\n .about-us-hero-title {\n margin: 0 !important;\n font-family: \"Manrope\", Sans-serif !important;\n font-size: clamp(34px, 5.5vw, 68px) !important;\n font-weight: 850 !important;\n line-height: 1.1 !important;\n text-transform: uppercase !important;\n letter-spacing: -1.5px !important;\n color: #ffffff !important;\n text-align: center !important;\n }\n "}}],"$Lc"],"$Ld","$Le","$Lf","$L10","$L11","$L12","$L13"]}]}]}]}],["$L14","$L15"],"$L16"]}],{},null,false,null]},null,false,"$@17"]},null,false,null],"$L18",false]],"m":"$undefined","G":["$19",["$L1a"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -1b:I[24911,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"default"] -1c:I[61867,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"default"] -1f:I[47580,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"default"] -20:I[2012,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"default"] -23:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],""] -24:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +0:{"P":null,"c":["","about-us"],"q":"","i":false,"f":[[["",{"children":["about-us",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"86","className":"elementor elementor-86 elementor-59","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"\n .about-us-hero-content {\n width: 100% !important;\n text-align: center !important;\n color: #fff !important;\n padding: 40px !important;\n z-index: 2;\n display: flex !important;\n flex-direction: column !important;\n justify-content: center !important;\n align-items: center !important;\n height: 100% !important;\n }\n\n .about-us-hero-title {\n margin: 0 !important;\n font-family: \"Manrope\", Sans-serif !important;\n font-size: clamp(34px, 5.5vw, 68px) !important;\n font-weight: 850 !important;\n line-height: 1.1 !important;\n text-transform: uppercase !important;\n letter-spacing: -1.5px !important;\n color: #ffffff !important;\n text-align: center !important;\n }\n "}}],"$Lc"],"$Ld","$Le","$Lf","$L10","$L11","$L12","$L13"]}]}]}]}],["$L14","$L15"],"$L16"]}],{},null,false,null]},null,false,"$@17"]},null,false,null],"$L18",false]],"m":"$undefined","G":["$19",["$L1a"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +1b:I[24911,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"default"] +1c:I[61867,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"default"] +1f:I[47580,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"default"] +20:I[2012,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"default"] +23:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],""] +24:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 25:"$Sreact.suspense" -28:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -2a:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +28:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +2a:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] c:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"style":{"backgroundImage":"url('/images/about-bg.png')","--hero-overlay":"linear-gradient(to bottom, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.92) 60%, rgba(0, 0, 0, 0.98) 100%)"},"className":"custom-standard-hero-card","children":["$","div",null,{"className":"about-us-hero-content","children":["$","h3",null,{"className":"about-us-hero-title","children":["The Operators Building ",["$","br",null,{}]," ",["$","span",null,{"style":{"color":"#C01227"},"children":"Doormile"}]]}]}]}]}] d:["$","$L1b",null,{}] e:["$","$L1c",null,{}] @@ -314,19 +314,19 @@ e:["$","$L1c",null,{}] } 12:[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$21"}}],"$L22"] 13:["$","div",null,{"className":"we-container","children":["$","div",null,{"className":"we-cta reveal","children":["$","div",null,{"className":"we-cta-inner","children":[["$","h2",null,{"className":"we-cta-title","children":["Ready to Start",["$","br",null,{}],["$","em",null,{"children":"Your Journey?"}]]}],["$","p",null,{"className":"we-cta-sub","children":["Join our Women Entrepreneurship program and become part of ",["$","br",null,{}],"India's fastest-growing logistics network."]}],["$","div",null,{"className":"we-cta-btns","children":["$","$L23",null,{"href":"/contact","className":"btn-we-primary","style":{"textDecoration":"none"},"children":["Apply Now",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","style":{"marginLeft":"8px","display":"inline-block","verticalAlign":"middle"},"children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]}]]}]}]}] -14:["$","script","script-0",{"src":"/_next/static/chunks/0qm~m5xq2.z6g.js","async":true,"nonce":"$undefined"}] -15:["$","script","script-1",{"src":"/_next/static/chunks/0rn9tljn2_ryg.js","async":true,"nonce":"$undefined"}] +14:["$","script","script-0",{"src":"/_next/static/chunks/0hi948xn37ooj.js","async":true,"nonce":"$undefined"}] +15:["$","script","script-1",{"src":"/_next/static/chunks/0-4ghbvvrr_dw.js","async":true,"nonce":"$undefined"}] 16:["$","$L24",null,{"children":["$","$25",null,{"name":"Next.MetadataOutlet","children":"$@26"}]}] 27:[] 17:"$W27" 18:["$","$1","h",{"children":[null,["$","$L28",null,{"children":"$L29"}],["$","div",null,{"hidden":true,"children":["$","$L2a",null,{"children":["$","$25",null,{"name":"Next.Metadata","children":"$L2b"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -1a:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] -2d:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"Image"] +1a:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +2d:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"Image"] 1e:["$","div",null,{"id":"women-entrepreneurship","className":"elementor-element elementor-element-bbc6760 e-con-full e-flex cut-corner-no sticky-container-off e-con e-parent","data-id":"bbc6760","data-element_type":"container","data-e-type":"container","style":{"backgroundColor":"#1f1f1f","width":"calc(100% - 40px)","marginLeft":"20px","marginRight":"20px","borderRadius":"25px"},"children":[["$","div",null,{"className":"elementor-element elementor-element-13a7637 elementor-widget__width-auto elementor-absolute elementor-widget elementor-widget-logico_decorative_block","data-id":"13a7637","data-element_type":"widget","data-e-type":"widget","style":{"position":"absolute"},"children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"block-decoration animation-enable block-decoration-style-1","children":["$","div",null,{"className":"block-decoration-item"}]}]}]}],["$","div",null,{"style":{"backgroundImage":"url(/images/bg-header-women.png)"},"className":"elementor-element elementor-element-7da6646 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"7da6646","data-element_type":"container","data-e-type":"container"}],["$","div",null,{"className":"elementor-element elementor-element-8b5d6e6 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"8b5d6e6","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-1f766ea e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"1f766ea","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-3b61435 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"3b61435","data-element_type":"container","data-e-type":"container","data-settings":"{\"background_background\":\"classic\"}","children":[["$","div",null,{"className":"elementor-element elementor-element-c364d1c elementor-widget elementor-widget-text-editor","data-id":"c364d1c","data-element_type":"widget","data-e-type":"widget","data-widget_type":"text-editor.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","p",null,{"children":"01"}]}]}],["$","div",null,{"className":"elementor-element elementor-element-239afbb elementor-widget elementor-widget-logico_heading","data-id":"239afbb","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","h5",null,{"className":"logico-title","children":"Empowering Women"}]}]}],["$","div",null,{"className":"elementor-element elementor-element-0d307dd elementor-widget elementor-widget-text-editor","data-id":"0d307dd","data-element_type":"widget","data-e-type":"widget","data-widget_type":"text-editor.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","p",null,{"children":"Doormile empowers women in last-mile delivery."}]}]}]]}],["$","div",null,{"className":"elementor-element elementor-element-5aea22e e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"5aea22e","data-element_type":"container","data-e-type":"container","data-settings":"{\"background_background\":\"classic\"}","children":["$","div",null,{"className":"elementor-element elementor-element-46b9ffa elementor-widget elementor-widget-logico_button","data-id":"46b9ffa","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_button.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"button-widget","children":["$","div",null,{"className":"button-container","children":["$","a",null,{"href":"#","className":"logico-small-button","children":["Explore more",["$","svg",null,{"viewBox":"0 0 13 20","children":["$","polyline",null,{"points":"0.5 19.5 3 19.5 12.5 10 3 0.5"}]}]]}]}]}]}]}]}]]}]}],"$L2c"]}] 22:["$","div",null,{"className":"elementor-element elementor-element-c2c601a e-flex e-con-boxed cut-corner-no sticky-container-off e-con e-parent","data-id":"c2c601a","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"e-con-inner","children":["$","div",null,{"className":"elementor-element elementor-element-3306a27 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"3306a27","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-7afb238 elementor-widget elementor-widget-logico_heading","data-id":"7afb238","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"/Team /"}]}]}],["$","div",null,{"style":{"alignSelf":"flex-start","width":"100%"},"className":"elementor-element elementor-element-c46350e elementor-widget__width-initial elementor-widget elementor-widget-logico_heading","data-id":"c46350e","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","h3",null,{"className":"logico-title","style":{"textAlign":"left"},"children":"Meet crew"}]}]}],["$","div",null,{"className":"elementor-element elementor-element-ac909e5 elementor-widget elementor-widget-logico_team_listing","data-id":"ac909e5","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_team_listing.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-team-listing-widget","children":["$","div",null,{"className":"archive-listing","children":["$","div",null,{"className":"archive-listing-wrapper team-listing-wrapper team-grid-listing columns-5","children":[["$","div","0",{"className":"team-item-wrapper post-2866 team type-team status-publish has-post-thumbnail hentry","children":["$","div",null,{"className":"team-item","children":[["$","div",null,{"className":"team-item-media","children":["$","div",null,{"className":"post-media","children":["$","a",null,{"href":"#","children":["$","$L2d",null,{"src":"/images/Investor.png","alt":"Ratan Kumar","width":300,"height":360,"style":{"objectFit":"cover","width":"100%","height":"100%"}}]}]}]}],["$","div",null,{"className":"team-item-content","children":[["$","div",null,{"className":"post-title","children":["$","a",null,{"href":"#","children":"Ratan Kumar"}]}],["$","div",null,{"className":"team-item-position","dangerouslySetInnerHTML":{"__html":"COO & Operational Specialist"}}],["$","div",null,{"className":"team-item-socials","children":["$","ul",null,{"className":"team-socials wrapper-socials","children":["$","li",null,{"children":["$","a",null,{"href":"https://www.linkedin.com/","target":"_blank","rel":"noreferrer","className":"fab fa-linkedin-in"}]}]}]}]]}]]}]}],["$","div","1",{"className":"team-item-wrapper post-2866 team type-team status-publish has-post-thumbnail hentry","children":["$","div",null,{"className":"team-item","children":[["$","div",null,{"className":"team-item-media","children":["$","div",null,{"className":"post-media","children":["$","a",null,{"href":"#","children":["$","$L2d",null,{"src":"/images/Parthi.png","alt":"Parthiban","width":300,"height":360,"style":{"objectFit":"cover","width":"100%","height":"100%"}}]}]}]}],["$","div",null,{"className":"team-item-content","children":[["$","div",null,{"className":"post-title","children":["$","a",null,{"href":"#","children":"Parthiban"}]}],["$","div",null,{"className":"team-item-position","dangerouslySetInnerHTML":{"__html":"CGO & Growth Specialist"}}],["$","div",null,{"className":"team-item-socials","children":["$","ul",null,{"className":"team-socials wrapper-socials","children":["$","li",null,{"children":["$","a",null,{"href":"https://www.linkedin.com/","target":"_blank","rel":"noreferrer","className":"fab fa-linkedin-in"}]}]}]}]]}]]}]}],["$","div","2",{"className":"team-item-wrapper post-2866 team type-team status-publish has-post-thumbnail hentry","children":["$","div",null,{"className":"team-item","children":[["$","div",null,{"className":"team-item-media","children":["$","div",null,{"className":"post-media","children":"$L2e"}]}],"$L2f"]}]}],"$L30","$L31"]}]}]}]}]}]]}]}]}] -32:I[5074,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"default"] -33:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"ScrollReveal"] -34:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"StaggerChildren"] +32:I[5074,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"default"] +33:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"ScrollReveal"] +34:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"StaggerChildren"] 2c:["$","div",null,{"className":"elementor-element elementor-element-b6e14bd e-flex e-con-boxed cut-corner-no sticky-container-off e-con e-child","data-id":"b6e14bd","data-element_type":"container","data-e-type":"container","data-settings":"{\"background_background\":\"classic\"}","children":[["$","div",null,{"className":"ws-map","aria-hidden":"true","children":["$","$L32",null,{}]}],["$","div",null,{"className":"e-con-inner","children":["$","div",null,{"className":"elementor-element elementor-element-90cc867 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"90cc867","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-24c0280 elementor-widget__width-inherit elementor-widget elementor-widget-logico_heading","data-id":"24c0280","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"/ Women Empowerment /"}]}]}],["$","div",null,{"className":"elementor-element elementor-element-2ed47f3 e-con-full e-grid cut-corner-no sticky-container-off e-con e-child","data-id":"2ed47f3","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-36efec7 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"36efec7","data-element_type":"container","data-e-type":"container","children":[["$","$L33",null,{"duration":0.8,"yOffset":28,"triggerOnce":true,"children":["$","div",null,{"className":"elementor-element elementor-element-778840d elementor-widget elementor-widget-logico_heading","data-id":"778840d","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","h3",null,{"className":"logico-title","children":"Women Leading the Way"}]}]}]}],["$","div",null,{"className":"elementor-element elementor-element-bbfb67f elementor-widget elementor-widget-image","data-id":"bbfb67f","data-element_type":"widget","data-e-type":"widget","data-widget_type":"image.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","$L2d",null,{"src":"/images/bg-map-women.png","alt":"Women Map","width":626,"height":692,"style":{"maxWidth":"100%","height":"auto"}}]}]}]]}],["$","div",null,{"className":"elementor-element elementor-element-b2c956f e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"b2c956f","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"id":"ws-stories","children":[["$","$L34",null,{"className":"ws__stats","stagger":0.1,"duration":0.6,"yOffset":20,"triggerOnce":true,"children":[["$","div","Women Partners",{"className":"ws__stat","children":[["$","div",null,{"className":"ws__stat-num","children":["500",["$","span",null,{"children":"+"}]]}],["$","div",null,{"className":"ws__stat-label","children":"Women Partners"}]]}],["$","div","Cities",{"className":"ws__stat","children":[["$","div",null,{"className":"ws__stat-num","children":["35",["$","span",null,{"children":"+"}]]}],["$","div",null,{"className":"ws__stat-label","children":"Cities"}]]}],["$","div","Deliveries",{"className":"ws__stat","children":[["$","div",null,{"className":"ws__stat-num","children":["10K",["$","span",null,{"children":"+"}]]}],["$","div",null,{"className":"ws__stat-label","children":"Deliveries"}]]}]]}],["$","$L34",null,{"className":"ws__cards","stagger":0.08,"duration":0.6,"yOffset":24,"triggerOnce":true,"children":[["$","div","Women Leadership",{"className":"ws__card","children":[["$","span",null,{"className":"ws__card-icon","aria-hidden":"true","children":["$","svg",null,{"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"1.8","strokeLinecap":"round","strokeLinejoin":"round","children":[["$","circle",null,{"cx":"12","cy":"9","r":"5"}],["$","path",null,{"d":"M9 13.5 7.5 21 12 18l4.5 3-1.5-7.5"}]]}]}],["$","div",null,{"className":"ws__card-title","children":"Women Leadership"}],["$","p",null,{"className":"ws__card-desc","children":"Women driving decisions across operations, routing, and last-mile delivery every day."}]]}],["$","div","Entrepreneurship",{"className":"ws__card","children":["$L35","$L36","$L37"]}],"$L38","$L39"]}]]}]}]]}]]}]}]]}] 2e:["$","a",null,{"href":"#","children":["$","$L2d",null,{"src":"/images/Aravinth.png","alt":"Aravinth","width":300,"height":360,"style":{"objectFit":"cover","width":"100%","height":"100%"}}]}] 2f:["$","div",null,{"className":"team-item-content","children":[["$","div",null,{"className":"post-title","children":["$","a",null,{"href":"#","children":"Aravinth"}]}],["$","div",null,{"className":"team-item-position","dangerouslySetInnerHTML":{"__html":"CFO & Finance Specialist"}}],["$","div",null,{"className":"team-item-socials","children":["$","ul",null,{"className":"team-socials wrapper-socials","children":["$","li",null,{"children":["$","a",null,{"href":"https://www.linkedin.com/","target":"_blank","rel":"noreferrer","className":"fab fa-linkedin-in"}]}]}]}]]}] @@ -338,6 +338,6 @@ e:["$","$L1c",null,{}] 38:["$","div","Innovation",{"className":"ws__card","children":[["$","span",null,{"className":"ws__card-icon","aria-hidden":"true","children":["$","svg",null,{"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"1.8","strokeLinecap":"round","strokeLinejoin":"round","children":[["$","path",null,{"d":"M9 18h6M10 21h4"}],["$","path",null,{"d":"M12 3a6 6 0 0 0-3.8 10.6c.5.5.8 1.2.8 1.9v.5h6v-.5c0-.7.3-1.4.8-1.9A6 6 0 0 0 12 3Z"}]]}]}],["$","div",null,{"className":"ws__card-title","children":"Innovation"}],["$","p",null,{"className":"ws__card-desc","children":"Fresh thinking that reshapes how first and last-mile logistics actually work."}]]}] 39:["$","div","Community Growth",{"className":"ws__card","children":[["$","span",null,{"className":"ws__card-icon","aria-hidden":"true","children":["$","svg",null,{"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"1.8","strokeLinecap":"round","strokeLinejoin":"round","children":[["$","circle",null,{"cx":"9","cy":"8","r":"3"}],["$","path",null,{"d":"M3.5 20c0-3 2.5-5 5.5-5s5.5 2 5.5 5M16 5.5a3 3 0 0 1 0 5.8M20.5 20c0-2.3-1.4-3.9-3.3-4.6"}]]}]}],["$","div",null,{"className":"ws__card-title","children":"Community Growth"}],["$","p",null,{"className":"ws__card-desc","children":"Local hiring and training that lifts entire neighbourhoods, not just routes."}]]}] 29:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -3a:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +3a:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 26:null 2b:[["$","title","0",{"children":"About Us – Doormile"}],["$","meta","1",{"name":"description","content":"Meet the best crew and operators behind Doormile. Explore our roadmap, competitive edge, and operational excellence in EV and last-mile logistics."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L3a","7",{}]] diff --git a/build/about-us/__next._head.txt b/build/about-us/__next._head.txt index 56c0614..a9e9679 100644 --- a/build/about-us/__next._head.txt +++ b/build/about-us/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"About Us – Doormile"}],["$","meta","1",{"name":"description","content":"Meet the best crew and operators behind Doormile. Explore our roadmap, competitive edge, and operational excellence in EV and last-mile logistics."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"About Us – Doormile"}],["$","meta","1",{"name":"description","content":"Meet the best crew and operators behind Doormile. Explore our roadmap, competitive edge, and operational excellence in EV and last-mile logistics."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/about-us/__next._index.txt b/build/about-us/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/about-us/__next._index.txt +++ b/build/about-us/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/about-us/__next._tree.txt b/build/about-us/__next._tree.txt index 5208b18..f2f8d19 100644 --- a/build/about-us/__next._tree.txt +++ b/build/about-us/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"about-us","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"about-us","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/about-us/__next.about-us.__PAGE__.txt b/build/about-us/__next.about-us.__PAGE__.txt index e154848..73509c3 100644 --- a/build/about-us/__next.about-us.__PAGE__.txt +++ b/build/about-us/__next.about-us.__PAGE__.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[24911,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"default"] -3:I[61867,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"default"] -e:I[47580,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"default"] -f:I[2012,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"default"] -12:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],""] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[24911,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"default"] +3:I[61867,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"default"] +e:I[47580,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"default"] +f:I[2012,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"default"] +12:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],""] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 14:"$Sreact.suspense" -16:I[5074,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"default"] -17:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"ScrollReveal"] -18:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"Image"] -19:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0qm~m5xq2.z6g.js","/_next/static/chunks/0rn9tljn2_ryg.js"],"StaggerChildren"] +16:I[5074,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"default"] +17:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"ScrollReveal"] +18:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"Image"] +19:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0hi948xn37ooj.js","/_next/static/chunks/0-4ghbvvrr_dw.js"],"StaggerChildren"] 4:T2027, /* ============================================================ Success Stories — redesigned right column (stats + 2x2 cards) @@ -199,7 +199,7 @@ f:I[2012,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~ } #ws-stories .ws__cards { grid-template-columns: 1fr; } } - 0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"86","className":"elementor elementor-86 elementor-59","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"\n .about-us-hero-content {\n width: 100% !important;\n text-align: center !important;\n color: #fff !important;\n padding: 40px !important;\n z-index: 2;\n display: flex !important;\n flex-direction: column !important;\n justify-content: center !important;\n align-items: center !important;\n height: 100% !important;\n }\n\n .about-us-hero-title {\n margin: 0 !important;\n font-family: \"Manrope\", Sans-serif !important;\n font-size: clamp(34px, 5.5vw, 68px) !important;\n font-weight: 850 !important;\n line-height: 1.1 !important;\n text-transform: uppercase !important;\n letter-spacing: -1.5px !important;\n color: #ffffff !important;\n text-align: center !important;\n }\n "}}],["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"style":{"backgroundImage":"url('/images/about-bg.png')","--hero-overlay":"linear-gradient(to bottom, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.92) 60%, rgba(0, 0, 0, 0.98) 100%)"},"className":"custom-standard-hero-card","children":["$","div",null,{"className":"about-us-hero-content","children":["$","h3",null,{"className":"about-us-hero-title","children":["The Operators Building ",["$","br",null,{}]," ",["$","span",null,{"style":{"color":"#C01227"},"children":"Doormile"}]]}]}]}]}]],["$","$L2",null,{}],["$","$L3",null,{}],[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$4"}}],"$L5"],"$L6","$L7","$L8","$L9"]}]}]}]}],["$La","$Lb"],"$Lc"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} + 0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"86","className":"elementor elementor-86 elementor-59","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"\n .about-us-hero-content {\n width: 100% !important;\n text-align: center !important;\n color: #fff !important;\n padding: 40px !important;\n z-index: 2;\n display: flex !important;\n flex-direction: column !important;\n justify-content: center !important;\n align-items: center !important;\n height: 100% !important;\n }\n\n .about-us-hero-title {\n margin: 0 !important;\n font-family: \"Manrope\", Sans-serif !important;\n font-size: clamp(34px, 5.5vw, 68px) !important;\n font-weight: 850 !important;\n line-height: 1.1 !important;\n text-transform: uppercase !important;\n letter-spacing: -1.5px !important;\n color: #ffffff !important;\n text-align: center !important;\n }\n "}}],["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"style":{"backgroundImage":"url('/images/about-bg.png')","--hero-overlay":"linear-gradient(to bottom, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.92) 60%, rgba(0, 0, 0, 0.98) 100%)"},"className":"custom-standard-hero-card","children":["$","div",null,{"className":"about-us-hero-content","children":["$","h3",null,{"className":"about-us-hero-title","children":["The Operators Building ",["$","br",null,{}]," ",["$","span",null,{"style":{"color":"#C01227"},"children":"Doormile"}]]}]}]}]}]],["$","$L2",null,{}],["$","$L3",null,{}],[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$4"}}],"$L5"],"$L6","$L7","$L8","$L9"]}]}]}]}],["$La","$Lb"],"$Lc"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 5:["$","div",null,{"id":"women-entrepreneurship","className":"elementor-element elementor-element-bbc6760 e-con-full e-flex cut-corner-no sticky-container-off e-con e-parent","data-id":"bbc6760","data-element_type":"container","data-e-type":"container","style":{"backgroundColor":"#1f1f1f","width":"calc(100% - 40px)","marginLeft":"20px","marginRight":"20px","borderRadius":"25px"},"children":[["$","div",null,{"className":"elementor-element elementor-element-13a7637 elementor-widget__width-auto elementor-absolute elementor-widget elementor-widget-logico_decorative_block","data-id":"13a7637","data-element_type":"widget","data-e-type":"widget","style":{"position":"absolute"},"children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"block-decoration animation-enable block-decoration-style-1","children":["$","div",null,{"className":"block-decoration-item"}]}]}]}],["$","div",null,{"style":{"backgroundImage":"url(/images/bg-header-women.png)"},"className":"elementor-element elementor-element-7da6646 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"7da6646","data-element_type":"container","data-e-type":"container"}],["$","div",null,{"className":"elementor-element elementor-element-8b5d6e6 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"8b5d6e6","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-1f766ea e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"1f766ea","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-3b61435 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"3b61435","data-element_type":"container","data-e-type":"container","data-settings":"{\"background_background\":\"classic\"}","children":[["$","div",null,{"className":"elementor-element elementor-element-c364d1c elementor-widget elementor-widget-text-editor","data-id":"c364d1c","data-element_type":"widget","data-e-type":"widget","data-widget_type":"text-editor.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","p",null,{"children":"01"}]}]}],["$","div",null,{"className":"elementor-element elementor-element-239afbb elementor-widget elementor-widget-logico_heading","data-id":"239afbb","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","h5",null,{"className":"logico-title","children":"Empowering Women"}]}]}],["$","div",null,{"className":"elementor-element elementor-element-0d307dd elementor-widget elementor-widget-text-editor","data-id":"0d307dd","data-element_type":"widget","data-e-type":"widget","data-widget_type":"text-editor.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","p",null,{"children":"Doormile empowers women in last-mile delivery."}]}]}]]}],["$","div",null,{"className":"elementor-element elementor-element-5aea22e e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"5aea22e","data-element_type":"container","data-e-type":"container","data-settings":"{\"background_background\":\"classic\"}","children":["$","div",null,{"className":"elementor-element elementor-element-46b9ffa elementor-widget elementor-widget-logico_button","data-id":"46b9ffa","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_button.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"button-widget","children":["$","div",null,{"className":"button-container","children":["$","a",null,{"href":"#","className":"logico-small-button","children":["Explore more",["$","svg",null,{"viewBox":"0 0 13 20","children":["$","polyline",null,{"points":"0.5 19.5 3 19.5 12.5 10 3 0.5"}]}]]}]}]}]}]}]}]]}]}],"$Ld"]}] 6:["$","$Le",null,{}] 7:["$","$Lf",null,{}] @@ -294,8 +294,8 @@ f:I[2012,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~ } 8:[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$10"}}],"$L11"] 9:["$","div",null,{"className":"we-container","children":["$","div",null,{"className":"we-cta reveal","children":["$","div",null,{"className":"we-cta-inner","children":[["$","h2",null,{"className":"we-cta-title","children":["Ready to Start",["$","br",null,{}],["$","em",null,{"children":"Your Journey?"}]]}],["$","p",null,{"className":"we-cta-sub","children":["Join our Women Entrepreneurship program and become part of ",["$","br",null,{}],"India's fastest-growing logistics network."]}],["$","div",null,{"className":"we-cta-btns","children":["$","$L12",null,{"href":"/contact","className":"btn-we-primary","style":{"textDecoration":"none"},"children":["Apply Now",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","style":{"marginLeft":"8px","display":"inline-block","verticalAlign":"middle"},"children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]}]]}]}]}] -a:["$","script","script-0",{"src":"/_next/static/chunks/0qm~m5xq2.z6g.js","async":true}] -b:["$","script","script-1",{"src":"/_next/static/chunks/0rn9tljn2_ryg.js","async":true}] +a:["$","script","script-0",{"src":"/_next/static/chunks/0hi948xn37ooj.js","async":true}] +b:["$","script","script-1",{"src":"/_next/static/chunks/0-4ghbvvrr_dw.js","async":true}] c:["$","$L13",null,{"children":["$","$14",null,{"name":"Next.MetadataOutlet","children":"$@15"}]}] d:["$","div",null,{"className":"elementor-element elementor-element-b6e14bd e-flex e-con-boxed cut-corner-no sticky-container-off e-con e-child","data-id":"b6e14bd","data-element_type":"container","data-e-type":"container","data-settings":"{\"background_background\":\"classic\"}","children":[["$","div",null,{"className":"ws-map","aria-hidden":"true","children":["$","$L16",null,{}]}],["$","div",null,{"className":"e-con-inner","children":["$","div",null,{"className":"elementor-element elementor-element-90cc867 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"90cc867","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-24c0280 elementor-widget__width-inherit elementor-widget elementor-widget-logico_heading","data-id":"24c0280","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"/ Women Empowerment /"}]}]}],["$","div",null,{"className":"elementor-element elementor-element-2ed47f3 e-con-full e-grid cut-corner-no sticky-container-off e-con e-child","data-id":"2ed47f3","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-36efec7 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"36efec7","data-element_type":"container","data-e-type":"container","children":[["$","$L17",null,{"duration":0.8,"yOffset":28,"triggerOnce":true,"children":["$","div",null,{"className":"elementor-element elementor-element-778840d elementor-widget elementor-widget-logico_heading","data-id":"778840d","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","h3",null,{"className":"logico-title","children":"Women Leading the Way"}]}]}]}],["$","div",null,{"className":"elementor-element elementor-element-bbfb67f elementor-widget elementor-widget-image","data-id":"bbfb67f","data-element_type":"widget","data-e-type":"widget","data-widget_type":"image.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","$L18",null,{"src":"/images/bg-map-women.png","alt":"Women Map","width":626,"height":692,"style":{"maxWidth":"100%","height":"auto"}}]}]}]]}],["$","div",null,{"className":"elementor-element elementor-element-b2c956f e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"b2c956f","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"id":"ws-stories","children":[["$","$L19",null,{"className":"ws__stats","stagger":0.1,"duration":0.6,"yOffset":20,"triggerOnce":true,"children":[["$","div","Women Partners",{"className":"ws__stat","children":[["$","div",null,{"className":"ws__stat-num","children":["500",["$","span",null,{"children":"+"}]]}],["$","div",null,{"className":"ws__stat-label","children":"Women Partners"}]]}],["$","div","Cities",{"className":"ws__stat","children":[["$","div",null,{"className":"ws__stat-num","children":["35",["$","span",null,{"children":"+"}]]}],["$","div",null,{"className":"ws__stat-label","children":"Cities"}]]}],["$","div","Deliveries",{"className":"ws__stat","children":[["$","div",null,{"className":"ws__stat-num","children":["10K",["$","span",null,{"children":"+"}]]}],["$","div",null,{"className":"ws__stat-label","children":"Deliveries"}]]}]]}],["$","$L19",null,{"className":"ws__cards","stagger":0.08,"duration":0.6,"yOffset":24,"triggerOnce":true,"children":[["$","div","Women Leadership",{"className":"ws__card","children":[["$","span",null,{"className":"ws__card-icon","aria-hidden":"true","children":["$","svg",null,{"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"1.8","strokeLinecap":"round","strokeLinejoin":"round","children":[["$","circle",null,{"cx":"12","cy":"9","r":"5"}],["$","path",null,{"d":"M9 13.5 7.5 21 12 18l4.5 3-1.5-7.5"}]]}]}],["$","div",null,{"className":"ws__card-title","children":"Women Leadership"}],["$","p",null,{"className":"ws__card-desc","children":"Women driving decisions across operations, routing, and last-mile delivery every day."}]]}],["$","div","Entrepreneurship",{"className":"ws__card","children":["$L1a","$L1b","$L1c"]}],"$L1d","$L1e"]}]]}]}]]}]]}]}]]}] 11:["$","div",null,{"className":"elementor-element elementor-element-c2c601a e-flex e-con-boxed cut-corner-no sticky-container-off e-con e-parent","data-id":"c2c601a","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"e-con-inner","children":["$","div",null,{"className":"elementor-element elementor-element-3306a27 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"3306a27","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-7afb238 elementor-widget elementor-widget-logico_heading","data-id":"7afb238","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"/Team /"}]}]}],["$","div",null,{"style":{"alignSelf":"flex-start","width":"100%"},"className":"elementor-element elementor-element-c46350e elementor-widget__width-initial elementor-widget elementor-widget-logico_heading","data-id":"c46350e","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","h3",null,{"className":"logico-title","style":{"textAlign":"left"},"children":"Meet crew"}]}]}],["$","div",null,{"className":"elementor-element elementor-element-ac909e5 elementor-widget elementor-widget-logico_team_listing","data-id":"ac909e5","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_team_listing.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-team-listing-widget","children":["$","div",null,{"className":"archive-listing","children":["$","div",null,{"className":"archive-listing-wrapper team-listing-wrapper team-grid-listing columns-5","children":[["$","div","0",{"className":"team-item-wrapper post-2866 team type-team status-publish has-post-thumbnail hentry","children":["$","div",null,{"className":"team-item","children":[["$","div",null,{"className":"team-item-media","children":["$","div",null,{"className":"post-media","children":["$","a",null,{"href":"#","children":["$","$L18",null,{"src":"/images/Investor.png","alt":"Ratan Kumar","width":300,"height":360,"style":{"objectFit":"cover","width":"100%","height":"100%"}}]}]}]}],["$","div",null,{"className":"team-item-content","children":[["$","div",null,{"className":"post-title","children":["$","a",null,{"href":"#","children":"Ratan Kumar"}]}],["$","div",null,{"className":"team-item-position","dangerouslySetInnerHTML":{"__html":"COO & Operational Specialist"}}],["$","div",null,{"className":"team-item-socials","children":["$","ul",null,{"className":"team-socials wrapper-socials","children":["$","li",null,{"children":["$","a",null,{"href":"https://www.linkedin.com/","target":"_blank","rel":"noreferrer","className":"fab fa-linkedin-in"}]}]}]}]]}]]}]}],["$","div","1",{"className":"team-item-wrapper post-2866 team type-team status-publish has-post-thumbnail hentry","children":["$","div",null,{"className":"team-item","children":[["$","div",null,{"className":"team-item-media","children":["$","div",null,{"className":"post-media","children":["$","a",null,{"href":"#","children":["$","$L18",null,{"src":"/images/Parthi.png","alt":"Parthiban","width":300,"height":360,"style":{"objectFit":"cover","width":"100%","height":"100%"}}]}]}]}],["$","div",null,{"className":"team-item-content","children":[["$","div",null,{"className":"post-title","children":["$","a",null,{"href":"#","children":"Parthiban"}]}],["$","div",null,{"className":"team-item-position","dangerouslySetInnerHTML":{"__html":"CGO & Growth Specialist"}}],["$","div",null,{"className":"team-item-socials","children":["$","ul",null,{"className":"team-socials wrapper-socials","children":["$","li",null,{"children":["$","a",null,{"href":"https://www.linkedin.com/","target":"_blank","rel":"noreferrer","className":"fab fa-linkedin-in"}]}]}]}]]}]]}]}],["$","div","2",{"className":"team-item-wrapper post-2866 team type-team status-publish has-post-thumbnail hentry","children":["$","div",null,{"className":"team-item","children":[["$","div",null,{"className":"team-item-media","children":["$","div",null,{"className":"post-media","children":"$L1f"}]}],"$L20"]}]}],"$L21","$L22"]}]}]}]}]}]]}]}]}] diff --git a/build/about-us/__next.about-us.txt b/build/about-us/__next.about-us.txt index 1334b06..19dcdca 100644 --- a/build/about-us/__next.about-us.txt +++ b/build/about-us/__next.about-us.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog.html b/build/blog.html index bf4a74e..60bca75 100644 --- a/build/blog.html +++ b/build/blog.html @@ -1,4 +1,4 @@ -Blog – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

\ No newline at end of file + \ No newline at end of file diff --git a/build/blog.txt b/build/blog.txt index 2a5f412..8b05264 100644 --- a/build/blog.txt +++ b/build/blog.txt @@ -1,16 +1,16 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -11:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +11:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -18,11 +18,11 @@ b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"104","className":"elementor elementor-104","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"\n .blogs-hero-title {\n color: #ffffff !important;\n font-family: var(--font-manrope), sans-serif !important;\n font-size: clamp(34px, 5.5vw, 68px) !important;\n font-weight: 850 !important;\n line-height: 1.08 !important;\n text-transform: uppercase !important;\n letter-spacing: -1.5px !important;\n margin: 0 !important;\n }\n "}}],"$Lc"],"$Ld"]}]}]}]}],null,"$Le"]}],{},null,false,null]},null,false,"$@f"]},null,false,null],"$L10",false]],"m":"$undefined","G":["$11",["$L12"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -15:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +0:{"P":null,"c":["","blog"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"104","className":"elementor elementor-104","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"\n .blogs-hero-title {\n color: #ffffff !important;\n font-family: var(--font-manrope), sans-serif !important;\n font-size: clamp(34px, 5.5vw, 68px) !important;\n font-weight: 850 !important;\n line-height: 1.08 !important;\n text-transform: uppercase !important;\n letter-spacing: -1.5px !important;\n margin: 0 !important;\n }\n "}}],"$Lc"],"$Ld"]}]}]}]}],null,"$Le"]}],{},null,false,null]},null,false,"$@f"]},null,false,null],"$L10",false]],"m":"$undefined","G":["$11",["$L12"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +15:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 16:"$Sreact.suspense" -19:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -1b:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +19:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +1b:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] c:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"style":{"backgroundImage":"url(/images/home2-banner-1.jpg)","backgroundPosition":"center center","backgroundRepeat":"no-repeat","backgroundSize":"cover"},"className":"custom-standard-hero-card","children":["$","div",null,{"className":"e-con-inner","style":{"position":"relative","width":"100%","height":"100%","display":"flex","alignItems":"center","justifyContent":"center","flexDirection":"column"},"children":["$","div",null,{"style":{"textAlign":"center","color":"#fff","zIndex":5},"children":["$","h1",null,{"className":"blogs-hero-title","children":["Delivering Trust.",["$","br",null,{}],["$","span",null,{"style":{"color":"#C01227"},"children":"Beyond Boundaries"}]]}]}]}]}]}] 13:T12af, .custom-blog-grid { @@ -157,10 +157,10 @@ e:["$","$L15",null,{"children":["$","$16",null,{"name":"Next.MetadataOutlet","ch 18:[] f:"$W18" 10:["$","$1","h",{"children":[null,["$","$L19",null,{"children":"$L1a"}],["$","div",null,{"hidden":true,"children":["$","$L1b",null,{"children":["$","$16",null,{"name":"Next.Metadata","children":"$L1c"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -12:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] -1d:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ScrollReveal"] -1e:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],""] -1f:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"Image"] +12:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +1d:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ScrollReveal"] +1e:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],""] +1f:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"Image"] 14:["$","div",null,{"className":"e-con-inner","children":["$","div",null,{"className":"elementor-element elementor-element-3dec5cf e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"3dec5cf","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-aa12479 elementor-widget elementor-widget-logico_blog_listing","data-id":"aa12479","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_blog_listing.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"archive-listing","children":["$","div",null,{"className":"custom-blog-grid","children":[["$","$L1d","how-ai-is-transforming-last-mile-ev-delivery",{"delay":0,"duration":0.8,"yOffset":35,"children":["$","$L1e",null,{"href":"/blog/how-ai-is-transforming-last-mile-ev-delivery","className":"custom-blog-card","style":{"textDecoration":"none"},"children":[["$","div",null,{"className":"flex flex-col","children":[["$","h3",null,{"className":"custom-blog-title","children":"How AI Is Transforming Last-Mile EV Delivery"}],["$","p",null,{"className":"custom-blog-excerpt","children":"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last."}]]}],["$","div",null,{"className":"custom-blog-bottom","children":[["$","span",null,{"className":"custom-blog-readmore","children":["Read More",["$","svg",null,{"className":"custom-blog-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}],["$","div",null,{"className":"custom-blog-img-container","children":[["$","$L1f",null,{"src":"/images/blog-post-pic-17.png","alt":"How AI Is Transforming Last-Mile EV Delivery","fill":true,"style":{"objectFit":"cover"},"sizes":"(max-width: 768px) 100vw, 33vw"}],["$","span",null,{"className":"custom-blog-badge","children":"Technology"}]]}]]}]]}]}],["$","$L1d","42-less-distance-insights-from-our-hyderabad-hub",{"delay":0.08,"duration":0.8,"yOffset":35,"children":["$","$L1e",null,{"href":"/blog/42-less-distance-insights-from-our-hyderabad-hub","className":"custom-blog-card","style":{"textDecoration":"none"},"children":[["$","div",null,{"className":"flex flex-col","children":[["$","h3",null,{"className":"custom-blog-title","children":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","p",null,{"className":"custom-blog-excerpt","children":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}]]}],["$","div",null,{"className":"custom-blog-bottom","children":[["$","span",null,{"className":"custom-blog-readmore","children":["Read More",["$","svg",null,{"className":"custom-blog-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}],["$","div",null,{"className":"custom-blog-img-container","children":[["$","$L1f",null,{"src":"/images/blog-post-pic-15.png","alt":"42% Less Distance: Insights from Our Hyderabad Hub","fill":true,"style":{"objectFit":"cover"},"sizes":"(max-width: 768px) 100vw, 33vw"}],["$","span",null,{"className":"custom-blog-badge","children":"Case Study"}]]}]]}]]}]}],["$","$L1d","miletruth-ai-10-stages-to-smarter-dispatch",{"delay":0.16,"duration":0.8,"yOffset":35,"children":["$","$L1e",null,{"href":"/blog/miletruth-ai-10-stages-to-smarter-dispatch","className":"custom-blog-card","style":{"textDecoration":"none"},"children":[["$","div",null,{"className":"flex flex-col","children":[["$","h3",null,{"className":"custom-blog-title","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","p",null,{"className":"custom-blog-excerpt","children":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}]]}],"$L20"]}]}],"$L21","$L22","$L23","$L24","$L25","$L26"]}]}]}]}]}]}] 20:["$","div",null,{"className":"custom-blog-bottom","children":[["$","span",null,{"className":"custom-blog-readmore","children":["Read More",["$","svg",null,{"className":"custom-blog-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}],["$","div",null,{"className":"custom-blog-img-container","children":[["$","$L1f",null,{"src":"/images/blog-post-pic-31.png","alt":"MileTruth™ AI — 10 Stages to Smarter Dispatch","fill":true,"style":{"objectFit":"cover"},"sizes":"(max-width: 768px) 100vw, 33vw"}],["$","span",null,{"className":"custom-blog-badge","children":"MileTruth"}]]}]]}] 21:["$","$L1d","the-ev-paradox-solving-range-anxiety-for-urban-fleets",{"delay":0,"duration":0.8,"yOffset":35,"children":["$","$L1e",null,{"href":"/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets","className":"custom-blog-card","style":{"textDecoration":"none"},"children":[["$","div",null,{"className":"flex flex-col","children":[["$","h3",null,{"className":"custom-blog-title","children":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","p",null,{"className":"custom-blog-excerpt","children":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}]]}],["$","div",null,{"className":"custom-blog-bottom","children":[["$","span",null,{"className":"custom-blog-readmore","children":["Read More",["$","svg",null,{"className":"custom-blog-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}],["$","div",null,{"className":"custom-blog-img-container","children":[["$","$L1f",null,{"src":"/images/ev-paradox.png","alt":"The EV Paradox: Solving Range Anxiety for Urban Fleets","fill":true,"style":{"objectFit":"cover"},"sizes":"(max-width: 768px) 100vw, 33vw"}],["$","span",null,{"className":"custom-blog-badge","children":"EV Fleet"}]]}]]}]]}]}] @@ -170,6 +170,6 @@ f:"$W18" 25:["$","$L1d","how-doormile-maintains-99-9-sla-compliance-at-scale",{"delay":0.08,"duration":0.8,"yOffset":35,"children":["$","$L1e",null,{"href":"/blog/how-doormile-maintains-99-9-sla-compliance-at-scale","className":"custom-blog-card","style":{"textDecoration":"none"},"children":[["$","div",null,{"className":"flex flex-col","children":[["$","h3",null,{"className":"custom-blog-title","children":"How Doormile Maintains 99.9% SLA Compliance at Scale"}],["$","p",null,{"className":"custom-blog-excerpt","children":"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint."}]]}],["$","div",null,{"className":"custom-blog-bottom","children":[["$","span",null,{"className":"custom-blog-readmore","children":["Read More",["$","svg",null,{"className":"custom-blog-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}],["$","div",null,{"className":"custom-blog-img-container","children":[["$","$L1f",null,{"src":"/images/last-mile-approach.jpg","alt":"How Doormile Maintains 99.9% SLA Compliance at Scale","fill":true,"style":{"objectFit":"cover"},"sizes":"(max-width: 768px) 100vw, 33vw"}],["$","span",null,{"className":"custom-blog-badge","children":"Operations"}]]}]]}]]}]}] 26:["$","$L1d","battery-simulation-the-secret-to-ev-route-pre-validation",{"delay":0.16,"duration":0.8,"yOffset":35,"children":["$","$L1e",null,{"href":"/blog/battery-simulation-the-secret-to-ev-route-pre-validation","className":"custom-blog-card","style":{"textDecoration":"none"},"children":[["$","div",null,{"className":"flex flex-col","children":[["$","h3",null,{"className":"custom-blog-title","children":"Battery Simulation: The Secret to EV Route Pre-Validation"}],["$","p",null,{"className":"custom-blog-excerpt","children":"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate."}]]}],["$","div",null,{"className":"custom-blog-bottom","children":[["$","span",null,{"className":"custom-blog-readmore","children":["Read More",["$","svg",null,{"className":"custom-blog-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}],["$","div",null,{"className":"custom-blog-img-container","children":[["$","$L1f",null,{"src":"/images/blog-post-pic-3.jpeg","alt":"Battery Simulation: The Secret to EV Route Pre-Validation","fill":true,"style":{"objectFit":"cover"},"sizes":"(max-width: 768px) 100vw, 33vw"}],["$","span",null,{"className":"custom-blog-badge","children":"EV Fleet"}]]}]]}]]}]}] 1a:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -27:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +27:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 17:null 1c:[["$","title","0",{"children":"Blog – Doormile"}],["$","meta","1",{"name":"description","content":"Insights and logistics intelligence from the team behind Doormile. Learn how AI is transforming EV planning and last-mile operations."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L27","7",{}]] diff --git a/build/blog/42-less-distance-insights-from-our-hyderabad-hub.html b/build/blog/42-less-distance-insights-from-our-hyderabad-hub.html index 7e92317..247975f 100644 --- a/build/blog/42-less-distance-insights-from-our-hyderabad-hub.html +++ b/build/blog/42-less-distance-insights-from-our-hyderabad-hub.html @@ -1,4 +1,4 @@ -42% Less Distance: Insights from Our Hyderabad Hub – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

\ No newline at end of file + \ No newline at end of file diff --git a/build/blog/42-less-distance-insights-from-our-hyderabad-hub.txt b/build/blog/42-less-distance-insights-from-our-hyderabad-hub.txt index 877cea9..69a7325 100644 --- a/build/blog/42-less-distance-insights-from-our-hyderabad-hub.txt +++ b/build/blog/42-less-distance-insights-from-our-hyderabad-hub.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","42-less-distance-insights-from-our-hyderabad-hub"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","42-less-distance-insights-from-our-hyderabad-hub","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","42-less-distance-insights-from-our-hyderabad-hub"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","42-less-distance-insights-from-our-hyderabad-hub","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"42% Less Distance: Insights from Our Hyderabad Hub\",\"description\":\"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-15.png\"],\"datePublished\":\"2025-09-18T00:00:00.000Z\",\"dateModified\":\"2025-09-18T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/42-less-distance-insights-from-our-hyderabad-hub\"},\"articleSection\":\"Case Study\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"42% Less Distance: Insights from Our Hyderabad Hub\",\"item\":\"https://www.doormile.com/blog/42-less-distance-insights-from-our-hyderabad-hub\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-15.png)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Case Study"}],["$","h1",null,{"className":"dm-banner-title","children":"42% Less Distance: Insights from Our Hyderabad Hub"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"42% Less Distance: Insights from Our Hyderabad Hub"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-09-18","children":"Sep 18, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Numbers settle arguments. When we deployed MileTruth™ at our Hyderabad hub, the goal was simple: prove that precision routing changes the economics of last-mile delivery. The result — a 42% reduction in total distance travelled — did exactly that."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Hyderabad is a demanding test bed: dense urban cores, sprawling new suburbs, unpredictable traffic and tight delivery windows. If a routing approach works here, it works almost anywhere. We ran it side by side against the hub's existing manual-plus-rules dispatch process over a sustained period, holding order volume constant."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"The baseline"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Before MileTruth, the hub planned routes the conventional way — zones drawn by experience, sequences set by dispatchers, adjustments made on the fly. It worked, but it left distance on the table every single day, and that distance translated directly into fuel, hours and vehicles."}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Zone-based allocation that ignored cross-zone efficiencies"}],["$","li","1",{"children":"Manual sequencing that couldn't evaluate every alternative"}],["$","li","2",{"children":"No pre-validation of ETAs against real travel times"}],["$","li","3",{"children":"Reactive rather than predictive handling of disruptions"}]]}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"What changed"}]}],["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"MileTruth treated the day's deliveries as one large optimisation problem rather than a set of independent zones. It evaluated routing strategies in parallel, selected the optimal plan against real constraints, and validated every ETA before dispatch. The same orders, the same city — a fundamentally tighter plan."}]}],"$L1d","$L1e","$L1f","$L20","$L21","$L22","$L23"]}]]}],"$L24"]}]]}] 25:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$25"}}],"$L26"]}] -27:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -28:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +27:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +28:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L27",null,{"src":"/images/last-mile-approach.jpg","alt":"Hyderabad delivery hub routing analysis","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"Consolidating the day's deliveries into a single optimisation removed redundant cross-town travel."}]]}]}] 1e:["$","$L1c","7",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"The results"}]}] 1f:["$","$L1c","8",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"42% reduction in total distance travelled across the hub"}],["$","li","1",{"children":"37% fewer vehicles required for the same delivery volume"}],["$","li","2",{"children":"Zero SLA misses across the measured deployment window"}],["$","li","3",{"children":"Proportional drop in fuel cost and per-parcel emissions"}]]}]}] @@ -527,6 +527,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 2f:["$","$L1c","the-ev-paradox-solving-range-anxiety-for-urban-fleets",{"delay":0.16,"duration":0.7,"yOffset":30,"children":["$","$L1b",null,{"href":"/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets","className":"dm-related-card","children":[["$","div",null,{"className":"dm-related-img","children":[["$","$L27",null,{"src":"/images/ev-paradox.png","alt":"The EV Paradox: Solving Range Anxiety for Urban Fleets","fill":true,"sizes":"(max-width: 700px) 100vw, (max-width: 1024px) 50vw, 33vw","style":{"objectFit":"cover"}}],["$","span",null,{"className":"dm-related-badge","children":"EV Fleet"}]]}],["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}]]}]}] 30:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -31:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +31:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"42% Less Distance: Insights from Our Hyderabad Hub – Doormile"}],["$","meta","1",{"name":"description","content":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Case Study,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/42-less-distance-insights-from-our-hyderabad-hub"}],["$","meta","6",{"property":"og:title","content":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","meta","7",{"property":"og:description","content":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/42-less-distance-insights-from-our-hyderabad-hub"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-15.png"}],["$","meta","11",{"property":"og:image:alt","content":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-09-18T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","meta","17",{"name":"twitter:description","content":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-15.png"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L31","23",{}]] diff --git a/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next._full.txt b/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next._full.txt index 877cea9..69a7325 100644 --- a/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next._full.txt +++ b/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next._full.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","42-less-distance-insights-from-our-hyderabad-hub"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","42-less-distance-insights-from-our-hyderabad-hub","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","42-less-distance-insights-from-our-hyderabad-hub"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","42-less-distance-insights-from-our-hyderabad-hub","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"42% Less Distance: Insights from Our Hyderabad Hub\",\"description\":\"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-15.png\"],\"datePublished\":\"2025-09-18T00:00:00.000Z\",\"dateModified\":\"2025-09-18T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/42-less-distance-insights-from-our-hyderabad-hub\"},\"articleSection\":\"Case Study\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"42% Less Distance: Insights from Our Hyderabad Hub\",\"item\":\"https://www.doormile.com/blog/42-less-distance-insights-from-our-hyderabad-hub\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-15.png)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Case Study"}],["$","h1",null,{"className":"dm-banner-title","children":"42% Less Distance: Insights from Our Hyderabad Hub"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"42% Less Distance: Insights from Our Hyderabad Hub"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-09-18","children":"Sep 18, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Numbers settle arguments. When we deployed MileTruth™ at our Hyderabad hub, the goal was simple: prove that precision routing changes the economics of last-mile delivery. The result — a 42% reduction in total distance travelled — did exactly that."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Hyderabad is a demanding test bed: dense urban cores, sprawling new suburbs, unpredictable traffic and tight delivery windows. If a routing approach works here, it works almost anywhere. We ran it side by side against the hub's existing manual-plus-rules dispatch process over a sustained period, holding order volume constant."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"The baseline"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Before MileTruth, the hub planned routes the conventional way — zones drawn by experience, sequences set by dispatchers, adjustments made on the fly. It worked, but it left distance on the table every single day, and that distance translated directly into fuel, hours and vehicles."}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Zone-based allocation that ignored cross-zone efficiencies"}],["$","li","1",{"children":"Manual sequencing that couldn't evaluate every alternative"}],["$","li","2",{"children":"No pre-validation of ETAs against real travel times"}],["$","li","3",{"children":"Reactive rather than predictive handling of disruptions"}]]}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"What changed"}]}],["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"MileTruth treated the day's deliveries as one large optimisation problem rather than a set of independent zones. It evaluated routing strategies in parallel, selected the optimal plan against real constraints, and validated every ETA before dispatch. The same orders, the same city — a fundamentally tighter plan."}]}],"$L1d","$L1e","$L1f","$L20","$L21","$L22","$L23"]}]]}],"$L24"]}]]}] 25:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$25"}}],"$L26"]}] -27:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -28:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +27:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +28:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L27",null,{"src":"/images/last-mile-approach.jpg","alt":"Hyderabad delivery hub routing analysis","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"Consolidating the day's deliveries into a single optimisation removed redundant cross-town travel."}]]}]}] 1e:["$","$L1c","7",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"The results"}]}] 1f:["$","$L1c","8",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"42% reduction in total distance travelled across the hub"}],["$","li","1",{"children":"37% fewer vehicles required for the same delivery volume"}],["$","li","2",{"children":"Zero SLA misses across the measured deployment window"}],["$","li","3",{"children":"Proportional drop in fuel cost and per-parcel emissions"}]]}]}] @@ -527,6 +527,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 2f:["$","$L1c","the-ev-paradox-solving-range-anxiety-for-urban-fleets",{"delay":0.16,"duration":0.7,"yOffset":30,"children":["$","$L1b",null,{"href":"/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets","className":"dm-related-card","children":[["$","div",null,{"className":"dm-related-img","children":[["$","$L27",null,{"src":"/images/ev-paradox.png","alt":"The EV Paradox: Solving Range Anxiety for Urban Fleets","fill":true,"sizes":"(max-width: 700px) 100vw, (max-width: 1024px) 50vw, 33vw","style":{"objectFit":"cover"}}],["$","span",null,{"className":"dm-related-badge","children":"EV Fleet"}]]}],["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}]]}]}] 30:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -31:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +31:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"42% Less Distance: Insights from Our Hyderabad Hub – Doormile"}],["$","meta","1",{"name":"description","content":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Case Study,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/42-less-distance-insights-from-our-hyderabad-hub"}],["$","meta","6",{"property":"og:title","content":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","meta","7",{"property":"og:description","content":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/42-less-distance-insights-from-our-hyderabad-hub"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-15.png"}],["$","meta","11",{"property":"og:image:alt","content":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-09-18T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","meta","17",{"name":"twitter:description","content":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-15.png"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L31","23",{}]] diff --git a/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next._head.txt b/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next._head.txt index fd512bc..7952101 100644 --- a/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next._head.txt +++ b/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"42% Less Distance: Insights from Our Hyderabad Hub – Doormile"}],["$","meta","1",{"name":"description","content":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Case Study,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/42-less-distance-insights-from-our-hyderabad-hub"}],["$","meta","6",{"property":"og:title","content":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","meta","7",{"property":"og:description","content":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/42-less-distance-insights-from-our-hyderabad-hub"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-15.png"}],["$","meta","11",{"property":"og:image:alt","content":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-09-18T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","meta","17",{"name":"twitter:description","content":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-15.png"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"42% Less Distance: Insights from Our Hyderabad Hub – Doormile"}],["$","meta","1",{"name":"description","content":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Case Study,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/42-less-distance-insights-from-our-hyderabad-hub"}],["$","meta","6",{"property":"og:title","content":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","meta","7",{"property":"og:description","content":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/42-less-distance-insights-from-our-hyderabad-hub"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-15.png"}],["$","meta","11",{"property":"og:image:alt","content":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-09-18T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","meta","17",{"name":"twitter:description","content":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-15.png"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next._index.txt b/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next._index.txt +++ b/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next._tree.txt b/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next._tree.txt index 2550b55..00c1b12 100644 --- a/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next._tree.txt +++ b/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"42-less-distance-insights-from-our-hyderabad-hub","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"42-less-distance-insights-from-our-hyderabad-hub","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next.blog.$d$slug.__PAGE__.txt b/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next.blog.$d$slug.__PAGE__.txt index e4e28d7..24de0f8 100644 --- a/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next.blog.$d$slug.__PAGE__.txt +++ b/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next.blog.$d$slug.__PAGE__.txt @@ -1,10 +1,10 @@ 1:"$Sreact.fragment" -8:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -9:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] -14:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +8:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +9:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +14:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 15:"$Sreact.suspense" -17:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -18:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +17:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +18:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 2:T3d21, .dm-single-blog { --dm-red: #c01227; @@ -324,7 +324,7 @@ transition: background .2s ease, transform .2s ease; } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } -0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"42% Less Distance: Insights from Our Hyderabad Hub\",\"description\":\"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-15.png\"],\"datePublished\":\"2025-09-18T00:00:00.000Z\",\"dateModified\":\"2025-09-18T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/42-less-distance-insights-from-our-hyderabad-hub\"},\"articleSection\":\"Case Study\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"42% Less Distance: Insights from Our Hyderabad Hub\",\"item\":\"https://www.doormile.com/blog/42-less-distance-insights-from-our-hyderabad-hub\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"42% Less Distance: Insights from Our Hyderabad Hub\",\"description\":\"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-15.png\"],\"datePublished\":\"2025-09-18T00:00:00.000Z\",\"dateModified\":\"2025-09-18T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/42-less-distance-insights-from-our-hyderabad-hub\"},\"articleSection\":\"Case Study\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"42% Less Distance: Insights from Our Hyderabad Hub\",\"item\":\"https://www.doormile.com/blog/42-less-distance-insights-from-our-hyderabad-hub\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 3:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-15.png)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Case Study"}],["$","h1",null,{"className":"dm-banner-title","children":"42% Less Distance: Insights from Our Hyderabad Hub"}]]}]}]}] 4:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L8",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L8",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"42% Less Distance: Insights from Our Hyderabad Hub"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-09-18","children":"Sep 18, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Numbers settle arguments. When we deployed MileTruth™ at our Hyderabad hub, the goal was simple: prove that precision routing changes the economics of last-mile delivery. The result — a 42% reduction in total distance travelled — did exactly that."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L9","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Hyderabad is a demanding test bed: dense urban cores, sprawling new suburbs, unpredictable traffic and tight delivery windows. If a routing approach works here, it works almost anywhere. We ran it side by side against the hub's existing manual-plus-rules dispatch process over a sustained period, holding order volume constant."}]}],["$","$L9","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"The baseline"}]}],["$","$L9","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Before MileTruth, the hub planned routes the conventional way — zones drawn by experience, sequences set by dispatchers, adjustments made on the fly. It worked, but it left distance on the table every single day, and that distance translated directly into fuel, hours and vehicles."}]}],["$","$L9","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Zone-based allocation that ignored cross-zone efficiencies"}],["$","li","1",{"children":"Manual sequencing that couldn't evaluate every alternative"}],["$","li","2",{"children":"No pre-validation of ETAs against real travel times"}],["$","li","3",{"children":"Reactive rather than predictive handling of disruptions"}]]}]}],["$","$L9","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"What changed"}]}],["$","$L9","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"MileTruth treated the day's deliveries as one large optimisation problem rather than a set of independent zones. It evaluated routing strategies in parallel, selected the optimal plan against real constraints, and validated every ETA before dispatch. The same orders, the same city — a fundamentally tighter plan."}]}],"$La","$Lb","$Lc","$Ld","$Le","$Lf","$L10"]}]]}],"$L11"]}]]}] 12:T1fa8, diff --git a/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next.blog.$d$slug.txt b/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next.blog.$d$slug.txt index 1334b06..19dcdca 100644 --- a/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next.blog.$d$slug.txt +++ b/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next.blog.$d$slug.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next.blog.txt b/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next.blog.txt index 1334b06..19dcdca 100644 --- a/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next.blog.txt +++ b/build/blog/42-less-distance-insights-from-our-hyderabad-hub/__next.blog.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/__next._full.txt b/build/blog/__next._full.txt index 2a5f412..8b05264 100644 --- a/build/blog/__next._full.txt +++ b/build/blog/__next._full.txt @@ -1,16 +1,16 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -11:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +11:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -18,11 +18,11 @@ b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"104","className":"elementor elementor-104","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"\n .blogs-hero-title {\n color: #ffffff !important;\n font-family: var(--font-manrope), sans-serif !important;\n font-size: clamp(34px, 5.5vw, 68px) !important;\n font-weight: 850 !important;\n line-height: 1.08 !important;\n text-transform: uppercase !important;\n letter-spacing: -1.5px !important;\n margin: 0 !important;\n }\n "}}],"$Lc"],"$Ld"]}]}]}]}],null,"$Le"]}],{},null,false,null]},null,false,"$@f"]},null,false,null],"$L10",false]],"m":"$undefined","G":["$11",["$L12"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -15:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +0:{"P":null,"c":["","blog"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"104","className":"elementor elementor-104","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"\n .blogs-hero-title {\n color: #ffffff !important;\n font-family: var(--font-manrope), sans-serif !important;\n font-size: clamp(34px, 5.5vw, 68px) !important;\n font-weight: 850 !important;\n line-height: 1.08 !important;\n text-transform: uppercase !important;\n letter-spacing: -1.5px !important;\n margin: 0 !important;\n }\n "}}],"$Lc"],"$Ld"]}]}]}]}],null,"$Le"]}],{},null,false,null]},null,false,"$@f"]},null,false,null],"$L10",false]],"m":"$undefined","G":["$11",["$L12"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +15:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 16:"$Sreact.suspense" -19:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -1b:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +19:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +1b:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] c:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"style":{"backgroundImage":"url(/images/home2-banner-1.jpg)","backgroundPosition":"center center","backgroundRepeat":"no-repeat","backgroundSize":"cover"},"className":"custom-standard-hero-card","children":["$","div",null,{"className":"e-con-inner","style":{"position":"relative","width":"100%","height":"100%","display":"flex","alignItems":"center","justifyContent":"center","flexDirection":"column"},"children":["$","div",null,{"style":{"textAlign":"center","color":"#fff","zIndex":5},"children":["$","h1",null,{"className":"blogs-hero-title","children":["Delivering Trust.",["$","br",null,{}],["$","span",null,{"style":{"color":"#C01227"},"children":"Beyond Boundaries"}]]}]}]}]}]}] 13:T12af, .custom-blog-grid { @@ -157,10 +157,10 @@ e:["$","$L15",null,{"children":["$","$16",null,{"name":"Next.MetadataOutlet","ch 18:[] f:"$W18" 10:["$","$1","h",{"children":[null,["$","$L19",null,{"children":"$L1a"}],["$","div",null,{"hidden":true,"children":["$","$L1b",null,{"children":["$","$16",null,{"name":"Next.Metadata","children":"$L1c"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -12:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] -1d:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ScrollReveal"] -1e:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],""] -1f:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"Image"] +12:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +1d:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ScrollReveal"] +1e:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],""] +1f:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"Image"] 14:["$","div",null,{"className":"e-con-inner","children":["$","div",null,{"className":"elementor-element elementor-element-3dec5cf e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"3dec5cf","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-aa12479 elementor-widget elementor-widget-logico_blog_listing","data-id":"aa12479","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_blog_listing.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"archive-listing","children":["$","div",null,{"className":"custom-blog-grid","children":[["$","$L1d","how-ai-is-transforming-last-mile-ev-delivery",{"delay":0,"duration":0.8,"yOffset":35,"children":["$","$L1e",null,{"href":"/blog/how-ai-is-transforming-last-mile-ev-delivery","className":"custom-blog-card","style":{"textDecoration":"none"},"children":[["$","div",null,{"className":"flex flex-col","children":[["$","h3",null,{"className":"custom-blog-title","children":"How AI Is Transforming Last-Mile EV Delivery"}],["$","p",null,{"className":"custom-blog-excerpt","children":"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last."}]]}],["$","div",null,{"className":"custom-blog-bottom","children":[["$","span",null,{"className":"custom-blog-readmore","children":["Read More",["$","svg",null,{"className":"custom-blog-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}],["$","div",null,{"className":"custom-blog-img-container","children":[["$","$L1f",null,{"src":"/images/blog-post-pic-17.png","alt":"How AI Is Transforming Last-Mile EV Delivery","fill":true,"style":{"objectFit":"cover"},"sizes":"(max-width: 768px) 100vw, 33vw"}],["$","span",null,{"className":"custom-blog-badge","children":"Technology"}]]}]]}]]}]}],["$","$L1d","42-less-distance-insights-from-our-hyderabad-hub",{"delay":0.08,"duration":0.8,"yOffset":35,"children":["$","$L1e",null,{"href":"/blog/42-less-distance-insights-from-our-hyderabad-hub","className":"custom-blog-card","style":{"textDecoration":"none"},"children":[["$","div",null,{"className":"flex flex-col","children":[["$","h3",null,{"className":"custom-blog-title","children":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","p",null,{"className":"custom-blog-excerpt","children":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}]]}],["$","div",null,{"className":"custom-blog-bottom","children":[["$","span",null,{"className":"custom-blog-readmore","children":["Read More",["$","svg",null,{"className":"custom-blog-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}],["$","div",null,{"className":"custom-blog-img-container","children":[["$","$L1f",null,{"src":"/images/blog-post-pic-15.png","alt":"42% Less Distance: Insights from Our Hyderabad Hub","fill":true,"style":{"objectFit":"cover"},"sizes":"(max-width: 768px) 100vw, 33vw"}],["$","span",null,{"className":"custom-blog-badge","children":"Case Study"}]]}]]}]]}]}],["$","$L1d","miletruth-ai-10-stages-to-smarter-dispatch",{"delay":0.16,"duration":0.8,"yOffset":35,"children":["$","$L1e",null,{"href":"/blog/miletruth-ai-10-stages-to-smarter-dispatch","className":"custom-blog-card","style":{"textDecoration":"none"},"children":[["$","div",null,{"className":"flex flex-col","children":[["$","h3",null,{"className":"custom-blog-title","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","p",null,{"className":"custom-blog-excerpt","children":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}]]}],"$L20"]}]}],"$L21","$L22","$L23","$L24","$L25","$L26"]}]}]}]}]}]}] 20:["$","div",null,{"className":"custom-blog-bottom","children":[["$","span",null,{"className":"custom-blog-readmore","children":["Read More",["$","svg",null,{"className":"custom-blog-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}],["$","div",null,{"className":"custom-blog-img-container","children":[["$","$L1f",null,{"src":"/images/blog-post-pic-31.png","alt":"MileTruth™ AI — 10 Stages to Smarter Dispatch","fill":true,"style":{"objectFit":"cover"},"sizes":"(max-width: 768px) 100vw, 33vw"}],["$","span",null,{"className":"custom-blog-badge","children":"MileTruth"}]]}]]}] 21:["$","$L1d","the-ev-paradox-solving-range-anxiety-for-urban-fleets",{"delay":0,"duration":0.8,"yOffset":35,"children":["$","$L1e",null,{"href":"/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets","className":"custom-blog-card","style":{"textDecoration":"none"},"children":[["$","div",null,{"className":"flex flex-col","children":[["$","h3",null,{"className":"custom-blog-title","children":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","p",null,{"className":"custom-blog-excerpt","children":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}]]}],["$","div",null,{"className":"custom-blog-bottom","children":[["$","span",null,{"className":"custom-blog-readmore","children":["Read More",["$","svg",null,{"className":"custom-blog-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}],["$","div",null,{"className":"custom-blog-img-container","children":[["$","$L1f",null,{"src":"/images/ev-paradox.png","alt":"The EV Paradox: Solving Range Anxiety for Urban Fleets","fill":true,"style":{"objectFit":"cover"},"sizes":"(max-width: 768px) 100vw, 33vw"}],["$","span",null,{"className":"custom-blog-badge","children":"EV Fleet"}]]}]]}]]}]}] @@ -170,6 +170,6 @@ f:"$W18" 25:["$","$L1d","how-doormile-maintains-99-9-sla-compliance-at-scale",{"delay":0.08,"duration":0.8,"yOffset":35,"children":["$","$L1e",null,{"href":"/blog/how-doormile-maintains-99-9-sla-compliance-at-scale","className":"custom-blog-card","style":{"textDecoration":"none"},"children":[["$","div",null,{"className":"flex flex-col","children":[["$","h3",null,{"className":"custom-blog-title","children":"How Doormile Maintains 99.9% SLA Compliance at Scale"}],["$","p",null,{"className":"custom-blog-excerpt","children":"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint."}]]}],["$","div",null,{"className":"custom-blog-bottom","children":[["$","span",null,{"className":"custom-blog-readmore","children":["Read More",["$","svg",null,{"className":"custom-blog-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}],["$","div",null,{"className":"custom-blog-img-container","children":[["$","$L1f",null,{"src":"/images/last-mile-approach.jpg","alt":"How Doormile Maintains 99.9% SLA Compliance at Scale","fill":true,"style":{"objectFit":"cover"},"sizes":"(max-width: 768px) 100vw, 33vw"}],["$","span",null,{"className":"custom-blog-badge","children":"Operations"}]]}]]}]]}]}] 26:["$","$L1d","battery-simulation-the-secret-to-ev-route-pre-validation",{"delay":0.16,"duration":0.8,"yOffset":35,"children":["$","$L1e",null,{"href":"/blog/battery-simulation-the-secret-to-ev-route-pre-validation","className":"custom-blog-card","style":{"textDecoration":"none"},"children":[["$","div",null,{"className":"flex flex-col","children":[["$","h3",null,{"className":"custom-blog-title","children":"Battery Simulation: The Secret to EV Route Pre-Validation"}],["$","p",null,{"className":"custom-blog-excerpt","children":"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate."}]]}],["$","div",null,{"className":"custom-blog-bottom","children":[["$","span",null,{"className":"custom-blog-readmore","children":["Read More",["$","svg",null,{"className":"custom-blog-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}],["$","div",null,{"className":"custom-blog-img-container","children":[["$","$L1f",null,{"src":"/images/blog-post-pic-3.jpeg","alt":"Battery Simulation: The Secret to EV Route Pre-Validation","fill":true,"style":{"objectFit":"cover"},"sizes":"(max-width: 768px) 100vw, 33vw"}],["$","span",null,{"className":"custom-blog-badge","children":"EV Fleet"}]]}]]}]]}]}] 1a:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -27:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +27:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 17:null 1c:[["$","title","0",{"children":"Blog – Doormile"}],["$","meta","1",{"name":"description","content":"Insights and logistics intelligence from the team behind Doormile. Learn how AI is transforming EV planning and last-mile operations."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L27","7",{}]] diff --git a/build/blog/__next._head.txt b/build/blog/__next._head.txt index f61b8f0..7d706b4 100644 --- a/build/blog/__next._head.txt +++ b/build/blog/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Blog – Doormile"}],["$","meta","1",{"name":"description","content":"Insights and logistics intelligence from the team behind Doormile. Learn how AI is transforming EV planning and last-mile operations."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Blog – Doormile"}],["$","meta","1",{"name":"description","content":"Insights and logistics intelligence from the team behind Doormile. Learn how AI is transforming EV planning and last-mile operations."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/__next._index.txt b/build/blog/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/blog/__next._index.txt +++ b/build/blog/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/__next._tree.txt b/build/blog/__next._tree.txt index 0eb16f8..60a0ced 100644 --- a/build/blog/__next._tree.txt +++ b/build/blog/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/__next.blog.__PAGE__.txt b/build/blog/__next.blog.__PAGE__.txt index 8ad29d6..20480e5 100644 --- a/build/blog/__next.blog.__PAGE__.txt +++ b/build/blog/__next.blog.__PAGE__.txt @@ -1,8 +1,8 @@ 1:"$Sreact.fragment" -5:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ScrollReveal"] -6:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],""] -7:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"Image"] -f:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +5:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ScrollReveal"] +6:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],""] +7:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"Image"] +f:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 10:"$Sreact.suspense" 2:T12af, .custom-blog-grid { @@ -132,7 +132,7 @@ f:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp box-shadow: 0 4px 10px rgba(192, 18, 39, 0.2) !important; font-family: var(--font-manrope), sans-serif !important; } - 0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"104","className":"elementor elementor-104","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"\n .blogs-hero-title {\n color: #ffffff !important;\n font-family: var(--font-manrope), sans-serif !important;\n font-size: clamp(34px, 5.5vw, 68px) !important;\n font-weight: 850 !important;\n line-height: 1.08 !important;\n text-transform: uppercase !important;\n letter-spacing: -1.5px !important;\n margin: 0 !important;\n }\n "}}],["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"style":{"backgroundImage":"url(/images/home2-banner-1.jpg)","backgroundPosition":"center center","backgroundRepeat":"no-repeat","backgroundSize":"cover"},"className":"custom-standard-hero-card","children":["$","div",null,{"className":"e-con-inner","style":{"position":"relative","width":"100%","height":"100%","display":"flex","alignItems":"center","justifyContent":"center","flexDirection":"column"},"children":["$","div",null,{"style":{"textAlign":"center","color":"#fff","zIndex":5},"children":["$","h1",null,{"className":"blogs-hero-title","children":["Delivering Trust.",["$","br",null,{}],["$","span",null,{"style":{"color":"#C01227"},"children":"Beyond Boundaries"}]]}]}]}]}]}]],["$","div",null,{"className":"elementor-element elementor-element-c70681e e-flex e-con-boxed cut-corner-no sticky-container-off e-con e-parent","data-id":"c70681e","data-element_type":"container","data-e-type":"container","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3"]}]]}]}]}]}],null,"$L4"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} + 0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"104","className":"elementor elementor-104","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"\n .blogs-hero-title {\n color: #ffffff !important;\n font-family: var(--font-manrope), sans-serif !important;\n font-size: clamp(34px, 5.5vw, 68px) !important;\n font-weight: 850 !important;\n line-height: 1.08 !important;\n text-transform: uppercase !important;\n letter-spacing: -1.5px !important;\n margin: 0 !important;\n }\n "}}],["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"style":{"backgroundImage":"url(/images/home2-banner-1.jpg)","backgroundPosition":"center center","backgroundRepeat":"no-repeat","backgroundSize":"cover"},"className":"custom-standard-hero-card","children":["$","div",null,{"className":"e-con-inner","style":{"position":"relative","width":"100%","height":"100%","display":"flex","alignItems":"center","justifyContent":"center","flexDirection":"column"},"children":["$","div",null,{"style":{"textAlign":"center","color":"#fff","zIndex":5},"children":["$","h1",null,{"className":"blogs-hero-title","children":["Delivering Trust.",["$","br",null,{}],["$","span",null,{"style":{"color":"#C01227"},"children":"Beyond Boundaries"}]]}]}]}]}]}]],["$","div",null,{"className":"elementor-element elementor-element-c70681e e-flex e-con-boxed cut-corner-no sticky-container-off e-con e-parent","data-id":"c70681e","data-element_type":"container","data-e-type":"container","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3"]}]]}]}]}]}],null,"$L4"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 3:["$","div",null,{"className":"e-con-inner","children":["$","div",null,{"className":"elementor-element elementor-element-3dec5cf e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"3dec5cf","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-aa12479 elementor-widget elementor-widget-logico_blog_listing","data-id":"aa12479","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_blog_listing.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"archive-listing","children":["$","div",null,{"className":"custom-blog-grid","children":[["$","$L5","how-ai-is-transforming-last-mile-ev-delivery",{"delay":0,"duration":0.8,"yOffset":35,"children":["$","$L6",null,{"href":"/blog/how-ai-is-transforming-last-mile-ev-delivery","className":"custom-blog-card","style":{"textDecoration":"none"},"children":[["$","div",null,{"className":"flex flex-col","children":[["$","h3",null,{"className":"custom-blog-title","children":"How AI Is Transforming Last-Mile EV Delivery"}],["$","p",null,{"className":"custom-blog-excerpt","children":"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last."}]]}],["$","div",null,{"className":"custom-blog-bottom","children":[["$","span",null,{"className":"custom-blog-readmore","children":["Read More",["$","svg",null,{"className":"custom-blog-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}],["$","div",null,{"className":"custom-blog-img-container","children":[["$","$L7",null,{"src":"/images/blog-post-pic-17.png","alt":"How AI Is Transforming Last-Mile EV Delivery","fill":true,"style":{"objectFit":"cover"},"sizes":"(max-width: 768px) 100vw, 33vw"}],["$","span",null,{"className":"custom-blog-badge","children":"Technology"}]]}]]}]]}]}],["$","$L5","42-less-distance-insights-from-our-hyderabad-hub",{"delay":0.08,"duration":0.8,"yOffset":35,"children":["$","$L6",null,{"href":"/blog/42-less-distance-insights-from-our-hyderabad-hub","className":"custom-blog-card","style":{"textDecoration":"none"},"children":[["$","div",null,{"className":"flex flex-col","children":[["$","h3",null,{"className":"custom-blog-title","children":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","p",null,{"className":"custom-blog-excerpt","children":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}]]}],["$","div",null,{"className":"custom-blog-bottom","children":[["$","span",null,{"className":"custom-blog-readmore","children":["Read More",["$","svg",null,{"className":"custom-blog-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}],["$","div",null,{"className":"custom-blog-img-container","children":[["$","$L7",null,{"src":"/images/blog-post-pic-15.png","alt":"42% Less Distance: Insights from Our Hyderabad Hub","fill":true,"style":{"objectFit":"cover"},"sizes":"(max-width: 768px) 100vw, 33vw"}],["$","span",null,{"className":"custom-blog-badge","children":"Case Study"}]]}]]}]]}]}],["$","$L5","miletruth-ai-10-stages-to-smarter-dispatch",{"delay":0.16,"duration":0.8,"yOffset":35,"children":["$","$L6",null,{"href":"/blog/miletruth-ai-10-stages-to-smarter-dispatch","className":"custom-blog-card","style":{"textDecoration":"none"},"children":[["$","div",null,{"className":"flex flex-col","children":[["$","h3",null,{"className":"custom-blog-title","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","p",null,{"className":"custom-blog-excerpt","children":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}]]}],"$L8"]}]}],"$L9","$La","$Lb","$Lc","$Ld","$Le"]}]}]}]}]}]}] 4:["$","$Lf",null,{"children":["$","$10",null,{"name":"Next.MetadataOutlet","children":"$@11"}]}] 8:["$","div",null,{"className":"custom-blog-bottom","children":[["$","span",null,{"className":"custom-blog-readmore","children":["Read More",["$","svg",null,{"className":"custom-blog-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}],["$","div",null,{"className":"custom-blog-img-container","children":[["$","$L7",null,{"src":"/images/blog-post-pic-31.png","alt":"MileTruth™ AI — 10 Stages to Smarter Dispatch","fill":true,"style":{"objectFit":"cover"},"sizes":"(max-width: 768px) 100vw, 33vw"}],["$","span",null,{"className":"custom-blog-badge","children":"MileTruth"}]]}]]}] diff --git a/build/blog/__next.blog.txt b/build/blog/__next.blog.txt index 1334b06..19dcdca 100644 --- a/build/blog/__next.blog.txt +++ b/build/blog/__next.blog.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation.html b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation.html index 9c4826d..6cfc029 100644 --- a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation.html +++ b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation.html @@ -1,4 +1,4 @@ -Battery Simulation: The Secret to EV Route Pre-Validation – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

\ No newline at end of file + \ No newline at end of file diff --git a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation.txt b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation.txt index 5945cc8..e124d39 100644 --- a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation.txt +++ b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","battery-simulation-the-secret-to-ev-route-pre-validation"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","battery-simulation-the-secret-to-ev-route-pre-validation","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","battery-simulation-the-secret-to-ev-route-pre-validation"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","battery-simulation-the-secret-to-ev-route-pre-validation","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"Battery Simulation: The Secret to EV Route Pre-Validation\",\"description\":\"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-3.jpeg\"],\"datePublished\":\"2025-06-12T00:00:00.000Z\",\"dateModified\":\"2025-06-12T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/battery-simulation-the-secret-to-ev-route-pre-validation\"},\"articleSection\":\"EV Fleet\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Battery Simulation: The Secret to EV Route Pre-Validation\",\"item\":\"https://www.doormile.com/blog/battery-simulation-the-secret-to-ev-route-pre-validation\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-3.jpeg)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"EV Fleet"}],["$","h1",null,{"className":"dm-banner-title","children":"Battery Simulation: The Secret to EV Route Pre-Validation"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"Battery Simulation: The Secret to EV Route Pre-Validation"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-06-12","children":"Jun 12, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"A stranded EV is not just a late delivery — it is a vehicle out of service, a customer let down, and a recovery cost. Simulating the route against real charge capacity before dispatch is how you make sure it never happens."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. Battery Simulation: The Secret to EV Route Pre-Validation looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$L1d","$L1e","$L1f","$L20","$L21","$L22"]}]]}],"$L23"]}]]}] 24:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$24"}}],"$L25"]}] -26:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -27:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +26:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +27:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L26",null,{"src":"/images/blog-post-pic-3.jpeg","alt":"Battery Simulation: The Secret to EV Route Pre-Validation","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"EV Fleet — operational intelligence applied at the point of dispatch."}]]}]}] 1e:["$","$L1c","7",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","blockquote",null,{"className":"dm-article-quote","children":[["$","p",null,{"children":"We don't guess the route. We calculate it — and we prove it works before the wheels start turning."}],["$","cite",null,{"children":["— ","Doormile Operations"]}]]}]}] 1f:["$","$L1c","8",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Putting it into practice"}]}] @@ -525,6 +525,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 2d:["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 2e:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -2f:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +2f:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"Battery Simulation: The Secret to EV Route Pre-Validation – Doormile"}],["$","meta","1",{"name":"description","content":"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"EV Fleet,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/battery-simulation-the-secret-to-ev-route-pre-validation"}],["$","meta","6",{"property":"og:title","content":"Battery Simulation: The Secret to EV Route Pre-Validation"}],["$","meta","7",{"property":"og:description","content":"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/battery-simulation-the-secret-to-ev-route-pre-validation"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-3.jpeg"}],["$","meta","11",{"property":"og:image:alt","content":"Battery Simulation: The Secret to EV Route Pre-Validation"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-06-12T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"Battery Simulation: The Secret to EV Route Pre-Validation"}],["$","meta","17",{"name":"twitter:description","content":"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-3.jpeg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L2f","23",{}]] diff --git a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next._full.txt b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next._full.txt index 5945cc8..e124d39 100644 --- a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next._full.txt +++ b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next._full.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","battery-simulation-the-secret-to-ev-route-pre-validation"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","battery-simulation-the-secret-to-ev-route-pre-validation","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","battery-simulation-the-secret-to-ev-route-pre-validation"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","battery-simulation-the-secret-to-ev-route-pre-validation","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"Battery Simulation: The Secret to EV Route Pre-Validation\",\"description\":\"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-3.jpeg\"],\"datePublished\":\"2025-06-12T00:00:00.000Z\",\"dateModified\":\"2025-06-12T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/battery-simulation-the-secret-to-ev-route-pre-validation\"},\"articleSection\":\"EV Fleet\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Battery Simulation: The Secret to EV Route Pre-Validation\",\"item\":\"https://www.doormile.com/blog/battery-simulation-the-secret-to-ev-route-pre-validation\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-3.jpeg)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"EV Fleet"}],["$","h1",null,{"className":"dm-banner-title","children":"Battery Simulation: The Secret to EV Route Pre-Validation"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"Battery Simulation: The Secret to EV Route Pre-Validation"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-06-12","children":"Jun 12, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"A stranded EV is not just a late delivery — it is a vehicle out of service, a customer let down, and a recovery cost. Simulating the route against real charge capacity before dispatch is how you make sure it never happens."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. Battery Simulation: The Secret to EV Route Pre-Validation looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$L1d","$L1e","$L1f","$L20","$L21","$L22"]}]]}],"$L23"]}]]}] 24:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$24"}}],"$L25"]}] -26:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -27:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +26:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +27:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L26",null,{"src":"/images/blog-post-pic-3.jpeg","alt":"Battery Simulation: The Secret to EV Route Pre-Validation","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"EV Fleet — operational intelligence applied at the point of dispatch."}]]}]}] 1e:["$","$L1c","7",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","blockquote",null,{"className":"dm-article-quote","children":[["$","p",null,{"children":"We don't guess the route. We calculate it — and we prove it works before the wheels start turning."}],["$","cite",null,{"children":["— ","Doormile Operations"]}]]}]}] 1f:["$","$L1c","8",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Putting it into practice"}]}] @@ -525,6 +525,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 2d:["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 2e:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -2f:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +2f:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"Battery Simulation: The Secret to EV Route Pre-Validation – Doormile"}],["$","meta","1",{"name":"description","content":"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"EV Fleet,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/battery-simulation-the-secret-to-ev-route-pre-validation"}],["$","meta","6",{"property":"og:title","content":"Battery Simulation: The Secret to EV Route Pre-Validation"}],["$","meta","7",{"property":"og:description","content":"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/battery-simulation-the-secret-to-ev-route-pre-validation"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-3.jpeg"}],["$","meta","11",{"property":"og:image:alt","content":"Battery Simulation: The Secret to EV Route Pre-Validation"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-06-12T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"Battery Simulation: The Secret to EV Route Pre-Validation"}],["$","meta","17",{"name":"twitter:description","content":"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-3.jpeg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L2f","23",{}]] diff --git a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next._head.txt b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next._head.txt index b7a3c48..884526b 100644 --- a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next._head.txt +++ b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Battery Simulation: The Secret to EV Route Pre-Validation – Doormile"}],["$","meta","1",{"name":"description","content":"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"EV Fleet,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/battery-simulation-the-secret-to-ev-route-pre-validation"}],["$","meta","6",{"property":"og:title","content":"Battery Simulation: The Secret to EV Route Pre-Validation"}],["$","meta","7",{"property":"og:description","content":"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/battery-simulation-the-secret-to-ev-route-pre-validation"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-3.jpeg"}],["$","meta","11",{"property":"og:image:alt","content":"Battery Simulation: The Secret to EV Route Pre-Validation"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-06-12T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"Battery Simulation: The Secret to EV Route Pre-Validation"}],["$","meta","17",{"name":"twitter:description","content":"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-3.jpeg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Battery Simulation: The Secret to EV Route Pre-Validation – Doormile"}],["$","meta","1",{"name":"description","content":"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"EV Fleet,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/battery-simulation-the-secret-to-ev-route-pre-validation"}],["$","meta","6",{"property":"og:title","content":"Battery Simulation: The Secret to EV Route Pre-Validation"}],["$","meta","7",{"property":"og:description","content":"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/battery-simulation-the-secret-to-ev-route-pre-validation"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-3.jpeg"}],["$","meta","11",{"property":"og:image:alt","content":"Battery Simulation: The Secret to EV Route Pre-Validation"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-06-12T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"Battery Simulation: The Secret to EV Route Pre-Validation"}],["$","meta","17",{"name":"twitter:description","content":"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-3.jpeg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next._index.txt b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next._index.txt +++ b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next._tree.txt b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next._tree.txt index ce24970..53b3208 100644 --- a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next._tree.txt +++ b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"battery-simulation-the-secret-to-ev-route-pre-validation","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"battery-simulation-the-secret-to-ev-route-pre-validation","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next.blog.$d$slug.__PAGE__.txt b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next.blog.$d$slug.__PAGE__.txt index 89f8134..ae22d83 100644 --- a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next.blog.$d$slug.__PAGE__.txt +++ b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next.blog.$d$slug.__PAGE__.txt @@ -1,10 +1,10 @@ 1:"$Sreact.fragment" -8:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -9:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +8:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +9:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 14:"$Sreact.suspense" -16:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -17:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +16:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +17:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 2:T3d21, .dm-single-blog { --dm-red: #c01227; @@ -324,7 +324,7 @@ transition: background .2s ease, transform .2s ease; } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } -0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"Battery Simulation: The Secret to EV Route Pre-Validation\",\"description\":\"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-3.jpeg\"],\"datePublished\":\"2025-06-12T00:00:00.000Z\",\"dateModified\":\"2025-06-12T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/battery-simulation-the-secret-to-ev-route-pre-validation\"},\"articleSection\":\"EV Fleet\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Battery Simulation: The Secret to EV Route Pre-Validation\",\"item\":\"https://www.doormile.com/blog/battery-simulation-the-secret-to-ev-route-pre-validation\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"Battery Simulation: The Secret to EV Route Pre-Validation\",\"description\":\"Before a single rider leaves the hub, MileTruth™ simulates every route against real charge capacity — eliminating mid-route failures and protecting your fulfillment rate.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-3.jpeg\"],\"datePublished\":\"2025-06-12T00:00:00.000Z\",\"dateModified\":\"2025-06-12T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/battery-simulation-the-secret-to-ev-route-pre-validation\"},\"articleSection\":\"EV Fleet\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Battery Simulation: The Secret to EV Route Pre-Validation\",\"item\":\"https://www.doormile.com/blog/battery-simulation-the-secret-to-ev-route-pre-validation\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 3:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-3.jpeg)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"EV Fleet"}],["$","h1",null,{"className":"dm-banner-title","children":"Battery Simulation: The Secret to EV Route Pre-Validation"}]]}]}]}] 4:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L8",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L8",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"Battery Simulation: The Secret to EV Route Pre-Validation"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-06-12","children":"Jun 12, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"A stranded EV is not just a late delivery — it is a vehicle out of service, a customer let down, and a recovery cost. Simulating the route against real charge capacity before dispatch is how you make sure it never happens."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L9","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. Battery Simulation: The Secret to EV Route Pre-Validation looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L9","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L9","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L9","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L9","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L9","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$La","$Lb","$Lc","$Ld","$Le","$Lf"]}]]}],"$L10"]}]]}] 11:T1fa8, diff --git a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next.blog.$d$slug.txt b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next.blog.$d$slug.txt index 1334b06..19dcdca 100644 --- a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next.blog.$d$slug.txt +++ b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next.blog.$d$slug.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next.blog.txt b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next.blog.txt index 1334b06..19dcdca 100644 --- a/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next.blog.txt +++ b/build/blog/battery-simulation-the-secret-to-ev-route-pre-validation/__next.blog.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/building-a-greener-city-the-future-of-urban-logistics.html b/build/blog/building-a-greener-city-the-future-of-urban-logistics.html index d866f83..e7cf8df 100644 --- a/build/blog/building-a-greener-city-the-future-of-urban-logistics.html +++ b/build/blog/building-a-greener-city-the-future-of-urban-logistics.html @@ -1,4 +1,4 @@ -Building a Greener City: The Future of Urban Logistics – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

\ No newline at end of file + \ No newline at end of file diff --git a/build/blog/building-a-greener-city-the-future-of-urban-logistics.txt b/build/blog/building-a-greener-city-the-future-of-urban-logistics.txt index 8469087..09928ac 100644 --- a/build/blog/building-a-greener-city-the-future-of-urban-logistics.txt +++ b/build/blog/building-a-greener-city-the-future-of-urban-logistics.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","building-a-greener-city-the-future-of-urban-logistics"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","building-a-greener-city-the-future-of-urban-logistics","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","building-a-greener-city-the-future-of-urban-logistics"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","building-a-greener-city-the-future-of-urban-logistics","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"Building a Greener City: The Future of Urban Logistics\",\"description\":\"Cities are demanding cleaner delivery. We explore how AI-powered EV fleets and optimised routing create a path to zero-emission last-mile logistics at city scale.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-6.jpeg\"],\"datePublished\":\"2025-07-10T00:00:00.000Z\",\"dateModified\":\"2025-07-10T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/building-a-greener-city-the-future-of-urban-logistics\"},\"articleSection\":\"Sustainability\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Building a Greener City: The Future of Urban Logistics\",\"item\":\"https://www.doormile.com/blog/building-a-greener-city-the-future-of-urban-logistics\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-6.jpeg)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Sustainability"}],["$","h1",null,{"className":"dm-banner-title","children":"Building a Greener City: The Future of Urban Logistics"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"Building a Greener City: The Future of Urban Logistics"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-07-10","children":"Jul 10, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Zero-emission delivery is no longer a marketing line — it is becoming a regulatory expectation. The path there runs through two changes at once: electrifying the fleet, and routing it intelligently enough to make electrification viable."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. Building a Greener City: The Future of Urban Logistics looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$L1d","$L1e","$L1f","$L20","$L21","$L22"]}]]}],"$L23"]}]]}] 24:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$24"}}],"$L25"]}] -26:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -27:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +26:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +27:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L26",null,{"src":"/images/blog-post-pic-6.jpeg","alt":"Building a Greener City: The Future of Urban Logistics","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"Sustainability — operational intelligence applied at the point of dispatch."}]]}]}] 1e:["$","$L1c","7",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","blockquote",null,{"className":"dm-article-quote","children":[["$","p",null,{"children":"We don't guess the route. We calculate it — and we prove it works before the wheels start turning."}],["$","cite",null,{"children":["— ","Doormile Operations"]}]]}]}] 1f:["$","$L1c","8",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Putting it into practice"}]}] @@ -526,6 +526,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 2e:["$","$L1c","miletruth-ai-10-stages-to-smarter-dispatch",{"delay":0.16,"duration":0.7,"yOffset":30,"children":["$","$L1b",null,{"href":"/blog/miletruth-ai-10-stages-to-smarter-dispatch","className":"dm-related-card","children":[["$","div",null,{"className":"dm-related-img","children":[["$","$L26",null,{"src":"/images/blog-post-pic-31.png","alt":"MileTruth™ AI — 10 Stages to Smarter Dispatch","fill":true,"sizes":"(max-width: 700px) 100vw, (max-width: 1024px) 50vw, 33vw","style":{"objectFit":"cover"}}],["$","span",null,{"className":"dm-related-badge","children":"MileTruth"}]]}],["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}]]}]}] 2f:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -30:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +30:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"Building a Greener City: The Future of Urban Logistics – Doormile"}],["$","meta","1",{"name":"description","content":"Cities are demanding cleaner delivery. We explore how AI-powered EV fleets and optimised routing create a path to zero-emission last-mile logistics at city scale."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Sustainability,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/building-a-greener-city-the-future-of-urban-logistics"}],["$","meta","6",{"property":"og:title","content":"Building a Greener City: The Future of Urban Logistics"}],["$","meta","7",{"property":"og:description","content":"Cities are demanding cleaner delivery. We explore how AI-powered EV fleets and optimised routing create a path to zero-emission last-mile logistics at city scale."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/building-a-greener-city-the-future-of-urban-logistics"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-6.jpeg"}],["$","meta","11",{"property":"og:image:alt","content":"Building a Greener City: The Future of Urban Logistics"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-07-10T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"Building a Greener City: The Future of Urban Logistics"}],["$","meta","17",{"name":"twitter:description","content":"Cities are demanding cleaner delivery. We explore how AI-powered EV fleets and optimised routing create a path to zero-emission last-mile logistics at city scale."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-6.jpeg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L30","23",{}]] diff --git a/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next._full.txt b/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next._full.txt index 8469087..09928ac 100644 --- a/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next._full.txt +++ b/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next._full.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","building-a-greener-city-the-future-of-urban-logistics"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","building-a-greener-city-the-future-of-urban-logistics","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","building-a-greener-city-the-future-of-urban-logistics"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","building-a-greener-city-the-future-of-urban-logistics","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"Building a Greener City: The Future of Urban Logistics\",\"description\":\"Cities are demanding cleaner delivery. We explore how AI-powered EV fleets and optimised routing create a path to zero-emission last-mile logistics at city scale.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-6.jpeg\"],\"datePublished\":\"2025-07-10T00:00:00.000Z\",\"dateModified\":\"2025-07-10T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/building-a-greener-city-the-future-of-urban-logistics\"},\"articleSection\":\"Sustainability\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Building a Greener City: The Future of Urban Logistics\",\"item\":\"https://www.doormile.com/blog/building-a-greener-city-the-future-of-urban-logistics\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-6.jpeg)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Sustainability"}],["$","h1",null,{"className":"dm-banner-title","children":"Building a Greener City: The Future of Urban Logistics"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"Building a Greener City: The Future of Urban Logistics"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-07-10","children":"Jul 10, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Zero-emission delivery is no longer a marketing line — it is becoming a regulatory expectation. The path there runs through two changes at once: electrifying the fleet, and routing it intelligently enough to make electrification viable."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. Building a Greener City: The Future of Urban Logistics looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$L1d","$L1e","$L1f","$L20","$L21","$L22"]}]]}],"$L23"]}]]}] 24:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$24"}}],"$L25"]}] -26:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -27:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +26:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +27:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L26",null,{"src":"/images/blog-post-pic-6.jpeg","alt":"Building a Greener City: The Future of Urban Logistics","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"Sustainability — operational intelligence applied at the point of dispatch."}]]}]}] 1e:["$","$L1c","7",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","blockquote",null,{"className":"dm-article-quote","children":[["$","p",null,{"children":"We don't guess the route. We calculate it — and we prove it works before the wheels start turning."}],["$","cite",null,{"children":["— ","Doormile Operations"]}]]}]}] 1f:["$","$L1c","8",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Putting it into practice"}]}] @@ -526,6 +526,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 2e:["$","$L1c","miletruth-ai-10-stages-to-smarter-dispatch",{"delay":0.16,"duration":0.7,"yOffset":30,"children":["$","$L1b",null,{"href":"/blog/miletruth-ai-10-stages-to-smarter-dispatch","className":"dm-related-card","children":[["$","div",null,{"className":"dm-related-img","children":[["$","$L26",null,{"src":"/images/blog-post-pic-31.png","alt":"MileTruth™ AI — 10 Stages to Smarter Dispatch","fill":true,"sizes":"(max-width: 700px) 100vw, (max-width: 1024px) 50vw, 33vw","style":{"objectFit":"cover"}}],["$","span",null,{"className":"dm-related-badge","children":"MileTruth"}]]}],["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}]]}]}] 2f:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -30:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +30:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"Building a Greener City: The Future of Urban Logistics – Doormile"}],["$","meta","1",{"name":"description","content":"Cities are demanding cleaner delivery. We explore how AI-powered EV fleets and optimised routing create a path to zero-emission last-mile logistics at city scale."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Sustainability,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/building-a-greener-city-the-future-of-urban-logistics"}],["$","meta","6",{"property":"og:title","content":"Building a Greener City: The Future of Urban Logistics"}],["$","meta","7",{"property":"og:description","content":"Cities are demanding cleaner delivery. We explore how AI-powered EV fleets and optimised routing create a path to zero-emission last-mile logistics at city scale."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/building-a-greener-city-the-future-of-urban-logistics"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-6.jpeg"}],["$","meta","11",{"property":"og:image:alt","content":"Building a Greener City: The Future of Urban Logistics"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-07-10T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"Building a Greener City: The Future of Urban Logistics"}],["$","meta","17",{"name":"twitter:description","content":"Cities are demanding cleaner delivery. We explore how AI-powered EV fleets and optimised routing create a path to zero-emission last-mile logistics at city scale."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-6.jpeg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L30","23",{}]] diff --git a/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next._head.txt b/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next._head.txt index 2cb180a..30329f7 100644 --- a/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next._head.txt +++ b/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Building a Greener City: The Future of Urban Logistics – Doormile"}],["$","meta","1",{"name":"description","content":"Cities are demanding cleaner delivery. We explore how AI-powered EV fleets and optimised routing create a path to zero-emission last-mile logistics at city scale."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Sustainability,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/building-a-greener-city-the-future-of-urban-logistics"}],["$","meta","6",{"property":"og:title","content":"Building a Greener City: The Future of Urban Logistics"}],["$","meta","7",{"property":"og:description","content":"Cities are demanding cleaner delivery. We explore how AI-powered EV fleets and optimised routing create a path to zero-emission last-mile logistics at city scale."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/building-a-greener-city-the-future-of-urban-logistics"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-6.jpeg"}],["$","meta","11",{"property":"og:image:alt","content":"Building a Greener City: The Future of Urban Logistics"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-07-10T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"Building a Greener City: The Future of Urban Logistics"}],["$","meta","17",{"name":"twitter:description","content":"Cities are demanding cleaner delivery. We explore how AI-powered EV fleets and optimised routing create a path to zero-emission last-mile logistics at city scale."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-6.jpeg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Building a Greener City: The Future of Urban Logistics – Doormile"}],["$","meta","1",{"name":"description","content":"Cities are demanding cleaner delivery. We explore how AI-powered EV fleets and optimised routing create a path to zero-emission last-mile logistics at city scale."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Sustainability,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/building-a-greener-city-the-future-of-urban-logistics"}],["$","meta","6",{"property":"og:title","content":"Building a Greener City: The Future of Urban Logistics"}],["$","meta","7",{"property":"og:description","content":"Cities are demanding cleaner delivery. We explore how AI-powered EV fleets and optimised routing create a path to zero-emission last-mile logistics at city scale."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/building-a-greener-city-the-future-of-urban-logistics"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-6.jpeg"}],["$","meta","11",{"property":"og:image:alt","content":"Building a Greener City: The Future of Urban Logistics"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-07-10T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"Building a Greener City: The Future of Urban Logistics"}],["$","meta","17",{"name":"twitter:description","content":"Cities are demanding cleaner delivery. We explore how AI-powered EV fleets and optimised routing create a path to zero-emission last-mile logistics at city scale."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-6.jpeg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next._index.txt b/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next._index.txt +++ b/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next._tree.txt b/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next._tree.txt index 6686d99..0e7648b 100644 --- a/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next._tree.txt +++ b/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"building-a-greener-city-the-future-of-urban-logistics","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"building-a-greener-city-the-future-of-urban-logistics","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next.blog.$d$slug.__PAGE__.txt b/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next.blog.$d$slug.__PAGE__.txt index dd6f0b2..5f15a03 100644 --- a/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next.blog.$d$slug.__PAGE__.txt +++ b/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next.blog.$d$slug.__PAGE__.txt @@ -1,10 +1,10 @@ 1:"$Sreact.fragment" -8:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -9:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +8:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +9:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 14:"$Sreact.suspense" -16:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -17:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +16:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +17:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 2:T3d21, .dm-single-blog { --dm-red: #c01227; @@ -324,7 +324,7 @@ transition: background .2s ease, transform .2s ease; } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } -0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"Building a Greener City: The Future of Urban Logistics\",\"description\":\"Cities are demanding cleaner delivery. We explore how AI-powered EV fleets and optimised routing create a path to zero-emission last-mile logistics at city scale.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-6.jpeg\"],\"datePublished\":\"2025-07-10T00:00:00.000Z\",\"dateModified\":\"2025-07-10T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/building-a-greener-city-the-future-of-urban-logistics\"},\"articleSection\":\"Sustainability\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Building a Greener City: The Future of Urban Logistics\",\"item\":\"https://www.doormile.com/blog/building-a-greener-city-the-future-of-urban-logistics\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"Building a Greener City: The Future of Urban Logistics\",\"description\":\"Cities are demanding cleaner delivery. We explore how AI-powered EV fleets and optimised routing create a path to zero-emission last-mile logistics at city scale.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-6.jpeg\"],\"datePublished\":\"2025-07-10T00:00:00.000Z\",\"dateModified\":\"2025-07-10T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/building-a-greener-city-the-future-of-urban-logistics\"},\"articleSection\":\"Sustainability\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Building a Greener City: The Future of Urban Logistics\",\"item\":\"https://www.doormile.com/blog/building-a-greener-city-the-future-of-urban-logistics\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 3:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-6.jpeg)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Sustainability"}],["$","h1",null,{"className":"dm-banner-title","children":"Building a Greener City: The Future of Urban Logistics"}]]}]}]}] 4:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L8",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L8",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"Building a Greener City: The Future of Urban Logistics"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-07-10","children":"Jul 10, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Zero-emission delivery is no longer a marketing line — it is becoming a regulatory expectation. The path there runs through two changes at once: electrifying the fleet, and routing it intelligently enough to make electrification viable."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L9","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. Building a Greener City: The Future of Urban Logistics looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L9","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L9","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L9","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L9","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L9","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$La","$Lb","$Lc","$Ld","$Le","$Lf"]}]]}],"$L10"]}]]}] 11:T1fa8, diff --git a/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next.blog.$d$slug.txt b/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next.blog.$d$slug.txt index 1334b06..19dcdca 100644 --- a/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next.blog.$d$slug.txt +++ b/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next.blog.$d$slug.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next.blog.txt b/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next.blog.txt index 1334b06..19dcdca 100644 --- a/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next.blog.txt +++ b/build/blog/building-a-greener-city-the-future-of-urban-logistics/__next.blog.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/fleet-reduction-without-compromising-delivery-volume.html b/build/blog/fleet-reduction-without-compromising-delivery-volume.html index 8c80dec..56314d7 100644 --- a/build/blog/fleet-reduction-without-compromising-delivery-volume.html +++ b/build/blog/fleet-reduction-without-compromising-delivery-volume.html @@ -1,4 +1,4 @@ -Fleet Reduction Without Compromising Delivery Volume – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

\ No newline at end of file + \ No newline at end of file diff --git a/build/blog/fleet-reduction-without-compromising-delivery-volume.txt b/build/blog/fleet-reduction-without-compromising-delivery-volume.txt index aaf255e..f8a83ce 100644 --- a/build/blog/fleet-reduction-without-compromising-delivery-volume.txt +++ b/build/blog/fleet-reduction-without-compromising-delivery-volume.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","fleet-reduction-without-compromising-delivery-volume"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","fleet-reduction-without-compromising-delivery-volume","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","fleet-reduction-without-compromising-delivery-volume"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","fleet-reduction-without-compromising-delivery-volume","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"Fleet Reduction Without Compromising Delivery Volume\",\"description\":\"Deploying 37% fewer vehicles while handling the same order volumes isn't a trade-off — it's the result of smarter routing intelligence applied at every dispatch.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-8.jpeg\"],\"datePublished\":\"2025-07-24T00:00:00.000Z\",\"dateModified\":\"2025-07-24T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/fleet-reduction-without-compromising-delivery-volume\"},\"articleSection\":\"Fleet Management\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Fleet Reduction Without Compromising Delivery Volume\",\"item\":\"https://www.doormile.com/blog/fleet-reduction-without-compromising-delivery-volume\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-8.jpeg)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Fleet Management"}],["$","h1",null,{"className":"dm-banner-title","children":"Fleet Reduction Without Compromising Delivery Volume"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"Fleet Reduction Without Compromising Delivery Volume"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-07-24","children":"Jul 24, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Cutting your fleet usually means cutting capacity — unless the kilometres you remove were never necessary in the first place. Smarter routing reclaims that wasted distance and turns it into headroom."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. Fleet Reduction Without Compromising Delivery Volume looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$L1d","$L1e","$L1f","$L20","$L21","$L22"]}]]}],"$L23"]}]]}] 24:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$24"}}],"$L25"]}] -26:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -27:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +26:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +27:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L26",null,{"src":"/images/blog-post-pic-8.jpeg","alt":"Fleet Reduction Without Compromising Delivery Volume","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"Fleet Management — operational intelligence applied at the point of dispatch."}]]}]}] 1e:["$","$L1c","7",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","blockquote",null,{"className":"dm-article-quote","children":[["$","p",null,{"children":"We don't guess the route. We calculate it — and we prove it works before the wheels start turning."}],["$","cite",null,{"children":["— ","Doormile Operations"]}]]}]}] 1f:["$","$L1c","8",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Putting it into practice"}]}] @@ -526,6 +526,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 2e:["$","$L1c","miletruth-ai-10-stages-to-smarter-dispatch",{"delay":0.16,"duration":0.7,"yOffset":30,"children":["$","$L1b",null,{"href":"/blog/miletruth-ai-10-stages-to-smarter-dispatch","className":"dm-related-card","children":[["$","div",null,{"className":"dm-related-img","children":[["$","$L26",null,{"src":"/images/blog-post-pic-31.png","alt":"MileTruth™ AI — 10 Stages to Smarter Dispatch","fill":true,"sizes":"(max-width: 700px) 100vw, (max-width: 1024px) 50vw, 33vw","style":{"objectFit":"cover"}}],["$","span",null,{"className":"dm-related-badge","children":"MileTruth"}]]}],["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}]]}]}] 2f:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -30:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +30:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"Fleet Reduction Without Compromising Delivery Volume – Doormile"}],["$","meta","1",{"name":"description","content":"Deploying 37% fewer vehicles while handling the same order volumes isn't a trade-off — it's the result of smarter routing intelligence applied at every dispatch."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Fleet Management,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/fleet-reduction-without-compromising-delivery-volume"}],["$","meta","6",{"property":"og:title","content":"Fleet Reduction Without Compromising Delivery Volume"}],["$","meta","7",{"property":"og:description","content":"Deploying 37% fewer vehicles while handling the same order volumes isn't a trade-off — it's the result of smarter routing intelligence applied at every dispatch."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/fleet-reduction-without-compromising-delivery-volume"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-8.jpeg"}],["$","meta","11",{"property":"og:image:alt","content":"Fleet Reduction Without Compromising Delivery Volume"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-07-24T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"Fleet Reduction Without Compromising Delivery Volume"}],["$","meta","17",{"name":"twitter:description","content":"Deploying 37% fewer vehicles while handling the same order volumes isn't a trade-off — it's the result of smarter routing intelligence applied at every dispatch."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-8.jpeg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L30","23",{}]] diff --git a/build/blog/fleet-reduction-without-compromising-delivery-volume/__next._full.txt b/build/blog/fleet-reduction-without-compromising-delivery-volume/__next._full.txt index aaf255e..f8a83ce 100644 --- a/build/blog/fleet-reduction-without-compromising-delivery-volume/__next._full.txt +++ b/build/blog/fleet-reduction-without-compromising-delivery-volume/__next._full.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","fleet-reduction-without-compromising-delivery-volume"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","fleet-reduction-without-compromising-delivery-volume","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","fleet-reduction-without-compromising-delivery-volume"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","fleet-reduction-without-compromising-delivery-volume","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"Fleet Reduction Without Compromising Delivery Volume\",\"description\":\"Deploying 37% fewer vehicles while handling the same order volumes isn't a trade-off — it's the result of smarter routing intelligence applied at every dispatch.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-8.jpeg\"],\"datePublished\":\"2025-07-24T00:00:00.000Z\",\"dateModified\":\"2025-07-24T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/fleet-reduction-without-compromising-delivery-volume\"},\"articleSection\":\"Fleet Management\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Fleet Reduction Without Compromising Delivery Volume\",\"item\":\"https://www.doormile.com/blog/fleet-reduction-without-compromising-delivery-volume\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-8.jpeg)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Fleet Management"}],["$","h1",null,{"className":"dm-banner-title","children":"Fleet Reduction Without Compromising Delivery Volume"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"Fleet Reduction Without Compromising Delivery Volume"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-07-24","children":"Jul 24, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Cutting your fleet usually means cutting capacity — unless the kilometres you remove were never necessary in the first place. Smarter routing reclaims that wasted distance and turns it into headroom."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. Fleet Reduction Without Compromising Delivery Volume looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$L1d","$L1e","$L1f","$L20","$L21","$L22"]}]]}],"$L23"]}]]}] 24:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$24"}}],"$L25"]}] -26:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -27:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +26:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +27:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L26",null,{"src":"/images/blog-post-pic-8.jpeg","alt":"Fleet Reduction Without Compromising Delivery Volume","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"Fleet Management — operational intelligence applied at the point of dispatch."}]]}]}] 1e:["$","$L1c","7",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","blockquote",null,{"className":"dm-article-quote","children":[["$","p",null,{"children":"We don't guess the route. We calculate it — and we prove it works before the wheels start turning."}],["$","cite",null,{"children":["— ","Doormile Operations"]}]]}]}] 1f:["$","$L1c","8",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Putting it into practice"}]}] @@ -526,6 +526,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 2e:["$","$L1c","miletruth-ai-10-stages-to-smarter-dispatch",{"delay":0.16,"duration":0.7,"yOffset":30,"children":["$","$L1b",null,{"href":"/blog/miletruth-ai-10-stages-to-smarter-dispatch","className":"dm-related-card","children":[["$","div",null,{"className":"dm-related-img","children":[["$","$L26",null,{"src":"/images/blog-post-pic-31.png","alt":"MileTruth™ AI — 10 Stages to Smarter Dispatch","fill":true,"sizes":"(max-width: 700px) 100vw, (max-width: 1024px) 50vw, 33vw","style":{"objectFit":"cover"}}],["$","span",null,{"className":"dm-related-badge","children":"MileTruth"}]]}],["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}]]}]}] 2f:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -30:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +30:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"Fleet Reduction Without Compromising Delivery Volume – Doormile"}],["$","meta","1",{"name":"description","content":"Deploying 37% fewer vehicles while handling the same order volumes isn't a trade-off — it's the result of smarter routing intelligence applied at every dispatch."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Fleet Management,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/fleet-reduction-without-compromising-delivery-volume"}],["$","meta","6",{"property":"og:title","content":"Fleet Reduction Without Compromising Delivery Volume"}],["$","meta","7",{"property":"og:description","content":"Deploying 37% fewer vehicles while handling the same order volumes isn't a trade-off — it's the result of smarter routing intelligence applied at every dispatch."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/fleet-reduction-without-compromising-delivery-volume"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-8.jpeg"}],["$","meta","11",{"property":"og:image:alt","content":"Fleet Reduction Without Compromising Delivery Volume"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-07-24T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"Fleet Reduction Without Compromising Delivery Volume"}],["$","meta","17",{"name":"twitter:description","content":"Deploying 37% fewer vehicles while handling the same order volumes isn't a trade-off — it's the result of smarter routing intelligence applied at every dispatch."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-8.jpeg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L30","23",{}]] diff --git a/build/blog/fleet-reduction-without-compromising-delivery-volume/__next._head.txt b/build/blog/fleet-reduction-without-compromising-delivery-volume/__next._head.txt index c9f5f48..7f37a30 100644 --- a/build/blog/fleet-reduction-without-compromising-delivery-volume/__next._head.txt +++ b/build/blog/fleet-reduction-without-compromising-delivery-volume/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Fleet Reduction Without Compromising Delivery Volume – Doormile"}],["$","meta","1",{"name":"description","content":"Deploying 37% fewer vehicles while handling the same order volumes isn't a trade-off — it's the result of smarter routing intelligence applied at every dispatch."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Fleet Management,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/fleet-reduction-without-compromising-delivery-volume"}],["$","meta","6",{"property":"og:title","content":"Fleet Reduction Without Compromising Delivery Volume"}],["$","meta","7",{"property":"og:description","content":"Deploying 37% fewer vehicles while handling the same order volumes isn't a trade-off — it's the result of smarter routing intelligence applied at every dispatch."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/fleet-reduction-without-compromising-delivery-volume"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-8.jpeg"}],["$","meta","11",{"property":"og:image:alt","content":"Fleet Reduction Without Compromising Delivery Volume"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-07-24T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"Fleet Reduction Without Compromising Delivery Volume"}],["$","meta","17",{"name":"twitter:description","content":"Deploying 37% fewer vehicles while handling the same order volumes isn't a trade-off — it's the result of smarter routing intelligence applied at every dispatch."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-8.jpeg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Fleet Reduction Without Compromising Delivery Volume – Doormile"}],["$","meta","1",{"name":"description","content":"Deploying 37% fewer vehicles while handling the same order volumes isn't a trade-off — it's the result of smarter routing intelligence applied at every dispatch."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Fleet Management,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/fleet-reduction-without-compromising-delivery-volume"}],["$","meta","6",{"property":"og:title","content":"Fleet Reduction Without Compromising Delivery Volume"}],["$","meta","7",{"property":"og:description","content":"Deploying 37% fewer vehicles while handling the same order volumes isn't a trade-off — it's the result of smarter routing intelligence applied at every dispatch."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/fleet-reduction-without-compromising-delivery-volume"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-8.jpeg"}],["$","meta","11",{"property":"og:image:alt","content":"Fleet Reduction Without Compromising Delivery Volume"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-07-24T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"Fleet Reduction Without Compromising Delivery Volume"}],["$","meta","17",{"name":"twitter:description","content":"Deploying 37% fewer vehicles while handling the same order volumes isn't a trade-off — it's the result of smarter routing intelligence applied at every dispatch."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-8.jpeg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/fleet-reduction-without-compromising-delivery-volume/__next._index.txt b/build/blog/fleet-reduction-without-compromising-delivery-volume/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/blog/fleet-reduction-without-compromising-delivery-volume/__next._index.txt +++ b/build/blog/fleet-reduction-without-compromising-delivery-volume/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/fleet-reduction-without-compromising-delivery-volume/__next._tree.txt b/build/blog/fleet-reduction-without-compromising-delivery-volume/__next._tree.txt index 93ccb41..1835189 100644 --- a/build/blog/fleet-reduction-without-compromising-delivery-volume/__next._tree.txt +++ b/build/blog/fleet-reduction-without-compromising-delivery-volume/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"fleet-reduction-without-compromising-delivery-volume","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"fleet-reduction-without-compromising-delivery-volume","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/fleet-reduction-without-compromising-delivery-volume/__next.blog.$d$slug.__PAGE__.txt b/build/blog/fleet-reduction-without-compromising-delivery-volume/__next.blog.$d$slug.__PAGE__.txt index ecfb93a..04f4f83 100644 --- a/build/blog/fleet-reduction-without-compromising-delivery-volume/__next.blog.$d$slug.__PAGE__.txt +++ b/build/blog/fleet-reduction-without-compromising-delivery-volume/__next.blog.$d$slug.__PAGE__.txt @@ -1,10 +1,10 @@ 1:"$Sreact.fragment" -8:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -9:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +8:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +9:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 14:"$Sreact.suspense" -16:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -17:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +16:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +17:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 2:T3d21, .dm-single-blog { --dm-red: #c01227; @@ -324,7 +324,7 @@ transition: background .2s ease, transform .2s ease; } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } -0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"Fleet Reduction Without Compromising Delivery Volume\",\"description\":\"Deploying 37% fewer vehicles while handling the same order volumes isn't a trade-off — it's the result of smarter routing intelligence applied at every dispatch.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-8.jpeg\"],\"datePublished\":\"2025-07-24T00:00:00.000Z\",\"dateModified\":\"2025-07-24T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/fleet-reduction-without-compromising-delivery-volume\"},\"articleSection\":\"Fleet Management\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Fleet Reduction Without Compromising Delivery Volume\",\"item\":\"https://www.doormile.com/blog/fleet-reduction-without-compromising-delivery-volume\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"Fleet Reduction Without Compromising Delivery Volume\",\"description\":\"Deploying 37% fewer vehicles while handling the same order volumes isn't a trade-off — it's the result of smarter routing intelligence applied at every dispatch.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-8.jpeg\"],\"datePublished\":\"2025-07-24T00:00:00.000Z\",\"dateModified\":\"2025-07-24T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/fleet-reduction-without-compromising-delivery-volume\"},\"articleSection\":\"Fleet Management\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Fleet Reduction Without Compromising Delivery Volume\",\"item\":\"https://www.doormile.com/blog/fleet-reduction-without-compromising-delivery-volume\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 3:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-8.jpeg)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Fleet Management"}],["$","h1",null,{"className":"dm-banner-title","children":"Fleet Reduction Without Compromising Delivery Volume"}]]}]}]}] 4:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L8",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L8",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"Fleet Reduction Without Compromising Delivery Volume"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-07-24","children":"Jul 24, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Cutting your fleet usually means cutting capacity — unless the kilometres you remove were never necessary in the first place. Smarter routing reclaims that wasted distance and turns it into headroom."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L9","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. Fleet Reduction Without Compromising Delivery Volume looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L9","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L9","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L9","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L9","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L9","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$La","$Lb","$Lc","$Ld","$Le","$Lf"]}]]}],"$L10"]}]]}] 11:T1fa8, diff --git a/build/blog/fleet-reduction-without-compromising-delivery-volume/__next.blog.$d$slug.txt b/build/blog/fleet-reduction-without-compromising-delivery-volume/__next.blog.$d$slug.txt index 1334b06..19dcdca 100644 --- a/build/blog/fleet-reduction-without-compromising-delivery-volume/__next.blog.$d$slug.txt +++ b/build/blog/fleet-reduction-without-compromising-delivery-volume/__next.blog.$d$slug.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/fleet-reduction-without-compromising-delivery-volume/__next.blog.txt b/build/blog/fleet-reduction-without-compromising-delivery-volume/__next.blog.txt index 1334b06..19dcdca 100644 --- a/build/blog/fleet-reduction-without-compromising-delivery-volume/__next.blog.txt +++ b/build/blog/fleet-reduction-without-compromising-delivery-volume/__next.blog.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/how-ai-is-transforming-last-mile-ev-delivery.html b/build/blog/how-ai-is-transforming-last-mile-ev-delivery.html index 2226b26..14deae2 100644 --- a/build/blog/how-ai-is-transforming-last-mile-ev-delivery.html +++ b/build/blog/how-ai-is-transforming-last-mile-ev-delivery.html @@ -1,4 +1,4 @@ -How AI Is Transforming Last-Mile EV Delivery – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

\ No newline at end of file + \ No newline at end of file diff --git a/build/blog/how-ai-is-transforming-last-mile-ev-delivery.txt b/build/blog/how-ai-is-transforming-last-mile-ev-delivery.txt index aefe5a1..fb133db 100644 --- a/build/blog/how-ai-is-transforming-last-mile-ev-delivery.txt +++ b/build/blog/how-ai-is-transforming-last-mile-ev-delivery.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","how-ai-is-transforming-last-mile-ev-delivery"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","how-ai-is-transforming-last-mile-ev-delivery","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","how-ai-is-transforming-last-mile-ev-delivery"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","how-ai-is-transforming-last-mile-ev-delivery","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"How AI Is Transforming Last-Mile EV Delivery\",\"description\":\"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-17.png\"],\"datePublished\":\"2025-10-02T00:00:00.000Z\",\"dateModified\":\"2025-10-02T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/how-ai-is-transforming-last-mile-ev-delivery\"},\"articleSection\":\"Technology\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How AI Is Transforming Last-Mile EV Delivery\",\"item\":\"https://www.doormile.com/blog/how-ai-is-transforming-last-mile-ev-delivery\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-17.png)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Technology"}],["$","h1",null,{"className":"dm-banner-title","children":"How AI Is Transforming Last-Mile EV Delivery"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"How AI Is Transforming Last-Mile EV Delivery"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-10-02","children":"Oct 2, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"The last mile has always been logistics' most expensive and least predictable stretch. Add electric vehicles to the mix and the problem sharpens: now every route must respect not just time and capacity, but battery range. Artificial intelligence is what turns that constraint into an advantage."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"For decades, last-mile delivery was planned the way it was a generation ago — dispatchers, spreadsheets, and hard-won intuition. That approach scales poorly, and it breaks entirely when you electrify the fleet. EVs introduce a moving constraint that no static plan can absorb: a vehicle's remaining range changes with load, terrain, traffic and temperature, all at once."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"The shift from rules to learning"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Traditional routing tools rely on fixed rules: nearest-stop-first, fixed zones, manual overrides. They are fast to set up and brittle in practice. Machine-learning-driven systems instead learn from outcomes — every completed delivery, every delay, every charge cycle becomes training signal that sharpens the next decision."}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Demand forecasting that anticipates volume spikes before they hit the hub"}],["$","li","1",{"children":"Travel-time models trained on the city's real traffic, not generic averages"}],["$","li","2",{"children":"Battery-draw prediction tuned to each vehicle class and load profile"}],["$","li","3",{"children":"Continuous feedback that improves accuracy with every dispatch"}]]}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"Real-time adaptation"}]}],["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":"$L1d"}],"$L1e","$L1f","$L20","$L21","$L22","$L23"]}]]}],"$L24"]}]]}] 25:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$25"}}],"$L26"]}] -27:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -28:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +27:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +28:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","p",null,{"className":"dm-article-p","children":"The real unlock is not planning — it is replanning. When a road closes, an order is added, or a vehicle's charge drops faster than expected, an AI-driven system re-optimises in milliseconds and reroutes the affected vehicles without a human in the loop. The plan stays optimal even as reality refuses to hold still."}] 1e:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L27",null,{"src":"/images/ev-paradox.png","alt":"Electric delivery vehicle routing visualisation","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"AI continuously re-evaluates range, load and traffic to keep every EV route feasible."}]]}]}] 1f:["$","$L1c","7",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","blockquote",null,{"className":"dm-article-quote","children":[["$","p",null,{"children":"An electric fleet is only as good as the intelligence that routes it. The battery sets the limit — the algorithm decides whether you ever reach it."}],["$","cite",null,{"children":["— ","Doormile Engineering"]}]]}]}] @@ -526,6 +526,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 2e:["$","$L1b",null,{"href":"/blog/miletruth-ai-10-stages-to-smarter-dispatch","className":"dm-related-card","children":[["$","div",null,{"className":"dm-related-img","children":[["$","$L27",null,{"src":"/images/blog-post-pic-31.png","alt":"MileTruth™ AI — 10 Stages to Smarter Dispatch","fill":true,"sizes":"(max-width: 700px) 100vw, (max-width: 1024px) 50vw, 33vw","style":{"objectFit":"cover"}}],["$","span",null,{"className":"dm-related-badge","children":"MileTruth"}]]}],["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}]]}] 2f:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -30:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +30:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"How AI Is Transforming Last-Mile EV Delivery – Doormile"}],["$","meta","1",{"name":"description","content":"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Technology,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/how-ai-is-transforming-last-mile-ev-delivery"}],["$","meta","6",{"property":"og:title","content":"How AI Is Transforming Last-Mile EV Delivery"}],["$","meta","7",{"property":"og:description","content":"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/how-ai-is-transforming-last-mile-ev-delivery"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-17.png"}],["$","meta","11",{"property":"og:image:alt","content":"How AI Is Transforming Last-Mile EV Delivery"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-10-02T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"How AI Is Transforming Last-Mile EV Delivery"}],["$","meta","17",{"name":"twitter:description","content":"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-17.png"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L30","23",{}]] diff --git a/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next._full.txt b/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next._full.txt index aefe5a1..fb133db 100644 --- a/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next._full.txt +++ b/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next._full.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","how-ai-is-transforming-last-mile-ev-delivery"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","how-ai-is-transforming-last-mile-ev-delivery","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","how-ai-is-transforming-last-mile-ev-delivery"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","how-ai-is-transforming-last-mile-ev-delivery","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"How AI Is Transforming Last-Mile EV Delivery\",\"description\":\"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-17.png\"],\"datePublished\":\"2025-10-02T00:00:00.000Z\",\"dateModified\":\"2025-10-02T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/how-ai-is-transforming-last-mile-ev-delivery\"},\"articleSection\":\"Technology\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How AI Is Transforming Last-Mile EV Delivery\",\"item\":\"https://www.doormile.com/blog/how-ai-is-transforming-last-mile-ev-delivery\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-17.png)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Technology"}],["$","h1",null,{"className":"dm-banner-title","children":"How AI Is Transforming Last-Mile EV Delivery"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"How AI Is Transforming Last-Mile EV Delivery"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-10-02","children":"Oct 2, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"The last mile has always been logistics' most expensive and least predictable stretch. Add electric vehicles to the mix and the problem sharpens: now every route must respect not just time and capacity, but battery range. Artificial intelligence is what turns that constraint into an advantage."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"For decades, last-mile delivery was planned the way it was a generation ago — dispatchers, spreadsheets, and hard-won intuition. That approach scales poorly, and it breaks entirely when you electrify the fleet. EVs introduce a moving constraint that no static plan can absorb: a vehicle's remaining range changes with load, terrain, traffic and temperature, all at once."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"The shift from rules to learning"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Traditional routing tools rely on fixed rules: nearest-stop-first, fixed zones, manual overrides. They are fast to set up and brittle in practice. Machine-learning-driven systems instead learn from outcomes — every completed delivery, every delay, every charge cycle becomes training signal that sharpens the next decision."}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Demand forecasting that anticipates volume spikes before they hit the hub"}],["$","li","1",{"children":"Travel-time models trained on the city's real traffic, not generic averages"}],["$","li","2",{"children":"Battery-draw prediction tuned to each vehicle class and load profile"}],["$","li","3",{"children":"Continuous feedback that improves accuracy with every dispatch"}]]}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"Real-time adaptation"}]}],["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":"$L1d"}],"$L1e","$L1f","$L20","$L21","$L22","$L23"]}]]}],"$L24"]}]]}] 25:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$25"}}],"$L26"]}] -27:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -28:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +27:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +28:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","p",null,{"className":"dm-article-p","children":"The real unlock is not planning — it is replanning. When a road closes, an order is added, or a vehicle's charge drops faster than expected, an AI-driven system re-optimises in milliseconds and reroutes the affected vehicles without a human in the loop. The plan stays optimal even as reality refuses to hold still."}] 1e:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L27",null,{"src":"/images/ev-paradox.png","alt":"Electric delivery vehicle routing visualisation","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"AI continuously re-evaluates range, load and traffic to keep every EV route feasible."}]]}]}] 1f:["$","$L1c","7",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","blockquote",null,{"className":"dm-article-quote","children":[["$","p",null,{"children":"An electric fleet is only as good as the intelligence that routes it. The battery sets the limit — the algorithm decides whether you ever reach it."}],["$","cite",null,{"children":["— ","Doormile Engineering"]}]]}]}] @@ -526,6 +526,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 2e:["$","$L1b",null,{"href":"/blog/miletruth-ai-10-stages-to-smarter-dispatch","className":"dm-related-card","children":[["$","div",null,{"className":"dm-related-img","children":[["$","$L27",null,{"src":"/images/blog-post-pic-31.png","alt":"MileTruth™ AI — 10 Stages to Smarter Dispatch","fill":true,"sizes":"(max-width: 700px) 100vw, (max-width: 1024px) 50vw, 33vw","style":{"objectFit":"cover"}}],["$","span",null,{"className":"dm-related-badge","children":"MileTruth"}]]}],["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}]]}] 2f:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -30:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +30:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"How AI Is Transforming Last-Mile EV Delivery – Doormile"}],["$","meta","1",{"name":"description","content":"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Technology,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/how-ai-is-transforming-last-mile-ev-delivery"}],["$","meta","6",{"property":"og:title","content":"How AI Is Transforming Last-Mile EV Delivery"}],["$","meta","7",{"property":"og:description","content":"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/how-ai-is-transforming-last-mile-ev-delivery"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-17.png"}],["$","meta","11",{"property":"og:image:alt","content":"How AI Is Transforming Last-Mile EV Delivery"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-10-02T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"How AI Is Transforming Last-Mile EV Delivery"}],["$","meta","17",{"name":"twitter:description","content":"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-17.png"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L30","23",{}]] diff --git a/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next._head.txt b/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next._head.txt index 646e425..17f77e0 100644 --- a/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next._head.txt +++ b/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"How AI Is Transforming Last-Mile EV Delivery – Doormile"}],["$","meta","1",{"name":"description","content":"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Technology,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/how-ai-is-transforming-last-mile-ev-delivery"}],["$","meta","6",{"property":"og:title","content":"How AI Is Transforming Last-Mile EV Delivery"}],["$","meta","7",{"property":"og:description","content":"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/how-ai-is-transforming-last-mile-ev-delivery"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-17.png"}],["$","meta","11",{"property":"og:image:alt","content":"How AI Is Transforming Last-Mile EV Delivery"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-10-02T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"How AI Is Transforming Last-Mile EV Delivery"}],["$","meta","17",{"name":"twitter:description","content":"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-17.png"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"How AI Is Transforming Last-Mile EV Delivery – Doormile"}],["$","meta","1",{"name":"description","content":"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Technology,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/how-ai-is-transforming-last-mile-ev-delivery"}],["$","meta","6",{"property":"og:title","content":"How AI Is Transforming Last-Mile EV Delivery"}],["$","meta","7",{"property":"og:description","content":"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/how-ai-is-transforming-last-mile-ev-delivery"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-17.png"}],["$","meta","11",{"property":"og:image:alt","content":"How AI Is Transforming Last-Mile EV Delivery"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-10-02T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"How AI Is Transforming Last-Mile EV Delivery"}],["$","meta","17",{"name":"twitter:description","content":"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-17.png"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next._index.txt b/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next._index.txt +++ b/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next._tree.txt b/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next._tree.txt index 26781fb..92a1e37 100644 --- a/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next._tree.txt +++ b/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"how-ai-is-transforming-last-mile-ev-delivery","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"how-ai-is-transforming-last-mile-ev-delivery","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next.blog.$d$slug.__PAGE__.txt b/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next.blog.$d$slug.__PAGE__.txt index eaa0590..822b581 100644 --- a/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next.blog.$d$slug.__PAGE__.txt +++ b/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next.blog.$d$slug.__PAGE__.txt @@ -1,10 +1,10 @@ 1:"$Sreact.fragment" -8:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -9:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] -14:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +8:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +9:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +14:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 15:"$Sreact.suspense" -17:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -18:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +17:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +18:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 2:T3d21, .dm-single-blog { --dm-red: #c01227; @@ -324,7 +324,7 @@ transition: background .2s ease, transform .2s ease; } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } -0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"How AI Is Transforming Last-Mile EV Delivery\",\"description\":\"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-17.png\"],\"datePublished\":\"2025-10-02T00:00:00.000Z\",\"dateModified\":\"2025-10-02T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/how-ai-is-transforming-last-mile-ev-delivery\"},\"articleSection\":\"Technology\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How AI Is Transforming Last-Mile EV Delivery\",\"item\":\"https://www.doormile.com/blog/how-ai-is-transforming-last-mile-ev-delivery\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"How AI Is Transforming Last-Mile EV Delivery\",\"description\":\"Machine learning and real-time data are reshaping how fleets plan, dispatch, and adapt — making every kilometre smarter than the last.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-17.png\"],\"datePublished\":\"2025-10-02T00:00:00.000Z\",\"dateModified\":\"2025-10-02T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/how-ai-is-transforming-last-mile-ev-delivery\"},\"articleSection\":\"Technology\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How AI Is Transforming Last-Mile EV Delivery\",\"item\":\"https://www.doormile.com/blog/how-ai-is-transforming-last-mile-ev-delivery\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 3:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-17.png)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Technology"}],["$","h1",null,{"className":"dm-banner-title","children":"How AI Is Transforming Last-Mile EV Delivery"}]]}]}]}] 4:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L8",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L8",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"How AI Is Transforming Last-Mile EV Delivery"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-10-02","children":"Oct 2, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"The last mile has always been logistics' most expensive and least predictable stretch. Add electric vehicles to the mix and the problem sharpens: now every route must respect not just time and capacity, but battery range. Artificial intelligence is what turns that constraint into an advantage."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L9","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"For decades, last-mile delivery was planned the way it was a generation ago — dispatchers, spreadsheets, and hard-won intuition. That approach scales poorly, and it breaks entirely when you electrify the fleet. EVs introduce a moving constraint that no static plan can absorb: a vehicle's remaining range changes with load, terrain, traffic and temperature, all at once."}]}],["$","$L9","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"The shift from rules to learning"}]}],["$","$L9","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Traditional routing tools rely on fixed rules: nearest-stop-first, fixed zones, manual overrides. They are fast to set up and brittle in practice. Machine-learning-driven systems instead learn from outcomes — every completed delivery, every delay, every charge cycle becomes training signal that sharpens the next decision."}]}],["$","$L9","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Demand forecasting that anticipates volume spikes before they hit the hub"}],["$","li","1",{"children":"Travel-time models trained on the city's real traffic, not generic averages"}],["$","li","2",{"children":"Battery-draw prediction tuned to each vehicle class and load profile"}],["$","li","3",{"children":"Continuous feedback that improves accuracy with every dispatch"}]]}]}],["$","$L9","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"Real-time adaptation"}]}],["$","$L9","5",{"delay":0,"duration":0.6,"yOffset":20,"children":"$La"}],"$Lb","$Lc","$Ld","$Le","$Lf","$L10"]}]]}],"$L11"]}]]}] 12:T1fa8, diff --git a/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next.blog.$d$slug.txt b/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next.blog.$d$slug.txt index 1334b06..19dcdca 100644 --- a/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next.blog.$d$slug.txt +++ b/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next.blog.$d$slug.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next.blog.txt b/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next.blog.txt index 1334b06..19dcdca 100644 --- a/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next.blog.txt +++ b/build/blog/how-ai-is-transforming-last-mile-ev-delivery/__next.blog.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale.html b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale.html index 510b00f..069a474 100644 --- a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale.html +++ b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale.html @@ -1,4 +1,4 @@ -How Doormile Maintains 99.9% SLA Compliance at Scale – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

\ No newline at end of file + \ No newline at end of file diff --git a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale.txt b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale.txt index 485171a..3ad2eed 100644 --- a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale.txt +++ b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","how-doormile-maintains-99-9-sla-compliance-at-scale"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","how-doormile-maintains-99-9-sla-compliance-at-scale","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","how-doormile-maintains-99-9-sla-compliance-at-scale"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","how-doormile-maintains-99-9-sla-compliance-at-scale","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"How Doormile Maintains 99.9% SLA Compliance at Scale\",\"description\":\"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint.\",\"image\":[\"https://www.doormile.com/images/last-mile-approach.jpg\"],\"datePublished\":\"2025-06-26T00:00:00.000Z\",\"dateModified\":\"2025-06-26T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/how-doormile-maintains-99-9-sla-compliance-at-scale\"},\"articleSection\":\"Operations\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How Doormile Maintains 99.9% SLA Compliance at Scale\",\"item\":\"https://www.doormile.com/blog/how-doormile-maintains-99-9-sla-compliance-at-scale\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/last-mile-approach.jpg)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Operations"}],["$","h1",null,{"className":"dm-banner-title","children":"How Doormile Maintains 99.9% SLA Compliance at Scale"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"How Doormile Maintains 99.9% SLA Compliance at Scale"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-06-26","children":"Jun 26, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"An SLA you hit 99.9% of the time is not an average you got lucky on — it is a system designed so that missing is the exception, not the risk. Reliability, it turns out, is an engineering decision made long before dispatch."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. How Doormile Maintains 99.9% SLA Compliance at Scale looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$L1d","$L1e","$L1f","$L20","$L21","$L22"]}]]}],"$L23"]}]]}] 24:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$24"}}],"$L25"]}] -26:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -27:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +26:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +27:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L26",null,{"src":"/images/last-mile-approach.jpg","alt":"How Doormile Maintains 99.9% SLA Compliance at Scale","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"Operations — operational intelligence applied at the point of dispatch."}]]}]}] 1e:["$","$L1c","7",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","blockquote",null,{"className":"dm-article-quote","children":[["$","p",null,{"children":"We don't guess the route. We calculate it — and we prove it works before the wheels start turning."}],["$","cite",null,{"children":["— ","Doormile Operations"]}]]}]}] 1f:["$","$L1c","8",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Putting it into practice"}]}] @@ -526,6 +526,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 2e:["$","$L1c","miletruth-ai-10-stages-to-smarter-dispatch",{"delay":0.16,"duration":0.7,"yOffset":30,"children":["$","$L1b",null,{"href":"/blog/miletruth-ai-10-stages-to-smarter-dispatch","className":"dm-related-card","children":[["$","div",null,{"className":"dm-related-img","children":[["$","$L26",null,{"src":"/images/blog-post-pic-31.png","alt":"MileTruth™ AI — 10 Stages to Smarter Dispatch","fill":true,"sizes":"(max-width: 700px) 100vw, (max-width: 1024px) 50vw, 33vw","style":{"objectFit":"cover"}}],["$","span",null,{"className":"dm-related-badge","children":"MileTruth"}]]}],["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}]]}]}] 2f:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -30:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +30:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"How Doormile Maintains 99.9% SLA Compliance at Scale – Doormile"}],["$","meta","1",{"name":"description","content":"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Operations,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/how-doormile-maintains-99-9-sla-compliance-at-scale"}],["$","meta","6",{"property":"og:title","content":"How Doormile Maintains 99.9% SLA Compliance at Scale"}],["$","meta","7",{"property":"og:description","content":"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/how-doormile-maintains-99-9-sla-compliance-at-scale"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/last-mile-approach.jpg"}],["$","meta","11",{"property":"og:image:alt","content":"How Doormile Maintains 99.9% SLA Compliance at Scale"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-06-26T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"How Doormile Maintains 99.9% SLA Compliance at Scale"}],["$","meta","17",{"name":"twitter:description","content":"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/last-mile-approach.jpg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L30","23",{}]] diff --git a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next._full.txt b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next._full.txt index 485171a..3ad2eed 100644 --- a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next._full.txt +++ b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next._full.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","how-doormile-maintains-99-9-sla-compliance-at-scale"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","how-doormile-maintains-99-9-sla-compliance-at-scale","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","how-doormile-maintains-99-9-sla-compliance-at-scale"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","how-doormile-maintains-99-9-sla-compliance-at-scale","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"How Doormile Maintains 99.9% SLA Compliance at Scale\",\"description\":\"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint.\",\"image\":[\"https://www.doormile.com/images/last-mile-approach.jpg\"],\"datePublished\":\"2025-06-26T00:00:00.000Z\",\"dateModified\":\"2025-06-26T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/how-doormile-maintains-99-9-sla-compliance-at-scale\"},\"articleSection\":\"Operations\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How Doormile Maintains 99.9% SLA Compliance at Scale\",\"item\":\"https://www.doormile.com/blog/how-doormile-maintains-99-9-sla-compliance-at-scale\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/last-mile-approach.jpg)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Operations"}],["$","h1",null,{"className":"dm-banner-title","children":"How Doormile Maintains 99.9% SLA Compliance at Scale"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"How Doormile Maintains 99.9% SLA Compliance at Scale"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-06-26","children":"Jun 26, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"An SLA you hit 99.9% of the time is not an average you got lucky on — it is a system designed so that missing is the exception, not the risk. Reliability, it turns out, is an engineering decision made long before dispatch."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. How Doormile Maintains 99.9% SLA Compliance at Scale looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$L1d","$L1e","$L1f","$L20","$L21","$L22"]}]]}],"$L23"]}]]}] 24:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$24"}}],"$L25"]}] -26:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -27:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +26:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +27:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L26",null,{"src":"/images/last-mile-approach.jpg","alt":"How Doormile Maintains 99.9% SLA Compliance at Scale","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"Operations — operational intelligence applied at the point of dispatch."}]]}]}] 1e:["$","$L1c","7",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","blockquote",null,{"className":"dm-article-quote","children":[["$","p",null,{"children":"We don't guess the route. We calculate it — and we prove it works before the wheels start turning."}],["$","cite",null,{"children":["— ","Doormile Operations"]}]]}]}] 1f:["$","$L1c","8",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Putting it into practice"}]}] @@ -526,6 +526,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 2e:["$","$L1c","miletruth-ai-10-stages-to-smarter-dispatch",{"delay":0.16,"duration":0.7,"yOffset":30,"children":["$","$L1b",null,{"href":"/blog/miletruth-ai-10-stages-to-smarter-dispatch","className":"dm-related-card","children":[["$","div",null,{"className":"dm-related-img","children":[["$","$L26",null,{"src":"/images/blog-post-pic-31.png","alt":"MileTruth™ AI — 10 Stages to Smarter Dispatch","fill":true,"sizes":"(max-width: 700px) 100vw, (max-width: 1024px) 50vw, 33vw","style":{"objectFit":"cover"}}],["$","span",null,{"className":"dm-related-badge","children":"MileTruth"}]]}],["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}]]}]}] 2f:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -30:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +30:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"How Doormile Maintains 99.9% SLA Compliance at Scale – Doormile"}],["$","meta","1",{"name":"description","content":"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Operations,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/how-doormile-maintains-99-9-sla-compliance-at-scale"}],["$","meta","6",{"property":"og:title","content":"How Doormile Maintains 99.9% SLA Compliance at Scale"}],["$","meta","7",{"property":"og:description","content":"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/how-doormile-maintains-99-9-sla-compliance-at-scale"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/last-mile-approach.jpg"}],["$","meta","11",{"property":"og:image:alt","content":"How Doormile Maintains 99.9% SLA Compliance at Scale"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-06-26T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"How Doormile Maintains 99.9% SLA Compliance at Scale"}],["$","meta","17",{"name":"twitter:description","content":"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/last-mile-approach.jpg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L30","23",{}]] diff --git a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next._head.txt b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next._head.txt index 20cbb1e..c00c652 100644 --- a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next._head.txt +++ b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"How Doormile Maintains 99.9% SLA Compliance at Scale – Doormile"}],["$","meta","1",{"name":"description","content":"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Operations,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/how-doormile-maintains-99-9-sla-compliance-at-scale"}],["$","meta","6",{"property":"og:title","content":"How Doormile Maintains 99.9% SLA Compliance at Scale"}],["$","meta","7",{"property":"og:description","content":"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/how-doormile-maintains-99-9-sla-compliance-at-scale"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/last-mile-approach.jpg"}],["$","meta","11",{"property":"og:image:alt","content":"How Doormile Maintains 99.9% SLA Compliance at Scale"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-06-26T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"How Doormile Maintains 99.9% SLA Compliance at Scale"}],["$","meta","17",{"name":"twitter:description","content":"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/last-mile-approach.jpg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"How Doormile Maintains 99.9% SLA Compliance at Scale – Doormile"}],["$","meta","1",{"name":"description","content":"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Operations,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/how-doormile-maintains-99-9-sla-compliance-at-scale"}],["$","meta","6",{"property":"og:title","content":"How Doormile Maintains 99.9% SLA Compliance at Scale"}],["$","meta","7",{"property":"og:description","content":"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/how-doormile-maintains-99-9-sla-compliance-at-scale"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/last-mile-approach.jpg"}],["$","meta","11",{"property":"og:image:alt","content":"How Doormile Maintains 99.9% SLA Compliance at Scale"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-06-26T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"How Doormile Maintains 99.9% SLA Compliance at Scale"}],["$","meta","17",{"name":"twitter:description","content":"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/last-mile-approach.jpg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next._index.txt b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next._index.txt +++ b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next._tree.txt b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next._tree.txt index 322430d..b02ba45 100644 --- a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next._tree.txt +++ b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"how-doormile-maintains-99-9-sla-compliance-at-scale","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"how-doormile-maintains-99-9-sla-compliance-at-scale","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next.blog.$d$slug.__PAGE__.txt b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next.blog.$d$slug.__PAGE__.txt index 92549fd..d7b5c48 100644 --- a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next.blog.$d$slug.__PAGE__.txt +++ b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next.blog.$d$slug.__PAGE__.txt @@ -1,10 +1,10 @@ 1:"$Sreact.fragment" -8:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -9:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +8:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +9:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 14:"$Sreact.suspense" -16:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -17:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +16:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +17:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 2:T3d21, .dm-single-blog { --dm-red: #c01227; @@ -324,7 +324,7 @@ transition: background .2s ease, transform .2s ease; } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } -0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"How Doormile Maintains 99.9% SLA Compliance at Scale\",\"description\":\"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint.\",\"image\":[\"https://www.doormile.com/images/last-mile-approach.jpg\"],\"datePublished\":\"2025-06-26T00:00:00.000Z\",\"dateModified\":\"2025-06-26T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/how-doormile-maintains-99-9-sla-compliance-at-scale\"},\"articleSection\":\"Operations\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How Doormile Maintains 99.9% SLA Compliance at Scale\",\"item\":\"https://www.doormile.com/blog/how-doormile-maintains-99-9-sla-compliance-at-scale\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"How Doormile Maintains 99.9% SLA Compliance at Scale\",\"description\":\"Hitting SLA targets 99.9% of the time isn't luck — it's the product of ETA pre-validation, real-time rebalancing, and a routing engine built with delivery reliability as its first constraint.\",\"image\":[\"https://www.doormile.com/images/last-mile-approach.jpg\"],\"datePublished\":\"2025-06-26T00:00:00.000Z\",\"dateModified\":\"2025-06-26T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/how-doormile-maintains-99-9-sla-compliance-at-scale\"},\"articleSection\":\"Operations\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How Doormile Maintains 99.9% SLA Compliance at Scale\",\"item\":\"https://www.doormile.com/blog/how-doormile-maintains-99-9-sla-compliance-at-scale\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 3:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/last-mile-approach.jpg)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Operations"}],["$","h1",null,{"className":"dm-banner-title","children":"How Doormile Maintains 99.9% SLA Compliance at Scale"}]]}]}]}] 4:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L8",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L8",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"How Doormile Maintains 99.9% SLA Compliance at Scale"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-06-26","children":"Jun 26, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"An SLA you hit 99.9% of the time is not an average you got lucky on — it is a system designed so that missing is the exception, not the risk. Reliability, it turns out, is an engineering decision made long before dispatch."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L9","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. How Doormile Maintains 99.9% SLA Compliance at Scale looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L9","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L9","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L9","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L9","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L9","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$La","$Lb","$Lc","$Ld","$Le","$Lf"]}]]}],"$L10"]}]]}] 11:T1fa8, diff --git a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next.blog.$d$slug.txt b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next.blog.$d$slug.txt index 1334b06..19dcdca 100644 --- a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next.blog.$d$slug.txt +++ b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next.blog.$d$slug.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next.blog.txt b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next.blog.txt index 1334b06..19dcdca 100644 --- a/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next.blog.txt +++ b/build/blog/how-doormile-maintains-99-9-sla-compliance-at-scale/__next.blog.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch.html b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch.html index e5be867..52bb7d8 100644 --- a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch.html +++ b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch.html @@ -1,4 +1,4 @@ -MileTruth™ AI — 10 Stages to Smarter Dispatch – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

\ No newline at end of file + \ No newline at end of file diff --git a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch.txt b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch.txt index ab1be33..fa992ac 100644 --- a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch.txt +++ b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","miletruth-ai-10-stages-to-smarter-dispatch"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","miletruth-ai-10-stages-to-smarter-dispatch","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","miletruth-ai-10-stages-to-smarter-dispatch"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","miletruth-ai-10-stages-to-smarter-dispatch","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"MileTruth™ AI — 10 Stages to Smarter Dispatch\",\"description\":\"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-31.png\"],\"datePublished\":\"2025-09-05T00:00:00.000Z\",\"dateModified\":\"2025-09-05T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/miletruth-ai-10-stages-to-smarter-dispatch\"},\"articleSection\":\"MileTruth\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"MileTruth™ AI — 10 Stages to Smarter Dispatch\",\"item\":\"https://www.doormile.com/blog/miletruth-ai-10-stages-to-smarter-dispatch\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-31.png)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"MileTruth"}],["$","h1",null,{"className":"dm-banner-title","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-09-05","children":"Sep 5, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Behind every Doormile dispatch is a pipeline that turns raw orders into a validated, optimal route in under 45 milliseconds. This is how MileTruth™ does it — ten stages, each one removing a source of error before the next begins."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Speed and correctness are usually a trade-off. MileTruth is engineered to deliver both: a routing decision fast enough to feel instant, yet rigorous enough to commit a fleet to. The secret is a staged pipeline where each step has a single responsibility and hands clean, validated data to the next."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"The ten stages"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ol",null,{"className":"dm-article-ol","children":[["$","li","0",{"children":"Ingestion — orders, constraints and fleet state are normalised on arrival."}],["$","li","1",{"children":"Validation — addresses, time windows and capacities are checked and geocoded."}],["$","li","2",{"children":"Demand modelling — volume and service-time estimates are attached to each stop."}],["$","li","3",{"children":"Travel-time estimation — real-world, time-of-day travel matrices are built."}],["$","li","4",{"children":"Constraint assembly — capacity, range, windows and rules are encoded."}],["$","li","5",{"children":"Strategy generation — multiple routing universes are explored in parallel."}],["$","li","6",{"children":"Optimisation — the solver searches for the minimum-cost feasible plan."}],["$","li","7",{"children":"Battery / range validation — EV routes are checked against real charge capacity."}],["$","li","8",{"children":"ETA pre-validation — promised times are verified before any commitment."}],["$","li","9",{"children":"Output — the final, validated route is emitted to dispatch."}]]}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"Why staging matters"}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":"$L1d"}],"$L1e","$L1f","$L20","$L21","$L22","$L23"]}]]}],"$L24"]}]]}] 25:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$25"}}],"$L26"]}] -27:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -28:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +27:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +28:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","p",null,{"className":"dm-article-p","children":"Collapsing these steps into one monolithic calculation is how most tools accumulate hidden errors. By isolating each concern, MileTruth catches a bad address before it reaches the solver, and an infeasible battery plan before it reaches a rider. Each stage is independently testable, observable and fast."}] 1e:["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L27",null,{"src":"/images/blog-post-pic-31.png","alt":"MileTruth routing pipeline diagram","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"Ten focused stages turn raw orders into a validated route in well under 45 milliseconds."}]]}]}] 1f:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","blockquote",null,{"className":"dm-article-quote","children":[["$","p",null,{"children":"Each stage exists to delete a category of mistake. By the time a route reaches dispatch, the questionable decisions have already been ruled out."}],["$","cite",null,{"children":["— ","MileTruth Engineering"]}]]}]}] @@ -528,6 +528,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 30:["$","$L1c","the-ev-paradox-solving-range-anxiety-for-urban-fleets",{"delay":0.16,"duration":0.7,"yOffset":30,"children":["$","$L1b",null,{"href":"/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets","className":"dm-related-card","children":[["$","div",null,{"className":"dm-related-img","children":[["$","$L27",null,{"src":"/images/ev-paradox.png","alt":"The EV Paradox: Solving Range Anxiety for Urban Fleets","fill":true,"sizes":"(max-width: 700px) 100vw, (max-width: 1024px) 50vw, 33vw","style":{"objectFit":"cover"}}],["$","span",null,{"className":"dm-related-badge","children":"EV Fleet"}]]}],["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}]]}]}] 31:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -32:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +32:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"MileTruth™ AI — 10 Stages to Smarter Dispatch – Doormile"}],["$","meta","1",{"name":"description","content":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"MileTruth,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/miletruth-ai-10-stages-to-smarter-dispatch"}],["$","meta","6",{"property":"og:title","content":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","meta","7",{"property":"og:description","content":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/miletruth-ai-10-stages-to-smarter-dispatch"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-31.png"}],["$","meta","11",{"property":"og:image:alt","content":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-09-05T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","meta","17",{"name":"twitter:description","content":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-31.png"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L32","23",{}]] diff --git a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next._full.txt b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next._full.txt index ab1be33..fa992ac 100644 --- a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next._full.txt +++ b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next._full.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","miletruth-ai-10-stages-to-smarter-dispatch"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","miletruth-ai-10-stages-to-smarter-dispatch","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","miletruth-ai-10-stages-to-smarter-dispatch"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","miletruth-ai-10-stages-to-smarter-dispatch","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"MileTruth™ AI — 10 Stages to Smarter Dispatch\",\"description\":\"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-31.png\"],\"datePublished\":\"2025-09-05T00:00:00.000Z\",\"dateModified\":\"2025-09-05T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/miletruth-ai-10-stages-to-smarter-dispatch\"},\"articleSection\":\"MileTruth\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"MileTruth™ AI — 10 Stages to Smarter Dispatch\",\"item\":\"https://www.doormile.com/blog/miletruth-ai-10-stages-to-smarter-dispatch\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-31.png)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"MileTruth"}],["$","h1",null,{"className":"dm-banner-title","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-09-05","children":"Sep 5, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Behind every Doormile dispatch is a pipeline that turns raw orders into a validated, optimal route in under 45 milliseconds. This is how MileTruth™ does it — ten stages, each one removing a source of error before the next begins."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Speed and correctness are usually a trade-off. MileTruth is engineered to deliver both: a routing decision fast enough to feel instant, yet rigorous enough to commit a fleet to. The secret is a staged pipeline where each step has a single responsibility and hands clean, validated data to the next."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"The ten stages"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ol",null,{"className":"dm-article-ol","children":[["$","li","0",{"children":"Ingestion — orders, constraints and fleet state are normalised on arrival."}],["$","li","1",{"children":"Validation — addresses, time windows and capacities are checked and geocoded."}],["$","li","2",{"children":"Demand modelling — volume and service-time estimates are attached to each stop."}],["$","li","3",{"children":"Travel-time estimation — real-world, time-of-day travel matrices are built."}],["$","li","4",{"children":"Constraint assembly — capacity, range, windows and rules are encoded."}],["$","li","5",{"children":"Strategy generation — multiple routing universes are explored in parallel."}],["$","li","6",{"children":"Optimisation — the solver searches for the minimum-cost feasible plan."}],["$","li","7",{"children":"Battery / range validation — EV routes are checked against real charge capacity."}],["$","li","8",{"children":"ETA pre-validation — promised times are verified before any commitment."}],["$","li","9",{"children":"Output — the final, validated route is emitted to dispatch."}]]}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"Why staging matters"}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":"$L1d"}],"$L1e","$L1f","$L20","$L21","$L22","$L23"]}]]}],"$L24"]}]]}] 25:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$25"}}],"$L26"]}] -27:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -28:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +27:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +28:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","p",null,{"className":"dm-article-p","children":"Collapsing these steps into one monolithic calculation is how most tools accumulate hidden errors. By isolating each concern, MileTruth catches a bad address before it reaches the solver, and an infeasible battery plan before it reaches a rider. Each stage is independently testable, observable and fast."}] 1e:["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L27",null,{"src":"/images/blog-post-pic-31.png","alt":"MileTruth routing pipeline diagram","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"Ten focused stages turn raw orders into a validated route in well under 45 milliseconds."}]]}]}] 1f:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","blockquote",null,{"className":"dm-article-quote","children":[["$","p",null,{"children":"Each stage exists to delete a category of mistake. By the time a route reaches dispatch, the questionable decisions have already been ruled out."}],["$","cite",null,{"children":["— ","MileTruth Engineering"]}]]}]}] @@ -528,6 +528,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 30:["$","$L1c","the-ev-paradox-solving-range-anxiety-for-urban-fleets",{"delay":0.16,"duration":0.7,"yOffset":30,"children":["$","$L1b",null,{"href":"/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets","className":"dm-related-card","children":[["$","div",null,{"className":"dm-related-img","children":[["$","$L27",null,{"src":"/images/ev-paradox.png","alt":"The EV Paradox: Solving Range Anxiety for Urban Fleets","fill":true,"sizes":"(max-width: 700px) 100vw, (max-width: 1024px) 50vw, 33vw","style":{"objectFit":"cover"}}],["$","span",null,{"className":"dm-related-badge","children":"EV Fleet"}]]}],["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}]]}]}] 31:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -32:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +32:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"MileTruth™ AI — 10 Stages to Smarter Dispatch – Doormile"}],["$","meta","1",{"name":"description","content":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"MileTruth,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/miletruth-ai-10-stages-to-smarter-dispatch"}],["$","meta","6",{"property":"og:title","content":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","meta","7",{"property":"og:description","content":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/miletruth-ai-10-stages-to-smarter-dispatch"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-31.png"}],["$","meta","11",{"property":"og:image:alt","content":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-09-05T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","meta","17",{"name":"twitter:description","content":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-31.png"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L32","23",{}]] diff --git a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next._head.txt b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next._head.txt index a938736..296df4f 100644 --- a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next._head.txt +++ b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"MileTruth™ AI — 10 Stages to Smarter Dispatch – Doormile"}],["$","meta","1",{"name":"description","content":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"MileTruth,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/miletruth-ai-10-stages-to-smarter-dispatch"}],["$","meta","6",{"property":"og:title","content":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","meta","7",{"property":"og:description","content":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/miletruth-ai-10-stages-to-smarter-dispatch"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-31.png"}],["$","meta","11",{"property":"og:image:alt","content":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-09-05T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","meta","17",{"name":"twitter:description","content":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-31.png"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"MileTruth™ AI — 10 Stages to Smarter Dispatch – Doormile"}],["$","meta","1",{"name":"description","content":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"MileTruth,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/miletruth-ai-10-stages-to-smarter-dispatch"}],["$","meta","6",{"property":"og:title","content":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","meta","7",{"property":"og:description","content":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/miletruth-ai-10-stages-to-smarter-dispatch"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-31.png"}],["$","meta","11",{"property":"og:image:alt","content":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-09-05T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","meta","17",{"name":"twitter:description","content":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-31.png"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next._index.txt b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next._index.txt +++ b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next._tree.txt b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next._tree.txt index 88f4580..5caced8 100644 --- a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next._tree.txt +++ b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"miletruth-ai-10-stages-to-smarter-dispatch","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"miletruth-ai-10-stages-to-smarter-dispatch","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next.blog.$d$slug.__PAGE__.txt b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next.blog.$d$slug.__PAGE__.txt index e23a165..22dcfd2 100644 --- a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next.blog.$d$slug.__PAGE__.txt +++ b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next.blog.$d$slug.__PAGE__.txt @@ -1,10 +1,10 @@ 1:"$Sreact.fragment" -8:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -9:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] -14:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +8:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +9:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +14:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 15:"$Sreact.suspense" -17:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -18:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +17:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +18:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 2:T3d21, .dm-single-blog { --dm-red: #c01227; @@ -324,7 +324,7 @@ transition: background .2s ease, transform .2s ease; } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } -0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"MileTruth™ AI — 10 Stages to Smarter Dispatch\",\"description\":\"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-31.png\"],\"datePublished\":\"2025-09-05T00:00:00.000Z\",\"dateModified\":\"2025-09-05T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/miletruth-ai-10-stages-to-smarter-dispatch\"},\"articleSection\":\"MileTruth\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"MileTruth™ AI — 10 Stages to Smarter Dispatch\",\"item\":\"https://www.doormile.com/blog/miletruth-ai-10-stages-to-smarter-dispatch\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"MileTruth™ AI — 10 Stages to Smarter Dispatch\",\"description\":\"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-31.png\"],\"datePublished\":\"2025-09-05T00:00:00.000Z\",\"dateModified\":\"2025-09-05T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/miletruth-ai-10-stages-to-smarter-dispatch\"},\"articleSection\":\"MileTruth\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"MileTruth™ AI — 10 Stages to Smarter Dispatch\",\"item\":\"https://www.doormile.com/blog/miletruth-ai-10-stages-to-smarter-dispatch\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 3:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-31.png)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"MileTruth"}],["$","h1",null,{"className":"dm-banner-title","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}]]}]}]}] 4:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L8",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L8",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-09-05","children":"Sep 5, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Behind every Doormile dispatch is a pipeline that turns raw orders into a validated, optimal route in under 45 milliseconds. This is how MileTruth™ does it — ten stages, each one removing a source of error before the next begins."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L9","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Speed and correctness are usually a trade-off. MileTruth is engineered to deliver both: a routing decision fast enough to feel instant, yet rigorous enough to commit a fleet to. The secret is a staged pipeline where each step has a single responsibility and hands clean, validated data to the next."}]}],["$","$L9","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"The ten stages"}]}],["$","$L9","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ol",null,{"className":"dm-article-ol","children":[["$","li","0",{"children":"Ingestion — orders, constraints and fleet state are normalised on arrival."}],["$","li","1",{"children":"Validation — addresses, time windows and capacities are checked and geocoded."}],["$","li","2",{"children":"Demand modelling — volume and service-time estimates are attached to each stop."}],["$","li","3",{"children":"Travel-time estimation — real-world, time-of-day travel matrices are built."}],["$","li","4",{"children":"Constraint assembly — capacity, range, windows and rules are encoded."}],["$","li","5",{"children":"Strategy generation — multiple routing universes are explored in parallel."}],["$","li","6",{"children":"Optimisation — the solver searches for the minimum-cost feasible plan."}],["$","li","7",{"children":"Battery / range validation — EV routes are checked against real charge capacity."}],["$","li","8",{"children":"ETA pre-validation — promised times are verified before any commitment."}],["$","li","9",{"children":"Output — the final, validated route is emitted to dispatch."}]]}]}],["$","$L9","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"Why staging matters"}]}],["$","$L9","4",{"delay":0,"duration":0.6,"yOffset":20,"children":"$La"}],"$Lb","$Lc","$Ld","$Le","$Lf","$L10"]}]]}],"$L11"]}]]}] 12:T1fa8, diff --git a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next.blog.$d$slug.txt b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next.blog.$d$slug.txt index 1334b06..19dcdca 100644 --- a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next.blog.$d$slug.txt +++ b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next.blog.$d$slug.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next.blog.txt b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next.blog.txt index 1334b06..19dcdca 100644 --- a/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next.blog.txt +++ b/build/blog/miletruth-ai-10-stages-to-smarter-dispatch/__next.blog.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets.html b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets.html index 1febf85..7233a3b 100644 --- a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets.html +++ b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets.html @@ -1,4 +1,4 @@ -The EV Paradox: Solving Range Anxiety for Urban Fleets – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

\ No newline at end of file + \ No newline at end of file diff --git a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets.txt b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets.txt index bfdc833..1590189 100644 --- a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets.txt +++ b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","the-ev-paradox-solving-range-anxiety-for-urban-fleets"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","the-ev-paradox-solving-range-anxiety-for-urban-fleets","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","the-ev-paradox-solving-range-anxiety-for-urban-fleets"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","the-ev-paradox-solving-range-anxiety-for-urban-fleets","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"The EV Paradox: Solving Range Anxiety for Urban Fleets\",\"description\":\"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch.\",\"image\":[\"https://www.doormile.com/images/ev-paradox.png\"],\"datePublished\":\"2025-08-21T00:00:00.000Z\",\"dateModified\":\"2025-08-21T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets\"},\"articleSection\":\"EV Fleet\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"The EV Paradox: Solving Range Anxiety for Urban Fleets\",\"item\":\"https://www.doormile.com/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/ev-paradox.png)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"EV Fleet"}],["$","h1",null,{"className":"dm-banner-title","children":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-08-21","children":"Aug 21, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Electric fleets promise cleaner cities and lower running costs — but they trade one problem for another. Range becomes a hard constraint on every route, and range anxiety becomes an operational risk. Solving it before dispatch is the whole game."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. The EV Paradox: Solving Range Anxiety for Urban Fleets looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$L1d","$L1e","$L1f","$L20","$L21","$L22"]}]]}],"$L23"]}]]}] 24:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$24"}}],"$L25"]}] -26:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -27:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +26:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +27:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L26",null,{"src":"/images/ev-paradox.png","alt":"The EV Paradox: Solving Range Anxiety for Urban Fleets","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"EV Fleet — operational intelligence applied at the point of dispatch."}]]}]}] 1e:["$","$L1c","7",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","blockquote",null,{"className":"dm-article-quote","children":[["$","p",null,{"children":"We don't guess the route. We calculate it — and we prove it works before the wheels start turning."}],["$","cite",null,{"children":["— ","Doormile Operations"]}]]}]}] 1f:["$","$L1c","8",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Putting it into practice"}]}] @@ -527,6 +527,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 2f:["$","$L1c","42-less-distance-insights-from-our-hyderabad-hub",{"delay":0.16,"duration":0.7,"yOffset":30,"children":["$","$L1b",null,{"href":"/blog/42-less-distance-insights-from-our-hyderabad-hub","className":"dm-related-card","children":[["$","div",null,{"className":"dm-related-img","children":[["$","$L26",null,{"src":"/images/blog-post-pic-15.png","alt":"42% Less Distance: Insights from Our Hyderabad Hub","fill":true,"sizes":"(max-width: 700px) 100vw, (max-width: 1024px) 50vw, 33vw","style":{"objectFit":"cover"}}],["$","span",null,{"className":"dm-related-badge","children":"Case Study"}]]}],["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}]]}]}] 30:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -31:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +31:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"The EV Paradox: Solving Range Anxiety for Urban Fleets – Doormile"}],["$","meta","1",{"name":"description","content":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"EV Fleet,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets"}],["$","meta","6",{"property":"og:title","content":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","meta","7",{"property":"og:description","content":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/ev-paradox.png"}],["$","meta","11",{"property":"og:image:alt","content":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-08-21T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","meta","17",{"name":"twitter:description","content":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/ev-paradox.png"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L31","23",{}]] diff --git a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next._full.txt b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next._full.txt index bfdc833..1590189 100644 --- a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next._full.txt +++ b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next._full.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","the-ev-paradox-solving-range-anxiety-for-urban-fleets"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","the-ev-paradox-solving-range-anxiety-for-urban-fleets","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","the-ev-paradox-solving-range-anxiety-for-urban-fleets"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","the-ev-paradox-solving-range-anxiety-for-urban-fleets","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"The EV Paradox: Solving Range Anxiety for Urban Fleets\",\"description\":\"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch.\",\"image\":[\"https://www.doormile.com/images/ev-paradox.png\"],\"datePublished\":\"2025-08-21T00:00:00.000Z\",\"dateModified\":\"2025-08-21T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets\"},\"articleSection\":\"EV Fleet\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"The EV Paradox: Solving Range Anxiety for Urban Fleets\",\"item\":\"https://www.doormile.com/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/ev-paradox.png)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"EV Fleet"}],["$","h1",null,{"className":"dm-banner-title","children":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-08-21","children":"Aug 21, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Electric fleets promise cleaner cities and lower running costs — but they trade one problem for another. Range becomes a hard constraint on every route, and range anxiety becomes an operational risk. Solving it before dispatch is the whole game."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. The EV Paradox: Solving Range Anxiety for Urban Fleets looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$L1d","$L1e","$L1f","$L20","$L21","$L22"]}]]}],"$L23"]}]]}] 24:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$24"}}],"$L25"]}] -26:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -27:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +26:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +27:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L26",null,{"src":"/images/ev-paradox.png","alt":"The EV Paradox: Solving Range Anxiety for Urban Fleets","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"EV Fleet — operational intelligence applied at the point of dispatch."}]]}]}] 1e:["$","$L1c","7",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","blockquote",null,{"className":"dm-article-quote","children":[["$","p",null,{"children":"We don't guess the route. We calculate it — and we prove it works before the wheels start turning."}],["$","cite",null,{"children":["— ","Doormile Operations"]}]]}]}] 1f:["$","$L1c","8",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Putting it into practice"}]}] @@ -527,6 +527,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 2f:["$","$L1c","42-less-distance-insights-from-our-hyderabad-hub",{"delay":0.16,"duration":0.7,"yOffset":30,"children":["$","$L1b",null,{"href":"/blog/42-less-distance-insights-from-our-hyderabad-hub","className":"dm-related-card","children":[["$","div",null,{"className":"dm-related-img","children":[["$","$L26",null,{"src":"/images/blog-post-pic-15.png","alt":"42% Less Distance: Insights from Our Hyderabad Hub","fill":true,"sizes":"(max-width: 700px) 100vw, (max-width: 1024px) 50vw, 33vw","style":{"objectFit":"cover"}}],["$","span",null,{"className":"dm-related-badge","children":"Case Study"}]]}],["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"42% Less Distance: Insights from Our Hyderabad Hub"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"A detailed look at how Doormile's MileTruth routing engine delivered measurable efficiency gains — fewer vehicles, less fuel, and zero SLA misses."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}]]}]}] 30:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -31:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +31:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"The EV Paradox: Solving Range Anxiety for Urban Fleets – Doormile"}],["$","meta","1",{"name":"description","content":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"EV Fleet,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets"}],["$","meta","6",{"property":"og:title","content":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","meta","7",{"property":"og:description","content":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/ev-paradox.png"}],["$","meta","11",{"property":"og:image:alt","content":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-08-21T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","meta","17",{"name":"twitter:description","content":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/ev-paradox.png"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L31","23",{}]] diff --git a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next._head.txt b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next._head.txt index a74f809..8232e9e 100644 --- a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next._head.txt +++ b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"The EV Paradox: Solving Range Anxiety for Urban Fleets – Doormile"}],["$","meta","1",{"name":"description","content":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"EV Fleet,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets"}],["$","meta","6",{"property":"og:title","content":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","meta","7",{"property":"og:description","content":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/ev-paradox.png"}],["$","meta","11",{"property":"og:image:alt","content":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-08-21T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","meta","17",{"name":"twitter:description","content":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/ev-paradox.png"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"The EV Paradox: Solving Range Anxiety for Urban Fleets – Doormile"}],["$","meta","1",{"name":"description","content":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"EV Fleet,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets"}],["$","meta","6",{"property":"og:title","content":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","meta","7",{"property":"og:description","content":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/ev-paradox.png"}],["$","meta","11",{"property":"og:image:alt","content":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-08-21T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}],["$","meta","17",{"name":"twitter:description","content":"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/ev-paradox.png"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next._index.txt b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next._index.txt +++ b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next._tree.txt b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next._tree.txt index c343c65..7ecf14b 100644 --- a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next._tree.txt +++ b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"the-ev-paradox-solving-range-anxiety-for-urban-fleets","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"the-ev-paradox-solving-range-anxiety-for-urban-fleets","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next.blog.$d$slug.__PAGE__.txt b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next.blog.$d$slug.__PAGE__.txt index 75aff25..95e4594 100644 --- a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next.blog.$d$slug.__PAGE__.txt +++ b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next.blog.$d$slug.__PAGE__.txt @@ -1,10 +1,10 @@ 1:"$Sreact.fragment" -8:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -9:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +8:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +9:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 14:"$Sreact.suspense" -16:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -17:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +16:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +17:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 2:T3d21, .dm-single-blog { --dm-red: #c01227; @@ -324,7 +324,7 @@ transition: background .2s ease, transform .2s ease; } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } -0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"The EV Paradox: Solving Range Anxiety for Urban Fleets\",\"description\":\"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch.\",\"image\":[\"https://www.doormile.com/images/ev-paradox.png\"],\"datePublished\":\"2025-08-21T00:00:00.000Z\",\"dateModified\":\"2025-08-21T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets\"},\"articleSection\":\"EV Fleet\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"The EV Paradox: Solving Range Anxiety for Urban Fleets\",\"item\":\"https://www.doormile.com/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"The EV Paradox: Solving Range Anxiety for Urban Fleets\",\"description\":\"Electric vehicles promise sustainability, but battery constraints introduce a new routing challenge. Here's how MileTruth™ AI solves it before dispatch.\",\"image\":[\"https://www.doormile.com/images/ev-paradox.png\"],\"datePublished\":\"2025-08-21T00:00:00.000Z\",\"dateModified\":\"2025-08-21T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets\"},\"articleSection\":\"EV Fleet\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"The EV Paradox: Solving Range Anxiety for Urban Fleets\",\"item\":\"https://www.doormile.com/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 3:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/ev-paradox.png)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"EV Fleet"}],["$","h1",null,{"className":"dm-banner-title","children":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}]]}]}]}] 4:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L8",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L8",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"The EV Paradox: Solving Range Anxiety for Urban Fleets"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-08-21","children":"Aug 21, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Electric fleets promise cleaner cities and lower running costs — but they trade one problem for another. Range becomes a hard constraint on every route, and range anxiety becomes an operational risk. Solving it before dispatch is the whole game."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L9","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. The EV Paradox: Solving Range Anxiety for Urban Fleets looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L9","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L9","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L9","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L9","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L9","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$La","$Lb","$Lc","$Ld","$Le","$Lf"]}]]}],"$L10"]}]]}] 11:T1fa8, diff --git a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next.blog.$d$slug.txt b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next.blog.$d$slug.txt index 1334b06..19dcdca 100644 --- a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next.blog.$d$slug.txt +++ b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next.blog.$d$slug.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next.blog.txt b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next.blog.txt index 1334b06..19dcdca 100644 --- a/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next.blog.txt +++ b/build/blog/the-ev-paradox-solving-range-anxiety-for-urban-fleets/__next.blog.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/why-mathematical-precision-beats-heuristics-in-routing.html b/build/blog/why-mathematical-precision-beats-heuristics-in-routing.html index 534fae9..31cd8c1 100644 --- a/build/blog/why-mathematical-precision-beats-heuristics-in-routing.html +++ b/build/blog/why-mathematical-precision-beats-heuristics-in-routing.html @@ -1,4 +1,4 @@ -Why Mathematical Precision Beats Heuristics in Routing – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

\ No newline at end of file + \ No newline at end of file diff --git a/build/blog/why-mathematical-precision-beats-heuristics-in-routing.txt b/build/blog/why-mathematical-precision-beats-heuristics-in-routing.txt index 349db77..4126513 100644 --- a/build/blog/why-mathematical-precision-beats-heuristics-in-routing.txt +++ b/build/blog/why-mathematical-precision-beats-heuristics-in-routing.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","why-mathematical-precision-beats-heuristics-in-routing"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","why-mathematical-precision-beats-heuristics-in-routing","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","why-mathematical-precision-beats-heuristics-in-routing"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","why-mathematical-precision-beats-heuristics-in-routing","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"Why Mathematical Precision Beats Heuristics in Routing\",\"description\":\"Most routing tools guess. We calculate. Powered by Google OR-Tools, MileTruth evaluates six parallel strategy universes to select the optimal route every time.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-14.jpeg\"],\"datePublished\":\"2025-08-07T00:00:00.000Z\",\"dateModified\":\"2025-08-07T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/why-mathematical-precision-beats-heuristics-in-routing\"},\"articleSection\":\"Technology\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Why Mathematical Precision Beats Heuristics in Routing\",\"item\":\"https://www.doormile.com/blog/why-mathematical-precision-beats-heuristics-in-routing\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-14.jpeg)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Technology"}],["$","h1",null,{"className":"dm-banner-title","children":"Why Mathematical Precision Beats Heuristics in Routing"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"Why Mathematical Precision Beats Heuristics in Routing"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-08-07","children":"Aug 7, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Heuristics are fast to build and easy to trust — until they quietly cost you a vehicle a day. Mathematical optimisation asks more of the engine and gives more back: provably better routes, every dispatch, at scale."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. Why Mathematical Precision Beats Heuristics in Routing looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$L1d","$L1e","$L1f","$L20","$L21","$L22"]}]]}],"$L23"]}]]}] 24:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$24"}}],"$L25"]}] -26:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -27:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +26:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +27:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L26",null,{"src":"/images/blog-post-pic-14.jpeg","alt":"Why Mathematical Precision Beats Heuristics in Routing","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"Technology — operational intelligence applied at the point of dispatch."}]]}]}] 1e:["$","$L1c","7",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","blockquote",null,{"className":"dm-article-quote","children":[["$","p",null,{"children":"We don't guess the route. We calculate it — and we prove it works before the wheels start turning."}],["$","cite",null,{"children":["— ","Doormile Operations"]}]]}]}] 1f:["$","$L1c","8",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Putting it into practice"}]}] @@ -526,6 +526,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 2e:["$","$L1c","miletruth-ai-10-stages-to-smarter-dispatch",{"delay":0.16,"duration":0.7,"yOffset":30,"children":["$","$L1b",null,{"href":"/blog/miletruth-ai-10-stages-to-smarter-dispatch","className":"dm-related-card","children":[["$","div",null,{"className":"dm-related-img","children":[["$","$L26",null,{"src":"/images/blog-post-pic-31.png","alt":"MileTruth™ AI — 10 Stages to Smarter Dispatch","fill":true,"sizes":"(max-width: 700px) 100vw, (max-width: 1024px) 50vw, 33vw","style":{"objectFit":"cover"}}],["$","span",null,{"className":"dm-related-badge","children":"MileTruth"}]]}],["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}]]}]}] 2f:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -30:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +30:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"Why Mathematical Precision Beats Heuristics in Routing – Doormile"}],["$","meta","1",{"name":"description","content":"Most routing tools guess. We calculate. Powered by Google OR-Tools, MileTruth evaluates six parallel strategy universes to select the optimal route every time."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Technology,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/why-mathematical-precision-beats-heuristics-in-routing"}],["$","meta","6",{"property":"og:title","content":"Why Mathematical Precision Beats Heuristics in Routing"}],["$","meta","7",{"property":"og:description","content":"Most routing tools guess. We calculate. Powered by Google OR-Tools, MileTruth evaluates six parallel strategy universes to select the optimal route every time."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/why-mathematical-precision-beats-heuristics-in-routing"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-14.jpeg"}],["$","meta","11",{"property":"og:image:alt","content":"Why Mathematical Precision Beats Heuristics in Routing"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-08-07T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"Why Mathematical Precision Beats Heuristics in Routing"}],["$","meta","17",{"name":"twitter:description","content":"Most routing tools guess. We calculate. Powered by Google OR-Tools, MileTruth evaluates six parallel strategy universes to select the optimal route every time."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-14.jpeg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L30","23",{}]] diff --git a/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next._full.txt b/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next._full.txt index 349db77..4126513 100644 --- a/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next._full.txt +++ b/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next._full.txt @@ -1,20 +1,20 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] e:"$Sreact.suspense" -11:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +11:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -22,7 +22,7 @@ e:"$Sreact.suspense" :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","blog","why-mathematical-precision-beats-heuristics-in-routing"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","why-mathematical-precision-beats-heuristics-in-routing","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","blog","why-mathematical-precision-beats-heuristics-in-routing"],"q":"","i":false,"f":[[["",{"children":["blog",{"children":[["slug","why-mathematical-precision-beats-heuristics-in-routing","d",null],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",[["$","script","script-0",{"src":"/_next/static/chunks/0a3t_oyn5arl-.js","async":true,"nonce":"$undefined"}]],["$","$Ld",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@f"}]}]]}],{},null,false,null]},null,false,"$@10"]},null,false,"$@10"]},null,false,null],["$","$1","h",{"children":[null,["$","$L11",null,{"children":"$L12"}],["$","div",null,{"hidden":true,"children":["$","$L13",null,{"children":["$","$e",null,{"name":"Next.Metadata","children":"$L14"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 16:[] 10:"$W16" 17:T3d21, @@ -345,8 +345,8 @@ e:"$Sreact.suspense" } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"Why Mathematical Precision Beats Heuristics in Routing\",\"description\":\"Most routing tools guess. We calculate. Powered by Google OR-Tools, MileTruth evaluates six parallel strategy universes to select the optimal route every time.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-14.jpeg\"],\"datePublished\":\"2025-08-07T00:00:00.000Z\",\"dateModified\":\"2025-08-07T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/why-mathematical-precision-beats-heuristics-in-routing\"},\"articleSection\":\"Technology\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Why Mathematical Precision Beats Heuristics in Routing\",\"item\":\"https://www.doormile.com/blog/why-mathematical-precision-beats-heuristics-in-routing\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$17"}}],"$L18","$L19"]}],"$L1a"]}]}]]}] -1b:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -1c:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +1b:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +1c:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] 18:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-14.jpeg)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Technology"}],["$","h1",null,{"className":"dm-banner-title","children":"Why Mathematical Precision Beats Heuristics in Routing"}]]}]}]}] 19:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L1b",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L1b",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"Why Mathematical Precision Beats Heuristics in Routing"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-08-07","children":"Aug 7, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Heuristics are fast to build and easy to trust — until they quietly cost you a vehicle a day. Mathematical optimisation asks more of the engine and gives more back: provably better routes, every dispatch, at scale."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L1c","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. Why Mathematical Precision Beats Heuristics in Routing looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L1c","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L1c","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L1c","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L1c","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L1c","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$L1d","$L1e","$L1f","$L20","$L21","$L22"]}]]}],"$L23"]}]]}] 24:T1fa8, @@ -507,8 +507,8 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem .dm-blog-contact-btn { width: 100%; } } 1a:["$","section",null,{"className":"dm-blog-footer","aria-label":"More articles","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$24"}}],"$L25"]}] -26:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -27:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +26:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +27:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 1d:["$","$L1c","6",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","figure",null,{"className":"dm-article-figure","children":[["$","span",null,{"className":"dm-article-figure-img","children":["$","$L26",null,{"src":"/images/blog-post-pic-14.jpeg","alt":"Why Mathematical Precision Beats Heuristics in Routing","fill":true,"sizes":"(max-width: 768px) 100vw, 760px","style":{"objectFit":"cover"}}]}],["$","figcaption",null,{"children":"Technology — operational intelligence applied at the point of dispatch."}]]}]}] 1e:["$","$L1c","7",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","blockquote",null,{"className":"dm-article-quote","children":[["$","p",null,{"children":"We don't guess the route. We calculate it — and we prove it works before the wheels start turning."}],["$","cite",null,{"children":["— ","Doormile Operations"]}]]}]}] 1f:["$","$L1c","8",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Putting it into practice"}]}] @@ -526,6 +526,6 @@ c:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elem 2e:["$","$L1c","miletruth-ai-10-stages-to-smarter-dispatch",{"delay":0.16,"duration":0.7,"yOffset":30,"children":["$","$L1b",null,{"href":"/blog/miletruth-ai-10-stages-to-smarter-dispatch","className":"dm-related-card","children":[["$","div",null,{"className":"dm-related-img","children":[["$","$L26",null,{"src":"/images/blog-post-pic-31.png","alt":"MileTruth™ AI — 10 Stages to Smarter Dispatch","fill":true,"sizes":"(max-width: 700px) 100vw, (max-width: 1024px) 50vw, 33vw","style":{"objectFit":"cover"}}],["$","span",null,{"className":"dm-related-badge","children":"MileTruth"}]]}],["$","div",null,{"className":"dm-related-body","children":[["$","h3",null,{"className":"dm-related-card-title","children":"MileTruth™ AI — 10 Stages to Smarter Dispatch"}],["$","p",null,{"className":"dm-related-card-excerpt","children":"From order ingestion to final route output in under 45ms — a technical walkthrough of the ten-stage pipeline at the heart of our routing engine."}],["$","span",null,{"className":"dm-related-readmore","children":["Read More",["$","svg",null,{"className":"dm-related-readmore-arrow","width":"16","height":"16","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}]]}]}] 2f:["$","div",null,{"className":"dm-blog-contact-cta","children":[["$","div",null,{"className":"dm-blog-contact-cta-content","children":[["$","span",null,{"className":"dm-blog-contact-eyebrow","children":"Let's talk logistics"}],["$","h2",null,{"className":"dm-blog-contact-title","children":"Ready to move smarter with Doormile?"}],["$","p",null,{"className":"dm-blog-contact-sub","children":"Tell us about your fleet and routes — we'll show you where the distance, vehicles and emissions are hiding."}]]}],["$","$L1b",null,{"href":"/contact","className":"dm-blog-contact-btn","children":["Get in Touch",["$","svg",null,{"width":"20","height":"20","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2.5","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","line",null,{"x1":"5","y1":"12","x2":"19","y2":"12"}],["$","polyline",null,{"points":"12 5 19 12 12 19"}]]}]]}]]}] 12:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -30:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +30:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] f:null 14:[["$","title","0",{"children":"Why Mathematical Precision Beats Heuristics in Routing – Doormile"}],["$","meta","1",{"name":"description","content":"Most routing tools guess. We calculate. Powered by Google OR-Tools, MileTruth evaluates six parallel strategy universes to select the optimal route every time."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Technology,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/why-mathematical-precision-beats-heuristics-in-routing"}],["$","meta","6",{"property":"og:title","content":"Why Mathematical Precision Beats Heuristics in Routing"}],["$","meta","7",{"property":"og:description","content":"Most routing tools guess. We calculate. Powered by Google OR-Tools, MileTruth evaluates six parallel strategy universes to select the optimal route every time."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/why-mathematical-precision-beats-heuristics-in-routing"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-14.jpeg"}],["$","meta","11",{"property":"og:image:alt","content":"Why Mathematical Precision Beats Heuristics in Routing"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-08-07T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"Why Mathematical Precision Beats Heuristics in Routing"}],["$","meta","17",{"name":"twitter:description","content":"Most routing tools guess. We calculate. Powered by Google OR-Tools, MileTruth evaluates six parallel strategy universes to select the optimal route every time."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-14.jpeg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L30","23",{}]] diff --git a/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next._head.txt b/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next._head.txt index 6c634db..4ba6fa7 100644 --- a/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next._head.txt +++ b/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Why Mathematical Precision Beats Heuristics in Routing – Doormile"}],["$","meta","1",{"name":"description","content":"Most routing tools guess. We calculate. Powered by Google OR-Tools, MileTruth evaluates six parallel strategy universes to select the optimal route every time."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Technology,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/why-mathematical-precision-beats-heuristics-in-routing"}],["$","meta","6",{"property":"og:title","content":"Why Mathematical Precision Beats Heuristics in Routing"}],["$","meta","7",{"property":"og:description","content":"Most routing tools guess. We calculate. Powered by Google OR-Tools, MileTruth evaluates six parallel strategy universes to select the optimal route every time."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/why-mathematical-precision-beats-heuristics-in-routing"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-14.jpeg"}],["$","meta","11",{"property":"og:image:alt","content":"Why Mathematical Precision Beats Heuristics in Routing"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-08-07T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"Why Mathematical Precision Beats Heuristics in Routing"}],["$","meta","17",{"name":"twitter:description","content":"Most routing tools guess. We calculate. Powered by Google OR-Tools, MileTruth evaluates six parallel strategy universes to select the optimal route every time."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-14.jpeg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Why Mathematical Precision Beats Heuristics in Routing – Doormile"}],["$","meta","1",{"name":"description","content":"Most routing tools guess. We calculate. Powered by Google OR-Tools, MileTruth evaluates six parallel strategy universes to select the optimal route every time."}],["$","meta","2",{"name":"author","content":"Doormile Team"}],["$","meta","3",{"name":"keywords","content":"Technology,last-mile logistics,EV fleet,MileTruth,route optimisation"}],["$","meta","4",{"name":"robots","content":"index, follow"}],["$","link","5",{"rel":"canonical","href":"https://www.doormile.com/blog/why-mathematical-precision-beats-heuristics-in-routing"}],["$","meta","6",{"property":"og:title","content":"Why Mathematical Precision Beats Heuristics in Routing"}],["$","meta","7",{"property":"og:description","content":"Most routing tools guess. We calculate. Powered by Google OR-Tools, MileTruth evaluates six parallel strategy universes to select the optimal route every time."}],["$","meta","8",{"property":"og:url","content":"https://www.doormile.com/blog/why-mathematical-precision-beats-heuristics-in-routing"}],["$","meta","9",{"property":"og:site_name","content":"Doormile"}],["$","meta","10",{"property":"og:image","content":"https://www.doormile.com/images/blog-post-pic-14.jpeg"}],["$","meta","11",{"property":"og:image:alt","content":"Why Mathematical Precision Beats Heuristics in Routing"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2025-08-07T00:00:00.000Z"}],["$","meta","14",{"property":"article:author","content":"Doormile Team"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"Why Mathematical Precision Beats Heuristics in Routing"}],["$","meta","17",{"name":"twitter:description","content":"Most routing tools guess. We calculate. Powered by Google OR-Tools, MileTruth evaluates six parallel strategy universes to select the optimal route every time."}],["$","meta","18",{"name":"twitter:image","content":"https://www.doormile.com/images/blog-post-pic-14.jpeg"}],["$","link","19",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","20",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","21",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","22",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","23",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next._index.txt b/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next._index.txt +++ b/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next._tree.txt b/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next._tree.txt index 58dfbc5..4cc5ed8 100644 --- a/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next._tree.txt +++ b/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"why-mathematical-precision-beats-heuristics-in-routing","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"blog","param":null,"prefetchHints":0,"slots":{"children":{"name":"slug","param":{"type":"d","key":"why-mathematical-precision-beats-heuristics-in-routing","siblings":null},"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next.blog.$d$slug.__PAGE__.txt b/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next.blog.$d$slug.__PAGE__.txt index 5c57640..77e3bb7 100644 --- a/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next.blog.$d$slug.__PAGE__.txt +++ b/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next.blog.$d$slug.__PAGE__.txt @@ -1,10 +1,10 @@ 1:"$Sreact.fragment" -8:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] -9:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] -13:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +8:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],""] +9:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"ScrollReveal"] +13:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 14:"$Sreact.suspense" -16:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] -17:I[23096,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] +16:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"Image"] +17:I[23096,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0a3t_oyn5arl-.js"],"default"] 2:T3d21, .dm-single-blog { --dm-red: #c01227; @@ -324,7 +324,7 @@ transition: background .2s ease, transform .2s ease; } .dm-blog-cta-btn:hover { background: var(--dm-red-hover); transform: translateY(-2px); } -0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"Why Mathematical Precision Beats Heuristics in Routing\",\"description\":\"Most routing tools guess. We calculate. Powered by Google OR-Tools, MileTruth evaluates six parallel strategy universes to select the optimal route every time.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-14.jpeg\"],\"datePublished\":\"2025-08-07T00:00:00.000Z\",\"dateModified\":\"2025-08-07T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/why-mathematical-precision-beats-heuristics-in-routing\"},\"articleSection\":\"Technology\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Why Mathematical Precision Beats Heuristics in Routing\",\"item\":\"https://www.doormile.com/blog/why-mathematical-precision-beats-heuristics-in-routing\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"Article\",\"headline\":\"Why Mathematical Precision Beats Heuristics in Routing\",\"description\":\"Most routing tools guess. We calculate. Powered by Google OR-Tools, MileTruth evaluates six parallel strategy universes to select the optimal route every time.\",\"image\":[\"https://www.doormile.com/images/blog-post-pic-14.jpeg\"],\"datePublished\":\"2025-08-07T00:00:00.000Z\",\"dateModified\":\"2025-08-07T00:00:00.000Z\",\"author\":{\"@type\":\"Organization\",\"name\":\"Doormile Team\",\"url\":\"https://www.doormile.com\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Doormile\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://www.doormile.com/images/cropped-image-2.png\"}},\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://www.doormile.com/blog/why-mathematical-precision-beats-heuristics-in-routing\"},\"articleSection\":\"Technology\"}"}}],["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https://www.doormile.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https://www.doormile.com/blog\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Why Mathematical Precision Beats Heuristics in Routing\",\"item\":\"https://www.doormile.com/blog/why-mathematical-precision-beats-heuristics-in-routing\"}]}"}}],["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":[["$","article",null,{"className":"dm-single-blog","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3","$L4"]}],"$L5"]}]}]]}],["$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 3:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card dm-banner-card","style":{"backgroundImage":"url(/images/blog-post-pic-14.jpeg)","--hero-overlay":"linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.46) 55%, rgba(0,0,0,0.60) 100%)"},"children":["$","div",null,{"className":"e-con-inner dm-banner-inner","children":[["$","span",null,{"className":"dm-banner-category","children":"Technology"}],["$","h1",null,{"className":"dm-banner-title","children":"Why Mathematical Precision Beats Heuristics in Routing"}]]}]}]}] 4:["$","div",null,{"className":"dm-blog-wrap","children":[["$","div",null,{"className":"dm-meta-bar","children":[["$","nav",null,{"className":"dm-meta-breadcrumb","aria-label":"Breadcrumb","children":["$","ol",null,{"children":[["$","li",null,{"children":["$","$L8",null,{"href":"/","children":"Home"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"children":["$","$L8",null,{"href":"/blog","children":"Blog"}]}],["$","li",null,{"aria-hidden":"true","className":"dm-meta-sep","children":"/"}],["$","li",null,{"aria-current":"page","className":"dm-meta-current","children":"Why Mathematical Precision Beats Heuristics in Routing"}]]}]}],["$","div",null,{"className":"dm-meta-items","children":[["$","span",null,{"className":"dm-meta-item dm-meta-author","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","path",null,{"d":"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}],["$","circle",null,{"cx":"12","cy":"7","r":"4"}]]}],"Doormile Team"]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","rect",null,{"x":"3","y":"4","width":"18","height":"18","rx":"2"}],["$","line",null,{"x1":"16","y1":"2","x2":"16","y2":"6"}],["$","line",null,{"x1":"8","y1":"2","x2":"8","y2":"6"}],["$","line",null,{"x1":"3","y1":"10","x2":"21","y2":"10"}]]}],["$","time",null,{"dateTime":"2025-08-07","children":"Aug 7, 2025"}]]}],["$","span",null,{"className":"dm-meta-item","children":[["$","svg",null,{"width":"15","height":"15","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"2","strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"9"}],["$","polyline",null,{"points":"12 7 12 12 15 14"}]]}],2," min read"]}]]}]]}],["$","div",null,{"className":"dm-blog-layout","children":[["$","div",null,{"className":"dm-blog-main","children":[["$","p",null,{"className":"dm-blog-intro","children":"Heuristics are fast to build and easy to trust — until they quietly cost you a vehicle a day. Mathematical optimisation asks more of the engine and gives more back: provably better routes, every dispatch, at scale."}],["$","div",null,{"className":"dm-article-body","children":[["$","$L9","0",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"In last-mile logistics, the difference between a good day and a missed SLA is rarely a single dramatic failure — it is the quiet accumulation of small inefficiencies. Why Mathematical Precision Beats Heuristics in Routing looks at how Doormile turns those margins into measurable advantage, and why a precision-first approach consistently outperforms guesswork on the road."}]}],["$","$L9","1",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h2",null,{"className":"dm-article-h2","children":"Why this matters for modern fleets"}]}],["$","$L9","2",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Every additional kilometre carries cost: fuel or charge, rider hours, vehicle wear, and the risk of a late delivery. When routing decisions are made on intuition or static rules, those costs compound across hundreds of stops. Treating the route as a solvable optimisation problem — not a best guess — is what separates scalable operations from ones that simply add more vehicles."}]}],["$","$L9","3",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","ul",null,{"className":"dm-article-ul","children":[["$","li","0",{"children":"Fewer vehicles deployed for the same delivery volume"}],["$","li","1",{"children":"Lower cost-per-drop through tighter, smarter sequencing"}],["$","li","2",{"children":"Predictable ETAs that protect customer trust and SLA targets"}],["$","li","3",{"children":"A cleaner, lower-emission footprint per parcel delivered"}]]}]}],["$","$L9","4",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","h3",null,{"className":"dm-article-h3","children":"From data to decision"}]}],["$","$L9","5",{"delay":0,"duration":0.6,"yOffset":20,"children":["$","p",null,{"className":"dm-article-p","children":"Doormile's MileTruth™ engine ingests orders, constraints and live conditions, then evaluates the routing problem across parallel strategy universes before committing to a plan. The result is a dispatch decision grounded in mathematics rather than heuristics — validated before a single rider leaves the hub."}]}],"$La","$Lb","$Lc","$Ld","$Le","$Lf"]}]]}],"$L10"]}]]}] 11:T1fa8, diff --git a/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next.blog.$d$slug.txt b/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next.blog.$d$slug.txt index 1334b06..19dcdca 100644 --- a/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next.blog.$d$slug.txt +++ b/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next.blog.$d$slug.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next.blog.txt b/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next.blog.txt index 1334b06..19dcdca 100644 --- a/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next.blog.txt +++ b/build/blog/why-mathematical-precision-beats-heuristics-in-routing/__next.blog.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/contact.html b/build/contact.html index 6174df3..a54cbde 100644 --- a/build/contact.html +++ b/build/contact.html @@ -1,4 +1,4 @@ -Contact Us – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

24/7 support & sales

Get In Touch

Have questions about our smart delivery network, pricing plans, or partner ecosystem? Let's build the future of logistics together.

Delivering Trust.Beyond Boundaries.

\ No newline at end of file + \ No newline at end of file diff --git a/build/contact.txt b/build/contact.txt index cc241d8..25d8a7c 100644 --- a/build/contact.txt +++ b/build/contact.txt @@ -1,25 +1,25 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -14:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +14:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] -:HL["/_next/static/chunks/0bq~re.i_tntr.css","style"] +:HL["/_next/static/chunks/08ym5qvn8x_06.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -c:T1c70, +c:T1bff, .contacts-hero-custom { background-color: #0b0b0b !important; background-image: url('/images/home2-banner-3.jpg') !important; @@ -97,9 +97,9 @@ c:T1c70, -webkit-backdrop-filter: none !important; border: none !important; border-radius: 0 !important; - padding: 0 16px !important; - max-width: 820px !important; - width: 90% !important; + padding: 0 24px !important; + max-width: 1500px !important; + width: 92% !important; box-shadow: none !important; text-align: center !important; } @@ -110,60 +110,53 @@ c:T1c70, border-color: transparent !important; } - /* Spaced kicker */ - .contacts-hero-kicker { - display: inline-flex !important; - align-items: center !important; - gap: 12px !important; - margin-bottom: 24px !important; - } - - .contacts-hero-kicker-line { - display: block !important; - width: 24px !important; - height: 1.5px !important; - background: #C01227 !important; - border-radius: 1px !important; - } - - .contacts-hero-kicker-text { - font-size: 13px !important; - font-weight: 850 !important; - letter-spacing: 4px !important; - color: #C01227 !important; - text-transform: uppercase !important; - font-family: var(--font-manrope), "Manrope", sans-serif !important; - } - - /* Bold modern typography */ + /* Hero headline — large, light, reference-matched display type. + Size scales with the viewport so the line-to-container width ratio + stays constant; the cap keeps the longest line inside the 1500px + container (with nowrap on desktop) so it can never overflow/clip. */ .contacts-hero-title { - font-size: clamp(34px, 5.2vw, 62px) !important; - font-weight: 850 !important; - line-height: 1.15 !important; + font-size: clamp(34px, 5.9vw, 98px) !important; + font-weight: 400 !important; + line-height: 0.95 !important; color: #ffffff !important; text-transform: uppercase !important; - letter-spacing: -1.8px !important; - margin: 0 0 20px 0 !important; + letter-spacing: -0.02em !important; + margin: 0 0 28px 0 !important; font-family: var(--font-manrope), "Manrope", sans-serif !important; } + .contacts-hero-title-line { + display: block !important; + } + + /* Keep each line intact on desktop — never split SYSTEM or PROMISE/KEPT */ + @media (min-width: 1024px) { + .contacts-hero-title-line { + white-space: nowrap !important; + } + } + .contacts-hero-title-highlight { - background: linear-gradient(135deg, #ffffff 40%, #c01227 100%) !important; - -webkit-background-clip: text !important; - -webkit-text-fill-color: transparent !important; + color: #c01227 !important; } /* Description text */ .contacts-hero-desc { - font-size: clamp(15px, 1.22vw, 18px) !important; + font-size: clamp(15px, 1.3vw, 19px) !important; line-height: 1.6 !important; - color: rgba(255, 255, 255, 0.75) !important; - max-width: 600px !important; - margin: 0 auto 36px auto !important; + color: rgba(255, 255, 255, 0.82) !important; + max-width: 640px !important; + margin: 0 auto 24px auto !important; font-weight: 500 !important; font-family: var(--font-manrope), "Manrope", sans-serif !important; } + .contacts-hero-desc-trademark { + color: #ffffff !important; + font-weight: 700 !important; + white-space: nowrap !important; + } + /* Breadcrumb capsule */ .contacts-hero-breadcrumbs { display: inline-flex !important; @@ -216,14 +209,17 @@ c:T1c70, padding: 0 16px !important; width: 95% !important; } + .contacts-hero-title { + letter-spacing: -1px !important; + } } - 0:{"P":null,"c":["","contact"],"q":"","i":false,"f":[[["",{"children":["contact",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"41","className":"elementor elementor-41","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$c"}}],"$Ld"],"$Le"]}]}]}]}],["$Lf","$L10"],"$L11"]}],{},null,false,null]},null,false,"$@12"]},null,false,null],"$L13",false]],"m":"$undefined","G":["$14",["$L15"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -17:I[23466,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yeyoeh5fs0l6.js"],"default"] -18:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] + 0:{"P":null,"c":["","contact"],"q":"","i":false,"f":[[["",{"children":["contact",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"41","className":"elementor elementor-41","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$c"}}],"$Ld"],"$Le"]}]}]}]}],["$Lf","$L10"],"$L11"]}],{},null,false,null]},null,false,"$@12"]},null,false,null],"$L13",false]],"m":"$undefined","G":["$14",["$L15"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +17:I[23466,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/15oii2oi_2o7g.js"],"default"] +18:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 19:"$Sreact.suspense" -1c:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -1e:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -d:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card contacts-hero-custom","children":["$","div",null,{"className":"contacts-hero-card-custom","children":[["$","div",null,{"className":"contacts-hero-bg-overlay"}],["$","div",null,{"className":"contacts-hero-grid"}],["$","div",null,{"className":"contacts-hero-glow-red"}],["$","div",null,{"className":"contacts-hero-glow-blue"}],["$","div",null,{"className":"contacts-hero-glass-card","children":[["$","div",null,{"className":"contacts-hero-kicker","children":[["$","span",null,{"className":"contacts-hero-kicker-line"}],["$","span",null,{"className":"contacts-hero-kicker-text","children":"24/7 support & sales"}],["$","span",null,{"className":"contacts-hero-kicker-line"}]]}],["$","h1",null,{"className":"contacts-hero-title","children":["Get In ",["$","span",null,{"className":"contacts-hero-title-highlight","children":"Touch"}]]}],["$","p",null,{"className":"contacts-hero-desc","children":"Have questions about our smart delivery network, pricing plans, or partner ecosystem? Let's build the future of logistics together."}]]}]]}]}]}] +1c:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +1e:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +d:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card contacts-hero-custom","children":["$","div",null,{"className":"contacts-hero-card-custom","children":[["$","div",null,{"className":"contacts-hero-bg-overlay"}],["$","div",null,{"className":"contacts-hero-grid"}],["$","div",null,{"className":"contacts-hero-glow-red"}],["$","div",null,{"className":"contacts-hero-glow-blue"}],["$","div",null,{"className":"contacts-hero-glass-card","children":["$","h1",null,{"className":"contacts-hero-title","children":[["$","span",null,{"className":"contacts-hero-title-line","children":"Delivering Trust."}],["$","span",null,{"className":"contacts-hero-title-line","children":["Beyond ",["$","span",null,{"className":"contacts-hero-title-highlight","children":"Boundaries."}]]}]]}]}]]}]}]}] 16:T6a8, .elementor-element-7304a53 { --padding-left: 20px; @@ -265,14 +261,14 @@ d:["$","div",null,{"className":"custom-standard-hero-container","children":["$", .elementor-element-7304a53 .elementor-custom-embed { height: 360px !important; } } e:["$","div",null,{"className":"elementor-element elementor-element-7304a53 e-con-full e-flex cut-corner-no sticky-container-off e-con e-parent","data-id":"7304a53","data-element_type":"container","data-e-type":"container","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$16"}}],["$","div",null,{"className":"elementor-element elementor-element-5a3eed4 elementor-widget","data-id":"5a3eed4","data-element_type":"widget","data-e-type":"widget","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"elementor-custom-embed","style":{"width":"100%","height":"500px"},"children":["$","$L17",null,{}]}]}]}]]}] -f:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0bq~re.i_tntr.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] -10:["$","script","script-0",{"src":"/_next/static/chunks/0yeyoeh5fs0l6.js","async":true,"nonce":"$undefined"}] +f:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/08ym5qvn8x_06.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +10:["$","script","script-0",{"src":"/_next/static/chunks/15oii2oi_2o7g.js","async":true,"nonce":"$undefined"}] 11:["$","$L18",null,{"children":["$","$19",null,{"name":"Next.MetadataOutlet","children":"$@1a"}]}] 1b:[] 12:"$W1b" 13:["$","$1","h",{"children":[null,["$","$L1c",null,{"children":"$L1d"}],["$","div",null,{"hidden":true,"children":["$","$L1e",null,{"children":["$","$19",null,{"name":"Next.Metadata","children":"$L1f"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -15:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +15:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] 1d:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -20:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +20:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 1a:null 1f:[["$","title","0",{"children":"Contact Us – Doormile"}],["$","meta","1",{"name":"description","content":"Get in touch with Doormile's last-mile logistics team. Call us, email, visit our Gachibowli, Hyderabad office, or drop a message."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L20","7",{}]] diff --git a/build/contact/__next._full.txt b/build/contact/__next._full.txt index cc241d8..25d8a7c 100644 --- a/build/contact/__next._full.txt +++ b/build/contact/__next._full.txt @@ -1,25 +1,25 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -14:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +14:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] -:HL["/_next/static/chunks/0bq~re.i_tntr.css","style"] +:HL["/_next/static/chunks/08ym5qvn8x_06.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -c:T1c70, +c:T1bff, .contacts-hero-custom { background-color: #0b0b0b !important; background-image: url('/images/home2-banner-3.jpg') !important; @@ -97,9 +97,9 @@ c:T1c70, -webkit-backdrop-filter: none !important; border: none !important; border-radius: 0 !important; - padding: 0 16px !important; - max-width: 820px !important; - width: 90% !important; + padding: 0 24px !important; + max-width: 1500px !important; + width: 92% !important; box-shadow: none !important; text-align: center !important; } @@ -110,60 +110,53 @@ c:T1c70, border-color: transparent !important; } - /* Spaced kicker */ - .contacts-hero-kicker { - display: inline-flex !important; - align-items: center !important; - gap: 12px !important; - margin-bottom: 24px !important; - } - - .contacts-hero-kicker-line { - display: block !important; - width: 24px !important; - height: 1.5px !important; - background: #C01227 !important; - border-radius: 1px !important; - } - - .contacts-hero-kicker-text { - font-size: 13px !important; - font-weight: 850 !important; - letter-spacing: 4px !important; - color: #C01227 !important; - text-transform: uppercase !important; - font-family: var(--font-manrope), "Manrope", sans-serif !important; - } - - /* Bold modern typography */ + /* Hero headline — large, light, reference-matched display type. + Size scales with the viewport so the line-to-container width ratio + stays constant; the cap keeps the longest line inside the 1500px + container (with nowrap on desktop) so it can never overflow/clip. */ .contacts-hero-title { - font-size: clamp(34px, 5.2vw, 62px) !important; - font-weight: 850 !important; - line-height: 1.15 !important; + font-size: clamp(34px, 5.9vw, 98px) !important; + font-weight: 400 !important; + line-height: 0.95 !important; color: #ffffff !important; text-transform: uppercase !important; - letter-spacing: -1.8px !important; - margin: 0 0 20px 0 !important; + letter-spacing: -0.02em !important; + margin: 0 0 28px 0 !important; font-family: var(--font-manrope), "Manrope", sans-serif !important; } + .contacts-hero-title-line { + display: block !important; + } + + /* Keep each line intact on desktop — never split SYSTEM or PROMISE/KEPT */ + @media (min-width: 1024px) { + .contacts-hero-title-line { + white-space: nowrap !important; + } + } + .contacts-hero-title-highlight { - background: linear-gradient(135deg, #ffffff 40%, #c01227 100%) !important; - -webkit-background-clip: text !important; - -webkit-text-fill-color: transparent !important; + color: #c01227 !important; } /* Description text */ .contacts-hero-desc { - font-size: clamp(15px, 1.22vw, 18px) !important; + font-size: clamp(15px, 1.3vw, 19px) !important; line-height: 1.6 !important; - color: rgba(255, 255, 255, 0.75) !important; - max-width: 600px !important; - margin: 0 auto 36px auto !important; + color: rgba(255, 255, 255, 0.82) !important; + max-width: 640px !important; + margin: 0 auto 24px auto !important; font-weight: 500 !important; font-family: var(--font-manrope), "Manrope", sans-serif !important; } + .contacts-hero-desc-trademark { + color: #ffffff !important; + font-weight: 700 !important; + white-space: nowrap !important; + } + /* Breadcrumb capsule */ .contacts-hero-breadcrumbs { display: inline-flex !important; @@ -216,14 +209,17 @@ c:T1c70, padding: 0 16px !important; width: 95% !important; } + .contacts-hero-title { + letter-spacing: -1px !important; + } } - 0:{"P":null,"c":["","contact"],"q":"","i":false,"f":[[["",{"children":["contact",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"41","className":"elementor elementor-41","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$c"}}],"$Ld"],"$Le"]}]}]}]}],["$Lf","$L10"],"$L11"]}],{},null,false,null]},null,false,"$@12"]},null,false,null],"$L13",false]],"m":"$undefined","G":["$14",["$L15"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -17:I[23466,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yeyoeh5fs0l6.js"],"default"] -18:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] + 0:{"P":null,"c":["","contact"],"q":"","i":false,"f":[[["",{"children":["contact",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"41","className":"elementor elementor-41","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$c"}}],"$Ld"],"$Le"]}]}]}]}],["$Lf","$L10"],"$L11"]}],{},null,false,null]},null,false,"$@12"]},null,false,null],"$L13",false]],"m":"$undefined","G":["$14",["$L15"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +17:I[23466,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/15oii2oi_2o7g.js"],"default"] +18:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 19:"$Sreact.suspense" -1c:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -1e:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -d:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card contacts-hero-custom","children":["$","div",null,{"className":"contacts-hero-card-custom","children":[["$","div",null,{"className":"contacts-hero-bg-overlay"}],["$","div",null,{"className":"contacts-hero-grid"}],["$","div",null,{"className":"contacts-hero-glow-red"}],["$","div",null,{"className":"contacts-hero-glow-blue"}],["$","div",null,{"className":"contacts-hero-glass-card","children":[["$","div",null,{"className":"contacts-hero-kicker","children":[["$","span",null,{"className":"contacts-hero-kicker-line"}],["$","span",null,{"className":"contacts-hero-kicker-text","children":"24/7 support & sales"}],["$","span",null,{"className":"contacts-hero-kicker-line"}]]}],["$","h1",null,{"className":"contacts-hero-title","children":["Get In ",["$","span",null,{"className":"contacts-hero-title-highlight","children":"Touch"}]]}],["$","p",null,{"className":"contacts-hero-desc","children":"Have questions about our smart delivery network, pricing plans, or partner ecosystem? Let's build the future of logistics together."}]]}]]}]}]}] +1c:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +1e:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +d:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card contacts-hero-custom","children":["$","div",null,{"className":"contacts-hero-card-custom","children":[["$","div",null,{"className":"contacts-hero-bg-overlay"}],["$","div",null,{"className":"contacts-hero-grid"}],["$","div",null,{"className":"contacts-hero-glow-red"}],["$","div",null,{"className":"contacts-hero-glow-blue"}],["$","div",null,{"className":"contacts-hero-glass-card","children":["$","h1",null,{"className":"contacts-hero-title","children":[["$","span",null,{"className":"contacts-hero-title-line","children":"Delivering Trust."}],["$","span",null,{"className":"contacts-hero-title-line","children":["Beyond ",["$","span",null,{"className":"contacts-hero-title-highlight","children":"Boundaries."}]]}]]}]}]]}]}]}] 16:T6a8, .elementor-element-7304a53 { --padding-left: 20px; @@ -265,14 +261,14 @@ d:["$","div",null,{"className":"custom-standard-hero-container","children":["$", .elementor-element-7304a53 .elementor-custom-embed { height: 360px !important; } } e:["$","div",null,{"className":"elementor-element elementor-element-7304a53 e-con-full e-flex cut-corner-no sticky-container-off e-con e-parent","data-id":"7304a53","data-element_type":"container","data-e-type":"container","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$16"}}],["$","div",null,{"className":"elementor-element elementor-element-5a3eed4 elementor-widget","data-id":"5a3eed4","data-element_type":"widget","data-e-type":"widget","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"elementor-custom-embed","style":{"width":"100%","height":"500px"},"children":["$","$L17",null,{}]}]}]}]]}] -f:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0bq~re.i_tntr.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] -10:["$","script","script-0",{"src":"/_next/static/chunks/0yeyoeh5fs0l6.js","async":true,"nonce":"$undefined"}] +f:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/08ym5qvn8x_06.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +10:["$","script","script-0",{"src":"/_next/static/chunks/15oii2oi_2o7g.js","async":true,"nonce":"$undefined"}] 11:["$","$L18",null,{"children":["$","$19",null,{"name":"Next.MetadataOutlet","children":"$@1a"}]}] 1b:[] 12:"$W1b" 13:["$","$1","h",{"children":[null,["$","$L1c",null,{"children":"$L1d"}],["$","div",null,{"hidden":true,"children":["$","$L1e",null,{"children":["$","$19",null,{"name":"Next.Metadata","children":"$L1f"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -15:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +15:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] 1d:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -20:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +20:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 1a:null 1f:[["$","title","0",{"children":"Contact Us – Doormile"}],["$","meta","1",{"name":"description","content":"Get in touch with Doormile's last-mile logistics team. Call us, email, visit our Gachibowli, Hyderabad office, or drop a message."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L20","7",{}]] diff --git a/build/contact/__next._head.txt b/build/contact/__next._head.txt index ada1ce5..e4afa3c 100644 --- a/build/contact/__next._head.txt +++ b/build/contact/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Contact Us – Doormile"}],["$","meta","1",{"name":"description","content":"Get in touch with Doormile's last-mile logistics team. Call us, email, visit our Gachibowli, Hyderabad office, or drop a message."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Contact Us – Doormile"}],["$","meta","1",{"name":"description","content":"Get in touch with Doormile's last-mile logistics team. Call us, email, visit our Gachibowli, Hyderabad office, or drop a message."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/contact/__next._index.txt b/build/contact/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/contact/__next._index.txt +++ b/build/contact/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/contact/__next._tree.txt b/build/contact/__next._tree.txt index b0ba266..4781c62 100644 --- a/build/contact/__next._tree.txt +++ b/build/contact/__next._tree.txt @@ -1,10 +1,10 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] -:HL["/_next/static/chunks/0bq~re.i_tntr.css","style"] +:HL["/_next/static/chunks/08ym5qvn8x_06.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"contact","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"contact","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/contact/__next.contact.__PAGE__.txt b/build/contact/__next.contact.__PAGE__.txt index 33b8225..f058a3a 100644 --- a/build/contact/__next.contact.__PAGE__.txt +++ b/build/contact/__next.contact.__PAGE__.txt @@ -1,9 +1,9 @@ 1:"$Sreact.fragment" -9:I[23466,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yeyoeh5fs0l6.js"],"default"] -a:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +9:I[23466,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/15oii2oi_2o7g.js"],"default"] +a:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] b:"$Sreact.suspense" -:HL["/_next/static/chunks/0bq~re.i_tntr.css","style"] -2:T1c70, +:HL["/_next/static/chunks/08ym5qvn8x_06.css","style"] +2:T1bff, .contacts-hero-custom { background-color: #0b0b0b !important; background-image: url('/images/home2-banner-3.jpg') !important; @@ -81,9 +81,9 @@ b:"$Sreact.suspense" -webkit-backdrop-filter: none !important; border: none !important; border-radius: 0 !important; - padding: 0 16px !important; - max-width: 820px !important; - width: 90% !important; + padding: 0 24px !important; + max-width: 1500px !important; + width: 92% !important; box-shadow: none !important; text-align: center !important; } @@ -94,60 +94,53 @@ b:"$Sreact.suspense" border-color: transparent !important; } - /* Spaced kicker */ - .contacts-hero-kicker { - display: inline-flex !important; - align-items: center !important; - gap: 12px !important; - margin-bottom: 24px !important; - } - - .contacts-hero-kicker-line { - display: block !important; - width: 24px !important; - height: 1.5px !important; - background: #C01227 !important; - border-radius: 1px !important; - } - - .contacts-hero-kicker-text { - font-size: 13px !important; - font-weight: 850 !important; - letter-spacing: 4px !important; - color: #C01227 !important; - text-transform: uppercase !important; - font-family: var(--font-manrope), "Manrope", sans-serif !important; - } - - /* Bold modern typography */ + /* Hero headline — large, light, reference-matched display type. + Size scales with the viewport so the line-to-container width ratio + stays constant; the cap keeps the longest line inside the 1500px + container (with nowrap on desktop) so it can never overflow/clip. */ .contacts-hero-title { - font-size: clamp(34px, 5.2vw, 62px) !important; - font-weight: 850 !important; - line-height: 1.15 !important; + font-size: clamp(34px, 5.9vw, 98px) !important; + font-weight: 400 !important; + line-height: 0.95 !important; color: #ffffff !important; text-transform: uppercase !important; - letter-spacing: -1.8px !important; - margin: 0 0 20px 0 !important; + letter-spacing: -0.02em !important; + margin: 0 0 28px 0 !important; font-family: var(--font-manrope), "Manrope", sans-serif !important; } + .contacts-hero-title-line { + display: block !important; + } + + /* Keep each line intact on desktop — never split SYSTEM or PROMISE/KEPT */ + @media (min-width: 1024px) { + .contacts-hero-title-line { + white-space: nowrap !important; + } + } + .contacts-hero-title-highlight { - background: linear-gradient(135deg, #ffffff 40%, #c01227 100%) !important; - -webkit-background-clip: text !important; - -webkit-text-fill-color: transparent !important; + color: #c01227 !important; } /* Description text */ .contacts-hero-desc { - font-size: clamp(15px, 1.22vw, 18px) !important; + font-size: clamp(15px, 1.3vw, 19px) !important; line-height: 1.6 !important; - color: rgba(255, 255, 255, 0.75) !important; - max-width: 600px !important; - margin: 0 auto 36px auto !important; + color: rgba(255, 255, 255, 0.82) !important; + max-width: 640px !important; + margin: 0 auto 24px auto !important; font-weight: 500 !important; font-family: var(--font-manrope), "Manrope", sans-serif !important; } + .contacts-hero-desc-trademark { + color: #ffffff !important; + font-weight: 700 !important; + white-space: nowrap !important; + } + /* Breadcrumb capsule */ .contacts-hero-breadcrumbs { display: inline-flex !important; @@ -200,9 +193,12 @@ b:"$Sreact.suspense" padding: 0 16px !important; width: 95% !important; } + .contacts-hero-title { + letter-spacing: -1px !important; + } } - 0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"41","className":"elementor elementor-41","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3"],"$L4"]}]}]}]}],["$L5","$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} -3:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card contacts-hero-custom","children":["$","div",null,{"className":"contacts-hero-card-custom","children":[["$","div",null,{"className":"contacts-hero-bg-overlay"}],["$","div",null,{"className":"contacts-hero-grid"}],["$","div",null,{"className":"contacts-hero-glow-red"}],["$","div",null,{"className":"contacts-hero-glow-blue"}],["$","div",null,{"className":"contacts-hero-glass-card","children":[["$","div",null,{"className":"contacts-hero-kicker","children":[["$","span",null,{"className":"contacts-hero-kicker-line"}],["$","span",null,{"className":"contacts-hero-kicker-text","children":"24/7 support & sales"}],["$","span",null,{"className":"contacts-hero-kicker-line"}]]}],["$","h1",null,{"className":"contacts-hero-title","children":["Get In ",["$","span",null,{"className":"contacts-hero-title-highlight","children":"Touch"}]]}],["$","p",null,{"className":"contacts-hero-desc","children":"Have questions about our smart delivery network, pricing plans, or partner ecosystem? Let's build the future of logistics together."}]]}]]}]}]}] + 0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"41","className":"elementor elementor-41","children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],"$L3"],"$L4"]}]}]}]}],["$L5","$L6"],"$L7"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} +3:["$","div",null,{"className":"custom-standard-hero-container","children":["$","div",null,{"className":"custom-standard-hero-card contacts-hero-custom","children":["$","div",null,{"className":"contacts-hero-card-custom","children":[["$","div",null,{"className":"contacts-hero-bg-overlay"}],["$","div",null,{"className":"contacts-hero-grid"}],["$","div",null,{"className":"contacts-hero-glow-red"}],["$","div",null,{"className":"contacts-hero-glow-blue"}],["$","div",null,{"className":"contacts-hero-glass-card","children":["$","h1",null,{"className":"contacts-hero-title","children":[["$","span",null,{"className":"contacts-hero-title-line","children":"Delivering Trust."}],["$","span",null,{"className":"contacts-hero-title-line","children":["Beyond ",["$","span",null,{"className":"contacts-hero-title-highlight","children":"Boundaries."}]]}]]}]}]]}]}]}] 8:T6a8, .elementor-element-7304a53 { --padding-left: 20px; @@ -244,7 +240,7 @@ b:"$Sreact.suspense" .elementor-element-7304a53 .elementor-custom-embed { height: 360px !important; } } 4:["$","div",null,{"className":"elementor-element elementor-element-7304a53 e-con-full e-flex cut-corner-no sticky-container-off e-con e-parent","data-id":"7304a53","data-element_type":"container","data-e-type":"container","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$8"}}],["$","div",null,{"className":"elementor-element elementor-element-5a3eed4 elementor-widget","data-id":"5a3eed4","data-element_type":"widget","data-e-type":"widget","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"elementor-custom-embed","style":{"width":"100%","height":"500px"},"children":["$","$L9",null,{}]}]}]}]]}] -5:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0bq~re.i_tntr.css","precedence":"next"}] -6:["$","script","script-0",{"src":"/_next/static/chunks/0yeyoeh5fs0l6.js","async":true}] +5:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/08ym5qvn8x_06.css","precedence":"next"}] +6:["$","script","script-0",{"src":"/_next/static/chunks/15oii2oi_2o7g.js","async":true}] 7:["$","$La",null,{"children":["$","$b",null,{"name":"Next.MetadataOutlet","children":"$@c"}]}] c:null diff --git a/build/contact/__next.contact.txt b/build/contact/__next.contact.txt index 1334b06..19dcdca 100644 --- a/build/contact/__next.contact.txt +++ b/build/contact/__next.contact.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/cookie-policy.html b/build/cookie-policy.html index cd254e7..8f6c0cf 100644 --- a/build/cookie-policy.html +++ b/build/cookie-policy.html @@ -1,4 +1,4 @@ -Cookie Policy – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

\ No newline at end of file + \ No newline at end of file diff --git a/build/cookie-policy.txt b/build/cookie-policy.txt index 7dc6fb7..223c199 100644 --- a/build/cookie-policy.txt +++ b/build/cookie-policy.txt @@ -1,16 +1,16 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -18,11 +18,11 @@ b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","cookie-policy"],"q":"","i":false,"f":[[["",{"children":["cookie-policy",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Cookie Policy","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","What Are Cookies?",{"children":["$","a",null,{"href":"#what-are-cookies","children":"What Are Cookies?"}]}],["$","li","Why We Use Cookies",{"children":["$","a",null,{"href":"#why-we-use-cookies","children":"Why We Use Cookies"}]}],["$","li","Types of Cookies We Use",{"children":["$","a",null,{"href":"#types-of-cookies-we-use","children":"Types of Cookies We Use"}]}],"$Lc","$Ld","$Le","$Lf"]}]}]]}]}],"$L10"]}],"$L11"]}]}]}]}],null,"$L12"]}],{},null,false,null]},null,false,"$@13"]},null,false,null],"$L14",false]],"m":"$undefined","G":["$15",["$L16"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -19:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +0:{"P":null,"c":["","cookie-policy"],"q":"","i":false,"f":[[["",{"children":["cookie-policy",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Cookie Policy","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","What Are Cookies?",{"children":["$","a",null,{"href":"#what-are-cookies","children":"What Are Cookies?"}]}],["$","li","Why We Use Cookies",{"children":["$","a",null,{"href":"#why-we-use-cookies","children":"Why We Use Cookies"}]}],["$","li","Types of Cookies We Use",{"children":["$","a",null,{"href":"#types-of-cookies-we-use","children":"Types of Cookies We Use"}]}],"$Lc","$Ld","$Le","$Lf"]}]}]]}]}],"$L10"]}],"$L11"]}]}]}]}],null,"$L12"]}],{},null,false,null]},null,false,"$@13"]},null,false,null],"$L14",false]],"m":"$undefined","G":["$15",["$L16"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +19:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 1a:"$Sreact.suspense" -1d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -1f:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +1d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +1f:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] c:["$","li","Managing Cookies",{"children":["$","a",null,{"href":"#managing-cookies","children":"Managing Cookies"}]}] d:["$","li","Cookie Consent",{"children":["$","a",null,{"href":"#cookie-consent","children":"Cookie Consent"}]}] e:["$","li","Policy Updates",{"children":["$","a",null,{"href":"#policy-updates","children":"Policy Updates"}]}] @@ -206,10 +206,10 @@ f:["$","li","Contact Us",{"children":["$","a",null,{"href":"#contact-us","childr 1c:[] 13:"$W1c" 14:["$","$1","h",{"children":[null,["$","$L1d",null,{"children":"$L1e"}],["$","div",null,{"hidden":true,"children":["$","$L1f",null,{"children":["$","$1a",null,{"name":"Next.Metadata","children":"$L20"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -16:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] -21:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],""] +16:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +21:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],""] 17:["$","section","Contact Us",{"id":"contact-us","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Contact Us"}],[["$","p","0",{"className":"dm-legal__p","children":["If you have questions regarding this Cookie Policy or our use of cookies, please contact us through our ",["$","$L21",null,{"href":"/contact","className":"dm-legal__link","children":"Contact page"}],"."]}]]]}] 1e:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -22:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +22:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 1b:null 20:[["$","title","0",{"children":"Cookie Policy – Doormile"}],["$","meta","1",{"name":"description","content":"How Doormile uses cookies and similar technologies when you visit our website, and how you can manage them."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L22","7",{}]] diff --git a/build/cookie-policy/__next._full.txt b/build/cookie-policy/__next._full.txt index 7dc6fb7..223c199 100644 --- a/build/cookie-policy/__next._full.txt +++ b/build/cookie-policy/__next._full.txt @@ -1,16 +1,16 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +15:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -18,11 +18,11 @@ b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","cookie-policy"],"q":"","i":false,"f":[[["",{"children":["cookie-policy",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Cookie Policy","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","What Are Cookies?",{"children":["$","a",null,{"href":"#what-are-cookies","children":"What Are Cookies?"}]}],["$","li","Why We Use Cookies",{"children":["$","a",null,{"href":"#why-we-use-cookies","children":"Why We Use Cookies"}]}],["$","li","Types of Cookies We Use",{"children":["$","a",null,{"href":"#types-of-cookies-we-use","children":"Types of Cookies We Use"}]}],"$Lc","$Ld","$Le","$Lf"]}]}]]}]}],"$L10"]}],"$L11"]}]}]}]}],null,"$L12"]}],{},null,false,null]},null,false,"$@13"]},null,false,null],"$L14",false]],"m":"$undefined","G":["$15",["$L16"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -19:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +0:{"P":null,"c":["","cookie-policy"],"q":"","i":false,"f":[[["",{"children":["cookie-policy",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Cookie Policy","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","What Are Cookies?",{"children":["$","a",null,{"href":"#what-are-cookies","children":"What Are Cookies?"}]}],["$","li","Why We Use Cookies",{"children":["$","a",null,{"href":"#why-we-use-cookies","children":"Why We Use Cookies"}]}],["$","li","Types of Cookies We Use",{"children":["$","a",null,{"href":"#types-of-cookies-we-use","children":"Types of Cookies We Use"}]}],"$Lc","$Ld","$Le","$Lf"]}]}]]}]}],"$L10"]}],"$L11"]}]}]}]}],null,"$L12"]}],{},null,false,null]},null,false,"$@13"]},null,false,null],"$L14",false]],"m":"$undefined","G":["$15",["$L16"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +19:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 1a:"$Sreact.suspense" -1d:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -1f:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +1d:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +1f:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] c:["$","li","Managing Cookies",{"children":["$","a",null,{"href":"#managing-cookies","children":"Managing Cookies"}]}] d:["$","li","Cookie Consent",{"children":["$","a",null,{"href":"#cookie-consent","children":"Cookie Consent"}]}] e:["$","li","Policy Updates",{"children":["$","a",null,{"href":"#policy-updates","children":"Policy Updates"}]}] @@ -206,10 +206,10 @@ f:["$","li","Contact Us",{"children":["$","a",null,{"href":"#contact-us","childr 1c:[] 13:"$W1c" 14:["$","$1","h",{"children":[null,["$","$L1d",null,{"children":"$L1e"}],["$","div",null,{"hidden":true,"children":["$","$L1f",null,{"children":["$","$1a",null,{"name":"Next.Metadata","children":"$L20"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -16:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] -21:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],""] +16:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +21:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],""] 17:["$","section","Contact Us",{"id":"contact-us","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Contact Us"}],[["$","p","0",{"className":"dm-legal__p","children":["If you have questions regarding this Cookie Policy or our use of cookies, please contact us through our ",["$","$L21",null,{"href":"/contact","className":"dm-legal__link","children":"Contact page"}],"."]}]]]}] 1e:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -22:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +22:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 1b:null 20:[["$","title","0",{"children":"Cookie Policy – Doormile"}],["$","meta","1",{"name":"description","content":"How Doormile uses cookies and similar technologies when you visit our website, and how you can manage them."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L22","7",{}]] diff --git a/build/cookie-policy/__next._head.txt b/build/cookie-policy/__next._head.txt index ee91c0f..1793b52 100644 --- a/build/cookie-policy/__next._head.txt +++ b/build/cookie-policy/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Cookie Policy – Doormile"}],["$","meta","1",{"name":"description","content":"How Doormile uses cookies and similar technologies when you visit our website, and how you can manage them."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Cookie Policy – Doormile"}],["$","meta","1",{"name":"description","content":"How Doormile uses cookies and similar technologies when you visit our website, and how you can manage them."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/cookie-policy/__next._index.txt b/build/cookie-policy/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/cookie-policy/__next._index.txt +++ b/build/cookie-policy/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/cookie-policy/__next._tree.txt b/build/cookie-policy/__next._tree.txt index a0f877b..d8fc6f5 100644 --- a/build/cookie-policy/__next._tree.txt +++ b/build/cookie-policy/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"cookie-policy","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"cookie-policy","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/cookie-policy/__next.cookie-policy.__PAGE__.txt b/build/cookie-policy/__next.cookie-policy.__PAGE__.txt index b00b617..83cbc3d 100644 --- a/build/cookie-policy/__next.cookie-policy.__PAGE__.txt +++ b/build/cookie-policy/__next.cookie-policy.__PAGE__.txt @@ -1,8 +1,8 @@ 1:"$Sreact.fragment" -a:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],""] -c:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +a:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],""] +c:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] d:"$Sreact.suspense" -0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Cookie Policy","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","What Are Cookies?",{"children":["$","a",null,{"href":"#what-are-cookies","children":"What Are Cookies?"}]}],["$","li","Why We Use Cookies",{"children":["$","a",null,{"href":"#why-we-use-cookies","children":"Why We Use Cookies"}]}],["$","li","Types of Cookies We Use",{"children":["$","a",null,{"href":"#types-of-cookies-we-use","children":"Types of Cookies We Use"}]}],["$","li","Managing Cookies",{"children":["$","a",null,{"href":"#managing-cookies","children":"Managing Cookies"}]}],["$","li","Cookie Consent",{"children":["$","a",null,{"href":"#cookie-consent","children":"Cookie Consent"}]}],["$","li","Policy Updates",{"children":["$","a",null,{"href":"#policy-updates","children":"Policy Updates"}]}],["$","li","Contact Us",{"children":["$","a",null,{"href":"#contact-us","children":"Contact Us"}]}]]}]}]]}]}],["$","div",null,{"className":"dm-legal__main","children":[["$","header",null,{"className":"dm-legal__hero","children":[["$","h1",null,{"className":"dm-legal__title","children":"Cookie Policy"}],["$","p",null,{"className":"dm-legal__updated","children":["Last Updated: ","June 2026"]}],["$","p",null,{"className":"dm-legal__lead","children":"This Cookie Policy explains how Doormile uses cookies and similar technologies when you visit our website."}]]}],["$","article",null,{"className":"dm-legal__content","children":[["$","section","What Are Cookies?",{"id":"what-are-cookies","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"What Are Cookies?"}],[["$","p","0",{"className":"dm-legal__p","children":"Cookies are small text files stored on your device that help websites remember information about your visit and improve the browsing experience."}]]]}],["$","section","Why We Use Cookies",{"id":"why-we-use-cookies","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Why We Use Cookies"}],[["$","p","0",{"className":"dm-legal__p","children":"We use cookies to:"}],["$","ul","1",{"className":"dm-legal__ul","children":[["$","li","0",{"children":"Enable essential website functionality"}],["$","li","1",{"children":"Improve website performance"}],["$","li","2",{"children":"Analyze visitor behavior and traffic patterns"}],["$","li","3",{"children":"Remember user preferences"}],["$","li","4",{"children":"Enhance overall user experience"}],["$","li","5",{"children":"Support website security"}]]}]]]}],["$","section","Types of Cookies We Use",{"id":"types-of-cookies-we-use","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Types of Cookies We Use"}],[["$","h3","0",{"className":"dm-legal__h3","children":"Essential Cookies"}],["$","p","1",{"className":"dm-legal__p","children":"These cookies are required for core website functionality and security features. The website may not function correctly without them."}],["$","h3","2",{"className":"dm-legal__h3","children":"Performance Cookies"}],["$","p","3",{"className":"dm-legal__p","children":"These cookies collect information about how visitors interact with the website and help us improve performance and usability."}],["$","h3","4",{"className":"dm-legal__h3","children":"Analytics Cookies"}],["$","p","5",{"className":"dm-legal__p","children":"Analytics cookies help us understand website traffic, visitor engagement, popular content, and user journeys."}],["$","h3","6",{"className":"dm-legal__h3","children":"Functional Cookies"}],["$","p","7",{"className":"dm-legal__p","children":"These cookies remember user preferences such as language, region, and other customization settings."}],"$L2","$L3"]]}],"$L4","$L5","$L6","$L7"]}]]}]]}],"$L8"]}]}]}]}],null,"$L9"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Cookie Policy","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","What Are Cookies?",{"children":["$","a",null,{"href":"#what-are-cookies","children":"What Are Cookies?"}]}],["$","li","Why We Use Cookies",{"children":["$","a",null,{"href":"#why-we-use-cookies","children":"Why We Use Cookies"}]}],["$","li","Types of Cookies We Use",{"children":["$","a",null,{"href":"#types-of-cookies-we-use","children":"Types of Cookies We Use"}]}],["$","li","Managing Cookies",{"children":["$","a",null,{"href":"#managing-cookies","children":"Managing Cookies"}]}],["$","li","Cookie Consent",{"children":["$","a",null,{"href":"#cookie-consent","children":"Cookie Consent"}]}],["$","li","Policy Updates",{"children":["$","a",null,{"href":"#policy-updates","children":"Policy Updates"}]}],["$","li","Contact Us",{"children":["$","a",null,{"href":"#contact-us","children":"Contact Us"}]}]]}]}]]}]}],["$","div",null,{"className":"dm-legal__main","children":[["$","header",null,{"className":"dm-legal__hero","children":[["$","h1",null,{"className":"dm-legal__title","children":"Cookie Policy"}],["$","p",null,{"className":"dm-legal__updated","children":["Last Updated: ","June 2026"]}],["$","p",null,{"className":"dm-legal__lead","children":"This Cookie Policy explains how Doormile uses cookies and similar technologies when you visit our website."}]]}],["$","article",null,{"className":"dm-legal__content","children":[["$","section","What Are Cookies?",{"id":"what-are-cookies","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"What Are Cookies?"}],[["$","p","0",{"className":"dm-legal__p","children":"Cookies are small text files stored on your device that help websites remember information about your visit and improve the browsing experience."}]]]}],["$","section","Why We Use Cookies",{"id":"why-we-use-cookies","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Why We Use Cookies"}],[["$","p","0",{"className":"dm-legal__p","children":"We use cookies to:"}],["$","ul","1",{"className":"dm-legal__ul","children":[["$","li","0",{"children":"Enable essential website functionality"}],["$","li","1",{"children":"Improve website performance"}],["$","li","2",{"children":"Analyze visitor behavior and traffic patterns"}],["$","li","3",{"children":"Remember user preferences"}],["$","li","4",{"children":"Enhance overall user experience"}],["$","li","5",{"children":"Support website security"}]]}]]]}],["$","section","Types of Cookies We Use",{"id":"types-of-cookies-we-use","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Types of Cookies We Use"}],[["$","h3","0",{"className":"dm-legal__h3","children":"Essential Cookies"}],["$","p","1",{"className":"dm-legal__p","children":"These cookies are required for core website functionality and security features. The website may not function correctly without them."}],["$","h3","2",{"className":"dm-legal__h3","children":"Performance Cookies"}],["$","p","3",{"className":"dm-legal__p","children":"These cookies collect information about how visitors interact with the website and help us improve performance and usability."}],["$","h3","4",{"className":"dm-legal__h3","children":"Analytics Cookies"}],["$","p","5",{"className":"dm-legal__p","children":"Analytics cookies help us understand website traffic, visitor engagement, popular content, and user journeys."}],["$","h3","6",{"className":"dm-legal__h3","children":"Functional Cookies"}],["$","p","7",{"className":"dm-legal__p","children":"These cookies remember user preferences such as language, region, and other customization settings."}],"$L2","$L3"]]}],"$L4","$L5","$L6","$L7"]}]]}]]}],"$L8"]}]}]}]}],null,"$L9"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 2:["$","h3","8",{"className":"dm-legal__h3","children":"Third-Party Cookies"}] 3:["$","p","9",{"className":"dm-legal__p","children":"Some third-party services integrated into our website, including analytics and performance monitoring tools, may place cookies on your device."}] 4:["$","section","Managing Cookies",{"id":"managing-cookies","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Managing Cookies"}],[["$","p","0",{"className":"dm-legal__p","children":"Most web browsers allow users to control, block, or delete cookies through browser settings. Please note that disabling cookies may impact certain website features and functionality."}]]]}] diff --git a/build/cookie-policy/__next.cookie-policy.txt b/build/cookie-policy/__next.cookie-policy.txt index 1334b06..19dcdca 100644 --- a/build/cookie-policy/__next.cookie-policy.txt +++ b/build/cookie-policy/__next.cookie-policy.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/how-it-works.html b/build/how-it-works.html index 733c39e..a733720 100644 --- a/build/how-it-works.html +++ b/build/how-it-works.html @@ -1,4 +1,4 @@ -How It Works – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

/ How It Works /

Doormile connects first, mid, and last mile into a seamless delivery experience

First Mile

Orders are picked up from warehouses with live tracking and quality checks.

Mid Mile

Smooth inter-city delivery through strategically located hubs with live tracking.

Last Mile

Packages are delivered to customers with real-time updates and proof of delivery.

/ Why Businesses Choose Doormile /

The connected approach delivers measurable advantages

Origin to Hub
01 / First Mile

Origin to Hub

We collect freight directly from your facility, optimise vehicle assignment in real time, and consolidate loads for maximum efficiency before they reach the hub.

  • AI-scheduled pickups
  • Dynamic load consolidation
  • Yard & dock management
Hub to Hub Transit
02 / Mid Mile

Hub to Hub Transit

Freight moves between hubs on optimised line-haul routes. Real-time tracking, cross-docking, and SLA monitoring keep every shipment on schedule.

  • Optimised line-haul routing
  • Cross-docking & sortation
  • Live SLA monitoring
Hub to Doorstep
03 / Last Mile

Hub to Doorstep

The final and most complex phase. We optimise multi-stop routes, deliver within precise windows, and capture digital proof of delivery at every door.

  • Multi-stop route optimisation
  • Precise delivery windows
  • Digital proof of delivery
/ Doormile Approach /
The Doormile Way

Smarter, Faster, Connected Logistics

We connect first mile and last mile into one seamless system, reducing delays and improving efficiency. With real-time tracking and digital workflows,
every delivery is faster, reliable, and fully transparent.

Seamless logistics powered by real-time tracking, digital processes, and reliable delivery execution.

End-to-End Protection

End-to-end visibility ensures every shipment stays secure and on schedule.

Proactive delay prevention

Real-time monitoring helps prevent delays before they impact deliveries.

Single owner, single promise

One unified system manages the entire delivery process seamlessly.

Dynamic AI-driven adjustments

AI-powered routing adapts instantly to improve speed and efficiency.

\ No newline at end of file + \ No newline at end of file diff --git a/build/how-it-works.txt b/build/how-it-works.txt index fe75c9b..ea0dbc6 100644 --- a/build/how-it-works.txt +++ b/build/how-it-works.txt @@ -1,17 +1,22 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -c:I[74528,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0goeli7p09ovo.js"],"default"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +c:I[74528,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b-q_kb9hrnlj.js"],"default"] +d:I[16948,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b-q_kb9hrnlj.js"],"default"] +e:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] +f:"$Sreact.suspense" +12:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +14:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +16:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -19,773 +24,10 @@ c:I[74528,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -d:T1d85, - /* ===================================================================== - How It Works · "Doormile connects first, mid, and last mile" section - Self-contained recreation of the original Elementor design - (originally Elementor section CSS, now inlined below + in /public/css/site.css). - Explicit flex/grid values because the Elementor framework reads them - from CSS custom properties that aren't set in this rebuild. - ===================================================================== */ - - /* Section shell — dark card fully inset from the edges. The page body is - white, so margins expose a white gutter on all sides and all four - corners are rounded, matching the reference. */ - .elementor-element-c36a604 { - display: flex; - flex-direction: column; - width: auto; - margin: 20px 20px 0 20px; - background-color: #1F1F1F; - border-radius: 25px 25px 0 0; - padding: 90px 0 0 0; - } - /* Boxed inner — centered, original content width */ - .elementor-element-c36a604 > .e-con-inner { - width: 100%; - max-width: 1630px; - margin: 0 auto; - padding: 0; - } - - /* Outer content wrapper — full width, stacks header then grid */ - .elementor-element-77d1265 { - display: flex; - flex-direction: column; - width: 100%; - max-width: 1630px; - margin: 0 auto; - padding: 0 20px; - box-sizing: border-box; - } - - /* Header row + its inner column (eyebrow + heading, top-left) */ - .elementor-element-b147420 { - display: flex; - flex-direction: row; - width: 100%; - } - .elementor-element-5bc90f3 { - display: flex; - flex-direction: column; - align-items: flex-start; - text-align: left; - } - - /* Eyebrow: "/ How It Works /" */ - .elementor-element-176d17f .logico-title { - font-size: 14px; - font-weight: 500; - line-height: 2.1429em; - color: #FFFFFF; - margin: 0; - } - - /* Main heading (h3 kit typography, white) - NOTE: theme-core sets ".logico-front-end h3:not([class*=logico-title-h]) - { color: var(--logico-dark-text-color) }" at specificity (0,2,1), which - renders this

dark. We prefix .logico-front-end - (-> (0,3,0)) to win, and force -webkit-text-fill-color (it had inherited - the dark currentColor). */ - .elementor-element-63a9de5 > .elementor-widget-container { - margin: 18px 0 0 0; - } - .logico-front-end .elementor-element-63a9de5 .logico-title { - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: 60px; - font-weight: 500; - line-height: 1.2em; - letter-spacing: -0.03em; - text-transform: uppercase; - color: #FFFFFF; - -webkit-text-fill-color: #FFFFFF; - opacity: 1; - visibility: visible; - margin: 0; - } - - /* 3-column card grid. - Original column-gap is 120px, but at laptop widths (1280–1500) that - squeezes columns so descriptions wrap to 3 lines. Reduced to 60px so - columns stay wide enough for ~2-line descriptions like the reference, - while keeping the 70px row-gap. */ - .elementor-element-4add972 { - display: grid; - /* Elementor's ".e-con.e-grid" (specificity 0,2,0) sets grid-template-columns - from this CSS var, which OUT-RANKS a plain ".elementor-element-4add972" - (0,1,0) rule — so the responsive breakpoints below MUST drive the var, - not grid-template-columns directly, or the grid never collapses on mobile. */ - --e-con-grid-template-columns: repeat(3, 1fr); - grid-template-columns: repeat(3, 1fr); - grid-auto-flow: row; - gap: 70px 60px; - width: 100%; - margin: 55px 0 0 0; - } - /* Each card stacks: truck / title / description, left-aligned */ - .elementor-element-4add972 > .e-con { - display: flex; - flex-direction: column; - align-items: flex-start; - text-align: left; - } - - /* Truck illustrations — exact original heights + baseline padding */ - .elementor-element-4add972 .elementor-icon-wrapper { - text-align: start; - } - .elementor-element-4add972 .elementor-icon svg { - width: auto; - max-width: 100%; - height: auto; - } - .elementor-element-74687fb > .elementor-widget-container { padding: 22px 0 0 0; } - .elementor-element-74687fb .elementor-icon svg { max-height: 139px; } - .elementor-element-fd9c57e .elementor-icon svg { max-height: 158px; } - .elementor-element-fbb1628 > .elementor-widget-container { padding: 25px 0 0 0; } - .elementor-element-fbb1628 .elementor-icon svg { max-height: 128px; } - - /* Card titles (First / Mid / Last Mile) */ - .elementor-element-d310968 > .elementor-widget-container, - .elementor-element-c582715 > .elementor-widget-container, - .elementor-element-fb01b90 > .elementor-widget-container { - margin: 25px 0 20px 0; - } - .elementor-element-d310968 .logico-title, - .elementor-element-c582715 .logico-title, - .elementor-element-fb01b90 .logico-title { - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: 20px; - font-weight: 700; - line-height: 24px; - letter-spacing: -0.03em; - color: #FFFFFF; - margin: 0; - } - - /* Card descriptions */ - .elementor-element-9989187 p, - .elementor-element-3ae1ce0 p, - .elementor-element-1057c22 p { - font-size: 18px; - font-weight: 400; - line-height: 1.6667em; - color: #FFFFFF; - margin: 0; - } - - /* ---- Responsive (grid breakpoints mirror the original section-miles3 - cascade: 3-col@120gap >1200, 3-col@40gap ≤1200, 2-col ≤1020, 1-col - ≤480). The ≤1200 step is what keeps columns wide enough at laptop - widths so descriptions stay ~2 lines and trucks stay proportionate. */ - @media (max-width: 1200px) { - .elementor-element-4add972 { gap: 70px 40px; } - .logico-front-end .elementor-element-63a9de5 .logico-title { font-size: clamp(40px, 5vw, 60px); } - } - @media (max-width: 1020px) { - .elementor-element-c36a604 { margin: 15px 15px 0 15px; padding: 76px 0 60px 0; } - .elementor-element-77d1265 { padding: 0 30px; } - .elementor-element-4add972 { --e-con-grid-template-columns: repeat(2, 1fr); grid-template-columns: repeat(2, 1fr); gap: 50px 40px; } - .logico-front-end .elementor-element-63a9de5 .logico-title { font-size: clamp(34px, 6vw, 52px); } - } - @media (max-width: 480px) { - .elementor-element-c36a604 { margin: 12px 12px 0 12px; border-radius: 20px 20px 0 0; padding: 70px 0 50px 0; } - .elementor-element-77d1265 { padding: 0 22px; } - .elementor-element-4add972 { --e-con-grid-template-columns: 1fr; grid-template-columns: 1fr; gap: 56px; } - .logico-front-end .elementor-element-63a9de5 .logico-title { font-size: clamp(30px, 9vw, 44px); } - } - 0:{"P":null,"c":["","how-it-works"],"q":"","i":false,"f":[[["",{"children":["how-it-works",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"59","className":"elementor elementor-59","children":[["$","$Lc",null,{}],[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$d"}}],"$Le"],"$Lf","$L10"]}]}]}]}],["$L11"],"$L12"]}],{},null,false,null]},null,false,"$@13"]},null,false,null],"$L14",false]],"m":"$undefined","G":["$15",["$L16"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -60:I[24911,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0goeli7p09ovo.js"],"default"] -61:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] -62:"$Sreact.suspense" -65:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -67:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -e:["$","div",null,{"className":"elementor-element elementor-element-c36a604 e-flex e-con-boxed cut-corner-no sticky-container-off e-con e-child","data-id":"c36a604","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"e-con-inner","children":["$","div",null,{"className":"elementor-element elementor-element-77d1265 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"77d1265","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-b147420 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"b147420","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-5bc90f3 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"5bc90f3","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-176d17f elementor-widget elementor-widget-logico_heading","data-id":"176d17f","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"/ How It Works /"}]}]}],["$","div",null,{"className":"elementor-element elementor-element-63a9de5 elementor-widget elementor-widget-logico_heading","data-id":"63a9de5","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","h3",null,{"className":"logico-title","children":"Doormile connects first, mid, and last mile into a seamless delivery experience"}]}]}]]}]}],["$","div",null,{"className":"elementor-element elementor-element-4add972 e-con-full e-grid cut-corner-no sticky-container-off e-con e-child","data-id":"4add972","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-e1670a9 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"e1670a9","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-74687fb elementor-view-default elementor-widget elementor-widget-icon","data-id":"74687fb","data-element_type":"widget","data-e-type":"widget","data-widget_type":"icon.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"elementor-icon-wrapper","children":["$","div",null,{"className":"elementor-icon","children":["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","width":"138","height":"139","viewBox":"0 0 138 139","fill":"none","children":[["$","g",null,{"clipPath":"url(#clip0_1_97412)","children":[["$","g",null,{"clipPath":"url(#clip1_1_97412)","children":[["$","path",null,{"d":"M106 57L137.999 75.4121V77.6922L137.084 78.2052L105.113 59.8217V57.513L106 57Z","fill":"#ffffff"}],["$","path",null,{"d":"M137.084 75.9257L137.999 75.4127V77.6928L137.084 78.2059L105.113 59.8223V57.5137L137.084 75.9257Z","fill":"#686868"}],["$","path",null,{"d":"M121.413 80.4003L107.258 86.1862L106.457 86.6422V82.6805L107.973 77.0371L118.925 70.7383L121.356 74.529L122.214 79.7733L121.413 80.4003Z","fill":"#ffffff"}],["$","path",null,{"d":"M121.413 80.4003L107.258 86.1862L106.457 86.6422V82.6805L107.973 77.0371L118.925 70.7383L121.356 74.529L122.214 79.7733L121.413 80.4003Z","fill":"#686868"}],["$","path",null,{"d":"M125.505 82.765L121.415 80.3994L120.586 75.2976L118.441 71.9629L122.559 74.3285L124.675 77.6632L125.505 82.765Z","fill":"#ffffff"}],["$","path",null,{"d":"M122.789 82.4522C122.789 80.8276 122.217 79.6875 121.273 79.146L118.528 77.5784C117.613 77.0369 116.326 77.1224 114.896 77.9489C112.065 79.5735 109.777 83.5353 109.777 86.7844C109.777 88.409 110.349 89.5491 111.293 90.0906L114.01 91.6582C114.953 92.1998 116.211 92.1142 117.641 91.2877C120.501 89.6631 122.789 85.7014 122.789 82.4522Z","fill":"#ffffff"}],"$L17","$L18","$L19","$L1a","$L1b","$L1c","$L1d","$L1e","$L1f","$L20","$L21"]}],"$L22","$L23","$L24","$L25","$L26","$L27","$L28","$L29","$L2a","$L2b","$L2c","$L2d","$L2e","$L2f","$L30","$L31","$L32","$L33","$L34","$L35","$L36","$L37","$L38","$L39","$L3a","$L3b","$L3c","$L3d","$L3e","$L3f","$L40","$L41","$L42","$L43","$L44","$L45","$L46","$L47","$L48","$L49","$L4a","$L4b","$L4c","$L4d","$L4e","$L4f","$L50","$L51","$L52","$L53","$L54","$L55","$L56","$L57","$L58"]}],"$L59"]}]}]}]}]}],"$L5a","$L5b"]}],"$L5c","$L5d"]}]]}]}]}] -5e:T1e53, - /* ===================================================================== - "Why Businesses Choose Doormile" — First / Mid / Last Mile stage cards. - Dark rounded card on the white page (consistent with the Miles3 - section), each stage shown with a photo, numbered red label, title, - description and a red-checkmark feature list. - Card titles are

; theme-core forces a dark color on bare headings - (.logico-front-end h3:not([class*=logico-title-h]) @ (0,2,1)), so the - white title rule is prefixed to outrank it. - ===================================================================== */ - .wcd-section { - display: flex; - flex-direction: column; - width: auto; - margin: -250px 20px 20px 20px; /* Snug pull-up overlap to touch Miles3 columns without covering their text! */ - background-color: #1F1F1F; - border-radius: 0 0 25px 25px; - padding: 50px 0 110px; - } - .wcd-inner { - width: 100%; - max-width: 1630px; - margin: 0 auto; - padding: 0 50px; - box-sizing: border-box; - } - /* Centered header block (eyebrow + heading) with a faint map backdrop */ - .wcd-head { - position: relative; - text-align: center; - margin: 0 0 70px; - } - @keyframes wcd-float { - 0% { transform: translateX(-50%) translateY(0px) scale(1); } - 50% { transform: translateX(-50%) translateY(-12px) scale(1.02); } - 100% { transform: translateX(-50%) translateY(0px) scale(1); } - } - .wcd-head::after { - content: ""; - position: absolute; - left: 50%; - top: 75%; /* Shifted down to the bottom of the header block to overlap the top of the cards */ - transform: translateX(-50%); - width: min(1180px, 95%); - aspect-ratio: 2 / 1; - background: url('/images/bg-map.png') center / contain no-repeat; - opacity: 0.06; /* Elegant faint visibility */ - filter: invert(1); /* Invert dark map dots to white/light-gray to make them visible on the #1F1F1F background */ - z-index: 0; - pointer-events: none; - animation: wcd-float 20s ease-in-out infinite; /* Premium floating map animation */ - } - .wcd-card-wrapper { - display: flex; - flex-direction: column; - height: 100%; - } - .wcd-eyebrow { - position: relative; - z-index: 1; - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: 14px; - font-weight: 500; - line-height: 2.1429em; - letter-spacing: 0.5px; - color: #FFFFFF; - margin: 0 0 18px; - } - .logico-front-end .wcd-section h2.wcd-heading { - position: relative; - z-index: 1; - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: clamp(34px, 4.4vw, 60px); - font-weight: 500; - line-height: 1.08; - letter-spacing: -0.03em; - text-transform: uppercase; - color: #FFFFFF; - -webkit-text-fill-color: #FFFFFF; - max-width: 1180px; - margin: 0 auto; - } - - .wcd-grid { - display: grid; - grid-template-columns: repeat(3, 1fr); - gap: 30px; - width: 100%; - } - - .wcd-card { - display: flex; - flex-direction: column; - background: rgba(255, 255, 255, 0.02); - border: 1px solid rgba(255, 255, 255, 0.08); - border-radius: 20px; - overflow: hidden; - transition: border-color 0.4s ease, box-shadow 0.4s ease, transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1); - } - .wcd-card:hover { - border-color: #c01227 !important; - box-shadow: 0 10px 30px rgba(192, 18, 39, 0.25) !important; - transform: translateY(-8px); - } - .wcd-card-media { - position: relative; - width: 100%; - aspect-ratio: 16 / 10; - overflow: hidden; - } - .wcd-card-media img { - object-fit: cover; - transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1); - } - .wcd-card:hover .wcd-card-media img { - transform: scale(1.06); - } - .wcd-card-body { - display: flex; - flex-direction: column; - flex: 1; - padding: 40px; - } - .wcd-card-label { - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: 14px; - font-weight: 700; - letter-spacing: 1px; - text-transform: uppercase; - color: #c01227; - margin: 0 0 20px; - } - .logico-front-end .wcd-section h3.wcd-card-title { - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: 32px; - font-weight: 700; - line-height: 1.1; - letter-spacing: -0.02em; - text-transform: uppercase; - color: #FFFFFF; - -webkit-text-fill-color: #FFFFFF; - margin: 0 0 22px; - } - .wcd-card-desc { - font-size: 17px; - font-weight: 400; - line-height: 1.6; - color: rgba(255, 255, 255, 0.6); - margin: 0 0 34px; - } - .wcd-card-points { - list-style: none; - margin: auto 0 0; - padding: 0; - display: flex; - flex-direction: column; - gap: 16px; - } - .wcd-section .wcd-card-points li { - /* Flex row so the check icon and its label always sit on the same line. - Scoped with .wcd-section to outrank the global ".logico-front-end ul li" - theme rule, which adds 1.7em padding + a fontello bullet icon. */ - display: flex; - align-items: flex-start; - gap: 12px; - padding-left: 0; - font-size: 16px; - font-weight: 700; - line-height: 1.3; - color: #FFFFFF; - } - /* Suppress the theme's default fontello list bullet - (.logico-front-end ul li:before) so only our circle-check SVG renders. */ - .wcd-section .wcd-card-points li::before { - content: none; - display: none; - } - /* Clean circle-check feature icon (inline SVG, see markup below) — replaces - the old border-based chevron. Brand red with thin, rounded strokes. */ - .wcd-card-points .wcd-check { - flex: 0 0 auto; - width: 18px; - height: 18px; - margin-top: 0.12em; - color: #c01227; - transition: transform 0.3s ease; - } - .wcd-card:hover .wcd-card-points .wcd-check { - transform: scale(1.1); - } - - @media (max-width: 1020px) { - /* No pull-up overlap on mobile/tablet: the Miles3 cards stack into a - 1–2 col layout, so a negative margin-top covers the last card's - text. Both sections share #1F1F1F + equal side margins, so butting - them at margin-top:0 keeps the seamless dark panel. */ - .wcd-section { margin: 0 15px 15px 15px; padding: 40px 0 80px; } - .wcd-inner { padding: 0 30px; } - .wcd-grid { grid-template-columns: 1fr; gap: 24px; } - .wcd-card-body { padding: 32px; } - .logico-front-end .wcd-section h3.wcd-card-title { font-size: 28px; } - } - @media (max-width: 480px) { - .wcd-section { margin: 0 12px 12px 12px; border-radius: 0 0 20px 20px; padding: 30px 0 64px; } - .wcd-inner { padding: 0 20px; } - .wcd-card-body { padding: 24px; } - } - f:[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$5e"}}],"$L5f"] -10:["$","$L60",null,{}] -11:["$","script","script-0",{"src":"/_next/static/chunks/0goeli7p09ovo.js","async":true,"nonce":"$undefined"}] -12:["$","$L61",null,{"children":["$","$62",null,{"name":"Next.MetadataOutlet","children":"$@63"}]}] -64:[] -13:"$W64" -14:["$","$1","h",{"children":[null,["$","$L65",null,{"children":"$L66"}],["$","div",null,{"hidden":true,"children":["$","$L67",null,{"children":["$","$62",null,{"name":"Next.Metadata","children":"$L68"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -16:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] -191:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0goeli7p09ovo.js"],"ScrollReveal"] -192:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0goeli7p09ovo.js"],"Image"] -17:["$","path",null,{"d":"M122.788 82.453C122.788 79.2039 120.501 77.8928 117.669 79.5174C114.838 81.142 112.551 85.1037 112.551 88.3529C112.551 91.6021 114.838 92.9131 117.669 91.2886C120.501 89.664 122.788 85.7022 122.788 82.453Z","fill":"#686868"}] -18:["$","path",null,{"d":"M120.844 83.5634C120.844 81.5398 119.415 80.7417 117.67 81.7393C115.897 82.7654 114.496 85.2165 114.496 87.2116C114.496 89.2352 115.926 90.0333 117.67 89.0357C119.415 88.0382 120.844 85.587 120.844 83.5634Z","fill":"#EAECF2"}] -19:["$","path",null,{"d":"M120.244 83.6203C120.244 81.8247 118.986 81.1121 117.413 81.9957C115.84 82.8792 114.582 85.0739 114.582 86.8695C114.582 88.6651 115.84 89.4061 117.413 88.4941C118.986 87.6105 120.244 85.4159 120.244 83.6203Z","fill":"#686868"}] -1a:["$","path",null,{"d":"M120.015 84.4467C120.015 83.1927 119.129 82.6796 118.013 83.3067C116.898 83.9337 116.012 85.4728 116.012 86.7554C116.012 88.0379 116.898 88.5225 118.013 87.8954C119.129 87.2399 120.015 85.7008 120.015 84.4467Z","fill":"#EAECF2"}] -69:T67b,M118.156 84.2757C118.042 84.3328 117.927 84.2758 117.927 84.1617C117.927 84.0192 118.013 83.8482 118.156 83.7912C118.27 83.7057 118.385 83.7627 118.385 83.9052C118.356 84.0192 118.27 84.1902 118.156 84.2757ZM118.356 87.2114C118.356 87.0689 118.242 87.0119 118.127 87.0974C118.013 87.1544 117.899 87.3254 117.899 87.4679C117.899 87.6104 117.984 87.6674 118.127 87.5819C118.27 87.5249 118.356 87.3539 118.356 87.2114ZM119.586 85.1023C119.7 85.0453 119.815 84.8743 119.815 84.7318C119.815 84.5893 119.729 84.5323 119.586 84.5893C119.471 84.6463 119.357 84.8173 119.357 84.9598C119.386 85.1023 119.471 85.1593 119.586 85.1023ZM116.698 86.7554C116.812 86.6984 116.926 86.5274 116.926 86.3849C116.926 86.2424 116.841 86.1854 116.698 86.2709C116.583 86.3279 116.469 86.4989 116.469 86.6414C116.469 86.7839 116.583 86.8409 116.698 86.7554ZM119.328 83.9907C119.414 83.8482 119.414 83.6772 119.328 83.6487C119.243 83.5917 119.1 83.6772 119.014 83.8197C118.928 83.9622 118.928 84.1332 119.014 84.1617C119.1 84.2187 119.243 84.1332 119.328 83.9907ZM117.269 87.5249C117.355 87.3824 117.355 87.2114 117.269 87.1829C117.184 87.1259 117.041 87.2114 116.955 87.3539C116.869 87.4964 116.869 87.6674 116.955 87.6959C117.069 87.7529 117.184 87.6674 117.269 87.5249ZM119.014 86.5274C119.1 86.5844 119.243 86.4989 119.328 86.3564C119.414 86.2139 119.414 86.0429 119.328 85.9858C119.243 85.9288 119.1 86.0144 119.014 86.1569C118.928 86.3279 118.928 86.4704 119.014 86.5274ZM116.983 85.3588C117.069 85.4158 117.212 85.3303 117.298 85.1878C117.384 85.0453 117.384 84.8743 117.298 84.8458C117.212 84.7888 117.069 84.8743 116.983 85.0168C116.898 85.1593 116.898 85.3018 116.983 85.3588Z1b:["$","path",null,{"d":"$69","fill":"#686868"}] -1c:["$","path",null,{"d":"M119.329 85.3017C119.329 84.7317 118.929 84.5037 118.414 84.7887C117.928 85.0737 117.527 85.7578 117.527 86.3563C117.527 86.9263 117.928 87.1544 118.414 86.8693C118.929 86.5843 119.329 85.9003 119.329 85.3017Z","fill":"#ffffff"}] -1d:["$","path",null,{"d":"M125.475 76.8946L123.044 73.1039L118.926 70.7383L106.602 76.2391L105.086 81.9109V85.8726L110.548 89.0078L111.377 88.5518V84.9606L114.866 78.7472L122.558 74.3295L124.674 77.6642L125.504 82.766L126.333 82.1389L125.475 76.8946Z","fill":"#ffffff"}] -1e:["$","path",null,{"d":"M125.503 82.7656L124.673 77.6638L122.557 74.3291L114.865 78.7468L111.376 84.9602V88.5514L110.547 89.0074V85.0457L112.091 79.4024L123.043 73.1035L125.474 76.8942L126.332 82.1385L125.503 82.7656Z","fill":"#686868"}] -1f:["$","path",null,{"d":"M105.114 81.9102L105 85.8149L110.548 89.0071V85.0453L105.114 81.9102Z","fill":"#ffffff"}] -20:["$","path",null,{"opacity":"0.5","d":"M105.114 81.9102L105 85.8149L110.548 89.0071V85.0453L105.114 81.9102Z","fill":"#686868"}] -21:["$","path",null,{"opacity":"0.5","d":"M112.092 79.402L110.548 85.0453L105.086 81.9101L106.602 76.2383L112.092 79.402Z","fill":"#686868"}] -22:["$","path",null,{"d":"M99.3148 0L31.0938 39.4392V86.7464L69.7788 109.089L138 69.6494V22.3754L99.3148 0Z","fill":"white"}] -23:["$","path",null,{"opacity":"0.4","d":"M137.998 22.375V69.6489L69.7773 109.088V61.8142L137.998 22.375Z","fill":"#686868"}] -24:["$","path",null,{"opacity":"0.2","d":"M31.0938 39.4395L69.7788 61.8149V109.089L31.0938 86.7466V39.4395Z","fill":"#686868"}] -25:["$","path",null,{"opacity":"0.5","d":"M37.0273 63.8398V90.1659L63.8782 105.669L61.9555 78.2478L37.0273 63.8398Z","fill":"#686868"}] -26:["$","path",null,{"d":"M7.52344 83.0273L8.45161 82.4961L10.6063 83.7576L11.5676 85.3843V91.1608L10.6063 91.6919L8.45161 90.4304L7.52344 88.8037V83.0273Z","fill":"#ffffff"}] -27:["$","path",null,{"opacity":"0.5","d":"M10.6063 83.7576L8.45161 82.4961L7.52344 83.0273V88.8037L7.65603 89.0693V84.0232L8.21957 83.7244L9.84388 84.654L10.3743 85.6167V90.7624L9.84388 91.0612L8.28587 90.1648L8.45161 90.4304L10.6063 91.6919L11.5676 91.1608V85.3843L10.6063 83.7576Z","fill":"#686868"}] -28:["$","path",null,{"d":"M11.5684 89.2343L10.375 88.8359V90.7614L13.9883 93.8156L15.0159 93.2181V90.6286L11.5684 89.2343Z","fill":"#ffffff"}] -29:["$","path",null,{"opacity":"0.5","d":"M13.9883 91.193L10.375 88.8359V90.7614L13.9883 93.8156V91.193Z","fill":"#686868"}] -2a:["$","path",null,{"d":"M15.0159 93.2183L13.9883 93.8159V91.1933L15.0159 90.6289V93.2183Z","fill":"#686868"}] -2b:["$","path",null,{"d":"M36.857 108.69L32.3984 116.424L45.3167 123.893L49.7752 116.16L36.857 108.69Z","fill":"#ffffff"}] -2c:["$","path",null,{"d":"M36.857 108.69L32.3984 116.424L45.3167 123.893L49.7752 116.16L36.857 108.69Z","fill":"#686868"}] -2d:["$","path",null,{"d":"M44.1534 123.829C44.1534 121.937 43.4904 120.642 42.4296 120.011L39.2805 118.185C38.2197 117.588 36.728 117.654 35.1037 118.617C31.8551 120.509 29.2031 125.09 29.2031 128.842C29.2031 130.734 29.8661 132.062 30.9269 132.659L34.0761 134.452C35.1368 135.083 36.6285 134.983 38.2529 134.054C41.5015 132.161 44.1534 127.58 44.1534 123.829Z","fill":"#ffffff"}] -2e:["$","path",null,{"d":"M44.1527 123.828C44.1527 120.076 41.5007 118.549 38.2521 120.442C35.0035 122.334 32.3516 126.915 32.3516 130.667C32.3516 134.418 35.0035 135.945 38.2521 134.053C41.5007 132.161 44.1527 127.579 44.1527 123.828Z","fill":"#686868"}] -2f:["$","path",null,{"d":"M41.8983 125.124C41.8983 122.8 40.274 121.837 38.2519 123.032C36.2298 124.194 34.6055 127.016 34.6055 129.34C34.6055 131.664 36.2298 132.627 38.2519 131.431C40.274 130.303 41.8983 127.448 41.8983 125.124Z","fill":"#EAECF2"}] -30:["$","path",null,{"d":"M41.2355 125.191C41.2355 123.099 39.777 122.269 37.9869 123.331C36.1968 124.361 34.7383 126.917 34.7383 128.975C34.7383 131.067 36.1968 131.897 37.9869 130.867C39.777 129.805 41.2355 127.282 41.2355 125.191Z","fill":"#686868"}] -31:["$","path",null,{"d":"M40.9379 126.153C40.9379 124.693 39.9102 124.095 38.6506 124.825C37.3909 125.556 36.3633 127.348 36.3633 128.809C36.3633 130.27 37.3909 130.867 38.6506 130.137C39.9102 129.407 40.9379 127.614 40.9379 126.153Z","fill":"#EAECF2"}] -6a:T66e,M38.8152 125.954C38.6826 126.021 38.55 125.954 38.55 125.821C38.55 125.655 38.6494 125.456 38.8152 125.39C38.9478 125.324 39.0804 125.39 39.0804 125.523C39.0472 125.655 38.9478 125.855 38.8152 125.954ZM39.0472 129.34C39.0472 129.174 38.9478 129.108 38.782 129.208C38.6494 129.274 38.5168 129.473 38.5168 129.639C38.5168 129.805 38.6163 129.872 38.782 129.772C38.9478 129.706 39.0472 129.506 39.0472 129.34ZM40.4726 126.884C40.6052 126.817 40.7378 126.618 40.7378 126.452C40.7378 126.286 40.6384 126.22 40.4726 126.319C40.34 126.386 40.2074 126.585 40.2074 126.751C40.2074 126.917 40.34 126.983 40.4726 126.884ZM37.1246 128.809C37.2572 128.743 37.3566 128.544 37.3898 128.378C37.3898 128.212 37.2903 128.145 37.1246 128.245C36.992 128.311 36.8594 128.511 36.8594 128.677C36.8925 128.843 36.992 128.909 37.1246 128.809ZM40.1411 125.622C40.2406 125.456 40.2406 125.257 40.1411 125.224C40.0417 125.158 39.876 125.257 39.7765 125.423C39.6771 125.589 39.6771 125.788 39.7765 125.821C39.9091 125.888 40.0748 125.788 40.1411 125.622ZM37.8207 129.706C37.9201 129.54 37.9201 129.34 37.8207 129.307C37.7213 129.241 37.5555 129.34 37.4561 129.506C37.3566 129.672 37.3566 129.838 37.4561 129.905C37.5555 129.971 37.7213 129.872 37.8207 129.706ZM39.8097 128.544C39.9091 128.61 40.0748 128.511 40.1743 128.345C40.2737 128.179 40.2737 127.979 40.1743 127.946C40.0748 127.88 39.9091 127.979 39.8097 128.145C39.7102 128.311 39.7102 128.511 39.8097 128.544ZM37.4561 127.216C37.5555 127.282 37.7213 127.183 37.8207 127.017C37.9201 126.851 37.9201 126.651 37.8207 126.618C37.7213 126.552 37.5555 126.651 37.4561 126.817C37.3566 126.95 37.3566 127.149 37.4561 127.216Z32:["$","path",null,{"d":"$6a","fill":"#686868"}] -33:["$","path",null,{"d":"M40.1412 127.149C40.1412 126.485 39.6771 126.219 39.1136 126.551C38.55 126.883 38.0859 127.68 38.0859 128.344C38.0859 129.008 38.55 129.273 39.1136 128.941C39.6771 128.609 40.1412 127.813 40.1412 127.149Z","fill":"#ffffff"}] -34:["$","path",null,{"d":"M4.47514 103.346L0.39779 107.064L0 111.38L0.39779 110.948V118.185L2.45304 115.629L3.18232 109.653L5.96685 104.474L4.47514 103.346Z","fill":"#ffffff"}] -35:["$","path",null,{"d":"M61.3266 114.632V103.544L60.8293 98.0666L58.7078 74.3632L35.9343 61.1836L32.6194 63.1091L28.9067 66.8936L5.76854 98.1993L1.55859 109.088V120.21L24.2658 133.323L31.0282 132.161L31.7575 126.185L34.542 121.006L41.4039 117.056L44.7188 119.247L45.3155 123.895L61.3266 114.632Z","fill":"white"}] -36:["$","path",null,{"opacity":"0.4","d":"M9.81274 103.909L5.76854 98.1992L1.55859 109.088L24.2658 120.774L33.1829 114.035L25.426 112.939L9.81274 103.909Z","fill":"#686868"}] -37:["$","path",null,{"opacity":"0.4","d":"M61.3264 114.632V103.544L60.8292 98.0666L58.7076 74.3632L57.8457 73.8652L54.564 75.7907L50.8181 79.5753L33.1828 114.035L24.2656 120.774V133.323L31.0281 132.161L31.7573 126.185L34.5419 121.006L41.4037 117.056L44.7187 119.247L45.3153 123.895L61.3264 114.632Z","fill":"#686868"}] -38:["$","path",null,{"opacity":"0.2","d":"M61.3264 114.632V103.544L60.8292 98.0664L33.1828 114.035L24.2656 120.774V133.323L31.0281 132.161L31.7573 126.185L34.5419 121.006L41.4037 117.056L44.7187 119.247L45.3153 123.894L61.3264 114.632Z","fill":"#686868"}] -39:["$","path",null,{"d":"M61.3265 114.632V109.619L44.7188 119.247L45.3154 123.894L61.3265 114.632Z","fill":"#ffffff"}] -3a:["$","path",null,{"d":"M61.3265 114.632V109.619L44.7188 119.247L45.3154 123.894L61.3265 114.632Z","fill":"#686868"}] -3b:["$","path",null,{"opacity":"0.1","d":"M50.8179 79.5756L54.5637 75.791L32.619 63.1094L28.9062 66.8939L50.8179 79.5756Z","fill":"#686868"}] -3c:["$","path",null,{"opacity":"0.2","d":"M33.1839 114.036L50.8193 79.5762L28.9077 66.8945L5.76953 98.2002L9.81373 103.91L25.427 112.94L33.1839 114.036Z","fill":"#686868"}] -3d:["$","path",null,{"opacity":"0.4","d":"M24.2658 133.322V120.774L1.55859 109.088V120.209L24.2658 133.322Z","fill":"#686868"}] -3e:["$","path",null,{"d":"M39.3164 110.483V107.097L47.4711 90.9291L54.333 86.9785L54.0678 98.133L51.6479 101.851L39.3164 110.483Z","fill":"#ffffff"}] -3f:["$","path",null,{"opacity":"0.4","d":"M46.079 122.301L45.5818 118.284L41.8359 115.794L38.2227 117.886V107.129L46.974 89.966H47.0072L55.5597 85.0195L56.3553 100.722L54.068 117.686L46.079 122.301ZM41.8359 115.528L45.7807 118.151L46.2779 121.936L53.9354 117.52L56.2227 100.689L55.4271 85.3847L47.2061 90.132L38.4547 107.196V117.487L41.8359 115.528Z","fill":"#686868"}] -40:["$","path",null,{"d":"M26.6192 134.684L24.2656 133.323V122.234L26.6192 123.595V134.684Z","fill":"#686868"}] -41:["$","path",null,{"d":"M33.4475 121.006L32.2541 120.309L24.2652 122.234L20.1215 119.844L18.5635 122.101V123.463L5.73481 116.026V111.511L1.55801 109.088L0 111.379V121.106L22.7072 134.252L26.6188 134.684L31.4254 133.289L32.1547 127.314L34.9392 122.135L33.4475 121.006Z","fill":"#ffffff"}] -42:["$","path",null,{"d":"M5.73379 111.512V116.027L4.17578 118.284V113.769L5.73379 111.512Z","fill":"#686868"}] -43:["$","path",null,{"opacity":"0.5","d":"M22.7072 134.252L0 121.106V111.379L4.1768 113.769V118.284L18.5635 126.617V122.102L22.7072 124.492V134.252Z","fill":"#686868"}] -44:["$","path",null,{"d":"M26.6172 123.595V134.683L31.4238 133.289L32.1531 127.313L34.9376 122.135L33.4459 121.006L26.6172 123.595Z","fill":"#686868"}] -45:["$","path",null,{"opacity":"0.7","d":"M26.6186 123.596V134.684L22.707 134.252V124.492L26.6186 123.596Z","fill":"#686868"}] -46:["$","path",null,{"d":"M35.9686 108.591L44.8194 91.3612L39.4492 89.6681L25.0956 81.3354L20.9851 77.6172L9.44922 93.2534L13.1951 98.5319L29.3719 107.894L35.9686 108.591Z","fill":"#ffffff"}] -47:["$","path",null,{"d":"M39.6473 89.7012L37.7578 102.549L38.7523 103.146L44.8186 91.3611L39.6473 89.7012Z","fill":"#686868"}] -48:["$","path",null,{"d":"M12.8637 93.9839L24.2338 86.0164L26.6537 82.265L25.0957 81.3355L21.6813 78.2148L11.9023 91.2617V93.7847L12.8637 93.9839Z","fill":"#686868"}] -49:["$","path",null,{"opacity":"0.5","d":"M31.8912 103.909L15.7476 94.5799L9.44922 93.252L13.1951 98.5304L29.3719 107.892L35.9686 108.589L38.0238 104.572L31.8912 103.909Z","fill":"#686868"}] -4a:["$","path",null,{"d":"M49.0626 90.0332L47.4715 90.9295L40.7422 104.275L44.8195 106.632L48.5985 103.976L50.5212 90.8963L49.0626 90.0332Z","fill":"#686868"}] -4b:["$","path",null,{"d":"M39.3164 107.097V110.483L51.6479 101.851L54.0678 98.133L54.333 86.9785L47.4711 90.9291L39.3164 107.097ZM53.6369 88.1736L53.4048 97.9339L51.1507 101.386L41.6037 108.059L40.775 105.669L47.9683 91.427L53.6369 88.1736Z","fill":"#686868"}] -4c:["$","path",null,{"d":"M33.6807 99.8585L35.5371 87.376L25.3271 81.4668L23.5039 93.9824L33.6807 99.8585Z","fill":"#686868"}] -4d:["$","path",null,{"d":"M39.4472 89.6681L25.0605 81.3686L20.9831 77.6172L9.41406 93.2534L13.1931 98.5319L29.3699 107.894L35.9665 108.591L44.7842 91.3612L39.4472 89.6681ZM35.5688 107.861L29.5688 107.197L13.6572 98.0008L10.2759 93.2534L21.1157 78.6131L24.6958 81.8997L39.1489 90.2656L43.8561 91.7927L35.5688 107.861Z","fill":"#686868"}] -4e:["$","path",null,{"d":"M26.0879 114.068L20.1211 119.845L24.2647 122.235L29.204 118.948L32.7841 115.994L33.1819 114.035L26.0879 114.068Z","fill":"white"}] -4f:["$","path",null,{"opacity":"0.2","d":"M32.785 115.994L33.1828 114.035L24.2656 122.235L29.2049 118.948L32.785 115.994Z","fill":"#686868"}] -50:["$","path",null,{"d":"M5.76854 98.1992L8.38732 103.843L5.73539 111.512L1.55859 109.088L5.76854 98.1992Z","fill":"white"}] -51:["$","path",null,{"d":"M7.69141 111.179V115.694L18.1665 121.736V117.221L19.6251 115.661L8.88478 109.453L7.69141 111.179Z","fill":"#ffffff"}] -52:["$","path",null,{"opacity":"0.5","d":"M7.69141 111.18V115.695L18.1665 121.737V117.222L7.69141 111.18Z","fill":"#686868"}] -53:["$","path",null,{"d":"M52.6406 108.259L54.1323 107.396V103.445L52.6406 104.275V108.259Z","fill":"#ffffff"}] -54:["$","path",null,{"d":"M53.9007 105.105L52.9062 105.703V104.873L53.9007 104.275V105.105Z","fill":"#686868"}] -55:["$","path",null,{"d":"M47.0051 105.869L46.077 104.242L43.8891 102.98L42.9609 103.545V109.321L43.8891 110.948L46.077 112.176L47.0051 111.645V105.869Z","fill":"#ffffff"}] -56:["$","path",null,{"opacity":"0.5","d":"M46.077 104.242L43.8891 102.98L42.9609 103.545V109.321L43.1267 109.587V104.541L43.6571 104.209L45.2814 105.138L45.8449 106.101V111.247L45.2814 111.546L43.7565 110.682L43.8891 110.948L46.077 112.176L47.0051 111.645V105.869L46.077 104.242Z","fill":"#686868"}] -57:["$","path",null,{"d":"M41.5374 105.969L40.543 106.533V109.156L43.1286 109.654V107.761L42.9629 107.396L41.5374 105.969Z","fill":"#ffffff"}] -58:["$","path",null,{"opacity":"0.5","d":"M40.543 106.533L43.1286 107.762V109.654L40.543 109.156V106.533Z","fill":"#686868"}] -59:["$","defs",null,{"children":[["$","clipPath",null,{"id":"clip0_1_97412","children":["$","rect",null,{"width":"138","height":"139","fill":"white"}]}],["$","clipPath",null,{"id":"clip1_1_97412","children":["$","rect",null,{"width":"33","height":"35","fill":"white","transform":"translate(105 57)"}]}]]}] -5a:["$","div",null,{"className":"elementor-element elementor-element-d310968 elementor-widget elementor-widget-logico_heading","data-id":"d310968","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"First Mile"}]}]}] -5b:["$","div",null,{"className":"elementor-element elementor-element-9989187 elementor-widget elementor-widget-text-editor","data-id":"9989187","data-element_type":"widget","data-e-type":"widget","data-widget_type":"text-editor.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","p",null,{"children":"Orders are picked up from warehouses with live tracking and quality checks."}]}]}] -5c:["$","div",null,{"className":"elementor-element elementor-element-97a7e5b e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"97a7e5b","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-fd9c57e elementor-view-default elementor-widget elementor-widget-icon","data-id":"fd9c57e","data-element_type":"widget","data-e-type":"widget","data-widget_type":"icon.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"elementor-icon-wrapper","children":["$","div",null,{"className":"elementor-icon","children":["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","width":"180","height":"158","viewBox":"0 0 180 158","fill":"none","children":[["$","path",null,{"d":"M75.5135 92.6543L103.649 108.891V110.918L102.865 111.378L74.707 95.1416V93.1149L75.5135 92.6543Z","fill":"#ffffff"}],["$","path",null,{"d":"M102.865 109.352L103.649 108.891V110.918L102.865 111.379L74.707 95.142V93.1152L102.865 109.352Z","fill":"#686868"}],["$","path",null,{"d":"M55.7417 98.9414L19.0117 120.153V128.444L25.7863 132.359L62.5393 111.148L63.8988 109.19L64.5901 106.795V104.031L55.7417 98.9414Z","fill":"#ffffff"}],["$","path",null,{"d":"M64.589 106.795L27.8359 128.007V125.243L64.589 104.031V106.795Z","fill":"#686868"}],["$","path",null,{"d":"M63.8975 109.19L27.1445 130.379L27.8358 128.006L64.5888 106.795L63.8975 109.19Z","fill":"#686868"}],["$","path",null,{"d":"M62.5382 111.147L25.7852 132.359L27.1447 130.378L63.8977 109.189L62.5382 111.147Z","fill":"#686868"}],["$","path",null,{"opacity":"0.5","d":"M25.7863 132.359L27.1458 130.378L27.8371 128.006V125.242L19.0117 120.152V128.444L25.7863 132.359Z","fill":"#686868"}],["$","path",null,{"d":"M91.2729 106.91L99.96 111.931L99.2918 117.919L88.5078 111.701L91.2729 106.91Z","fill":"#ffffff"}],["$","path",null,{"d":"M91.2729 106.91L99.96 111.931L99.2918 117.919L88.5078 111.701L91.2729 106.91Z","fill":"#686868"}],["$","path",null,{"d":"M91.2729 106.91L99.96 111.931L99.2918 117.919L88.5078 111.701L91.2729 106.91Z","fill":"#686868"}],["$","path",null,{"d":"M80.029 95.9473L6.26953 138.509V142.424L22.7681 151.936L96.5276 109.374L96.5045 105.459L80.029 95.9473Z","fill":"#686868"}],["$","path",null,{"opacity":"0.5","d":"M22.7681 148.02V151.935L6.26953 142.423V138.508L22.7681 148.02Z","fill":"#686868"}],["$","path",null,{"d":"M96.506 105.459L22.7695 148.02V151.936L96.529 109.374L96.506 105.459Z","fill":"#686868"}],["$","path",null,{"d":"M99.3863 115.708C99.3863 114.096 98.8103 112.967 97.9116 112.461L95.2156 110.918C94.2939 110.388 93.0496 110.48 91.644 111.286C88.8558 112.898 86.5977 116.813 86.5977 120.015C86.5977 121.627 87.1737 122.755 88.0724 123.285L90.7453 124.828C91.667 125.358 92.9344 125.289 94.3169 124.483C97.1281 122.825 99.3863 118.909 99.3863 115.708Z","fill":"#ffffff"}],["$","path",null,{"d":"M99.3856 115.707C99.3856 112.483 97.1275 111.193 94.3393 112.805C91.5511 114.418 89.293 118.333 89.293 121.534C89.293 124.735 91.5511 126.048 94.3393 124.436C97.1275 122.824 99.3856 118.909 99.3856 115.707Z","fill":"#686868"}],["$","path",null,{"d":"M97.4512 116.814C97.4512 114.833 96.0456 114.027 94.3174 115.017C92.5892 116.008 91.1836 118.426 91.1836 120.43C91.1836 122.41 92.5892 123.216 94.3174 122.226C96.0686 121.236 97.4512 118.817 97.4512 116.814Z","fill":"#EAECF2"}],["$","path",null,{"d":"M96.8732 116.882C96.8732 115.108 95.6289 114.394 94.085 115.293C92.5412 116.191 91.2969 118.333 91.2969 120.106C91.2969 121.879 92.5412 122.593 94.085 121.718C95.6289 120.82 96.8732 118.655 96.8732 116.882Z","fill":"#686868"}],["$","path",null,{"d":"M96.6438 117.689C96.6438 116.446 95.7682 115.939 94.6852 116.561C93.6022 117.183 92.7266 118.703 92.7266 119.946C92.7266 121.19 93.6022 121.697 94.6852 121.075C95.7682 120.453 96.6438 118.933 96.6438 117.689Z","fill":"#EAECF2"}],"$L6b","$L6c","$L6d","$L6e","$L6f","$L70","$L71","$L72","$L73","$L74","$L75","$L76","$L77","$L78","$L79","$L7a","$L7b","$L7c","$L7d","$L7e","$L7f","$L80","$L81","$L82","$L83","$L84","$L85","$L86","$L87","$L88","$L89","$L8a","$L8b","$L8c","$L8d","$L8e","$L8f","$L90","$L91","$L92","$L93","$L94","$L95","$L96","$L97","$L98","$L99","$L9a","$L9b","$L9c","$L9d","$L9e","$L9f","$La0","$La1","$La2","$La3","$La4","$La5","$La6","$La7","$La8","$La9","$Laa","$Lab","$Lac","$Lad","$Lae","$Laf","$Lb0","$Lb1","$Lb2","$Lb3","$Lb4","$Lb5","$Lb6","$Lb7","$Lb8","$Lb9","$Lba","$Lbb","$Lbc","$Lbd","$Lbe","$Lbf","$Lc0","$Lc1","$Lc2","$Lc3","$Lc4","$Lc5","$Lc6","$Lc7","$Lc8","$Lc9","$Lca","$Lcb","$Lcc","$Lcd","$Lce","$Lcf","$Ld0","$Ld1","$Ld2","$Ld3","$Ld4","$Ld5","$Ld6","$Ld7","$Ld8","$Ld9","$Lda","$Ldb","$Ldc","$Ldd","$Lde","$Ldf","$Le0","$Le1","$Le2","$Le3","$Le4","$Le5","$Le6","$Le7","$Le8","$Le9","$Lea","$Leb","$Lec","$Led","$Lee","$Lef","$Lf0","$Lf1","$Lf2","$Lf3","$Lf4","$Lf5","$Lf6","$Lf7","$Lf8","$Lf9","$Lfa","$Lfb","$Lfc","$Lfd","$Lfe","$Lff","$L100","$L101","$L102","$L103","$L104","$L105","$L106","$L107","$L108","$L109","$L10a","$L10b","$L10c","$L10d","$L10e","$L10f","$L110","$L111","$L112","$L113","$L114","$L115","$L116","$L117","$L118","$L119","$L11a","$L11b","$L11c","$L11d","$L11e","$L11f","$L120","$L121","$L122","$L123","$L124","$L125","$L126","$L127"]}]}]}]}]}],"$L128","$L129"]}] -5d:["$","div",null,{"className":"elementor-element elementor-element-86fb82f e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"86fb82f","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-fbb1628 elementor-view-default elementor-widget elementor-widget-icon","data-id":"fbb1628","data-element_type":"widget","data-e-type":"widget","data-widget_type":"icon.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"elementor-icon-wrapper","children":["$","div",null,{"className":"elementor-icon","children":["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","width":"132","height":"128","viewBox":"0 0 132 128","fill":"none","children":[["$","path",null,{"d":"M18.1914 72.045L18.9416 71.6113L20.7098 72.6142L21.4599 73.9423V78.6857L20.7098 79.1193L18.9416 78.0894L18.1914 76.7612V72.045Z","fill":"#ffffff"}],["$","path",null,{"opacity":"0.5","d":"M20.7098 72.6142L18.9416 71.6113L18.1914 72.045V76.7612L18.3254 76.9781V72.8581L18.754 72.5871L20.0936 73.346L20.5222 74.1321V78.3333L20.0668 78.6043L18.8344 77.8725L18.9416 78.0894L20.7098 79.1193L21.4599 78.6857V73.9423L20.7098 72.6142Z","fill":"#686868"}],["$","path",null,{"d":"M21.4611 77.1143L20.5234 76.7891V78.334L23.4437 80.8548L24.2474 80.3669V78.2256L21.4611 77.1143Z","fill":"#ffffff"}],["$","path",null,{"opacity":"0.5","d":"M23.4437 78.7135L20.5234 76.7891V78.334L23.4437 80.8548V78.7135Z","fill":"#686868"}],["$","path",null,{"d":"M24.2451 80.3659L23.4414 80.8538V78.7125L24.2451 78.2246V80.3659Z","fill":"#686868"}],["$","path",null,{"d":"M100.654 48.3828L130.633 65.8925V68.0608L129.776 68.5487L99.7969 51.0662V48.8707L100.654 48.3828Z","fill":"#ffffff"}],["$","path",null,{"d":"M129.776 66.3807L130.633 65.8929V68.0612L129.776 68.5491L99.7969 51.0666V48.8711L129.776 66.3807Z","fill":"#686868"}],["$","path",null,{"d":"M17.1215 99.3662L2.30598 105.492L1.42188 106.007V101.806L3.02934 95.7884L14.5227 89.0664L17.0679 93.105L17.9788 98.6886L17.1215 99.3662Z","fill":"#ffffff"}],["$","path",null,{"d":"M17.1215 99.3662L2.30598 105.492L1.42188 106.007V101.806L3.02934 95.7884L14.5227 89.0664L17.0679 93.105L17.9788 98.6886L17.1215 99.3662Z","fill":"#686868"}],["$","path",null,{"d":"M21.4061 101.86L17.1195 99.366L16.2354 93.9179L14.0117 90.3672L18.2983 92.8879L20.5488 96.4386L21.4061 101.86Z","fill":"#ffffff"}],["$","path",null,{"d":"M18.5664 101.534C18.5664 99.7991 17.9502 98.5794 16.9857 98.0102L14.1191 96.3297C13.1546 95.7605 11.815 95.8418 10.3147 96.7092C7.34089 98.4439 4.92969 102.645 4.92969 106.115C4.92969 107.849 5.54588 109.069 6.51037 109.638L9.37702 111.319C10.3415 111.888 11.7078 111.806 13.1814 110.939C16.1552 109.204 18.5664 104.976 18.5664 101.534Z","fill":"#ffffff"}],["$","path",null,{"d":"M18.5669 101.533C18.5669 98.0635 16.1557 96.6812 13.1819 98.4159C10.2081 100.151 7.79688 104.352 7.79688 107.821C7.79688 111.291 10.2081 112.673 13.1819 110.938C16.1557 109.204 18.5669 104.975 18.5669 101.533Z","fill":"#686868"}],["$","path",null,{"d":"M16.5036 102.726C16.5036 100.585 15.0033 99.7172 13.1815 100.801C11.3329 101.886 9.85938 104.488 9.85938 106.629C9.85938 108.77 11.3597 109.638 13.1815 108.553C15.0301 107.469 16.5036 104.867 16.5036 102.726Z","fill":"#EAECF2"}],["$","path",null,{"d":"M15.9125 102.781C15.9125 100.857 14.5729 100.098 12.9387 101.046C11.3044 101.995 9.96484 104.326 9.96484 106.251C9.96484 108.175 11.3044 108.934 12.9387 107.985C14.5729 107.037 15.9125 104.706 15.9125 102.781Z","fill":"#686868"}],["$","path",null,{"d":"M15.6443 103.648C15.6443 102.293 14.7066 101.751 13.5546 102.428C12.4025 103.106 11.4648 104.732 11.4648 106.088C11.4648 107.443 12.4025 107.985 13.5546 107.307C14.7066 106.657 15.6443 105.003 15.6443 103.648Z","fill":"#EAECF2"}],"$L12a","$L12b","$L12c","$L12d","$L12e","$L12f","$L130","$L131","$L132","$L133","$L134","$L135","$L136","$L137","$L138","$L139","$L13a","$L13b","$L13c","$L13d","$L13e","$L13f","$L140","$L141","$L142","$L143","$L144","$L145","$L146","$L147","$L148","$L149","$L14a","$L14b","$L14c","$L14d","$L14e","$L14f","$L150","$L151","$L152","$L153","$L154","$L155","$L156","$L157","$L158","$L159","$L15a","$L15b","$L15c","$L15d","$L15e","$L15f","$L160","$L161","$L162","$L163","$L164","$L165","$L166","$L167","$L168","$L169","$L16a","$L16b","$L16c","$L16d","$L16e","$L16f","$L170","$L171","$L172","$L173","$L174","$L175","$L176","$L177","$L178","$L179","$L17a","$L17b","$L17c","$L17d","$L17e","$L17f","$L180","$L181","$L182","$L183","$L184","$L185","$L186","$L187","$L188","$L189","$L18a","$L18b","$L18c","$L18d","$L18e"]}]}]}]}]}],"$L18f","$L190"]}] -5f:["$","section",null,{"className":"wcd-section","children":["$","div",null,{"className":"wcd-inner","children":[["$","$L191",null,{"delay":0.1,"children":["$","div",null,{"className":"wcd-head","children":[["$","div",null,{"className":"wcd-eyebrow","children":"/ Why Businesses Choose Doormile /"}],["$","h2",null,{"className":"wcd-heading","children":"The connected approach delivers measurable advantages"}]]}]}],["$","div",null,{"className":"wcd-grid","children":[["$","$L191","01 / First Mile",{"delay":0,"duration":0.8,"yOffset":50,"className":"wcd-card-wrapper","children":["$","article",null,{"className":"wcd-card","style":{"height":"100%"},"children":[["$","div",null,{"className":"wcd-card-media","children":["$","$L192",null,{"src":"/images/first-mile-approach.jpg","alt":"Origin to Hub","fill":true,"sizes":"(max-width: 1020px) 100vw, 33vw"}]}],["$","div",null,{"className":"wcd-card-body","children":[["$","div",null,{"className":"wcd-card-label","children":"01 / First Mile"}],["$","h3",null,{"className":"wcd-card-title","children":"Origin to Hub"}],["$","p",null,{"className":"wcd-card-desc","children":"We collect freight directly from your facility, optimise vehicle assignment in real time, and consolidate loads for maximum efficiency before they reach the hub."}],["$","ul",null,{"className":"wcd-card-points","children":[["$","li","AI-scheduled pickups",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"AI-scheduled pickups"}]]}],["$","li","Dynamic load consolidation",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Dynamic load consolidation"}]]}],["$","li","Yard & dock management",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Yard & dock management"}]]}]]}]]}]]}]}],["$","$L191","02 / Mid Mile",{"delay":0.15,"duration":0.8,"yOffset":50,"className":"wcd-card-wrapper","children":["$","article",null,{"className":"wcd-card","style":{"height":"100%"},"children":[["$","div",null,{"className":"wcd-card-media","children":["$","$L192",null,{"src":"/images/mid-mile-approach.jpg","alt":"Hub to Hub Transit","fill":true,"sizes":"(max-width: 1020px) 100vw, 33vw"}]}],["$","div",null,{"className":"wcd-card-body","children":[["$","div",null,{"className":"wcd-card-label","children":"02 / Mid Mile"}],["$","h3",null,{"className":"wcd-card-title","children":"Hub to Hub Transit"}],["$","p",null,{"className":"wcd-card-desc","children":"Freight moves between hubs on optimised line-haul routes. Real-time tracking, cross-docking, and SLA monitoring keep every shipment on schedule."}],["$","ul",null,{"className":"wcd-card-points","children":[["$","li","Optimised line-haul routing",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Optimised line-haul routing"}]]}],["$","li","Cross-docking & sortation",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Cross-docking & sortation"}]]}],["$","li","Live SLA monitoring",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Live SLA monitoring"}]]}]]}]]}]]}]}],["$","$L191","03 / Last Mile",{"delay":0.3,"duration":0.8,"yOffset":50,"className":"wcd-card-wrapper","children":"$L193"}]]}]]}]}] -194:T672,M94.8001 117.505C94.6849 117.574 94.5927 117.505 94.5927 117.367C94.5927 117.229 94.6849 117.068 94.8001 116.999C94.9153 116.93 95.0075 116.976 95.0075 117.114C95.0305 117.275 94.9384 117.436 94.8001 117.505ZM95.0305 120.43C95.0305 120.292 94.9384 120.246 94.8232 120.315C94.7079 120.384 94.6158 120.545 94.6158 120.684C94.6158 120.822 94.7079 120.868 94.8232 120.799C94.9384 120.73 95.0305 120.545 95.0305 120.43ZM96.2288 118.335C96.344 118.265 96.4361 118.104 96.4361 117.966C96.4361 117.828 96.344 117.782 96.2288 117.851C96.1135 117.92 96.0214 118.081 96.0214 118.219C96.0214 118.335 96.1135 118.404 96.2288 118.335ZM93.3945 119.97C93.5097 119.901 93.6019 119.739 93.6019 119.601C93.6019 119.463 93.5097 119.417 93.3945 119.486C93.2793 119.555 93.1871 119.716 93.1871 119.855C93.1641 119.993 93.2562 120.039 93.3945 119.97ZM95.9753 117.252C96.0675 117.114 96.0675 116.953 95.9753 116.907C95.8831 116.861 95.7679 116.93 95.6757 117.091C95.5836 117.229 95.5836 117.39 95.6757 117.436C95.7449 117.459 95.8831 117.39 95.9753 117.252ZM93.9475 120.73C94.0397 120.592 94.0397 120.43 93.9475 120.384C93.8554 120.338 93.7171 120.407 93.648 120.569C93.5558 120.707 93.5558 120.868 93.648 120.914C93.7401 120.96 93.8784 120.868 93.9475 120.73ZM95.6757 119.739C95.7679 119.785 95.9062 119.716 95.9753 119.555C96.0675 119.417 96.0675 119.256 95.9753 119.21C95.8831 119.164 95.7679 119.233 95.6757 119.394C95.5836 119.532 95.5836 119.693 95.6757 119.739ZM93.648 118.588C93.7401 118.634 93.8554 118.565 93.9475 118.427C94.0397 118.288 94.0397 118.127 93.9475 118.081C93.8554 118.035 93.7171 118.104 93.648 118.265C93.5788 118.381 93.5788 118.542 93.648 118.588Z6b:["$","path",null,{"d":"$194","fill":"#686868"}] -6c:["$","path",null,{"d":"M95.977 118.542C95.977 117.989 95.5853 117.759 95.0783 118.035C94.5945 118.311 94.2027 119.002 94.1797 119.555C94.1797 120.108 94.5714 120.338 95.0783 120.062C95.5622 119.785 95.977 119.118 95.977 118.542Z","fill":"#ffffff"}] -6d:["$","path",null,{"d":"M100.838 112.368L97.3587 109.512L96.5983 109.074L90.538 112.552L87.0586 119.415V124.966L87.842 125.403L88.6025 124.966V119.738L91.6671 113.68L96.8517 110.686L98.9025 112.368L99.2942 112.782V117.918L100.055 118.356L100.838 117.918V112.368Z","fill":"#ffffff"}] -6e:["$","path",null,{"d":"M100.84 117.918L100.056 118.356V113.128L96.9917 110.617L91.6688 113.68L88.6042 119.737V124.966L87.8438 125.403V119.876L91.3001 113.012L97.3604 109.512L100.84 112.368V117.918Z","fill":"#686868"}] -6f:["$","path",null,{"d":"M96.9898 110.617L96.8516 110.686L98.9024 112.368L99.2941 112.782V117.918L100.054 118.356V113.128L96.9898 110.617Z","fill":"#686868"}] -70:["$","path",null,{"opacity":"0.5","d":"M96.9898 110.617L96.8516 110.686L98.9024 112.368L99.2941 112.782V117.918L100.054 118.356V113.128L96.9898 110.617Z","fill":"#686868"}] -71:["$","path",null,{"opacity":"0.3","d":"M91.2984 113.013L90.538 112.553L87.0586 119.416L87.842 119.877L91.2984 113.013Z","fill":"#686868"}] -72:["$","path",null,{"opacity":"0.5","d":"M87.842 119.877L87.0586 119.416V124.966L87.842 125.404V119.877Z","fill":"#686868"}] -73:["$","path",null,{"d":"M79.546 112.668L42.793 133.88V142.171L49.5905 146.086L86.3436 124.897L87.7031 122.917L88.3713 120.545V117.781L79.546 112.668Z","fill":"#ffffff"}] -74:["$","path",null,{"d":"M88.3702 120.545L51.6172 141.733V138.97L88.3702 117.781V120.545Z","fill":"#686868"}] -75:["$","path",null,{"d":"M87.7022 122.917L50.9492 144.106L51.6175 141.733L88.3705 120.545L87.7022 122.917Z","fill":"#686868"}] -76:["$","path",null,{"d":"M86.3429 124.897L49.5898 146.085L50.9494 144.105L87.7024 122.916L86.3429 124.897Z","fill":"#686868"}] -77:["$","path",null,{"opacity":"0.5","d":"M49.5905 146.085L50.9501 144.105L51.6183 141.732V138.969L42.793 133.879V142.17L49.5905 146.085Z","fill":"#686868"}] -78:["$","path",null,{"d":"M74.4738 89.9824L29.8633 115.731V119.001L56.6849 134.501L101.319 108.753V105.482L74.4738 89.9824Z","fill":"#ffffff"}] -79:["$","path",null,{"d":"M101.317 105.482V108.753L56.6836 134.501V131.231L101.317 105.482Z","fill":"#686868"}] -7a:["$","path",null,{"opacity":"0.5","d":"M29.8633 115.73L56.6849 131.23V134.501L29.8633 119.001V115.73Z","fill":"#686868"}] -7b:["$","path",null,{"d":"M78.6235 109.075L85.6745 104.999L85.6975 104.054L75.0979 97.9512L68.0469 102.028V102.972L78.6235 109.075Z","fill":"#686868"}] -7c:["$","path",null,{"d":"M85.6991 104.055L85.676 104.999L78.625 109.075V108.131L85.6991 104.055Z","fill":"#686868"}] -7d:["$","path",null,{"opacity":"0.5","d":"M78.6235 108.131L68.0469 102.027V102.972L78.6235 109.075V108.131Z","fill":"#686868"}] -7e:["$","path",null,{"d":"M74.4287 100.853C73.7835 101.221 73.4609 101.728 73.4609 102.211V102.603C73.4609 103.087 73.7835 103.593 74.4287 103.962C75.7191 104.722 77.839 104.722 79.1294 103.962C79.7746 103.593 80.0972 103.087 80.0972 102.603V102.234C80.0972 101.751 79.7746 101.244 79.1294 100.876C77.816 100.116 75.7191 100.116 74.4287 100.853Z","fill":"#ffffff"}] -7f:["$","path",null,{"opacity":"0.5","d":"M75.3041 101.566C74.4976 102.027 74.4976 102.81 75.3041 103.27C76.1336 103.731 77.4471 103.731 78.2766 103.27C79.0831 102.787 79.0831 102.027 78.2766 101.566C77.4471 101.106 76.1106 101.106 75.3041 101.566Z","fill":"#686868"}] -80:["$","path",null,{"d":"M80.0972 102.234C80.0972 102.718 79.7746 103.225 79.1294 103.593C77.839 104.353 75.7191 104.353 74.4287 103.593C73.7835 103.225 73.4609 102.718 73.4609 102.234V102.603C73.4609 103.087 73.7835 103.593 74.4287 103.962C75.7191 104.722 77.839 104.722 79.1294 103.962C79.7746 103.593 80.0972 103.087 80.0972 102.603V102.234Z","fill":"#686868"}] -81:["$","path",null,{"d":"M149.314 52.7188L177.449 68.9556V70.9823L176.666 71.443L148.508 55.1831V53.1794L149.314 52.7188Z","fill":"#ffffff"}] -82:["$","path",null,{"d":"M176.666 69.4165L177.449 68.9559V70.9826L176.666 71.4433L148.508 55.1834V53.1797L176.666 69.4165Z","fill":"#686868"}] -83:["$","path",null,{"d":"M152.403 53.502L55.3242 109.536V113.429L71.7997 122.94L168.878 66.929V63.0138L152.403 53.502Z","fill":"#ffffff"}] -84:["$","path",null,{"opacity":"0.5","d":"M71.7997 119.049V122.941L55.3242 113.429V109.537L71.7997 119.049Z","fill":"#686868"}] -85:["$","path",null,{"d":"M168.879 63.0137L71.8008 119.048V122.94L168.879 66.9289V63.0137Z","fill":"#686868"}] -86:["$","path",null,{"d":"M115.855 99.8398L111.754 102.212V105.321L112.537 105.782L116.639 103.41V100.3L115.855 99.8398Z","fill":"#ffffff"}] -87:["$","path",null,{"d":"M112.537 102.673L111.754 102.212V105.322L112.537 105.782L116.639 103.41V100.301L112.537 102.673Z","fill":"#686868"}] -88:["$","path",null,{"d":"M121.985 99.7715L106.523 108.684V109.767L107.33 110.228L122.769 101.315V100.232L121.985 99.7715Z","fill":"#ffffff"}] -89:["$","path",null,{"d":"M107.33 109.145L106.523 108.685V109.767L107.33 110.228L122.769 101.315V100.232L107.33 109.145Z","fill":"#686868"}] -8a:["$","path",null,{"d":"M167.935 73.3547L154.017 79.0434L153.211 79.527V75.6118L154.709 70.0152L165.493 63.7969L167.889 67.5509L168.742 72.7329L167.935 73.3547Z","fill":"#ffffff"}] -8b:["$","path",null,{"d":"M167.935 73.3547L154.017 79.0434L153.211 79.527V75.6118L154.709 70.0152L165.493 63.7969L167.889 67.5509L168.742 72.7329L167.935 73.3547Z","fill":"#686868"}] -8c:["$","path",null,{"d":"M171.967 75.6809L167.934 73.3548L167.128 68.311L165.008 65.0176L169.063 67.3437L171.16 70.6371L171.967 75.6809Z","fill":"#ffffff"}] -8d:["$","path",null,{"d":"M171.967 75.6809L167.934 73.3548L167.128 68.311L165.008 65.0176L169.063 67.3437L171.16 70.6371L171.967 75.6809Z","fill":"#686868"}] -8e:["$","path",null,{"opacity":"0.5","d":"M171.967 75.6809L167.934 73.3548L167.128 68.311L165.008 65.0176L169.063 67.3437L171.16 70.6371L171.967 75.6809Z","fill":"#686868"}] -8f:["$","path",null,{"d":"M169.293 75.358C169.293 73.7458 168.717 72.6173 167.818 72.0876L165.122 70.5445C164.2 70.0148 162.956 70.1069 161.55 70.913C158.762 72.5252 156.504 76.4174 156.504 79.6418C156.504 81.2539 157.08 82.3824 157.979 82.9122L160.652 84.4552C161.573 84.985 162.841 84.9159 164.223 84.1098C167.034 82.4746 169.293 78.5823 169.293 75.358Z","fill":"#ffffff"}] -90:["$","path",null,{"d":"M169.292 75.3577C169.292 72.1333 167.034 70.8436 164.246 72.4558C161.457 74.0679 159.199 77.9832 159.199 81.1845C159.199 84.3858 161.457 85.6986 164.246 84.0864C167.034 82.4743 169.292 78.582 169.292 75.3577Z","fill":"#686868"}] -91:["$","path",null,{"d":"M167.381 76.4641C167.381 74.4834 165.975 73.6773 164.247 74.6677C162.519 75.658 161.113 78.0762 161.113 80.0799C161.113 82.0606 162.519 82.8667 164.247 81.8764C165.975 80.886 167.381 78.4678 167.381 76.4641Z","fill":"#EAECF2"}] -92:["$","path",null,{"d":"M166.803 76.532C166.803 74.7587 165.559 74.0447 164.015 74.9429C162.471 75.8411 161.227 77.983 161.227 79.7564C161.227 81.5298 162.471 82.2437 164.015 81.3686C165.536 80.4703 166.803 78.3054 166.803 76.532Z","fill":"#686868"}] -93:["$","path",null,{"d":"M166.55 77.3377C166.55 76.094 165.674 75.5873 164.591 76.2092C163.508 76.831 162.633 78.3511 162.633 79.5947C162.633 80.8384 163.508 81.3451 164.591 80.7233C165.674 80.1014 166.55 78.5814 166.55 77.3377Z","fill":"#EAECF2"}] -195:T66c,M164.73 77.154C164.615 77.2231 164.522 77.1771 164.522 77.0389C164.522 76.9007 164.615 76.7395 164.73 76.6704C164.845 76.6013 164.937 76.6474 164.937 76.7855C164.937 76.9237 164.845 77.0849 164.73 77.154ZM164.937 80.079C164.937 79.9408 164.845 79.8947 164.73 79.9638C164.615 80.0329 164.522 80.1941 164.522 80.3323C164.522 80.4705 164.615 80.5166 164.73 80.4475C164.845 80.3784 164.937 80.2172 164.937 80.079ZM166.158 77.9832C166.274 77.9141 166.366 77.7528 166.366 77.6147C166.366 77.4765 166.274 77.4304 166.158 77.4995C166.043 77.5686 165.951 77.7298 165.951 77.868C165.928 77.9832 166.02 78.0522 166.158 77.9832ZM163.301 79.6184C163.416 79.5493 163.509 79.388 163.509 79.2499C163.509 79.1117 163.416 79.0656 163.301 79.1347C163.186 79.2038 163.094 79.365 163.094 79.5032C163.094 79.6414 163.186 79.6874 163.301 79.6184ZM165.882 76.9007C165.974 76.7625 165.974 76.6013 165.882 76.5552C165.79 76.5092 165.675 76.5783 165.582 76.7164C165.49 76.8546 165.49 77.0158 165.582 77.0619C165.675 77.131 165.79 77.0389 165.882 76.9007ZM163.877 80.3784C163.969 80.2402 163.969 80.079 163.877 80.0329C163.785 79.9868 163.67 80.0559 163.578 80.2172C163.485 80.3553 163.485 80.5166 163.578 80.5626C163.647 80.6087 163.785 80.5166 163.877 80.3784ZM165.582 79.388C165.675 79.4341 165.813 79.365 165.882 79.2038C165.974 79.0656 165.974 78.9044 165.882 78.8583C165.79 78.8123 165.675 78.8814 165.582 79.0426C165.49 79.1808 165.49 79.342 165.582 79.388ZM163.555 78.2365C163.647 78.2826 163.785 78.2135 163.854 78.0522C163.946 77.9141 163.946 77.7528 163.854 77.7068C163.762 77.6607 163.624 77.7298 163.555 77.891C163.485 78.0292 163.485 78.1904 163.555 78.2365Z94:["$","path",null,{"d":"$195","fill":"#686868"}] -95:["$","path",null,{"d":"M165.884 78.1905C165.884 77.6147 165.492 77.4074 165.008 77.6838C164.524 77.9601 164.109 78.6511 164.109 79.2269C164.109 79.7796 164.501 80.0099 165.008 79.7335C165.492 79.4572 165.884 78.7662 165.884 78.1905Z","fill":"#ffffff"}] -96:["$","path",null,{"d":"M171.922 69.8771L169.526 66.146L165.493 63.7969L153.373 69.2552L151.875 74.8287V78.744L157.244 81.8532L158.05 81.3925V77.8458L161.484 71.7195L169.065 67.3436L171.162 70.6371L171.968 75.6809L172.775 75.059L171.922 69.8771Z","fill":"#ffffff"}] -97:["$","path",null,{"d":"M171.966 75.6813L171.16 70.6375L169.063 67.3441L161.482 71.72L158.049 77.8462V81.393L157.242 81.8536V77.9383L158.763 72.3649L169.524 66.1465L171.92 69.8775L172.773 75.0595L171.966 75.6813Z","fill":"#686868"}] -98:["$","path",null,{"d":"M151.896 74.8516L151.781 78.6977L157.242 81.853V77.9377L151.896 74.8516Z","fill":"#ffffff"}] -99:["$","path",null,{"opacity":"0.5","d":"M151.896 74.8516L151.781 78.6977L157.242 81.853V77.9377L151.896 74.8516Z","fill":"#686868"}] -9a:["$","path",null,{"opacity":"0.5","d":"M158.765 72.365L157.244 77.9385L151.875 74.8294L153.373 69.2559L158.765 72.365Z","fill":"#686868"}] -9b:["$","path",null,{"d":"M152.173 82.4524L138.256 88.1411L137.449 88.6017V84.7094L138.947 79.1129L149.731 72.8945L152.127 76.6486L152.98 81.8306L152.173 82.4524Z","fill":"#ffffff"}] -9c:["$","path",null,{"d":"M152.173 82.4524L138.256 88.1411L137.449 88.6017V84.7094L138.947 79.1129L149.731 72.8945L152.127 76.6486L152.98 81.8306L152.173 82.4524Z","fill":"#686868"}] -9d:["$","path",null,{"d":"M156.205 84.7786L152.173 82.4525L151.366 77.4087L149.246 74.1152L153.279 76.4414L155.398 79.7348L156.205 84.7786Z","fill":"#ffffff"}] -9e:["$","path",null,{"d":"M156.205 84.7786L152.173 82.4525L151.366 77.4087L149.246 74.1152L153.279 76.4414L155.398 79.7348L156.205 84.7786Z","fill":"#686868"}] -9f:["$","path",null,{"opacity":"0.5","d":"M156.205 84.7786L152.173 82.4525L151.366 77.4087L149.246 74.1152L153.279 76.4414L155.398 79.7348L156.205 84.7786Z","fill":"#686868"}] -a0:["$","path",null,{"d":"M153.531 84.4557C153.531 82.8435 152.955 81.715 152.056 81.1853L149.36 79.6422C148.438 79.1125 147.194 79.2046 145.789 80.0107C143 81.6228 140.742 85.5381 140.742 88.7394C140.742 90.3516 141.318 91.4801 142.217 92.0098L144.89 93.5529C145.812 94.0826 147.079 94.0135 148.461 93.2074C151.273 91.5722 153.531 87.68 153.531 84.4557Z","fill":"#ffffff"}] -a1:["$","path",null,{"d":"M153.53 84.4551C153.53 81.2538 151.272 79.941 148.484 81.5532C145.696 83.1654 143.438 87.0806 143.438 90.2819C143.438 93.4832 145.696 94.796 148.484 93.1838C151.272 91.5717 153.53 87.6794 153.53 84.4551Z","fill":"#686868"}] -a2:["$","path",null,{"d":"M151.619 85.5617C151.619 83.5811 150.214 82.775 148.485 83.7653C146.757 84.7556 145.352 87.1739 145.352 89.1776C145.352 91.1583 146.757 91.9643 148.485 90.974C150.214 89.9837 151.619 87.5654 151.619 85.5617Z","fill":"#EAECF2"}] -a3:["$","path",null,{"d":"M151.041 85.6301C151.041 83.8567 149.797 83.1427 148.253 84.0179C146.709 84.9161 145.465 87.058 145.465 88.8314C145.465 90.6048 146.709 91.3187 148.253 90.4436C149.774 89.5684 151.041 87.4035 151.041 85.6301Z","fill":"#686868"}] -a4:["$","path",null,{"d":"M150.788 86.4354C150.788 85.1917 149.913 84.685 148.83 85.3068C147.747 85.9287 146.871 87.4487 146.871 88.6924C146.871 89.9361 147.747 90.4427 148.83 89.8209C149.913 89.1991 150.788 87.679 150.788 86.4354Z","fill":"#EAECF2"}] -196:T66c,M148.968 86.2515C148.853 86.3206 148.761 86.2745 148.761 86.1363C148.761 85.9981 148.853 85.8369 148.968 85.7678C149.083 85.6987 149.175 85.7678 149.175 85.883C149.175 86.0212 149.083 86.1824 148.968 86.2515ZM149.175 89.1534C149.175 89.0152 149.083 88.9691 148.968 89.0382C148.853 89.1073 148.761 89.2685 148.761 89.4067C148.761 89.5449 148.853 89.591 148.968 89.5219C149.083 89.4758 149.175 89.2916 149.175 89.1534ZM150.397 87.0806C150.512 87.0115 150.604 86.8503 150.604 86.7121C150.604 86.5739 150.512 86.5279 150.397 86.597C150.281 86.666 150.189 86.8273 150.189 86.9654C150.189 87.1036 150.281 87.1497 150.397 87.0806ZM147.539 88.7158C147.655 88.6467 147.747 88.4855 147.747 88.3473C147.747 88.2091 147.655 88.1631 147.539 88.2322C147.424 88.3012 147.332 88.4625 147.332 88.6007C147.332 88.7388 147.424 88.7849 147.539 88.7158ZM150.12 85.9981C150.212 85.86 150.212 85.6987 150.12 85.6527C150.028 85.6066 149.89 85.6757 149.821 85.8369C149.728 85.9751 149.728 86.1363 149.821 86.1824C149.913 86.2054 150.028 86.1363 150.12 85.9981ZM148.115 89.4758C148.208 89.3376 148.208 89.1764 148.115 89.1304C148.023 89.0843 147.885 89.1534 147.816 89.2916C147.724 89.4298 147.724 89.591 147.816 89.637C147.885 89.7061 148.023 89.614 148.115 89.4758ZM149.821 88.4855C149.913 88.5316 150.051 88.4625 150.12 88.3012C150.212 88.1631 150.212 88.0018 150.12 87.9558C150.028 87.9097 149.89 87.9788 149.821 88.14C149.728 88.2782 149.728 88.4394 149.821 88.4855ZM147.793 87.3339C147.885 87.38 148 87.3109 148.092 87.1497C148.185 87.0115 148.185 86.8503 148.092 86.8042C148 86.7582 147.862 86.8273 147.793 86.9885C147.724 87.1267 147.724 87.2879 147.793 87.3339Za5:["$","path",null,{"d":"$196","fill":"#686868"}] -a6:["$","path",null,{"d":"M150.122 87.2879C150.122 86.7351 149.73 86.5048 149.246 86.7812C148.762 87.0575 148.348 87.7485 148.348 88.3242C148.348 88.877 148.739 89.1073 149.246 88.8309C149.73 88.5546 150.122 87.8636 150.122 87.2879Z","fill":"#ffffff"}] -a7:["$","path",null,{"d":"M156.16 78.9977L153.787 75.2207L149.731 72.8945L137.611 78.3529L136.113 83.9264V87.8416L141.482 90.9508L142.289 90.4672V86.9434L145.722 80.8172L153.28 76.4413L155.4 79.7347L156.206 84.7785L157.013 84.1567L156.16 78.9977Z","fill":"#ffffff"}] -a8:["$","path",null,{"d":"M156.205 84.7786L155.398 79.7348L153.278 76.4413L145.72 80.8172L142.287 86.9435V90.4672L141.48 90.9509V87.0356L143.001 81.4621L153.785 75.2207L156.159 78.9978L157.011 84.1567L156.205 84.7786Z","fill":"#686868"}] -a9:["$","path",null,{"d":"M136.135 83.9492L136.02 87.7954L141.481 90.9506V87.0354L136.135 83.9492Z","fill":"#ffffff"}] -aa:["$","path",null,{"opacity":"0.5","d":"M136.135 83.9492L136.02 87.7954L141.481 90.9506V87.0354L136.135 83.9492Z","fill":"#686868"}] -ab:["$","path",null,{"opacity":"0.5","d":"M143.003 81.4627L141.482 87.0362L136.113 83.927L137.611 78.3535L143.003 81.4627Z","fill":"#686868"}] -ac:["$","path",null,{"d":"M136.412 91.5251L122.494 97.2368L121.688 97.6974V93.8051L123.185 88.2086L133.969 81.9902L136.366 85.7443L137.218 90.9263L136.412 91.5251Z","fill":"#ffffff"}] -ad:["$","path",null,{"d":"M136.412 91.5251L122.494 97.2368L121.688 97.6974V93.8051L123.185 88.2086L133.969 81.9902L136.366 85.7443L137.218 90.9263L136.412 91.5251Z","fill":"#686868"}] -ae:["$","path",null,{"d":"M140.466 93.8743L136.411 91.5251L135.604 86.5044L133.484 83.2109L137.517 85.5371L139.637 88.8305L140.466 93.8743Z","fill":"#ffffff"}] -af:["$","path",null,{"d":"M140.466 93.8743L136.411 91.5251L135.604 86.5044L133.484 83.2109L137.517 85.5371L139.637 88.8305L140.466 93.8743Z","fill":"#686868"}] -b0:["$","path",null,{"opacity":"0.5","d":"M140.466 93.8743L136.411 91.5251L135.604 86.5044L133.484 83.2109L137.517 85.5371L139.637 88.8305L140.466 93.8743Z","fill":"#686868"}] -b1:["$","path",null,{"d":"M137.769 93.5514C137.769 91.9392 137.193 90.8107 136.294 90.281L133.598 88.7379C132.677 88.2082 131.432 88.3003 130.027 89.1064C127.239 90.7185 124.98 94.6338 124.98 97.8351C124.98 99.4473 125.557 100.576 126.455 101.106L129.128 102.649C130.05 103.178 131.317 103.109 132.7 102.303C135.511 100.668 137.769 96.7527 137.769 93.5514Z","fill":"#ffffff"}] -b2:["$","path",null,{"d":"M137.768 93.551C137.768 90.3267 135.51 89.037 132.722 90.6491C129.934 92.2613 127.676 96.1766 127.676 99.3779C127.676 102.602 129.934 103.892 132.722 102.28C135.51 100.668 137.768 96.7524 137.768 93.551Z","fill":"#686868"}] -b3:["$","path",null,{"d":"M135.857 94.6574C135.857 92.6768 134.452 91.8707 132.724 92.861C130.995 93.8514 129.59 96.2696 129.59 98.2733C129.59 100.254 130.995 101.06 132.724 100.07C134.452 99.0564 135.857 96.6611 135.857 94.6574Z","fill":"#EAECF2"}] -b4:["$","path",null,{"d":"M135.279 94.7258C135.279 92.9524 134.035 92.2384 132.491 93.1136C130.947 94.0118 129.703 96.1537 129.703 97.9271C129.703 99.7005 130.947 100.414 132.491 99.5393C134.012 98.6641 135.279 96.4992 135.279 94.7258Z","fill":"#686868"}] -b5:["$","path",null,{"d":"M135.027 95.5311C135.027 94.2874 134.151 93.7807 133.068 94.4025C131.985 95.0244 131.109 96.5444 131.109 97.7881C131.109 99.0318 131.985 99.5385 133.068 98.9166C134.151 98.2948 135.027 96.7747 135.027 95.5311Z","fill":"#EAECF2"}] -197:T676,M133.206 95.3472C133.091 95.4163 132.999 95.3472 132.999 95.232C132.999 95.0938 133.091 94.9326 133.206 94.8635C133.322 94.7944 133.414 94.8635 133.414 94.9787C133.414 95.1169 133.322 95.2781 133.206 95.3472ZM133.414 98.2721C133.414 98.1339 133.322 98.0879 133.206 98.157C133.091 98.2261 132.999 98.3873 132.999 98.5255C132.999 98.6637 133.091 98.7097 133.206 98.6406C133.322 98.5715 133.414 98.3873 133.414 98.2721ZM134.635 96.1763C134.75 96.1072 134.842 95.946 134.842 95.8078C134.842 95.6696 134.75 95.6236 134.635 95.6927C134.52 95.7617 134.428 95.923 134.428 96.0612C134.405 96.1763 134.497 96.2454 134.635 96.1763ZM131.778 97.8115C131.893 97.7424 131.985 97.5812 131.985 97.443C131.985 97.3048 131.893 97.2588 131.778 97.3279C131.662 97.397 131.57 97.5582 131.57 97.6964C131.57 97.8345 131.662 97.8806 131.778 97.8115ZM134.358 95.0938C134.451 94.9557 134.451 94.7944 134.358 94.7484C134.266 94.7023 134.128 94.7714 134.059 94.9326C133.967 95.0708 133.967 95.232 134.059 95.2781C134.151 95.3011 134.266 95.232 134.358 95.0938ZM132.354 98.5715C132.446 98.4333 132.446 98.2721 132.354 98.2261C132.262 98.18 132.123 98.2491 132.054 98.4103C131.962 98.5485 131.962 98.7097 132.054 98.7558C132.123 98.8018 132.262 98.7097 132.354 98.5715ZM134.059 97.5812C134.151 97.6273 134.289 97.5582 134.358 97.3969C134.451 97.2588 134.451 97.0975 134.358 97.0515C134.266 97.0054 134.128 97.0745 134.059 97.2357C133.967 97.3739 133.967 97.5351 134.059 97.5812ZM132.031 96.4296C132.123 96.4757 132.239 96.4066 132.331 96.2454C132.423 96.1072 132.423 95.946 132.331 95.8999C132.239 95.8539 132.123 95.923 132.031 96.0842C131.962 96.2224 131.962 96.3836 132.031 96.4296Zb6:["$","path",null,{"d":"$197","fill":"#686868"}] -b7:["$","path",null,{"d":"M134.36 96.3836C134.36 95.8308 133.968 95.6005 133.485 95.8769C133.001 96.1532 132.586 96.8442 132.586 97.42C132.586 97.9727 132.978 98.203 133.485 97.9266C133.968 97.6272 134.36 96.9593 134.36 96.3836Z","fill":"#ffffff"}] -b8:["$","path",null,{"d":"M140.399 88.0704L138.025 84.3164L133.97 81.9902L121.849 87.4486L120.352 93.0221V96.9373L125.72 100.047L126.527 99.5629V96.0391L129.96 89.8899L137.518 85.537L139.638 88.8304L140.468 93.8742L141.251 93.2524L140.399 88.0704Z","fill":"#ffffff"}] -b9:["$","path",null,{"d":"M140.466 93.8743L139.637 88.8305L137.517 85.537L129.959 89.8899L126.525 96.0392V99.5629L125.719 100.047V96.1313L127.24 90.5578L138.024 84.3164L140.397 88.0705L141.25 93.2524L140.466 93.8743Z","fill":"#686868"}] -ba:["$","path",null,{"d":"M120.373 93.0449L120.258 96.8911L125.719 100.046V96.1311L120.373 93.0449Z","fill":"#ffffff"}] -bb:["$","path",null,{"opacity":"0.5","d":"M120.373 93.0449L120.258 96.8911L125.719 100.046V96.1311L120.373 93.0449Z","fill":"#686868"}] -bc:["$","path",null,{"opacity":"0.5","d":"M127.241 90.5584L125.72 96.1319L120.352 93.0227L121.849 87.4492L127.241 90.5584Z","fill":"#686868"}] -bd:["$","path",null,{"d":"M145.882 0L31.8438 65.7996V110.457L65.1173 129.641L179.132 63.8419V19.1848L145.882 0Z","fill":"white"}] -be:["$","path",null,{"opacity":"0.4","d":"M179.132 19.1855V63.8426L65.1168 129.642L65.0938 84.9851L179.132 19.1855Z","fill":"#686868"}] -bf:["$","path",null,{"opacity":"0.2","d":"M31.8438 65.7988L65.0943 84.9836L65.1173 129.641L31.8438 110.456V65.7988Z","fill":"#686868"}] -c0:["$","path",null,{"opacity":"0.4","d":"M36.9375 97.6055V113.382L60.0262 126.694V110.917L36.9375 97.6055Z","fill":"#686868"}] -c1:["$","path",null,{"d":"M0 111.01L0.714322 110.596L2.35035 111.54L3.06467 112.784V117.16L2.35035 117.574L0.714322 116.607L0 115.386V111.01Z","fill":"#ffffff"}] -c2:["$","path",null,{"opacity":"0.5","d":"M2.35035 111.54L0.714322 110.596L0 111.01V115.386L0.115213 115.593V111.747L0.529981 111.517L1.77428 112.231L2.18905 112.945V116.837L1.77428 117.09L0.599109 116.4L0.714322 116.607L2.35035 117.574L3.06467 117.16V112.784L2.35035 111.54Z","fill":"#686868"}] -c3:["$","path",null,{"d":"M3.06312 115.709L2.1875 115.387V116.838L4.90653 119.164L5.68998 118.726V116.746L3.06312 115.709Z","fill":"#ffffff"}] -c4:["$","path",null,{"opacity":"0.5","d":"M4.90653 117.183L2.1875 115.387V116.838L4.90653 119.164V117.183Z","fill":"#686868"}] -c5:["$","path",null,{"d":"M5.6897 118.725L4.90625 119.162V117.182L5.6897 116.744V118.725Z","fill":"#686868"}] -c6:["$","path",null,{"d":"M0 108.2L0.714322 107.785L2.35035 108.729L3.06467 109.973V111.24L2.35035 111.631L0.714322 110.687L0 109.466V108.2Z","fill":"#ffffff"}] -c7:["$","path",null,{"opacity":"0.5","d":"M2.35035 108.729L0.714322 107.785L0 108.2V109.466L0.115213 109.674V108.937L0.529981 108.706L1.77428 109.42L2.18905 110.134V110.917L1.77428 111.171L0.599109 110.48L0.714322 110.687L2.35035 111.631L3.06467 111.24V109.973L2.35035 108.729Z","fill":"#686868"}] -c8:["$","path",null,{"d":"M3.06312 110.665L2.1875 110.365V110.918L4.90653 113.244L5.68998 112.807V112.162L3.06312 110.665Z","fill":"#ffffff"}] -c9:["$","path",null,{"opacity":"0.5","d":"M4.90653 112.599L2.1875 110.365V110.918L4.90653 113.244V112.599Z","fill":"#686868"}] -ca:["$","path",null,{"d":"M5.6897 112.807L4.90625 113.245V112.6L5.6897 112.162V112.807Z","fill":"#686868"}] -cb:["$","path",null,{"d":"M40.1171 136.436L48.8042 141.433L48.1359 147.421L37.375 141.203L40.1171 136.436Z","fill":"#ffffff"}] -cc:["$","path",null,{"d":"M40.1171 136.436L48.8042 141.433L48.1359 147.421L37.375 141.203L40.1171 136.436Z","fill":"#686868"}] -cd:["$","path",null,{"d":"M40.1171 136.436L48.8042 141.433L48.1359 147.421L37.375 141.203L40.1171 136.436Z","fill":"#686868"}] -ce:["$","path",null,{"d":"M48.2301 145.233C48.2301 143.621 47.654 142.492 46.7553 141.986L44.0594 140.42C43.1376 139.89 41.8933 139.982 40.4877 140.788C37.6996 142.4 35.4414 146.315 35.4414 149.517C35.4414 151.129 36.0175 152.257 36.9161 152.787L39.5891 154.33C40.5108 154.86 41.7781 154.791 43.1607 153.985C45.9719 152.35 48.2301 148.434 48.2301 145.233Z","fill":"#ffffff"}] -cf:["$","path",null,{"d":"M48.2294 145.232C48.2294 142.031 45.9712 140.718 43.1831 142.331C40.3949 143.943 38.1367 147.858 38.1367 151.059C38.1367 154.261 40.3949 155.573 43.1831 153.961C45.9712 152.349 48.2294 148.434 48.2294 145.232Z","fill":"#686868"}] -d0:["$","path",null,{"d":"M46.3184 146.339C46.3184 144.358 44.9128 143.552 43.1846 144.543C41.4564 145.533 40.0508 147.951 40.0508 149.955C40.0508 151.936 41.4564 152.742 43.1846 151.751C44.9128 150.738 46.3184 148.32 46.3184 146.339Z","fill":"#EAECF2"}] -d1:["$","path",null,{"d":"M45.7404 146.384C45.7404 144.611 44.4961 143.897 42.9522 144.772C41.4084 145.67 40.1641 147.812 40.1641 149.585C40.1641 151.359 41.4084 152.073 42.9522 151.197C44.4961 150.322 45.7404 148.157 45.7404 146.384Z","fill":"#686868"}] -d2:["$","path",null,{"d":"M45.4876 147.213C45.4876 145.969 44.6119 145.462 43.5289 146.084C42.4459 146.706 41.5703 148.226 41.5703 149.47C41.5703 150.713 42.4459 151.22 43.5289 150.598C44.6119 149.976 45.4876 148.456 45.4876 147.213Z","fill":"#EAECF2"}] -198:T670,M43.6673 147.03C43.5521 147.099 43.4599 147.03 43.4599 146.915C43.4599 146.777 43.5521 146.616 43.6673 146.547C43.7825 146.478 43.8747 146.524 43.8747 146.662C43.8747 146.777 43.7825 146.961 43.6673 147.03ZM43.8747 149.932C43.8747 149.794 43.7825 149.748 43.6673 149.817C43.5521 149.886 43.4599 150.047 43.4599 150.186C43.4599 150.324 43.5521 150.37 43.6673 150.301C43.7825 150.232 43.8747 150.07 43.8747 149.932ZM45.0959 147.836C45.2111 147.767 45.3033 147.606 45.3033 147.468C45.3033 147.33 45.2111 147.284 45.0959 147.353C44.9807 147.422 44.8885 147.583 44.8885 147.721C44.8655 147.859 44.9807 147.906 45.0959 147.836ZM42.2386 149.495C42.3538 149.426 42.446 149.264 42.446 149.126C42.446 148.988 42.3538 148.942 42.2386 149.011C42.1234 149.08 42.0312 149.241 42.0312 149.38C42.0312 149.495 42.1234 149.564 42.2386 149.495ZM44.8194 146.754C44.9116 146.616 44.9116 146.455 44.8194 146.409C44.7272 146.362 44.612 146.432 44.5199 146.593C44.4277 146.731 44.4277 146.892 44.5199 146.938C44.612 146.984 44.7503 146.892 44.8194 146.754ZM42.8147 150.255C42.9069 150.117 42.9069 149.955 42.8147 149.909C42.7225 149.863 42.5843 149.932 42.5151 150.093C42.423 150.232 42.423 150.393 42.5151 150.439C42.5843 150.462 42.7225 150.393 42.8147 150.255ZM44.5199 149.264C44.612 149.31 44.7503 149.241 44.8194 149.08C44.9116 148.942 44.9116 148.781 44.8194 148.735C44.7272 148.689 44.589 148.758 44.5199 148.919C44.4277 149.057 44.4277 149.218 44.5199 149.264ZM42.5151 148.09C42.6073 148.136 42.7456 148.067 42.8147 147.906C42.9069 147.767 42.9069 147.606 42.8147 147.56C42.7225 147.514 42.5843 147.583 42.5151 147.744C42.423 147.883 42.423 148.044 42.5151 148.09Zd3:["$","path",null,{"d":"$198","fill":"#686868"}] -d4:["$","path",null,{"d":"M44.8208 148.065C44.8208 147.512 44.429 147.282 43.9221 147.559C43.4382 147.835 43.0234 148.526 43.0234 149.102C43.0234 149.677 43.4152 149.908 43.9221 149.608C44.429 149.309 44.8208 148.618 44.8208 148.065Z","fill":"#ffffff"}] -d5:["$","path",null,{"d":"M36.3161 148.688L38.7356 144.013L11.8218 128.49L5.07031 132.382V141.226L31.9611 156.749L36.3392 154.239L36.3161 148.688Z","fill":"#ffffff"}] -d6:["$","path",null,{"d":"M36.339 154.239L31.9609 156.75V147.906L38.7355 144.014L36.316 148.689L36.339 154.239Z","fill":"#686868"}] -d7:["$","path",null,{"opacity":"0.5","d":"M31.9611 156.75L5.07031 141.227V132.383L31.9611 147.906V156.75Z","fill":"#686868"}] -d8:["$","path",null,{"d":"M55.2329 131.714L28.3191 116.168L8.87109 127.407V130.194L35.7849 145.717L38.8726 143.92L39.2643 142.815L45.555 139.199L46.0158 139.798L55.2329 134.501V131.714Z","fill":"#ffffff"}] -d9:["$","path",null,{"d":"M35.7852 145.718L38.8729 143.921L39.2646 142.816L45.5552 139.2L46.0161 139.799L55.2332 134.502V131.715L35.7852 142.931V145.718Z","fill":"#686868"}] -da:["$","path",null,{"opacity":"0.5","d":"M35.7849 145.716V142.929L8.87109 127.406V130.193L35.7849 145.716Z","fill":"#686868"}] -db:["$","path",null,{"d":"M31.9592 147.906L5.06839 132.383L3.13281 134.824V143.668L27.7424 157.878L31.9592 156.75V147.906Z","fill":"#ffffff"}] -dc:["$","path",null,{"opacity":"0.8","d":"M27.7422 157.879L31.959 156.75V147.906L27.7422 149.012V157.879Z","fill":"#686868"}] -dd:["$","path",null,{"opacity":"0.5","d":"M27.7424 157.878L3.13281 143.668V134.824L27.7424 149.011V157.878Z","fill":"#686868"}] -de:["$","path",null,{"d":"M3.13281 134.822V143.666L6.01314 146.43L22.9495 156.218L27.7424 157.876V149.009L3.13281 134.822Z","fill":"#ffffff"}] -df:["$","path",null,{"opacity":"0.5","d":"M22.9481 156.218L6.01172 146.43V137.586L22.925 147.351L22.9481 156.218Z","fill":"#686868"}] -e0:["$","path",null,{"opacity":"0.6","d":"M6.01314 137.586L3.13281 134.822V143.666L6.01314 146.43V137.586Z","fill":"#686868"}] -e1:["$","path",null,{"opacity":"0.6","d":"M22.9492 147.352V156.218L27.7421 157.877V149.01L22.9492 147.352Z","fill":"#686868"}] -e2:["$","path",null,{"d":"M55.6022 116.191V109.673L28.7114 94.1504L24.8633 96.3614V118.172L51.7771 133.695V111.884V119.208V133.695L55.6022 131.484V116.191Z","fill":"white"}] -e3:["$","path",null,{"opacity":"0.6","d":"M51.7771 133.695L24.8633 118.172V96.3613L51.7771 111.884V133.695Z","fill":"#686868"}] -e4:["$","path",null,{"opacity":"0.4","d":"M55.6024 131.484L51.7773 133.695V119.209V111.885L55.6024 109.674V116.192V131.484Z","fill":"#686868"}] -e5:["$","path",null,{"opacity":"0.6","d":"M55.6022 109.673L51.7771 111.884L24.8633 96.3614L28.7114 94.1504L55.6022 109.673Z","fill":"#686868"}] -e6:["$","path",null,{"d":"M51.386 133.925V119.438V112.114L49.6348 111.124L24.4722 96.5915L22.721 95.5781L5.07031 105.781V132.382L31.9611 147.905L36.4774 145.302L38.0213 141.64L51.386 133.925Z","fill":"white"}] -e7:["$","path",null,{"opacity":"0.6","d":"M38.4802 117.55L49.6329 111.124L24.4703 96.5915L22.719 95.5781L11.5664 102.027L38.4802 117.55Z","fill":"#686868"}] -e8:["$","path",null,{"opacity":"0.4","d":"M49.6346 111.125L31.9609 121.305V134.617V147.905L36.4773 145.303L38.0212 141.641L51.3859 133.926V119.439V112.115L49.6346 111.125Z","fill":"#686868"}] -e9:["$","path",null,{"opacity":"0.2","d":"M5.07031 105.781L31.9611 121.304V147.905L5.07031 132.382V105.781Z","fill":"#686868"}] -ea:["$","path",null,{"d":"M31.9592 134.617L5.06839 119.094L4.53841 119.393L3.13281 123.285V134.824L27.7424 149.011L31.9592 147.906V134.617Z","fill":"white"}] -eb:["$","path",null,{"opacity":"0.4","d":"M27.7422 137.496L31.429 134.917L31.959 134.617V147.906L27.7422 149.012V137.496Z","fill":"#686868"}] -ec:["$","path",null,{"opacity":"0.2","d":"M27.7424 149.011L3.13281 134.824V123.285L27.7424 137.495V149.011Z","fill":"#686868"}] -ed:["$","path",null,{"d":"M5.06904 109.121L4.53906 109.444V119.393L31.4298 134.916L31.9598 134.616V124.667L5.06904 109.121Z","fill":"#ffffff"}] -ee:["$","path",null,{"d":"M31.4297 134.917L31.9597 134.617V124.668L31.4297 124.967V134.917Z","fill":"#686868"}] -ef:["$","path",null,{"opacity":"0.5","d":"M31.4298 134.916V124.966L4.53906 109.443V119.393L31.4298 134.916Z","fill":"#686868"}] -f0:["$","path",null,{"d":"M31.4298 134.916V124.966L26.5909 123.492L7.07375 112.23L4.53906 109.443V119.393L6.70507 122.41L26.1992 133.672L31.4298 134.916Z","fill":"#ffffff"}] -f1:["$","path",null,{"d":"M21.3621 123.515L21.7077 120.682L15.0484 116.836L14.6797 119.669L21.3621 123.515Z","fill":"#686868"}] -f2:["$","path",null,{"d":"M30.7148 124.736L30.4844 126.579L31.4291 127.132V124.967L30.7148 124.736Z","fill":"#686868"}] -f3:["$","path",null,{"d":"M10.9664 114.463L7.0722 112.229L6.72656 111.838V117.78L10.9664 114.463Z","fill":"#686868"}] -f4:["$","path",null,{"d":"M28.5034 132.337L9.00934 121.074L6.84333 119.094L4.53906 119.393L6.70507 122.41L26.1992 133.672L31.4298 134.916V133.028L28.5034 132.337Z","fill":"#686868"}] -f5:["$","path",null,{"opacity":"0.3","d":"M7.07336 112.23L6.68163 122.41L4.51562 119.393V109.443L7.07336 112.23ZM26.5905 123.492L26.1988 133.672L31.4294 134.916V124.966L26.5905 123.492Z","fill":"#686868"}] -f6:["$","path",null,{"d":"M26.5905 123.492L7.07336 112.23L4.51562 109.443V119.393L6.68163 122.41L26.1988 133.672L31.4294 134.916V124.966L26.5905 123.492ZM26.3601 133.257L7.00423 122.064L4.97648 119.232V110.572L6.79685 112.576L26.3601 123.861L30.9916 125.266V134.34L26.3601 133.257Z","fill":"#686868"}] -f7:["$","path",null,{"d":"M42.4199 119.508L33.6406 124.575V133.303L42.4199 126.44V119.508Z","fill":"#ffffff"}] -f8:["$","path",null,{"opacity":"0.4","d":"M43.9414 118.632V125.242L48.4808 121.696L49.7251 118.655V115.293L43.9414 118.632Z","fill":"#686868"}] -f9:["$","path",null,{"d":"M41.1523 135.952L42.4197 135.238V132.451L41.1523 133.188V135.952Z","fill":"#ffffff"}] -fa:["$","path",null,{"d":"M41.8671 135.1L41.4062 135.376V133.488L41.8671 133.234V135.1Z","fill":"#686868"}] -fb:["$","path",null,{"d":"M49.6783 141.872L46.1989 139.016L45.4385 138.578L39.3783 142.079L35.9219 148.942V154.493L36.6823 154.93L37.4427 154.47V149.264L40.5074 143.207L45.715 140.19L47.7428 141.872L48.1345 142.309V147.422L48.9179 147.86L49.6783 147.422V141.872Z","fill":"#ffffff"}] -fc:["$","path",null,{"d":"M49.6796 147.422L48.9192 147.86V142.655L45.8546 140.121L40.5087 143.207L37.444 149.264V154.469L36.6836 154.93V149.38L40.163 142.516L46.2002 139.016L49.6796 141.871V147.422Z","fill":"#686868"}] -fd:["$","path",null,{"d":"M45.8531 140.121L45.7148 140.19L47.7426 141.871L48.1343 142.309V147.422L48.9178 147.86V142.655L45.8531 140.121Z","fill":"#686868"}] -fe:["$","path",null,{"opacity":"0.5","d":"M45.8531 140.121L45.7148 140.19L47.7426 141.871L48.1343 142.309V147.422L48.9178 147.86V142.655L45.8531 140.121Z","fill":"#686868"}] -ff:["$","path",null,{"opacity":"0.3","d":"M40.1617 142.516L39.3783 142.078L35.9219 148.941L36.6823 149.379L40.1617 142.516Z","fill":"#686868"}] -100:["$","path",null,{"opacity":"0.5","d":"M36.6823 149.379L35.9219 148.941V154.492L36.6823 154.929V149.379Z","fill":"#686868"}] -101:["$","path",null,{"d":"M55.2342 96.1772L28.3204 80.6543L14.8635 96.062L11.6836 101.52L38.5974 117.043L49.6348 110.664L51.3861 111.677L55.2342 109.466V96.1772Z","fill":"white"}] -102:["$","path",null,{"opacity":"0.4","d":"M55.2344 109.467L51.3863 111.678L49.6351 110.664L38.5977 117.044L41.7775 111.585L55.2344 96.1777V109.467Z","fill":"#686868"}] -103:["$","path",null,{"opacity":"0.1","d":"M38.5974 117.044L41.7773 111.585L14.8635 96.0625L11.6836 101.521L38.5974 117.044Z","fill":"#686868"}] -104:["$","path",null,{"d":"M27.7424 137.495L3.13281 123.285V134.824L6.01314 137.587L22.9264 147.353L27.7424 149.011V137.495Z","fill":"white"}] -105:["$","path",null,{"opacity":"0.3","d":"M3.13281 123.285V134.824L6.01314 137.587V130.31L3.13281 123.285Z","fill":"#686868"}] -106:["$","path",null,{"opacity":"0.3","d":"M3.13281 123.285V134.824L4.1006 135.146V129.204L3.13281 123.285Z","fill":"#686868"}] -107:["$","path",null,{"opacity":"0.3","d":"M27.7417 137.494V149.01L22.9258 147.351V140.074L27.7417 137.494Z","fill":"#686868"}] -108:["$","path",null,{"opacity":"0.3","d":"M27.7436 137.494V149.01L24.8633 147.121V141.179L27.7436 137.494Z","fill":"#686868"}] -109:["$","path",null,{"d":"M6.01562 137.586L22.9289 147.352V140.074L6.01562 130.309V137.586Z","fill":"#ffffff"}] -10a:["$","path",null,{"opacity":"0.5","d":"M6.01562 137.586L22.9289 147.352V140.074L6.01562 130.309V137.586Z","fill":"#686868"}] -10b:["$","path",null,{"d":"M27.7424 137.495L22.9264 140.075L6.01314 130.31L3.13281 123.285L4.7458 125.105L24.5625 136.551L27.7424 137.495Z","fill":"#ffffff"}] -10c:["$","path",null,{"opacity":"0.4","d":"M32.8117 124.045L32.7656 124.068V133.903V147.468L32.973 147.33V133.903V124.207L43.0657 118.38V138.716L43.2961 138.601V117.988L32.8117 124.045Z","fill":"#686868"}] -10d:["$","path",null,{"d":"M31.9592 121.304L5.06839 105.781L4.12365 106.334L3.13281 110.664V111.562L27.7424 125.772L31.9592 124.667V121.304Z","fill":"white"}] -10e:["$","path",null,{"opacity":"0.4","d":"M27.7422 124.874V125.773L31.959 124.667V121.305L31.0142 121.857L27.7422 124.874Z","fill":"#686868"}] -10f:["$","path",null,{"opacity":"0.1","d":"M27.7424 124.874L31.0144 121.857L4.12365 106.334L3.13281 110.664L27.7424 124.874Z","fill":"#686868"}] -110:["$","path",null,{"opacity":"0.2","d":"M27.7424 125.772V124.874L3.13281 110.664V111.562L27.7424 125.772Z","fill":"#686868"}] -111:["$","path",null,{"d":"M38.2031 121.949L33.6406 124.575V128.398L37.1431 130.425L38.2031 121.949Z","fill":"#686868"}] -112:["$","path",null,{"d":"M33.6406 124.575V133.303L42.4199 126.44V119.508L33.6406 124.575ZM34.0784 132.405V124.828L41.959 120.268V126.21L34.0784 132.405Z","fill":"#686868"}] -113:["$","path",null,{"d":"M27.7423 150.783L24.1016 149.539V152.165L27.7423 153.431L29.8853 152.856V150.23L27.7423 150.783Z","fill":"white"}] -114:["$","path",null,{"opacity":"0.4","d":"M29.8852 150.23L27.7422 150.783V153.432L29.8852 152.856V150.23Z","fill":"#686868"}] -115:["$","path",null,{"d":"M5.06839 138.438L3.13281 136.596V139.244L5.06839 141.087V138.438Z","fill":"white"}] -116:["$","path",null,{"opacity":"0.5","d":"M7.14453 132.682V137.403L21.8227 145.878V141.157L7.14453 132.682Z","fill":"#686868"}] -117:["$","path",null,{"d":"M21.8227 141.157V141.871L7.14453 133.396V132.682L21.8227 141.157ZM7.14453 134.017V134.731L21.8457 143.207V142.493L7.14453 134.017ZM7.14453 135.353V136.067L21.8457 144.543V143.829L7.14453 135.353ZM7.14453 136.666V137.38L21.8457 145.855V145.141L7.14453 136.666Z","fill":"#686868"}] -118:["$","path",null,{"opacity":"0.5","d":"M7.14453 139.338V144.059L21.8227 152.535V147.813L7.14453 139.338Z","fill":"#686868"}] -119:["$","path",null,{"d":"M21.8227 147.813V148.527L7.14453 140.052V139.338L21.8227 147.813ZM7.14453 140.674V141.388L21.8457 149.863V149.149L7.14453 140.674ZM7.14453 141.986V142.7L21.8457 151.176V150.462L7.14453 141.986ZM7.14453 143.322V144.036L21.8457 152.512V151.798L7.14453 143.322Z","fill":"#686868"}] -11a:["$","path",null,{"d":"M37.3078 152.281L35.5105 151.244L33.1602 152.603V153.386L34.9344 154.422L37.3078 153.064V152.281Z","fill":"#ffffff"}] -11b:["$","path",null,{"d":"M34.9336 153.64V154.423L37.307 153.064V152.281L34.9336 153.64Z","fill":"#686868"}] -11c:["$","path",null,{"opacity":"0.5","d":"M33.1602 152.604V153.387L34.9344 154.423V153.64L33.1602 152.604Z","fill":"#686868"}] -11d:["$","path",null,{"d":"M35.5105 148.135L33.1602 149.494V152.603L33.9436 153.063L36.317 151.705V148.595L35.5105 148.135Z","fill":"#ffffff"}] -11e:["$","path",null,{"opacity":"0.5","d":"M33.1602 149.494V152.603L33.9436 153.064V149.955L33.1602 149.494Z","fill":"#686868"}] -11f:["$","path",null,{"d":"M33.9453 149.955V153.064L36.3187 151.705V148.596L33.9453 149.955Z","fill":"#686868"}] -120:["$","path",null,{"d":"M36.7518 132.198L36.0375 130.977L34.3784 130.033L33.6641 130.425V134.801L34.3784 136.044L36.0375 136.989L36.7518 136.574V132.198Z","fill":"#ffffff"}] -121:["$","path",null,{"opacity":"0.5","d":"M36.0375 130.977L34.3784 130.033L33.6641 130.425V134.801L33.7793 135.008V131.185L34.194 130.954L35.4383 131.668L35.8531 132.382V136.275L35.4383 136.505L34.2632 135.837L34.3784 136.044L36.0375 136.989L36.7518 136.574V132.198L36.0375 130.977Z","fill":"#686868"}] -122:["$","path",null,{"d":"M32.6038 132.268L31.8203 132.705V134.686L33.7789 135.077V133.626L33.6637 133.373L32.6038 132.268Z","fill":"#ffffff"}] -123:["$","path",null,{"opacity":"0.5","d":"M31.8203 132.705L33.7789 133.626V135.077L31.8203 134.686V132.705Z","fill":"#686868"}] -124:["$","path",null,{"d":"M36.7518 129.388L36.0375 128.167L34.3784 127.223L33.6641 127.614V128.881L34.3784 130.125L36.0375 131.069L36.7518 130.654V129.388Z","fill":"#ffffff"}] -125:["$","path",null,{"opacity":"0.5","d":"M36.0375 128.167L34.3784 127.223L33.6641 127.614V128.881L33.7793 129.088V128.374L34.194 128.144L35.4383 128.835L35.8531 129.572V130.355L35.4383 130.608L34.2632 129.917L34.3784 130.125L36.0375 131.069L36.7518 130.654V129.388L36.0375 128.167Z","fill":"#686868"}] -126:["$","path",null,{"d":"M32.6038 127.684L31.8203 128.121V128.766L33.7789 129.158V128.605L33.6637 128.328L32.6038 127.684Z","fill":"#ffffff"}] -127:["$","path",null,{"opacity":"0.5","d":"M31.8203 128.121L33.7789 128.605V129.157L31.8203 128.766V128.121Z","fill":"#686868"}] -128:["$","div",null,{"className":"elementor-element elementor-element-c582715 elementor-widget elementor-widget-logico_heading","data-id":"c582715","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"Mid Mile"}]}]}] -129:["$","div",null,{"className":"elementor-element elementor-element-3ae1ce0 elementor-widget elementor-widget-text-editor","data-id":"3ae1ce0","data-element_type":"widget","data-e-type":"widget","data-widget_type":"text-editor.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","p",null,{"children":"Smooth inter-city delivery through strategically located hubs with live tracking."}]}]}] -199:T676,M13.6906 103.458C13.5567 103.54 13.4495 103.458 13.4495 103.323C13.4495 103.187 13.5567 102.997 13.6906 102.916C13.8246 102.835 13.905 102.889 13.905 103.052C13.9318 103.214 13.8246 103.377 13.6906 103.458ZM13.9318 106.602C13.9318 106.44 13.8246 106.386 13.7174 106.467C13.5835 106.548 13.4763 106.711 13.4763 106.873C13.4763 107.009 13.5835 107.09 13.7174 107.009C13.8246 106.928 13.9318 106.738 13.9318 106.602ZM15.2177 104.353C15.3517 104.271 15.4589 104.109 15.4589 103.946C15.4589 103.811 15.3517 103.756 15.2177 103.811C15.0838 103.892 15.0034 104.055 15.0034 104.217C14.9766 104.353 15.0838 104.407 15.2177 104.353ZM12.1635 106.115C12.2975 106.033 12.3779 105.871 12.3779 105.708C12.3779 105.572 12.2707 105.491 12.1635 105.572C12.0296 105.654 11.9492 105.816 11.9492 105.979C11.9492 106.142 12.0564 106.196 12.1635 106.115ZM14.923 103.187C15.0034 103.025 15.0034 102.862 14.923 102.808C14.8427 102.754 14.6819 102.835 14.6015 102.997C14.5212 103.16 14.5212 103.323 14.6015 103.377C14.7087 103.431 14.8427 103.35 14.923 103.187ZM12.7797 106.928C12.8601 106.765 12.8601 106.602 12.7797 106.548C12.6994 106.494 12.5386 106.575 12.4583 106.738C12.3779 106.901 12.3779 107.063 12.4583 107.117C12.5386 107.172 12.6994 107.09 12.7797 106.928ZM14.6015 105.871C14.6819 105.925 14.8427 105.843 14.923 105.681C15.0034 105.518 15.0034 105.356 14.923 105.301C14.8427 105.247 14.6819 105.328 14.6015 105.491C14.5212 105.654 14.5212 105.816 14.6015 105.871ZM12.4583 104.624C12.5386 104.678 12.6994 104.597 12.7797 104.434C12.8601 104.271 12.8601 104.109 12.7797 104.055C12.6994 104 12.5386 104.082 12.4583 104.244C12.3779 104.407 12.3779 104.57 12.4583 104.624Z12a:["$","path",null,{"d":"$199","fill":"#686868"}] -12b:["$","path",null,{"d":"M14.9223 104.569C14.9223 103.945 14.4936 103.729 13.9846 104.027C13.4755 104.325 13.0469 105.084 13.0469 105.68C13.0469 106.304 13.4755 106.52 13.9846 106.222C14.4936 105.924 14.9223 105.192 14.9223 104.569Z","fill":"#ffffff"}] -12c:["$","path",null,{"d":"M21.3793 95.6257L18.8074 91.5871L14.5208 89.0664L1.60747 94.9481L0 100.965V105.167L5.73331 108.528L6.59062 108.013V104.191L10.2342 97.5773L18.2984 92.8882L20.5488 96.4389L21.4061 101.86L22.2634 101.209L21.3793 95.6257Z","fill":"white"}] -12d:["$","path",null,{"opacity":"0.4","d":"M21.4072 101.861L20.5499 96.4396L18.2994 92.8889L10.2353 97.578L6.59169 104.192V108.013L5.73438 108.528V104.3L7.34184 98.2828L18.8085 91.5879L21.3804 95.6265L22.2645 101.21L21.4072 101.861Z","fill":"#686868"}] -12e:["$","path",null,{"d":"M5.73331 108.527L0 105.166V100.965L5.73331 104.299V108.527Z","fill":"#ffffff"}] -12f:["$","path",null,{"opacity":"0.5","d":"M5.73331 108.527L0 105.166V100.965L5.73331 104.299V108.527Z","fill":"#686868"}] -130:["$","path",null,{"opacity":"0.2","d":"M7.34078 98.2812L5.73331 104.298L0 100.965L1.60747 94.9473L7.34078 98.2812Z","fill":"#686868"}] -131:["$","path",null,{"d":"M18.8093 91.5871L7.34268 98.282L1.60938 94.9481L14.5227 89.0664L18.8093 91.5871Z","fill":"white"}] -132:["$","path",null,{"opacity":"0.4","d":"M2.22403 95.707L0.964844 100.396L2.22403 99.6643V95.707Z","fill":"#686868"}] -133:["$","path",null,{"d":"M2.22403 99.6641L0.964844 100.396L5.27822 102.917L5.59971 101.643L2.22403 99.6641Z","fill":"white"}] -134:["$","path",null,{"d":"M6.50924 98.2278L2.22266 95.707V99.6643L5.59834 101.643L6.50924 98.2278Z","fill":"#ffffff"}] -135:["$","path",null,{"d":"M3.21484 96.3027V99.0945L5.86717 100.667L6.51015 98.2272L3.21484 96.3027Z","fill":"white"}] -136:["$","path",null,{"d":"M106.629 48.2188L3.24219 108.608V112.809L20.8172 123.082L124.204 62.6927V58.4643L106.629 48.2188Z","fill":"#ffffff"}] -137:["$","path",null,{"opacity":"0.5","d":"M20.8172 118.853V123.081L3.24219 112.809V108.607L20.8172 118.853Z","fill":"#686868"}] -138:["$","path",null,{"d":"M124.203 58.4648L20.8164 118.854V123.083L124.203 62.6932V58.4648Z","fill":"#686868"}] -139:["$","path",null,{"d":"M84.9002 88.1191L76.4609 93.0522V96.4132L77.2915 96.9011L85.7575 91.968V88.607L84.9002 88.1191Z","fill":"#ffffff"}] -13a:["$","path",null,{"d":"M77.2915 93.5676L76.4609 93.0526V96.4136L77.2915 96.9015L85.7575 91.9684V88.6074L77.2915 93.5676Z","fill":"#686868"}] -13b:["$","path",null,{"d":"M96.7694 84.9199L69.6836 100.749V101.942L70.5141 102.43L97.6268 86.6004V85.4078L96.7694 84.9199Z","fill":"#ffffff"}] -13c:["$","path",null,{"d":"M70.5141 101.237L69.6836 100.749V101.942L70.5141 102.43L97.6268 86.6008V85.4082L70.5141 101.237Z","fill":"#686868"}] -13d:["$","path",null,{"d":"M113.192 74.0771L98.3495 80.2299L97.4922 80.7178V76.5166L99.0997 70.4993L110.593 63.7773L113.138 67.8431L114.022 73.3995L113.192 74.0771Z","fill":"#ffffff"}] -13e:["$","path",null,{"d":"M113.192 74.0771L98.3495 80.2299L97.4922 80.7178V76.5166L99.0997 70.4993L110.593 63.7773L113.138 67.8431L114.022 73.3995L113.192 74.0771Z","fill":"#686868"}] -13f:["$","path",null,{"d":"M117.48 76.5976L113.193 74.0769L112.309 68.6559L110.059 65.0781L114.372 67.5989L116.622 71.1496L117.48 76.5976Z","fill":"#ffffff"}] -140:["$","path",null,{"d":"M114.637 76.2447C114.637 74.51 114.047 73.2903 113.056 72.7211L110.189 71.0406C109.225 70.4714 107.885 70.5527 106.385 71.4201C103.411 73.1819 101 77.3831 101 80.8525C101 82.5872 101.589 83.807 102.581 84.3762L105.447 86.0566C106.412 86.6258 107.778 86.5445 109.252 85.6772C112.225 83.9154 114.637 79.7141 114.637 76.2447Z","fill":"#ffffff"}] -141:["$","path",null,{"d":"M114.637 76.2439C114.637 72.7745 112.226 71.3921 109.252 73.1268C106.278 74.8615 103.867 79.0628 103.867 82.5322C103.867 86.0016 106.278 87.3839 109.252 85.6492C112.226 83.9145 114.637 79.7133 114.637 76.2439Z","fill":"#686868"}] -142:["$","path",null,{"d":"M112.574 77.4368C112.574 75.2955 111.074 74.4282 109.252 75.5124C107.403 76.5965 105.93 79.1986 105.93 81.3399C105.93 83.4811 107.43 84.3485 109.252 83.2643C111.074 82.1801 112.574 79.5781 112.574 77.4368Z","fill":"#EAECF2"}] -143:["$","path",null,{"d":"M111.959 77.5194C111.959 75.595 110.62 74.836 108.986 75.7847C107.351 76.7334 106.012 79.0644 106.012 80.9888C106.012 82.9132 107.351 83.6722 108.986 82.7235C110.647 81.7477 111.959 79.4167 111.959 77.5194Z","fill":"#686868"}] -144:["$","path",null,{"d":"M111.715 78.3864C111.715 77.0312 110.777 76.4891 109.625 77.1667C108.473 77.8443 107.535 79.4706 107.535 80.8259C107.535 82.1811 108.473 82.7232 109.625 82.0456C110.777 81.368 111.715 79.7146 111.715 78.3864Z","fill":"#EAECF2"}] -19a:T664,M109.761 78.1692C109.627 78.2505 109.52 78.1963 109.52 78.0337C109.52 77.8981 109.627 77.7084 109.761 77.6271C109.895 77.5458 109.975 77.6 109.975 77.7626C109.975 77.9252 109.895 78.115 109.761 78.1692ZM109.975 81.3133C109.975 81.1778 109.868 81.0965 109.761 81.1778C109.627 81.2591 109.52 81.4218 109.52 81.5844C109.52 81.7199 109.627 81.8012 109.761 81.7199C109.895 81.6386 109.975 81.476 109.975 81.3133ZM111.288 79.0637C111.422 78.9823 111.529 78.8197 111.529 78.6571C111.529 78.4945 111.422 78.4402 111.288 78.5216C111.154 78.6029 111.074 78.7655 111.047 78.9281C111.047 79.0908 111.154 79.145 111.288 79.0637ZM108.234 80.8526C108.368 80.7712 108.475 80.6086 108.475 80.446C108.475 80.3105 108.368 80.2291 108.234 80.3105C108.1 80.3918 108.02 80.5815 108.02 80.717C108.02 80.8526 108.127 80.9068 108.234 80.8526ZM110.993 77.8981C111.074 77.7355 111.074 77.5729 110.993 77.5187C110.913 77.4645 110.752 77.5458 110.672 77.7084C110.591 77.871 110.591 78.0337 110.672 78.0879C110.752 78.1421 110.913 78.0608 110.993 77.8981ZM108.85 81.6657C108.93 81.5031 108.93 81.3404 108.85 81.2862C108.77 81.232 108.609 81.3133 108.529 81.476C108.448 81.6386 108.448 81.8012 108.529 81.8554C108.609 81.8825 108.743 81.8012 108.85 81.6657ZM110.672 80.5815C110.752 80.6357 110.913 80.5544 110.993 80.3918C111.074 80.2292 111.074 80.0665 110.993 80.0123C110.913 79.9581 110.752 80.0394 110.672 80.202C110.591 80.3647 110.591 80.5273 110.672 80.5815ZM108.529 79.3347C108.609 79.3889 108.77 79.3076 108.85 79.145C108.93 78.9823 108.93 78.8197 108.85 78.7655C108.77 78.7113 108.609 78.7926 108.529 78.9552C108.421 79.1179 108.421 79.2805 108.529 79.3347Z145:["$","path",null,{"d":"$19a","fill":"#686868"}] -146:["$","path",null,{"d":"M110.993 79.308C110.993 78.7117 110.564 78.4678 110.055 78.7659C109.546 79.0641 109.117 79.7959 109.117 80.4193C109.117 81.0156 109.546 81.2596 110.055 80.9614C110.564 80.6361 110.993 79.9043 110.993 79.308Z","fill":"#ffffff"}] -147:["$","path",null,{"d":"M117.423 70.3367L114.878 66.2981L110.591 63.7773L97.651 69.6591L96.0703 75.6763V79.8776L101.804 83.2385L102.661 82.7235V78.9289L106.305 72.3153L114.369 67.5991L116.619 71.1498L117.476 76.5979L118.334 75.9203L117.423 70.3367Z","fill":"#ffffff"}] -148:["$","path",null,{"d":"M117.478 76.5986L116.62 71.1506L114.37 67.5999L106.306 72.3161L102.662 78.9296V82.7243L101.805 83.2393V79.038L103.385 73.0208L114.879 66.2988L117.424 70.3374L118.335 75.921L117.478 76.5986Z","fill":"#686868"}] -149:["$","path",null,{"d":"M96.0988 75.7031L95.9648 79.8502L101.805 83.2382V79.037L96.0988 75.7031Z","fill":"#ffffff"}] -14a:["$","path",null,{"opacity":"0.5","d":"M96.0988 75.7031L95.9648 79.8502L101.805 83.2382V79.037L96.0988 75.7031Z","fill":"#686868"}] -14b:["$","path",null,{"opacity":"0.5","d":"M103.384 73.0192L101.804 79.0364L96.0703 75.6755L97.651 69.6582L103.384 73.0192Z","fill":"#686868"}] -14c:["$","path",null,{"d":"M98.0293 0L33.3555 37.784V79.7692L67.3266 99.6099L132 61.8259V19.8407L98.0293 0Z","fill":"white"}] -14d:["$","path",null,{"opacity":"0.4","d":"M132.002 19.8398V61.8251L67.3281 99.609V57.6238L132.002 19.8398Z","fill":"#686868"}] -14e:["$","path",null,{"opacity":"0.2","d":"M33.3555 37.7832L67.3266 57.6239V99.6091L33.3555 79.7684V37.7832Z","fill":"#686868"}] -14f:["$","path",null,{"opacity":"0.5","d":"M38.5508 66.4609V82.8051L62.127 96.5743V80.2572L38.5508 66.4609Z","fill":"#686868"}] -150:["$","path",null,{"d":"M62.1268 104.544L57.7599 101.996L42.1406 111.103V111.944L46.5076 114.491L62.1268 105.357V104.544Z","fill":"#ffffff"}] -151:["$","path",null,{"d":"M62.1268 104.544L57.7599 101.996L42.1406 111.103V111.944L46.5076 114.491L62.1268 105.357V104.544Z","fill":"#686868"}] -152:["$","path",null,{"d":"M46.5076 113.651L62.1268 104.544L57.7599 101.996L42.1406 111.103L46.5076 113.651Z","fill":"#ffffff"}] -153:["$","path",null,{"d":"M57.7599 98.6348L42.1406 107.769V111.103L42.9711 111.618L58.6172 102.484V99.1227L57.7599 98.6348Z","fill":"#ffffff"}] -154:["$","path",null,{"d":"M42.9711 108.257L42.1406 107.769V111.103L42.9711 111.618L58.6172 102.484V99.123L42.9711 108.257Z","fill":"#686868"}] -155:["$","path",null,{"d":"M57.1733 74.1581L55.807 73.3721L38.4731 63.2349L37.8033 62.8555L24.9168 70.3635L23.9523 71.7187L20.9785 81.368V81.9643L6.3505 94.2156L6.10938 95.9503V106.928L23.6844 117.2L25.0507 117.038L42.5453 108.5L58.62 99.1216V81.9643L57.1733 74.1581Z","fill":"white"}] -156:["$","path",null,{"d":"M37.8014 62.8555L24.9149 70.3635L23.9504 71.7187L20.9766 81.368V95.8961L37.0245 86.5179V69.3606L38.4712 63.2349L37.8014 62.8555Z","fill":"white"}] -157:["$","path",null,{"d":"M42.6774 82.642L23.9504 71.7188L20.9766 81.368V95.8962L42.5434 108.5V93.9717L42.6774 82.642Z","fill":"white"}] -158:["$","path",null,{"d":"M24.4335 72.9648L21.9688 80.9607L41.7406 92.5344L41.8478 83.1291L24.4335 72.9648Z","fill":"#ffffff"}] -159:["$","path",null,{"opacity":"0.3","d":"M41.8494 83.1299L41.3136 82.8047L33.2227 87.548L34.6158 88.3612L41.8226 84.1599L41.8494 83.1299Z","fill":"#706680"}] -15a:["$","path",null,{"d":"M6.35156 94.215L20.9795 82.5329L21.4082 81.6113L6.35156 94.215Z","fill":"white"}] -15b:["$","path",null,{"d":"M6.35156 106.114L20.9795 95.8958V82.5332L6.35156 94.2153V106.114Z","fill":"white"}] -15c:["$","path",null,{"d":"M6.10938 95.9495V106.927L6.3505 106.114V94.2148L6.10938 95.9495Z","fill":"white"}] -15d:["$","path",null,{"d":"M55.8085 73.373L42.9219 80.881L42.6808 82.6429L42.5469 93.9726V108.501L58.6216 99.1225V81.9652L57.1748 74.1591L55.8085 73.373Z","fill":"white"}] -15e:["$","path",null,{"opacity":"0.4","d":"M55.8085 73.373L42.9219 80.881L42.6808 82.6429L42.5469 93.9726V108.501L58.6216 99.1225V81.9652L57.1748 74.1591L55.8085 73.373Z","fill":"#686868"}] -15f:["$","path",null,{"opacity":"0.4","d":"M43.5352 106.766V93.4573L43.5887 93.105V82.6425L43.8834 82.1546L55.9395 75.1074L56.2074 75.2701L57.6541 82.7509V98.553L57.6005 98.5801L43.5352 106.766ZM43.7495 82.6967V93.1321L43.6959 93.4844V106.495L57.4398 98.4717V82.7781L56.0198 75.3785L55.9127 75.3243L43.9906 82.2902L43.7495 82.6967Z","fill":"#686868"}] -160:["$","path",null,{"opacity":"0.2","d":"M25.0508 105.139L42.5454 95.1377L42.1167 93.7012L25.0508 105.139Z","fill":"#686868"}] -161:["$","path",null,{"opacity":"0.4","d":"M25.0508 117.037L42.5454 108.499V95.1367L25.0508 105.138V117.037Z","fill":"#686868"}] -162:["$","path",null,{"opacity":"0.4","d":"M23.6836 106.223V117.2L25.0499 117.038V105.139L23.6836 106.223Z","fill":"#686868"}] -163:["$","path",null,{"d":"M44.3125 82.8315L44.4197 92.5621L44.3393 93.1042V93.9445L56.824 84.6205V83.2923L55.3772 76.3535L44.3125 82.8315Z","fill":"#ffffff"}] -164:["$","path",null,{"d":"M55.1641 92.8872L56.3697 92.1825V88.957L55.1641 89.6617V92.8872Z","fill":"#ffffff"}] -165:["$","path",null,{"d":"M56.1826 90.3397L55.3789 90.8005V90.15L56.1826 89.6621V90.3397Z","fill":"#686868"}] -166:["$","path",null,{"d":"M23.6844 106.224V117.201L6.10938 106.929V95.9512L23.6844 106.224Z","fill":"white"}] -167:["$","path",null,{"opacity":"0.2","d":"M25.0507 105.138L23.6844 106.222L6.10938 95.9495L6.3505 94.2148L25.0507 105.138Z","fill":"#686868"}] -168:["$","path",null,{"d":"M42.1177 93.7L21.4082 81.6113L6.35156 94.215L25.0518 105.138L42.1177 93.7Z","fill":"white"}] -169:["$","path",null,{"opacity":"0.2","d":"M42.9213 80.8799L42.6801 82.6417L23.9531 71.7185L24.9176 70.3633L42.9213 80.8799Z","fill":"#686868"}] -16a:["$","path",null,{"d":"M55.8082 73.3721L42.9216 80.8801L24.918 70.3635L37.8045 62.8555L55.8082 73.3721Z","fill":"white"}] -16b:["$","path",null,{"d":"M22.9062 80.5814V81.4217L29.9255 76.1634L25.2639 73.4258L22.9866 80.0393L22.9062 80.5814Z","fill":"#686868"}] -16c:["$","path",null,{"d":"M41.7406 92.5343L41.7674 89.8781L24.9158 80.0391L21.9688 80.9606L41.7406 92.5343Z","fill":"#686868"}] -16d:["$","path",null,{"d":"M52.6445 87.7378L54.0913 80.1214L51.5193 78.6035L44.3125 82.8319L44.3661 87.3854L49.2957 90.2585L52.6445 87.7378Z","fill":"#686868"}] -16e:["$","path",null,{"d":"M37.0546 83.1024L39.1443 81.5574L32.125 77.4375L32.1518 80.2293L37.0546 83.1024Z","fill":"#686868"}] -16f:["$","path",null,{"d":"M21.9688 80.9605L41.7406 92.5071L41.8478 83.1018L24.4603 72.9375L21.9688 80.9605ZM41.5799 83.2644L41.4727 92.1005L22.2367 80.8521L24.5675 73.317L41.5799 83.2644Z","fill":"#686868"}] -170:["$","path",null,{"d":"M44.3398 93.1039V93.9441L49.2962 90.2579L44.3666 87.3848L44.4202 92.5618L44.3398 93.1039Z","fill":"#ffffff"}] -171:["$","path",null,{"d":"M44.3125 82.8315L44.4197 92.5621L44.3393 93.1042V93.9174L56.824 84.5933V83.2923L55.3772 76.3535L44.3125 82.8315ZM56.5828 84.4849L44.6072 93.4295V93.1313L44.6876 92.5892L44.5804 82.9671L55.2433 76.733L56.6096 83.3194V84.4849H56.5828Z","fill":"#686868"}] -172:["$","path",null,{"d":"M8.76172 98.6074V107.389L20.8981 114.464V105.709L8.76172 98.6074Z","fill":"#ffffff"}] -173:["$","path",null,{"d":"M19.6394 111.942V112.484L9.16406 106.359V105.817L19.6394 111.942ZM9.16406 104.868V105.41L19.6394 111.536V110.994L9.16406 104.868ZM19.6394 112.864L9.16406 106.738V107.145L19.6394 113.271V112.864ZM9.16406 103.946V104.489L19.6394 110.614V110.072L9.16406 103.946ZM9.16406 100.314V100.748L19.6394 106.874V106.44L9.16406 100.314ZM9.16406 102.998V103.54L19.6394 109.666V109.123L9.16406 102.998ZM9.16406 101.128V101.67L19.6394 107.795V107.253L9.16406 101.128ZM9.16406 102.076V102.618L19.6394 108.744V108.202L9.16406 102.076Z","fill":"#686868"}] -174:["$","path",null,{"opacity":"0.4","d":"M20.7109 98.6334L21.2736 100.314L32.8205 93.1582L20.7109 98.6334Z","fill":"#686868"}] -175:["$","path",null,{"d":"M14.6285 94.5132L14.0391 95.5161L22.6926 86.707L14.6285 94.5132Z","fill":"white"}] -176:["$","path",null,{"d":"M21.2727 100.314L20.7101 98.6336L14.6285 94.5137L14.0391 95.5165L21.2727 100.314Z","fill":"#ffffff"}] -177:["$","path",null,{"opacity":"0.2","d":"M22.693 86.707L32.8201 93.158L20.7105 98.6331L14.6289 94.5132L22.693 86.707Z","fill":"#686868"}] -178:["$","path",null,{"d":"M43.5088 114.761L28.6933 120.914L27.8359 121.429V117.2L29.4166 111.183L40.91 104.488L43.4552 108.527L44.3661 114.11L43.5088 114.761Z","fill":"#ffffff"}] -179:["$","path",null,{"d":"M43.5088 114.761L28.6933 120.914L27.8359 121.429V117.2L29.4166 111.183L40.91 104.488L43.4552 108.527L44.3661 114.11L43.5088 114.761Z","fill":"#686868"}] -17a:["$","path",null,{"d":"M47.8196 117.281L43.5062 114.761L42.6221 109.34L40.3984 105.789L44.685 108.31L46.9355 111.861L47.8196 117.281Z","fill":"#ffffff"}] -17b:["$","path",null,{"d":"M44.9531 116.93C44.9531 115.196 44.3369 113.976 43.3724 113.407L40.5058 111.726C39.5413 111.157 38.2017 111.238 36.7014 112.106C33.7276 113.84 31.3164 118.042 31.3164 121.511C31.3164 123.246 31.9326 124.465 32.8971 125.035L35.7637 126.715C36.7282 127.284 38.0946 127.203 39.5681 126.336C42.5419 124.628 44.9531 120.4 44.9531 116.93Z","fill":"#ffffff"}] -17c:["$","path",null,{"d":"M44.9536 116.929C44.9536 113.46 42.5424 112.078 39.5686 113.812C36.5948 115.547 34.1836 119.748 34.1836 123.218C34.1836 126.687 36.5948 128.097 39.5686 126.335C42.5424 124.627 44.9536 120.399 44.9536 116.929Z","fill":"#686868"}] -17d:["$","path",null,{"d":"M42.8903 118.15C42.8903 116.008 41.39 115.141 39.5682 116.225C37.7196 117.309 36.2461 119.911 36.2461 122.053C36.2461 124.194 37.7464 125.061 39.5682 123.977C41.4168 122.893 42.8903 120.291 42.8903 118.15Z","fill":"#EAECF2"}] -17e:["$","path",null,{"d":"M42.2992 118.205C42.2992 116.281 40.9596 115.522 39.3254 116.47C37.6911 117.419 36.3516 119.75 36.3516 121.674C36.3516 123.599 37.6911 124.358 39.3254 123.409C40.9596 122.433 42.2992 120.102 42.2992 118.205Z","fill":"#686868"}] -17f:["$","path",null,{"d":"M42.031 119.072C42.031 117.717 41.0933 117.175 39.9413 117.852C38.7893 118.53 37.8516 120.156 37.8516 121.511C37.8516 122.867 38.7893 123.409 39.9413 122.731C41.0933 122.054 42.031 120.427 42.031 119.072Z","fill":"#EAECF2"}] -19b:T66c,M40.0769 118.882C39.943 118.963 39.8358 118.882 39.8358 118.746C39.8358 118.611 39.943 118.421 40.0769 118.34C40.2109 118.258 40.3181 118.313 40.3181 118.475C40.3181 118.638 40.2109 118.801 40.0769 118.882ZM40.3181 122.026C40.3181 121.89 40.2109 121.809 40.0769 121.89C39.943 121.972 39.8358 122.134 39.8358 122.297C39.8358 122.46 39.943 122.514 40.0769 122.433C40.2109 122.351 40.3181 122.162 40.3181 122.026ZM41.604 119.776C41.738 119.695 41.8451 119.532 41.8451 119.37C41.8451 119.234 41.738 119.153 41.604 119.234C41.4701 119.316 41.3629 119.478 41.3629 119.641C41.3629 119.776 41.4701 119.831 41.604 119.776ZM38.5766 121.538C38.7106 121.457 38.8177 121.294 38.8177 121.132C38.8177 120.996 38.7106 120.915 38.6034 120.996C38.4695 121.077 38.3891 121.24 38.3891 121.403C38.3355 121.565 38.4427 121.619 38.5766 121.538ZM41.3093 118.584C41.3897 118.421 41.3897 118.258 41.3093 118.204C41.229 118.15 41.0682 118.231 40.9878 118.394C40.9075 118.557 40.9075 118.719 40.9878 118.773C41.095 118.828 41.229 118.746 41.3093 118.584ZM39.166 122.351C39.2464 122.189 39.2464 122.026 39.166 121.972C39.0857 121.918 38.9249 121.999 38.8445 122.162C38.7642 122.324 38.7642 122.487 38.8445 122.541C38.9517 122.595 39.0857 122.514 39.166 122.351ZM40.9878 121.294C41.0682 121.348 41.229 121.267 41.3093 121.104C41.3897 120.942 41.3897 120.779 41.3093 120.725C41.229 120.671 41.0682 120.752 40.9878 120.915C40.9075 121.077 40.9075 121.24 40.9878 121.294ZM38.8445 120.047C38.9249 120.102 39.0857 120.02 39.166 119.858C39.2464 119.695 39.2464 119.532 39.166 119.478C39.0857 119.424 38.9249 119.505 38.8445 119.668C38.7642 119.831 38.7642 119.993 38.8445 120.047Z180:["$","path",null,{"d":"$19b","fill":"#686868"}] -181:["$","path",null,{"d":"M41.309 119.993C41.309 119.369 40.8803 119.152 40.3713 119.451C39.8623 119.749 39.4336 120.508 39.4336 121.104C39.4336 121.727 39.8623 121.944 40.3713 121.646C40.9071 121.348 41.309 120.616 41.309 119.993Z","fill":"#ffffff"}] -182:["$","path",null,{"d":"M47.7661 111.048L45.2209 106.982L40.9075 104.488L27.9942 110.343L26.3867 116.387V120.588L32.12 123.949L32.9773 123.434V119.613L36.6477 112.999L44.6851 108.31L46.9355 111.861L47.8196 117.282L48.6502 116.604L47.7661 111.048Z","fill":"white"}] -183:["$","path",null,{"opacity":"0.4","d":"M47.8207 117.282L46.9366 111.861L44.6861 108.311L36.6488 113L32.9784 119.613V123.435L32.1211 123.95V119.722L33.7286 113.704L45.222 106.982L47.7671 111.048L48.6512 116.605L47.8207 117.282Z","fill":"#686868"}] -184:["$","path",null,{"d":"M26.4153 116.387L25.7188 116.712V120.208L32.1218 123.949V119.721L26.4153 116.387Z","fill":"#ffffff"}] -185:["$","path",null,{"opacity":"0.5","d":"M26.4153 116.387L25.7188 116.712V120.208L32.1218 123.949V119.721L26.4153 116.387Z","fill":"#686868"}] -186:["$","path",null,{"opacity":"0.2","d":"M33.7275 113.705L32.12 119.722L26.3867 116.388L27.9942 110.344L33.7275 113.705Z","fill":"#686868"}] -187:["$","path",null,{"opacity":"0.4","d":"M28.6113 111.129L27.3789 115.818L28.6113 115.086V111.129Z","fill":"#686868"}] -188:["$","path",null,{"d":"M28.6113 115.086L27.3789 115.818L31.6655 118.339L32.0138 117.065L28.6113 115.086Z","fill":"white"}] -189:["$","path",null,{"d":"M32.9267 113.65L28.6133 111.129V115.086L32.0158 117.065L32.9267 113.65Z","fill":"#ffffff"}] -18a:["$","path",null,{"d":"M29.6016 111.697V114.516L32.2539 116.061L32.9237 113.649L29.6016 111.697Z","fill":"white"}] -18b:["$","path",null,{"d":"M50.2602 90.747L49.4832 89.446L47.7418 88.416L46.9648 88.8497V93.5659L47.7418 94.894L49.4832 95.924L50.2602 95.4903V90.747Z","fill":"#ffffff"}] -18c:["$","path",null,{"opacity":"0.5","d":"M49.4832 89.446L47.7418 88.416L46.9648 88.8497V93.5659L47.0988 93.7827V89.6628L47.5542 89.3918L48.867 90.1778L49.2957 90.9368V95.138L48.867 95.409L47.6078 94.6772L47.7418 94.894L49.4832 95.924L50.2602 95.4903V90.747L49.4832 89.446Z","fill":"#686868"}] -18d:["$","path",null,{"d":"M45.8383 90.8281L45.0078 91.316V93.4302L47.0975 93.8638V92.2918L46.9636 91.9936L45.8383 90.8281Z","fill":"#ffffff"}] -18e:["$","path",null,{"opacity":"0.5","d":"M45.0078 91.3164L47.0975 92.2922V93.8642L45.0078 93.4306V91.3164Z","fill":"#686868"}] -18f:["$","div",null,{"className":"elementor-element elementor-element-fb01b90 elementor-widget elementor-widget-logico_heading","data-id":"fb01b90","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"Last Mile"}]}]}] -190:["$","div",null,{"className":"elementor-element elementor-element-1057c22 elementor-widget elementor-widget-text-editor","data-id":"1057c22","data-element_type":"widget","data-e-type":"widget","data-widget_type":"text-editor.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","p",null,{"children":"Packages are delivered to customers with real-time updates and proof of delivery."}]}]}] -193:["$","article",null,{"className":"wcd-card","style":{"height":"100%"},"children":[["$","div",null,{"className":"wcd-card-media","children":["$","$L192",null,{"src":"/images/last-mile-approach.jpg","alt":"Hub to Doorstep","fill":true,"sizes":"(max-width: 1020px) 100vw, 33vw"}]}],["$","div",null,{"className":"wcd-card-body","children":[["$","div",null,{"className":"wcd-card-label","children":"03 / Last Mile"}],["$","h3",null,{"className":"wcd-card-title","children":"Hub to Doorstep"}],["$","p",null,{"className":"wcd-card-desc","children":"The final and most complex phase. We optimise multi-stop routes, deliver within precise windows, and capture digital proof of delivery at every door."}],["$","ul",null,{"className":"wcd-card-points","children":[["$","li","Multi-stop route optimisation",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Multi-stop route optimisation"}]]}],["$","li","Precise delivery windows",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Precise delivery windows"}]]}],["$","li","Digital proof of delivery",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Digital proof of delivery"}]]}]]}]]}]]}] -66:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -19c:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -63:null -68:[["$","title","0",{"children":"How It Works – Doormile"}],["$","meta","1",{"name":"description","content":"See how Doormile connects first, mid, and last mile into a seamless delivery experience powered by MileTruth™ AI."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L19c","7",{}]] +0:{"P":null,"c":["","how-it-works"],"q":"","i":false,"f":[[["",{"children":["how-it-works",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"59","className":"elementor elementor-59","children":[["$","$Lc",null,{}],["$","$Ld",null,{}]]}]}]}]}],[["$","script","script-0",{"src":"/_next/static/chunks/0b-q_kb9hrnlj.js","async":true,"nonce":"$undefined"}]],["$","$Le",null,{"children":["$","$f",null,{"name":"Next.MetadataOutlet","children":"$@10"}]}]]}],{},null,false,null]},null,false,"$@11"]},null,false,null],["$","$1","h",{"children":[null,["$","$L12",null,{"children":"$L13"}],["$","div",null,{"hidden":true,"children":["$","$L14",null,{"children":["$","$f",null,{"name":"Next.Metadata","children":"$L15"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$16",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +17:[] +11:"$W17" +13:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] +18:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +10:null +15:[["$","title","0",{"children":"How It Works – Doormile"}],["$","meta","1",{"name":"description","content":"See how Doormile connects first, mid, and last mile into a seamless delivery experience powered by MileTruth™ AI."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L18","7",{}]] diff --git a/build/how-it-works/__next._full.txt b/build/how-it-works/__next._full.txt index fe75c9b..ea0dbc6 100644 --- a/build/how-it-works/__next._full.txt +++ b/build/how-it-works/__next._full.txt @@ -1,17 +1,22 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -c:I[74528,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0goeli7p09ovo.js"],"default"] -15:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +c:I[74528,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b-q_kb9hrnlj.js"],"default"] +d:I[16948,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b-q_kb9hrnlj.js"],"default"] +e:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] +f:"$Sreact.suspense" +12:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +14:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +16:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -19,773 +24,10 @@ c:I[74528,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -d:T1d85, - /* ===================================================================== - How It Works · "Doormile connects first, mid, and last mile" section - Self-contained recreation of the original Elementor design - (originally Elementor section CSS, now inlined below + in /public/css/site.css). - Explicit flex/grid values because the Elementor framework reads them - from CSS custom properties that aren't set in this rebuild. - ===================================================================== */ - - /* Section shell — dark card fully inset from the edges. The page body is - white, so margins expose a white gutter on all sides and all four - corners are rounded, matching the reference. */ - .elementor-element-c36a604 { - display: flex; - flex-direction: column; - width: auto; - margin: 20px 20px 0 20px; - background-color: #1F1F1F; - border-radius: 25px 25px 0 0; - padding: 90px 0 0 0; - } - /* Boxed inner — centered, original content width */ - .elementor-element-c36a604 > .e-con-inner { - width: 100%; - max-width: 1630px; - margin: 0 auto; - padding: 0; - } - - /* Outer content wrapper — full width, stacks header then grid */ - .elementor-element-77d1265 { - display: flex; - flex-direction: column; - width: 100%; - max-width: 1630px; - margin: 0 auto; - padding: 0 20px; - box-sizing: border-box; - } - - /* Header row + its inner column (eyebrow + heading, top-left) */ - .elementor-element-b147420 { - display: flex; - flex-direction: row; - width: 100%; - } - .elementor-element-5bc90f3 { - display: flex; - flex-direction: column; - align-items: flex-start; - text-align: left; - } - - /* Eyebrow: "/ How It Works /" */ - .elementor-element-176d17f .logico-title { - font-size: 14px; - font-weight: 500; - line-height: 2.1429em; - color: #FFFFFF; - margin: 0; - } - - /* Main heading (h3 kit typography, white) - NOTE: theme-core sets ".logico-front-end h3:not([class*=logico-title-h]) - { color: var(--logico-dark-text-color) }" at specificity (0,2,1), which - renders this

dark. We prefix .logico-front-end - (-> (0,3,0)) to win, and force -webkit-text-fill-color (it had inherited - the dark currentColor). */ - .elementor-element-63a9de5 > .elementor-widget-container { - margin: 18px 0 0 0; - } - .logico-front-end .elementor-element-63a9de5 .logico-title { - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: 60px; - font-weight: 500; - line-height: 1.2em; - letter-spacing: -0.03em; - text-transform: uppercase; - color: #FFFFFF; - -webkit-text-fill-color: #FFFFFF; - opacity: 1; - visibility: visible; - margin: 0; - } - - /* 3-column card grid. - Original column-gap is 120px, but at laptop widths (1280–1500) that - squeezes columns so descriptions wrap to 3 lines. Reduced to 60px so - columns stay wide enough for ~2-line descriptions like the reference, - while keeping the 70px row-gap. */ - .elementor-element-4add972 { - display: grid; - /* Elementor's ".e-con.e-grid" (specificity 0,2,0) sets grid-template-columns - from this CSS var, which OUT-RANKS a plain ".elementor-element-4add972" - (0,1,0) rule — so the responsive breakpoints below MUST drive the var, - not grid-template-columns directly, or the grid never collapses on mobile. */ - --e-con-grid-template-columns: repeat(3, 1fr); - grid-template-columns: repeat(3, 1fr); - grid-auto-flow: row; - gap: 70px 60px; - width: 100%; - margin: 55px 0 0 0; - } - /* Each card stacks: truck / title / description, left-aligned */ - .elementor-element-4add972 > .e-con { - display: flex; - flex-direction: column; - align-items: flex-start; - text-align: left; - } - - /* Truck illustrations — exact original heights + baseline padding */ - .elementor-element-4add972 .elementor-icon-wrapper { - text-align: start; - } - .elementor-element-4add972 .elementor-icon svg { - width: auto; - max-width: 100%; - height: auto; - } - .elementor-element-74687fb > .elementor-widget-container { padding: 22px 0 0 0; } - .elementor-element-74687fb .elementor-icon svg { max-height: 139px; } - .elementor-element-fd9c57e .elementor-icon svg { max-height: 158px; } - .elementor-element-fbb1628 > .elementor-widget-container { padding: 25px 0 0 0; } - .elementor-element-fbb1628 .elementor-icon svg { max-height: 128px; } - - /* Card titles (First / Mid / Last Mile) */ - .elementor-element-d310968 > .elementor-widget-container, - .elementor-element-c582715 > .elementor-widget-container, - .elementor-element-fb01b90 > .elementor-widget-container { - margin: 25px 0 20px 0; - } - .elementor-element-d310968 .logico-title, - .elementor-element-c582715 .logico-title, - .elementor-element-fb01b90 .logico-title { - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: 20px; - font-weight: 700; - line-height: 24px; - letter-spacing: -0.03em; - color: #FFFFFF; - margin: 0; - } - - /* Card descriptions */ - .elementor-element-9989187 p, - .elementor-element-3ae1ce0 p, - .elementor-element-1057c22 p { - font-size: 18px; - font-weight: 400; - line-height: 1.6667em; - color: #FFFFFF; - margin: 0; - } - - /* ---- Responsive (grid breakpoints mirror the original section-miles3 - cascade: 3-col@120gap >1200, 3-col@40gap ≤1200, 2-col ≤1020, 1-col - ≤480). The ≤1200 step is what keeps columns wide enough at laptop - widths so descriptions stay ~2 lines and trucks stay proportionate. */ - @media (max-width: 1200px) { - .elementor-element-4add972 { gap: 70px 40px; } - .logico-front-end .elementor-element-63a9de5 .logico-title { font-size: clamp(40px, 5vw, 60px); } - } - @media (max-width: 1020px) { - .elementor-element-c36a604 { margin: 15px 15px 0 15px; padding: 76px 0 60px 0; } - .elementor-element-77d1265 { padding: 0 30px; } - .elementor-element-4add972 { --e-con-grid-template-columns: repeat(2, 1fr); grid-template-columns: repeat(2, 1fr); gap: 50px 40px; } - .logico-front-end .elementor-element-63a9de5 .logico-title { font-size: clamp(34px, 6vw, 52px); } - } - @media (max-width: 480px) { - .elementor-element-c36a604 { margin: 12px 12px 0 12px; border-radius: 20px 20px 0 0; padding: 70px 0 50px 0; } - .elementor-element-77d1265 { padding: 0 22px; } - .elementor-element-4add972 { --e-con-grid-template-columns: 1fr; grid-template-columns: 1fr; gap: 56px; } - .logico-front-end .elementor-element-63a9de5 .logico-title { font-size: clamp(30px, 9vw, 44px); } - } - 0:{"P":null,"c":["","how-it-works"],"q":"","i":false,"f":[[["",{"children":["how-it-works",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"59","className":"elementor elementor-59","children":[["$","$Lc",null,{}],[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$d"}}],"$Le"],"$Lf","$L10"]}]}]}]}],["$L11"],"$L12"]}],{},null,false,null]},null,false,"$@13"]},null,false,null],"$L14",false]],"m":"$undefined","G":["$15",["$L16"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -60:I[24911,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0goeli7p09ovo.js"],"default"] -61:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] -62:"$Sreact.suspense" -65:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -67:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -e:["$","div",null,{"className":"elementor-element elementor-element-c36a604 e-flex e-con-boxed cut-corner-no sticky-container-off e-con e-child","data-id":"c36a604","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"e-con-inner","children":["$","div",null,{"className":"elementor-element elementor-element-77d1265 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"77d1265","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-b147420 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"b147420","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-5bc90f3 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"5bc90f3","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-176d17f elementor-widget elementor-widget-logico_heading","data-id":"176d17f","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"/ How It Works /"}]}]}],["$","div",null,{"className":"elementor-element elementor-element-63a9de5 elementor-widget elementor-widget-logico_heading","data-id":"63a9de5","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","h3",null,{"className":"logico-title","children":"Doormile connects first, mid, and last mile into a seamless delivery experience"}]}]}]]}]}],["$","div",null,{"className":"elementor-element elementor-element-4add972 e-con-full e-grid cut-corner-no sticky-container-off e-con e-child","data-id":"4add972","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-e1670a9 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"e1670a9","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-74687fb elementor-view-default elementor-widget elementor-widget-icon","data-id":"74687fb","data-element_type":"widget","data-e-type":"widget","data-widget_type":"icon.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"elementor-icon-wrapper","children":["$","div",null,{"className":"elementor-icon","children":["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","width":"138","height":"139","viewBox":"0 0 138 139","fill":"none","children":[["$","g",null,{"clipPath":"url(#clip0_1_97412)","children":[["$","g",null,{"clipPath":"url(#clip1_1_97412)","children":[["$","path",null,{"d":"M106 57L137.999 75.4121V77.6922L137.084 78.2052L105.113 59.8217V57.513L106 57Z","fill":"#ffffff"}],["$","path",null,{"d":"M137.084 75.9257L137.999 75.4127V77.6928L137.084 78.2059L105.113 59.8223V57.5137L137.084 75.9257Z","fill":"#686868"}],["$","path",null,{"d":"M121.413 80.4003L107.258 86.1862L106.457 86.6422V82.6805L107.973 77.0371L118.925 70.7383L121.356 74.529L122.214 79.7733L121.413 80.4003Z","fill":"#ffffff"}],["$","path",null,{"d":"M121.413 80.4003L107.258 86.1862L106.457 86.6422V82.6805L107.973 77.0371L118.925 70.7383L121.356 74.529L122.214 79.7733L121.413 80.4003Z","fill":"#686868"}],["$","path",null,{"d":"M125.505 82.765L121.415 80.3994L120.586 75.2976L118.441 71.9629L122.559 74.3285L124.675 77.6632L125.505 82.765Z","fill":"#ffffff"}],["$","path",null,{"d":"M122.789 82.4522C122.789 80.8276 122.217 79.6875 121.273 79.146L118.528 77.5784C117.613 77.0369 116.326 77.1224 114.896 77.9489C112.065 79.5735 109.777 83.5353 109.777 86.7844C109.777 88.409 110.349 89.5491 111.293 90.0906L114.01 91.6582C114.953 92.1998 116.211 92.1142 117.641 91.2877C120.501 89.6631 122.789 85.7014 122.789 82.4522Z","fill":"#ffffff"}],"$L17","$L18","$L19","$L1a","$L1b","$L1c","$L1d","$L1e","$L1f","$L20","$L21"]}],"$L22","$L23","$L24","$L25","$L26","$L27","$L28","$L29","$L2a","$L2b","$L2c","$L2d","$L2e","$L2f","$L30","$L31","$L32","$L33","$L34","$L35","$L36","$L37","$L38","$L39","$L3a","$L3b","$L3c","$L3d","$L3e","$L3f","$L40","$L41","$L42","$L43","$L44","$L45","$L46","$L47","$L48","$L49","$L4a","$L4b","$L4c","$L4d","$L4e","$L4f","$L50","$L51","$L52","$L53","$L54","$L55","$L56","$L57","$L58"]}],"$L59"]}]}]}]}]}],"$L5a","$L5b"]}],"$L5c","$L5d"]}]]}]}]}] -5e:T1e53, - /* ===================================================================== - "Why Businesses Choose Doormile" — First / Mid / Last Mile stage cards. - Dark rounded card on the white page (consistent with the Miles3 - section), each stage shown with a photo, numbered red label, title, - description and a red-checkmark feature list. - Card titles are

; theme-core forces a dark color on bare headings - (.logico-front-end h3:not([class*=logico-title-h]) @ (0,2,1)), so the - white title rule is prefixed to outrank it. - ===================================================================== */ - .wcd-section { - display: flex; - flex-direction: column; - width: auto; - margin: -250px 20px 20px 20px; /* Snug pull-up overlap to touch Miles3 columns without covering their text! */ - background-color: #1F1F1F; - border-radius: 0 0 25px 25px; - padding: 50px 0 110px; - } - .wcd-inner { - width: 100%; - max-width: 1630px; - margin: 0 auto; - padding: 0 50px; - box-sizing: border-box; - } - /* Centered header block (eyebrow + heading) with a faint map backdrop */ - .wcd-head { - position: relative; - text-align: center; - margin: 0 0 70px; - } - @keyframes wcd-float { - 0% { transform: translateX(-50%) translateY(0px) scale(1); } - 50% { transform: translateX(-50%) translateY(-12px) scale(1.02); } - 100% { transform: translateX(-50%) translateY(0px) scale(1); } - } - .wcd-head::after { - content: ""; - position: absolute; - left: 50%; - top: 75%; /* Shifted down to the bottom of the header block to overlap the top of the cards */ - transform: translateX(-50%); - width: min(1180px, 95%); - aspect-ratio: 2 / 1; - background: url('/images/bg-map.png') center / contain no-repeat; - opacity: 0.06; /* Elegant faint visibility */ - filter: invert(1); /* Invert dark map dots to white/light-gray to make them visible on the #1F1F1F background */ - z-index: 0; - pointer-events: none; - animation: wcd-float 20s ease-in-out infinite; /* Premium floating map animation */ - } - .wcd-card-wrapper { - display: flex; - flex-direction: column; - height: 100%; - } - .wcd-eyebrow { - position: relative; - z-index: 1; - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: 14px; - font-weight: 500; - line-height: 2.1429em; - letter-spacing: 0.5px; - color: #FFFFFF; - margin: 0 0 18px; - } - .logico-front-end .wcd-section h2.wcd-heading { - position: relative; - z-index: 1; - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: clamp(34px, 4.4vw, 60px); - font-weight: 500; - line-height: 1.08; - letter-spacing: -0.03em; - text-transform: uppercase; - color: #FFFFFF; - -webkit-text-fill-color: #FFFFFF; - max-width: 1180px; - margin: 0 auto; - } - - .wcd-grid { - display: grid; - grid-template-columns: repeat(3, 1fr); - gap: 30px; - width: 100%; - } - - .wcd-card { - display: flex; - flex-direction: column; - background: rgba(255, 255, 255, 0.02); - border: 1px solid rgba(255, 255, 255, 0.08); - border-radius: 20px; - overflow: hidden; - transition: border-color 0.4s ease, box-shadow 0.4s ease, transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1); - } - .wcd-card:hover { - border-color: #c01227 !important; - box-shadow: 0 10px 30px rgba(192, 18, 39, 0.25) !important; - transform: translateY(-8px); - } - .wcd-card-media { - position: relative; - width: 100%; - aspect-ratio: 16 / 10; - overflow: hidden; - } - .wcd-card-media img { - object-fit: cover; - transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1); - } - .wcd-card:hover .wcd-card-media img { - transform: scale(1.06); - } - .wcd-card-body { - display: flex; - flex-direction: column; - flex: 1; - padding: 40px; - } - .wcd-card-label { - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: 14px; - font-weight: 700; - letter-spacing: 1px; - text-transform: uppercase; - color: #c01227; - margin: 0 0 20px; - } - .logico-front-end .wcd-section h3.wcd-card-title { - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: 32px; - font-weight: 700; - line-height: 1.1; - letter-spacing: -0.02em; - text-transform: uppercase; - color: #FFFFFF; - -webkit-text-fill-color: #FFFFFF; - margin: 0 0 22px; - } - .wcd-card-desc { - font-size: 17px; - font-weight: 400; - line-height: 1.6; - color: rgba(255, 255, 255, 0.6); - margin: 0 0 34px; - } - .wcd-card-points { - list-style: none; - margin: auto 0 0; - padding: 0; - display: flex; - flex-direction: column; - gap: 16px; - } - .wcd-section .wcd-card-points li { - /* Flex row so the check icon and its label always sit on the same line. - Scoped with .wcd-section to outrank the global ".logico-front-end ul li" - theme rule, which adds 1.7em padding + a fontello bullet icon. */ - display: flex; - align-items: flex-start; - gap: 12px; - padding-left: 0; - font-size: 16px; - font-weight: 700; - line-height: 1.3; - color: #FFFFFF; - } - /* Suppress the theme's default fontello list bullet - (.logico-front-end ul li:before) so only our circle-check SVG renders. */ - .wcd-section .wcd-card-points li::before { - content: none; - display: none; - } - /* Clean circle-check feature icon (inline SVG, see markup below) — replaces - the old border-based chevron. Brand red with thin, rounded strokes. */ - .wcd-card-points .wcd-check { - flex: 0 0 auto; - width: 18px; - height: 18px; - margin-top: 0.12em; - color: #c01227; - transition: transform 0.3s ease; - } - .wcd-card:hover .wcd-card-points .wcd-check { - transform: scale(1.1); - } - - @media (max-width: 1020px) { - /* No pull-up overlap on mobile/tablet: the Miles3 cards stack into a - 1–2 col layout, so a negative margin-top covers the last card's - text. Both sections share #1F1F1F + equal side margins, so butting - them at margin-top:0 keeps the seamless dark panel. */ - .wcd-section { margin: 0 15px 15px 15px; padding: 40px 0 80px; } - .wcd-inner { padding: 0 30px; } - .wcd-grid { grid-template-columns: 1fr; gap: 24px; } - .wcd-card-body { padding: 32px; } - .logico-front-end .wcd-section h3.wcd-card-title { font-size: 28px; } - } - @media (max-width: 480px) { - .wcd-section { margin: 0 12px 12px 12px; border-radius: 0 0 20px 20px; padding: 30px 0 64px; } - .wcd-inner { padding: 0 20px; } - .wcd-card-body { padding: 24px; } - } - f:[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$5e"}}],"$L5f"] -10:["$","$L60",null,{}] -11:["$","script","script-0",{"src":"/_next/static/chunks/0goeli7p09ovo.js","async":true,"nonce":"$undefined"}] -12:["$","$L61",null,{"children":["$","$62",null,{"name":"Next.MetadataOutlet","children":"$@63"}]}] -64:[] -13:"$W64" -14:["$","$1","h",{"children":[null,["$","$L65",null,{"children":"$L66"}],["$","div",null,{"hidden":true,"children":["$","$L67",null,{"children":["$","$62",null,{"name":"Next.Metadata","children":"$L68"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -16:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] -191:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0goeli7p09ovo.js"],"ScrollReveal"] -192:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0goeli7p09ovo.js"],"Image"] -17:["$","path",null,{"d":"M122.788 82.453C122.788 79.2039 120.501 77.8928 117.669 79.5174C114.838 81.142 112.551 85.1037 112.551 88.3529C112.551 91.6021 114.838 92.9131 117.669 91.2886C120.501 89.664 122.788 85.7022 122.788 82.453Z","fill":"#686868"}] -18:["$","path",null,{"d":"M120.844 83.5634C120.844 81.5398 119.415 80.7417 117.67 81.7393C115.897 82.7654 114.496 85.2165 114.496 87.2116C114.496 89.2352 115.926 90.0333 117.67 89.0357C119.415 88.0382 120.844 85.587 120.844 83.5634Z","fill":"#EAECF2"}] -19:["$","path",null,{"d":"M120.244 83.6203C120.244 81.8247 118.986 81.1121 117.413 81.9957C115.84 82.8792 114.582 85.0739 114.582 86.8695C114.582 88.6651 115.84 89.4061 117.413 88.4941C118.986 87.6105 120.244 85.4159 120.244 83.6203Z","fill":"#686868"}] -1a:["$","path",null,{"d":"M120.015 84.4467C120.015 83.1927 119.129 82.6796 118.013 83.3067C116.898 83.9337 116.012 85.4728 116.012 86.7554C116.012 88.0379 116.898 88.5225 118.013 87.8954C119.129 87.2399 120.015 85.7008 120.015 84.4467Z","fill":"#EAECF2"}] -69:T67b,M118.156 84.2757C118.042 84.3328 117.927 84.2758 117.927 84.1617C117.927 84.0192 118.013 83.8482 118.156 83.7912C118.27 83.7057 118.385 83.7627 118.385 83.9052C118.356 84.0192 118.27 84.1902 118.156 84.2757ZM118.356 87.2114C118.356 87.0689 118.242 87.0119 118.127 87.0974C118.013 87.1544 117.899 87.3254 117.899 87.4679C117.899 87.6104 117.984 87.6674 118.127 87.5819C118.27 87.5249 118.356 87.3539 118.356 87.2114ZM119.586 85.1023C119.7 85.0453 119.815 84.8743 119.815 84.7318C119.815 84.5893 119.729 84.5323 119.586 84.5893C119.471 84.6463 119.357 84.8173 119.357 84.9598C119.386 85.1023 119.471 85.1593 119.586 85.1023ZM116.698 86.7554C116.812 86.6984 116.926 86.5274 116.926 86.3849C116.926 86.2424 116.841 86.1854 116.698 86.2709C116.583 86.3279 116.469 86.4989 116.469 86.6414C116.469 86.7839 116.583 86.8409 116.698 86.7554ZM119.328 83.9907C119.414 83.8482 119.414 83.6772 119.328 83.6487C119.243 83.5917 119.1 83.6772 119.014 83.8197C118.928 83.9622 118.928 84.1332 119.014 84.1617C119.1 84.2187 119.243 84.1332 119.328 83.9907ZM117.269 87.5249C117.355 87.3824 117.355 87.2114 117.269 87.1829C117.184 87.1259 117.041 87.2114 116.955 87.3539C116.869 87.4964 116.869 87.6674 116.955 87.6959C117.069 87.7529 117.184 87.6674 117.269 87.5249ZM119.014 86.5274C119.1 86.5844 119.243 86.4989 119.328 86.3564C119.414 86.2139 119.414 86.0429 119.328 85.9858C119.243 85.9288 119.1 86.0144 119.014 86.1569C118.928 86.3279 118.928 86.4704 119.014 86.5274ZM116.983 85.3588C117.069 85.4158 117.212 85.3303 117.298 85.1878C117.384 85.0453 117.384 84.8743 117.298 84.8458C117.212 84.7888 117.069 84.8743 116.983 85.0168C116.898 85.1593 116.898 85.3018 116.983 85.3588Z1b:["$","path",null,{"d":"$69","fill":"#686868"}] -1c:["$","path",null,{"d":"M119.329 85.3017C119.329 84.7317 118.929 84.5037 118.414 84.7887C117.928 85.0737 117.527 85.7578 117.527 86.3563C117.527 86.9263 117.928 87.1544 118.414 86.8693C118.929 86.5843 119.329 85.9003 119.329 85.3017Z","fill":"#ffffff"}] -1d:["$","path",null,{"d":"M125.475 76.8946L123.044 73.1039L118.926 70.7383L106.602 76.2391L105.086 81.9109V85.8726L110.548 89.0078L111.377 88.5518V84.9606L114.866 78.7472L122.558 74.3295L124.674 77.6642L125.504 82.766L126.333 82.1389L125.475 76.8946Z","fill":"#ffffff"}] -1e:["$","path",null,{"d":"M125.503 82.7656L124.673 77.6638L122.557 74.3291L114.865 78.7468L111.376 84.9602V88.5514L110.547 89.0074V85.0457L112.091 79.4024L123.043 73.1035L125.474 76.8942L126.332 82.1385L125.503 82.7656Z","fill":"#686868"}] -1f:["$","path",null,{"d":"M105.114 81.9102L105 85.8149L110.548 89.0071V85.0453L105.114 81.9102Z","fill":"#ffffff"}] -20:["$","path",null,{"opacity":"0.5","d":"M105.114 81.9102L105 85.8149L110.548 89.0071V85.0453L105.114 81.9102Z","fill":"#686868"}] -21:["$","path",null,{"opacity":"0.5","d":"M112.092 79.402L110.548 85.0453L105.086 81.9101L106.602 76.2383L112.092 79.402Z","fill":"#686868"}] -22:["$","path",null,{"d":"M99.3148 0L31.0938 39.4392V86.7464L69.7788 109.089L138 69.6494V22.3754L99.3148 0Z","fill":"white"}] -23:["$","path",null,{"opacity":"0.4","d":"M137.998 22.375V69.6489L69.7773 109.088V61.8142L137.998 22.375Z","fill":"#686868"}] -24:["$","path",null,{"opacity":"0.2","d":"M31.0938 39.4395L69.7788 61.8149V109.089L31.0938 86.7466V39.4395Z","fill":"#686868"}] -25:["$","path",null,{"opacity":"0.5","d":"M37.0273 63.8398V90.1659L63.8782 105.669L61.9555 78.2478L37.0273 63.8398Z","fill":"#686868"}] -26:["$","path",null,{"d":"M7.52344 83.0273L8.45161 82.4961L10.6063 83.7576L11.5676 85.3843V91.1608L10.6063 91.6919L8.45161 90.4304L7.52344 88.8037V83.0273Z","fill":"#ffffff"}] -27:["$","path",null,{"opacity":"0.5","d":"M10.6063 83.7576L8.45161 82.4961L7.52344 83.0273V88.8037L7.65603 89.0693V84.0232L8.21957 83.7244L9.84388 84.654L10.3743 85.6167V90.7624L9.84388 91.0612L8.28587 90.1648L8.45161 90.4304L10.6063 91.6919L11.5676 91.1608V85.3843L10.6063 83.7576Z","fill":"#686868"}] -28:["$","path",null,{"d":"M11.5684 89.2343L10.375 88.8359V90.7614L13.9883 93.8156L15.0159 93.2181V90.6286L11.5684 89.2343Z","fill":"#ffffff"}] -29:["$","path",null,{"opacity":"0.5","d":"M13.9883 91.193L10.375 88.8359V90.7614L13.9883 93.8156V91.193Z","fill":"#686868"}] -2a:["$","path",null,{"d":"M15.0159 93.2183L13.9883 93.8159V91.1933L15.0159 90.6289V93.2183Z","fill":"#686868"}] -2b:["$","path",null,{"d":"M36.857 108.69L32.3984 116.424L45.3167 123.893L49.7752 116.16L36.857 108.69Z","fill":"#ffffff"}] -2c:["$","path",null,{"d":"M36.857 108.69L32.3984 116.424L45.3167 123.893L49.7752 116.16L36.857 108.69Z","fill":"#686868"}] -2d:["$","path",null,{"d":"M44.1534 123.829C44.1534 121.937 43.4904 120.642 42.4296 120.011L39.2805 118.185C38.2197 117.588 36.728 117.654 35.1037 118.617C31.8551 120.509 29.2031 125.09 29.2031 128.842C29.2031 130.734 29.8661 132.062 30.9269 132.659L34.0761 134.452C35.1368 135.083 36.6285 134.983 38.2529 134.054C41.5015 132.161 44.1534 127.58 44.1534 123.829Z","fill":"#ffffff"}] -2e:["$","path",null,{"d":"M44.1527 123.828C44.1527 120.076 41.5007 118.549 38.2521 120.442C35.0035 122.334 32.3516 126.915 32.3516 130.667C32.3516 134.418 35.0035 135.945 38.2521 134.053C41.5007 132.161 44.1527 127.579 44.1527 123.828Z","fill":"#686868"}] -2f:["$","path",null,{"d":"M41.8983 125.124C41.8983 122.8 40.274 121.837 38.2519 123.032C36.2298 124.194 34.6055 127.016 34.6055 129.34C34.6055 131.664 36.2298 132.627 38.2519 131.431C40.274 130.303 41.8983 127.448 41.8983 125.124Z","fill":"#EAECF2"}] -30:["$","path",null,{"d":"M41.2355 125.191C41.2355 123.099 39.777 122.269 37.9869 123.331C36.1968 124.361 34.7383 126.917 34.7383 128.975C34.7383 131.067 36.1968 131.897 37.9869 130.867C39.777 129.805 41.2355 127.282 41.2355 125.191Z","fill":"#686868"}] -31:["$","path",null,{"d":"M40.9379 126.153C40.9379 124.693 39.9102 124.095 38.6506 124.825C37.3909 125.556 36.3633 127.348 36.3633 128.809C36.3633 130.27 37.3909 130.867 38.6506 130.137C39.9102 129.407 40.9379 127.614 40.9379 126.153Z","fill":"#EAECF2"}] -6a:T66e,M38.8152 125.954C38.6826 126.021 38.55 125.954 38.55 125.821C38.55 125.655 38.6494 125.456 38.8152 125.39C38.9478 125.324 39.0804 125.39 39.0804 125.523C39.0472 125.655 38.9478 125.855 38.8152 125.954ZM39.0472 129.34C39.0472 129.174 38.9478 129.108 38.782 129.208C38.6494 129.274 38.5168 129.473 38.5168 129.639C38.5168 129.805 38.6163 129.872 38.782 129.772C38.9478 129.706 39.0472 129.506 39.0472 129.34ZM40.4726 126.884C40.6052 126.817 40.7378 126.618 40.7378 126.452C40.7378 126.286 40.6384 126.22 40.4726 126.319C40.34 126.386 40.2074 126.585 40.2074 126.751C40.2074 126.917 40.34 126.983 40.4726 126.884ZM37.1246 128.809C37.2572 128.743 37.3566 128.544 37.3898 128.378C37.3898 128.212 37.2903 128.145 37.1246 128.245C36.992 128.311 36.8594 128.511 36.8594 128.677C36.8925 128.843 36.992 128.909 37.1246 128.809ZM40.1411 125.622C40.2406 125.456 40.2406 125.257 40.1411 125.224C40.0417 125.158 39.876 125.257 39.7765 125.423C39.6771 125.589 39.6771 125.788 39.7765 125.821C39.9091 125.888 40.0748 125.788 40.1411 125.622ZM37.8207 129.706C37.9201 129.54 37.9201 129.34 37.8207 129.307C37.7213 129.241 37.5555 129.34 37.4561 129.506C37.3566 129.672 37.3566 129.838 37.4561 129.905C37.5555 129.971 37.7213 129.872 37.8207 129.706ZM39.8097 128.544C39.9091 128.61 40.0748 128.511 40.1743 128.345C40.2737 128.179 40.2737 127.979 40.1743 127.946C40.0748 127.88 39.9091 127.979 39.8097 128.145C39.7102 128.311 39.7102 128.511 39.8097 128.544ZM37.4561 127.216C37.5555 127.282 37.7213 127.183 37.8207 127.017C37.9201 126.851 37.9201 126.651 37.8207 126.618C37.7213 126.552 37.5555 126.651 37.4561 126.817C37.3566 126.95 37.3566 127.149 37.4561 127.216Z32:["$","path",null,{"d":"$6a","fill":"#686868"}] -33:["$","path",null,{"d":"M40.1412 127.149C40.1412 126.485 39.6771 126.219 39.1136 126.551C38.55 126.883 38.0859 127.68 38.0859 128.344C38.0859 129.008 38.55 129.273 39.1136 128.941C39.6771 128.609 40.1412 127.813 40.1412 127.149Z","fill":"#ffffff"}] -34:["$","path",null,{"d":"M4.47514 103.346L0.39779 107.064L0 111.38L0.39779 110.948V118.185L2.45304 115.629L3.18232 109.653L5.96685 104.474L4.47514 103.346Z","fill":"#ffffff"}] -35:["$","path",null,{"d":"M61.3266 114.632V103.544L60.8293 98.0666L58.7078 74.3632L35.9343 61.1836L32.6194 63.1091L28.9067 66.8936L5.76854 98.1993L1.55859 109.088V120.21L24.2658 133.323L31.0282 132.161L31.7575 126.185L34.542 121.006L41.4039 117.056L44.7188 119.247L45.3155 123.895L61.3266 114.632Z","fill":"white"}] -36:["$","path",null,{"opacity":"0.4","d":"M9.81274 103.909L5.76854 98.1992L1.55859 109.088L24.2658 120.774L33.1829 114.035L25.426 112.939L9.81274 103.909Z","fill":"#686868"}] -37:["$","path",null,{"opacity":"0.4","d":"M61.3264 114.632V103.544L60.8292 98.0666L58.7076 74.3632L57.8457 73.8652L54.564 75.7907L50.8181 79.5753L33.1828 114.035L24.2656 120.774V133.323L31.0281 132.161L31.7573 126.185L34.5419 121.006L41.4037 117.056L44.7187 119.247L45.3153 123.895L61.3264 114.632Z","fill":"#686868"}] -38:["$","path",null,{"opacity":"0.2","d":"M61.3264 114.632V103.544L60.8292 98.0664L33.1828 114.035L24.2656 120.774V133.323L31.0281 132.161L31.7573 126.185L34.5419 121.006L41.4037 117.056L44.7187 119.247L45.3153 123.894L61.3264 114.632Z","fill":"#686868"}] -39:["$","path",null,{"d":"M61.3265 114.632V109.619L44.7188 119.247L45.3154 123.894L61.3265 114.632Z","fill":"#ffffff"}] -3a:["$","path",null,{"d":"M61.3265 114.632V109.619L44.7188 119.247L45.3154 123.894L61.3265 114.632Z","fill":"#686868"}] -3b:["$","path",null,{"opacity":"0.1","d":"M50.8179 79.5756L54.5637 75.791L32.619 63.1094L28.9062 66.8939L50.8179 79.5756Z","fill":"#686868"}] -3c:["$","path",null,{"opacity":"0.2","d":"M33.1839 114.036L50.8193 79.5762L28.9077 66.8945L5.76953 98.2002L9.81373 103.91L25.427 112.94L33.1839 114.036Z","fill":"#686868"}] -3d:["$","path",null,{"opacity":"0.4","d":"M24.2658 133.322V120.774L1.55859 109.088V120.209L24.2658 133.322Z","fill":"#686868"}] -3e:["$","path",null,{"d":"M39.3164 110.483V107.097L47.4711 90.9291L54.333 86.9785L54.0678 98.133L51.6479 101.851L39.3164 110.483Z","fill":"#ffffff"}] -3f:["$","path",null,{"opacity":"0.4","d":"M46.079 122.301L45.5818 118.284L41.8359 115.794L38.2227 117.886V107.129L46.974 89.966H47.0072L55.5597 85.0195L56.3553 100.722L54.068 117.686L46.079 122.301ZM41.8359 115.528L45.7807 118.151L46.2779 121.936L53.9354 117.52L56.2227 100.689L55.4271 85.3847L47.2061 90.132L38.4547 107.196V117.487L41.8359 115.528Z","fill":"#686868"}] -40:["$","path",null,{"d":"M26.6192 134.684L24.2656 133.323V122.234L26.6192 123.595V134.684Z","fill":"#686868"}] -41:["$","path",null,{"d":"M33.4475 121.006L32.2541 120.309L24.2652 122.234L20.1215 119.844L18.5635 122.101V123.463L5.73481 116.026V111.511L1.55801 109.088L0 111.379V121.106L22.7072 134.252L26.6188 134.684L31.4254 133.289L32.1547 127.314L34.9392 122.135L33.4475 121.006Z","fill":"#ffffff"}] -42:["$","path",null,{"d":"M5.73379 111.512V116.027L4.17578 118.284V113.769L5.73379 111.512Z","fill":"#686868"}] -43:["$","path",null,{"opacity":"0.5","d":"M22.7072 134.252L0 121.106V111.379L4.1768 113.769V118.284L18.5635 126.617V122.102L22.7072 124.492V134.252Z","fill":"#686868"}] -44:["$","path",null,{"d":"M26.6172 123.595V134.683L31.4238 133.289L32.1531 127.313L34.9376 122.135L33.4459 121.006L26.6172 123.595Z","fill":"#686868"}] -45:["$","path",null,{"opacity":"0.7","d":"M26.6186 123.596V134.684L22.707 134.252V124.492L26.6186 123.596Z","fill":"#686868"}] -46:["$","path",null,{"d":"M35.9686 108.591L44.8194 91.3612L39.4492 89.6681L25.0956 81.3354L20.9851 77.6172L9.44922 93.2534L13.1951 98.5319L29.3719 107.894L35.9686 108.591Z","fill":"#ffffff"}] -47:["$","path",null,{"d":"M39.6473 89.7012L37.7578 102.549L38.7523 103.146L44.8186 91.3611L39.6473 89.7012Z","fill":"#686868"}] -48:["$","path",null,{"d":"M12.8637 93.9839L24.2338 86.0164L26.6537 82.265L25.0957 81.3355L21.6813 78.2148L11.9023 91.2617V93.7847L12.8637 93.9839Z","fill":"#686868"}] -49:["$","path",null,{"opacity":"0.5","d":"M31.8912 103.909L15.7476 94.5799L9.44922 93.252L13.1951 98.5304L29.3719 107.892L35.9686 108.589L38.0238 104.572L31.8912 103.909Z","fill":"#686868"}] -4a:["$","path",null,{"d":"M49.0626 90.0332L47.4715 90.9295L40.7422 104.275L44.8195 106.632L48.5985 103.976L50.5212 90.8963L49.0626 90.0332Z","fill":"#686868"}] -4b:["$","path",null,{"d":"M39.3164 107.097V110.483L51.6479 101.851L54.0678 98.133L54.333 86.9785L47.4711 90.9291L39.3164 107.097ZM53.6369 88.1736L53.4048 97.9339L51.1507 101.386L41.6037 108.059L40.775 105.669L47.9683 91.427L53.6369 88.1736Z","fill":"#686868"}] -4c:["$","path",null,{"d":"M33.6807 99.8585L35.5371 87.376L25.3271 81.4668L23.5039 93.9824L33.6807 99.8585Z","fill":"#686868"}] -4d:["$","path",null,{"d":"M39.4472 89.6681L25.0605 81.3686L20.9831 77.6172L9.41406 93.2534L13.1931 98.5319L29.3699 107.894L35.9665 108.591L44.7842 91.3612L39.4472 89.6681ZM35.5688 107.861L29.5688 107.197L13.6572 98.0008L10.2759 93.2534L21.1157 78.6131L24.6958 81.8997L39.1489 90.2656L43.8561 91.7927L35.5688 107.861Z","fill":"#686868"}] -4e:["$","path",null,{"d":"M26.0879 114.068L20.1211 119.845L24.2647 122.235L29.204 118.948L32.7841 115.994L33.1819 114.035L26.0879 114.068Z","fill":"white"}] -4f:["$","path",null,{"opacity":"0.2","d":"M32.785 115.994L33.1828 114.035L24.2656 122.235L29.2049 118.948L32.785 115.994Z","fill":"#686868"}] -50:["$","path",null,{"d":"M5.76854 98.1992L8.38732 103.843L5.73539 111.512L1.55859 109.088L5.76854 98.1992Z","fill":"white"}] -51:["$","path",null,{"d":"M7.69141 111.179V115.694L18.1665 121.736V117.221L19.6251 115.661L8.88478 109.453L7.69141 111.179Z","fill":"#ffffff"}] -52:["$","path",null,{"opacity":"0.5","d":"M7.69141 111.18V115.695L18.1665 121.737V117.222L7.69141 111.18Z","fill":"#686868"}] -53:["$","path",null,{"d":"M52.6406 108.259L54.1323 107.396V103.445L52.6406 104.275V108.259Z","fill":"#ffffff"}] -54:["$","path",null,{"d":"M53.9007 105.105L52.9062 105.703V104.873L53.9007 104.275V105.105Z","fill":"#686868"}] -55:["$","path",null,{"d":"M47.0051 105.869L46.077 104.242L43.8891 102.98L42.9609 103.545V109.321L43.8891 110.948L46.077 112.176L47.0051 111.645V105.869Z","fill":"#ffffff"}] -56:["$","path",null,{"opacity":"0.5","d":"M46.077 104.242L43.8891 102.98L42.9609 103.545V109.321L43.1267 109.587V104.541L43.6571 104.209L45.2814 105.138L45.8449 106.101V111.247L45.2814 111.546L43.7565 110.682L43.8891 110.948L46.077 112.176L47.0051 111.645V105.869L46.077 104.242Z","fill":"#686868"}] -57:["$","path",null,{"d":"M41.5374 105.969L40.543 106.533V109.156L43.1286 109.654V107.761L42.9629 107.396L41.5374 105.969Z","fill":"#ffffff"}] -58:["$","path",null,{"opacity":"0.5","d":"M40.543 106.533L43.1286 107.762V109.654L40.543 109.156V106.533Z","fill":"#686868"}] -59:["$","defs",null,{"children":[["$","clipPath",null,{"id":"clip0_1_97412","children":["$","rect",null,{"width":"138","height":"139","fill":"white"}]}],["$","clipPath",null,{"id":"clip1_1_97412","children":["$","rect",null,{"width":"33","height":"35","fill":"white","transform":"translate(105 57)"}]}]]}] -5a:["$","div",null,{"className":"elementor-element elementor-element-d310968 elementor-widget elementor-widget-logico_heading","data-id":"d310968","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"First Mile"}]}]}] -5b:["$","div",null,{"className":"elementor-element elementor-element-9989187 elementor-widget elementor-widget-text-editor","data-id":"9989187","data-element_type":"widget","data-e-type":"widget","data-widget_type":"text-editor.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","p",null,{"children":"Orders are picked up from warehouses with live tracking and quality checks."}]}]}] -5c:["$","div",null,{"className":"elementor-element elementor-element-97a7e5b e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"97a7e5b","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-fd9c57e elementor-view-default elementor-widget elementor-widget-icon","data-id":"fd9c57e","data-element_type":"widget","data-e-type":"widget","data-widget_type":"icon.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"elementor-icon-wrapper","children":["$","div",null,{"className":"elementor-icon","children":["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","width":"180","height":"158","viewBox":"0 0 180 158","fill":"none","children":[["$","path",null,{"d":"M75.5135 92.6543L103.649 108.891V110.918L102.865 111.378L74.707 95.1416V93.1149L75.5135 92.6543Z","fill":"#ffffff"}],["$","path",null,{"d":"M102.865 109.352L103.649 108.891V110.918L102.865 111.379L74.707 95.142V93.1152L102.865 109.352Z","fill":"#686868"}],["$","path",null,{"d":"M55.7417 98.9414L19.0117 120.153V128.444L25.7863 132.359L62.5393 111.148L63.8988 109.19L64.5901 106.795V104.031L55.7417 98.9414Z","fill":"#ffffff"}],["$","path",null,{"d":"M64.589 106.795L27.8359 128.007V125.243L64.589 104.031V106.795Z","fill":"#686868"}],["$","path",null,{"d":"M63.8975 109.19L27.1445 130.379L27.8358 128.006L64.5888 106.795L63.8975 109.19Z","fill":"#686868"}],["$","path",null,{"d":"M62.5382 111.147L25.7852 132.359L27.1447 130.378L63.8977 109.189L62.5382 111.147Z","fill":"#686868"}],["$","path",null,{"opacity":"0.5","d":"M25.7863 132.359L27.1458 130.378L27.8371 128.006V125.242L19.0117 120.152V128.444L25.7863 132.359Z","fill":"#686868"}],["$","path",null,{"d":"M91.2729 106.91L99.96 111.931L99.2918 117.919L88.5078 111.701L91.2729 106.91Z","fill":"#ffffff"}],["$","path",null,{"d":"M91.2729 106.91L99.96 111.931L99.2918 117.919L88.5078 111.701L91.2729 106.91Z","fill":"#686868"}],["$","path",null,{"d":"M91.2729 106.91L99.96 111.931L99.2918 117.919L88.5078 111.701L91.2729 106.91Z","fill":"#686868"}],["$","path",null,{"d":"M80.029 95.9473L6.26953 138.509V142.424L22.7681 151.936L96.5276 109.374L96.5045 105.459L80.029 95.9473Z","fill":"#686868"}],["$","path",null,{"opacity":"0.5","d":"M22.7681 148.02V151.935L6.26953 142.423V138.508L22.7681 148.02Z","fill":"#686868"}],["$","path",null,{"d":"M96.506 105.459L22.7695 148.02V151.936L96.529 109.374L96.506 105.459Z","fill":"#686868"}],["$","path",null,{"d":"M99.3863 115.708C99.3863 114.096 98.8103 112.967 97.9116 112.461L95.2156 110.918C94.2939 110.388 93.0496 110.48 91.644 111.286C88.8558 112.898 86.5977 116.813 86.5977 120.015C86.5977 121.627 87.1737 122.755 88.0724 123.285L90.7453 124.828C91.667 125.358 92.9344 125.289 94.3169 124.483C97.1281 122.825 99.3863 118.909 99.3863 115.708Z","fill":"#ffffff"}],["$","path",null,{"d":"M99.3856 115.707C99.3856 112.483 97.1275 111.193 94.3393 112.805C91.5511 114.418 89.293 118.333 89.293 121.534C89.293 124.735 91.5511 126.048 94.3393 124.436C97.1275 122.824 99.3856 118.909 99.3856 115.707Z","fill":"#686868"}],["$","path",null,{"d":"M97.4512 116.814C97.4512 114.833 96.0456 114.027 94.3174 115.017C92.5892 116.008 91.1836 118.426 91.1836 120.43C91.1836 122.41 92.5892 123.216 94.3174 122.226C96.0686 121.236 97.4512 118.817 97.4512 116.814Z","fill":"#EAECF2"}],["$","path",null,{"d":"M96.8732 116.882C96.8732 115.108 95.6289 114.394 94.085 115.293C92.5412 116.191 91.2969 118.333 91.2969 120.106C91.2969 121.879 92.5412 122.593 94.085 121.718C95.6289 120.82 96.8732 118.655 96.8732 116.882Z","fill":"#686868"}],["$","path",null,{"d":"M96.6438 117.689C96.6438 116.446 95.7682 115.939 94.6852 116.561C93.6022 117.183 92.7266 118.703 92.7266 119.946C92.7266 121.19 93.6022 121.697 94.6852 121.075C95.7682 120.453 96.6438 118.933 96.6438 117.689Z","fill":"#EAECF2"}],"$L6b","$L6c","$L6d","$L6e","$L6f","$L70","$L71","$L72","$L73","$L74","$L75","$L76","$L77","$L78","$L79","$L7a","$L7b","$L7c","$L7d","$L7e","$L7f","$L80","$L81","$L82","$L83","$L84","$L85","$L86","$L87","$L88","$L89","$L8a","$L8b","$L8c","$L8d","$L8e","$L8f","$L90","$L91","$L92","$L93","$L94","$L95","$L96","$L97","$L98","$L99","$L9a","$L9b","$L9c","$L9d","$L9e","$L9f","$La0","$La1","$La2","$La3","$La4","$La5","$La6","$La7","$La8","$La9","$Laa","$Lab","$Lac","$Lad","$Lae","$Laf","$Lb0","$Lb1","$Lb2","$Lb3","$Lb4","$Lb5","$Lb6","$Lb7","$Lb8","$Lb9","$Lba","$Lbb","$Lbc","$Lbd","$Lbe","$Lbf","$Lc0","$Lc1","$Lc2","$Lc3","$Lc4","$Lc5","$Lc6","$Lc7","$Lc8","$Lc9","$Lca","$Lcb","$Lcc","$Lcd","$Lce","$Lcf","$Ld0","$Ld1","$Ld2","$Ld3","$Ld4","$Ld5","$Ld6","$Ld7","$Ld8","$Ld9","$Lda","$Ldb","$Ldc","$Ldd","$Lde","$Ldf","$Le0","$Le1","$Le2","$Le3","$Le4","$Le5","$Le6","$Le7","$Le8","$Le9","$Lea","$Leb","$Lec","$Led","$Lee","$Lef","$Lf0","$Lf1","$Lf2","$Lf3","$Lf4","$Lf5","$Lf6","$Lf7","$Lf8","$Lf9","$Lfa","$Lfb","$Lfc","$Lfd","$Lfe","$Lff","$L100","$L101","$L102","$L103","$L104","$L105","$L106","$L107","$L108","$L109","$L10a","$L10b","$L10c","$L10d","$L10e","$L10f","$L110","$L111","$L112","$L113","$L114","$L115","$L116","$L117","$L118","$L119","$L11a","$L11b","$L11c","$L11d","$L11e","$L11f","$L120","$L121","$L122","$L123","$L124","$L125","$L126","$L127"]}]}]}]}]}],"$L128","$L129"]}] -5d:["$","div",null,{"className":"elementor-element elementor-element-86fb82f e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"86fb82f","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-fbb1628 elementor-view-default elementor-widget elementor-widget-icon","data-id":"fbb1628","data-element_type":"widget","data-e-type":"widget","data-widget_type":"icon.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"elementor-icon-wrapper","children":["$","div",null,{"className":"elementor-icon","children":["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","width":"132","height":"128","viewBox":"0 0 132 128","fill":"none","children":[["$","path",null,{"d":"M18.1914 72.045L18.9416 71.6113L20.7098 72.6142L21.4599 73.9423V78.6857L20.7098 79.1193L18.9416 78.0894L18.1914 76.7612V72.045Z","fill":"#ffffff"}],["$","path",null,{"opacity":"0.5","d":"M20.7098 72.6142L18.9416 71.6113L18.1914 72.045V76.7612L18.3254 76.9781V72.8581L18.754 72.5871L20.0936 73.346L20.5222 74.1321V78.3333L20.0668 78.6043L18.8344 77.8725L18.9416 78.0894L20.7098 79.1193L21.4599 78.6857V73.9423L20.7098 72.6142Z","fill":"#686868"}],["$","path",null,{"d":"M21.4611 77.1143L20.5234 76.7891V78.334L23.4437 80.8548L24.2474 80.3669V78.2256L21.4611 77.1143Z","fill":"#ffffff"}],["$","path",null,{"opacity":"0.5","d":"M23.4437 78.7135L20.5234 76.7891V78.334L23.4437 80.8548V78.7135Z","fill":"#686868"}],["$","path",null,{"d":"M24.2451 80.3659L23.4414 80.8538V78.7125L24.2451 78.2246V80.3659Z","fill":"#686868"}],["$","path",null,{"d":"M100.654 48.3828L130.633 65.8925V68.0608L129.776 68.5487L99.7969 51.0662V48.8707L100.654 48.3828Z","fill":"#ffffff"}],["$","path",null,{"d":"M129.776 66.3807L130.633 65.8929V68.0612L129.776 68.5491L99.7969 51.0666V48.8711L129.776 66.3807Z","fill":"#686868"}],["$","path",null,{"d":"M17.1215 99.3662L2.30598 105.492L1.42188 106.007V101.806L3.02934 95.7884L14.5227 89.0664L17.0679 93.105L17.9788 98.6886L17.1215 99.3662Z","fill":"#ffffff"}],["$","path",null,{"d":"M17.1215 99.3662L2.30598 105.492L1.42188 106.007V101.806L3.02934 95.7884L14.5227 89.0664L17.0679 93.105L17.9788 98.6886L17.1215 99.3662Z","fill":"#686868"}],["$","path",null,{"d":"M21.4061 101.86L17.1195 99.366L16.2354 93.9179L14.0117 90.3672L18.2983 92.8879L20.5488 96.4386L21.4061 101.86Z","fill":"#ffffff"}],["$","path",null,{"d":"M18.5664 101.534C18.5664 99.7991 17.9502 98.5794 16.9857 98.0102L14.1191 96.3297C13.1546 95.7605 11.815 95.8418 10.3147 96.7092C7.34089 98.4439 4.92969 102.645 4.92969 106.115C4.92969 107.849 5.54588 109.069 6.51037 109.638L9.37702 111.319C10.3415 111.888 11.7078 111.806 13.1814 110.939C16.1552 109.204 18.5664 104.976 18.5664 101.534Z","fill":"#ffffff"}],["$","path",null,{"d":"M18.5669 101.533C18.5669 98.0635 16.1557 96.6812 13.1819 98.4159C10.2081 100.151 7.79688 104.352 7.79688 107.821C7.79688 111.291 10.2081 112.673 13.1819 110.938C16.1557 109.204 18.5669 104.975 18.5669 101.533Z","fill":"#686868"}],["$","path",null,{"d":"M16.5036 102.726C16.5036 100.585 15.0033 99.7172 13.1815 100.801C11.3329 101.886 9.85938 104.488 9.85938 106.629C9.85938 108.77 11.3597 109.638 13.1815 108.553C15.0301 107.469 16.5036 104.867 16.5036 102.726Z","fill":"#EAECF2"}],["$","path",null,{"d":"M15.9125 102.781C15.9125 100.857 14.5729 100.098 12.9387 101.046C11.3044 101.995 9.96484 104.326 9.96484 106.251C9.96484 108.175 11.3044 108.934 12.9387 107.985C14.5729 107.037 15.9125 104.706 15.9125 102.781Z","fill":"#686868"}],["$","path",null,{"d":"M15.6443 103.648C15.6443 102.293 14.7066 101.751 13.5546 102.428C12.4025 103.106 11.4648 104.732 11.4648 106.088C11.4648 107.443 12.4025 107.985 13.5546 107.307C14.7066 106.657 15.6443 105.003 15.6443 103.648Z","fill":"#EAECF2"}],"$L12a","$L12b","$L12c","$L12d","$L12e","$L12f","$L130","$L131","$L132","$L133","$L134","$L135","$L136","$L137","$L138","$L139","$L13a","$L13b","$L13c","$L13d","$L13e","$L13f","$L140","$L141","$L142","$L143","$L144","$L145","$L146","$L147","$L148","$L149","$L14a","$L14b","$L14c","$L14d","$L14e","$L14f","$L150","$L151","$L152","$L153","$L154","$L155","$L156","$L157","$L158","$L159","$L15a","$L15b","$L15c","$L15d","$L15e","$L15f","$L160","$L161","$L162","$L163","$L164","$L165","$L166","$L167","$L168","$L169","$L16a","$L16b","$L16c","$L16d","$L16e","$L16f","$L170","$L171","$L172","$L173","$L174","$L175","$L176","$L177","$L178","$L179","$L17a","$L17b","$L17c","$L17d","$L17e","$L17f","$L180","$L181","$L182","$L183","$L184","$L185","$L186","$L187","$L188","$L189","$L18a","$L18b","$L18c","$L18d","$L18e"]}]}]}]}]}],"$L18f","$L190"]}] -5f:["$","section",null,{"className":"wcd-section","children":["$","div",null,{"className":"wcd-inner","children":[["$","$L191",null,{"delay":0.1,"children":["$","div",null,{"className":"wcd-head","children":[["$","div",null,{"className":"wcd-eyebrow","children":"/ Why Businesses Choose Doormile /"}],["$","h2",null,{"className":"wcd-heading","children":"The connected approach delivers measurable advantages"}]]}]}],["$","div",null,{"className":"wcd-grid","children":[["$","$L191","01 / First Mile",{"delay":0,"duration":0.8,"yOffset":50,"className":"wcd-card-wrapper","children":["$","article",null,{"className":"wcd-card","style":{"height":"100%"},"children":[["$","div",null,{"className":"wcd-card-media","children":["$","$L192",null,{"src":"/images/first-mile-approach.jpg","alt":"Origin to Hub","fill":true,"sizes":"(max-width: 1020px) 100vw, 33vw"}]}],["$","div",null,{"className":"wcd-card-body","children":[["$","div",null,{"className":"wcd-card-label","children":"01 / First Mile"}],["$","h3",null,{"className":"wcd-card-title","children":"Origin to Hub"}],["$","p",null,{"className":"wcd-card-desc","children":"We collect freight directly from your facility, optimise vehicle assignment in real time, and consolidate loads for maximum efficiency before they reach the hub."}],["$","ul",null,{"className":"wcd-card-points","children":[["$","li","AI-scheduled pickups",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"AI-scheduled pickups"}]]}],["$","li","Dynamic load consolidation",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Dynamic load consolidation"}]]}],["$","li","Yard & dock management",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Yard & dock management"}]]}]]}]]}]]}]}],["$","$L191","02 / Mid Mile",{"delay":0.15,"duration":0.8,"yOffset":50,"className":"wcd-card-wrapper","children":["$","article",null,{"className":"wcd-card","style":{"height":"100%"},"children":[["$","div",null,{"className":"wcd-card-media","children":["$","$L192",null,{"src":"/images/mid-mile-approach.jpg","alt":"Hub to Hub Transit","fill":true,"sizes":"(max-width: 1020px) 100vw, 33vw"}]}],["$","div",null,{"className":"wcd-card-body","children":[["$","div",null,{"className":"wcd-card-label","children":"02 / Mid Mile"}],["$","h3",null,{"className":"wcd-card-title","children":"Hub to Hub Transit"}],["$","p",null,{"className":"wcd-card-desc","children":"Freight moves between hubs on optimised line-haul routes. Real-time tracking, cross-docking, and SLA monitoring keep every shipment on schedule."}],["$","ul",null,{"className":"wcd-card-points","children":[["$","li","Optimised line-haul routing",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Optimised line-haul routing"}]]}],["$","li","Cross-docking & sortation",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Cross-docking & sortation"}]]}],["$","li","Live SLA monitoring",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Live SLA monitoring"}]]}]]}]]}]]}]}],["$","$L191","03 / Last Mile",{"delay":0.3,"duration":0.8,"yOffset":50,"className":"wcd-card-wrapper","children":"$L193"}]]}]]}]}] -194:T672,M94.8001 117.505C94.6849 117.574 94.5927 117.505 94.5927 117.367C94.5927 117.229 94.6849 117.068 94.8001 116.999C94.9153 116.93 95.0075 116.976 95.0075 117.114C95.0305 117.275 94.9384 117.436 94.8001 117.505ZM95.0305 120.43C95.0305 120.292 94.9384 120.246 94.8232 120.315C94.7079 120.384 94.6158 120.545 94.6158 120.684C94.6158 120.822 94.7079 120.868 94.8232 120.799C94.9384 120.73 95.0305 120.545 95.0305 120.43ZM96.2288 118.335C96.344 118.265 96.4361 118.104 96.4361 117.966C96.4361 117.828 96.344 117.782 96.2288 117.851C96.1135 117.92 96.0214 118.081 96.0214 118.219C96.0214 118.335 96.1135 118.404 96.2288 118.335ZM93.3945 119.97C93.5097 119.901 93.6019 119.739 93.6019 119.601C93.6019 119.463 93.5097 119.417 93.3945 119.486C93.2793 119.555 93.1871 119.716 93.1871 119.855C93.1641 119.993 93.2562 120.039 93.3945 119.97ZM95.9753 117.252C96.0675 117.114 96.0675 116.953 95.9753 116.907C95.8831 116.861 95.7679 116.93 95.6757 117.091C95.5836 117.229 95.5836 117.39 95.6757 117.436C95.7449 117.459 95.8831 117.39 95.9753 117.252ZM93.9475 120.73C94.0397 120.592 94.0397 120.43 93.9475 120.384C93.8554 120.338 93.7171 120.407 93.648 120.569C93.5558 120.707 93.5558 120.868 93.648 120.914C93.7401 120.96 93.8784 120.868 93.9475 120.73ZM95.6757 119.739C95.7679 119.785 95.9062 119.716 95.9753 119.555C96.0675 119.417 96.0675 119.256 95.9753 119.21C95.8831 119.164 95.7679 119.233 95.6757 119.394C95.5836 119.532 95.5836 119.693 95.6757 119.739ZM93.648 118.588C93.7401 118.634 93.8554 118.565 93.9475 118.427C94.0397 118.288 94.0397 118.127 93.9475 118.081C93.8554 118.035 93.7171 118.104 93.648 118.265C93.5788 118.381 93.5788 118.542 93.648 118.588Z6b:["$","path",null,{"d":"$194","fill":"#686868"}] -6c:["$","path",null,{"d":"M95.977 118.542C95.977 117.989 95.5853 117.759 95.0783 118.035C94.5945 118.311 94.2027 119.002 94.1797 119.555C94.1797 120.108 94.5714 120.338 95.0783 120.062C95.5622 119.785 95.977 119.118 95.977 118.542Z","fill":"#ffffff"}] -6d:["$","path",null,{"d":"M100.838 112.368L97.3587 109.512L96.5983 109.074L90.538 112.552L87.0586 119.415V124.966L87.842 125.403L88.6025 124.966V119.738L91.6671 113.68L96.8517 110.686L98.9025 112.368L99.2942 112.782V117.918L100.055 118.356L100.838 117.918V112.368Z","fill":"#ffffff"}] -6e:["$","path",null,{"d":"M100.84 117.918L100.056 118.356V113.128L96.9917 110.617L91.6688 113.68L88.6042 119.737V124.966L87.8438 125.403V119.876L91.3001 113.012L97.3604 109.512L100.84 112.368V117.918Z","fill":"#686868"}] -6f:["$","path",null,{"d":"M96.9898 110.617L96.8516 110.686L98.9024 112.368L99.2941 112.782V117.918L100.054 118.356V113.128L96.9898 110.617Z","fill":"#686868"}] -70:["$","path",null,{"opacity":"0.5","d":"M96.9898 110.617L96.8516 110.686L98.9024 112.368L99.2941 112.782V117.918L100.054 118.356V113.128L96.9898 110.617Z","fill":"#686868"}] -71:["$","path",null,{"opacity":"0.3","d":"M91.2984 113.013L90.538 112.553L87.0586 119.416L87.842 119.877L91.2984 113.013Z","fill":"#686868"}] -72:["$","path",null,{"opacity":"0.5","d":"M87.842 119.877L87.0586 119.416V124.966L87.842 125.404V119.877Z","fill":"#686868"}] -73:["$","path",null,{"d":"M79.546 112.668L42.793 133.88V142.171L49.5905 146.086L86.3436 124.897L87.7031 122.917L88.3713 120.545V117.781L79.546 112.668Z","fill":"#ffffff"}] -74:["$","path",null,{"d":"M88.3702 120.545L51.6172 141.733V138.97L88.3702 117.781V120.545Z","fill":"#686868"}] -75:["$","path",null,{"d":"M87.7022 122.917L50.9492 144.106L51.6175 141.733L88.3705 120.545L87.7022 122.917Z","fill":"#686868"}] -76:["$","path",null,{"d":"M86.3429 124.897L49.5898 146.085L50.9494 144.105L87.7024 122.916L86.3429 124.897Z","fill":"#686868"}] -77:["$","path",null,{"opacity":"0.5","d":"M49.5905 146.085L50.9501 144.105L51.6183 141.732V138.969L42.793 133.879V142.17L49.5905 146.085Z","fill":"#686868"}] -78:["$","path",null,{"d":"M74.4738 89.9824L29.8633 115.731V119.001L56.6849 134.501L101.319 108.753V105.482L74.4738 89.9824Z","fill":"#ffffff"}] -79:["$","path",null,{"d":"M101.317 105.482V108.753L56.6836 134.501V131.231L101.317 105.482Z","fill":"#686868"}] -7a:["$","path",null,{"opacity":"0.5","d":"M29.8633 115.73L56.6849 131.23V134.501L29.8633 119.001V115.73Z","fill":"#686868"}] -7b:["$","path",null,{"d":"M78.6235 109.075L85.6745 104.999L85.6975 104.054L75.0979 97.9512L68.0469 102.028V102.972L78.6235 109.075Z","fill":"#686868"}] -7c:["$","path",null,{"d":"M85.6991 104.055L85.676 104.999L78.625 109.075V108.131L85.6991 104.055Z","fill":"#686868"}] -7d:["$","path",null,{"opacity":"0.5","d":"M78.6235 108.131L68.0469 102.027V102.972L78.6235 109.075V108.131Z","fill":"#686868"}] -7e:["$","path",null,{"d":"M74.4287 100.853C73.7835 101.221 73.4609 101.728 73.4609 102.211V102.603C73.4609 103.087 73.7835 103.593 74.4287 103.962C75.7191 104.722 77.839 104.722 79.1294 103.962C79.7746 103.593 80.0972 103.087 80.0972 102.603V102.234C80.0972 101.751 79.7746 101.244 79.1294 100.876C77.816 100.116 75.7191 100.116 74.4287 100.853Z","fill":"#ffffff"}] -7f:["$","path",null,{"opacity":"0.5","d":"M75.3041 101.566C74.4976 102.027 74.4976 102.81 75.3041 103.27C76.1336 103.731 77.4471 103.731 78.2766 103.27C79.0831 102.787 79.0831 102.027 78.2766 101.566C77.4471 101.106 76.1106 101.106 75.3041 101.566Z","fill":"#686868"}] -80:["$","path",null,{"d":"M80.0972 102.234C80.0972 102.718 79.7746 103.225 79.1294 103.593C77.839 104.353 75.7191 104.353 74.4287 103.593C73.7835 103.225 73.4609 102.718 73.4609 102.234V102.603C73.4609 103.087 73.7835 103.593 74.4287 103.962C75.7191 104.722 77.839 104.722 79.1294 103.962C79.7746 103.593 80.0972 103.087 80.0972 102.603V102.234Z","fill":"#686868"}] -81:["$","path",null,{"d":"M149.314 52.7188L177.449 68.9556V70.9823L176.666 71.443L148.508 55.1831V53.1794L149.314 52.7188Z","fill":"#ffffff"}] -82:["$","path",null,{"d":"M176.666 69.4165L177.449 68.9559V70.9826L176.666 71.4433L148.508 55.1834V53.1797L176.666 69.4165Z","fill":"#686868"}] -83:["$","path",null,{"d":"M152.403 53.502L55.3242 109.536V113.429L71.7997 122.94L168.878 66.929V63.0138L152.403 53.502Z","fill":"#ffffff"}] -84:["$","path",null,{"opacity":"0.5","d":"M71.7997 119.049V122.941L55.3242 113.429V109.537L71.7997 119.049Z","fill":"#686868"}] -85:["$","path",null,{"d":"M168.879 63.0137L71.8008 119.048V122.94L168.879 66.9289V63.0137Z","fill":"#686868"}] -86:["$","path",null,{"d":"M115.855 99.8398L111.754 102.212V105.321L112.537 105.782L116.639 103.41V100.3L115.855 99.8398Z","fill":"#ffffff"}] -87:["$","path",null,{"d":"M112.537 102.673L111.754 102.212V105.322L112.537 105.782L116.639 103.41V100.301L112.537 102.673Z","fill":"#686868"}] -88:["$","path",null,{"d":"M121.985 99.7715L106.523 108.684V109.767L107.33 110.228L122.769 101.315V100.232L121.985 99.7715Z","fill":"#ffffff"}] -89:["$","path",null,{"d":"M107.33 109.145L106.523 108.685V109.767L107.33 110.228L122.769 101.315V100.232L107.33 109.145Z","fill":"#686868"}] -8a:["$","path",null,{"d":"M167.935 73.3547L154.017 79.0434L153.211 79.527V75.6118L154.709 70.0152L165.493 63.7969L167.889 67.5509L168.742 72.7329L167.935 73.3547Z","fill":"#ffffff"}] -8b:["$","path",null,{"d":"M167.935 73.3547L154.017 79.0434L153.211 79.527V75.6118L154.709 70.0152L165.493 63.7969L167.889 67.5509L168.742 72.7329L167.935 73.3547Z","fill":"#686868"}] -8c:["$","path",null,{"d":"M171.967 75.6809L167.934 73.3548L167.128 68.311L165.008 65.0176L169.063 67.3437L171.16 70.6371L171.967 75.6809Z","fill":"#ffffff"}] -8d:["$","path",null,{"d":"M171.967 75.6809L167.934 73.3548L167.128 68.311L165.008 65.0176L169.063 67.3437L171.16 70.6371L171.967 75.6809Z","fill":"#686868"}] -8e:["$","path",null,{"opacity":"0.5","d":"M171.967 75.6809L167.934 73.3548L167.128 68.311L165.008 65.0176L169.063 67.3437L171.16 70.6371L171.967 75.6809Z","fill":"#686868"}] -8f:["$","path",null,{"d":"M169.293 75.358C169.293 73.7458 168.717 72.6173 167.818 72.0876L165.122 70.5445C164.2 70.0148 162.956 70.1069 161.55 70.913C158.762 72.5252 156.504 76.4174 156.504 79.6418C156.504 81.2539 157.08 82.3824 157.979 82.9122L160.652 84.4552C161.573 84.985 162.841 84.9159 164.223 84.1098C167.034 82.4746 169.293 78.5823 169.293 75.358Z","fill":"#ffffff"}] -90:["$","path",null,{"d":"M169.292 75.3577C169.292 72.1333 167.034 70.8436 164.246 72.4558C161.457 74.0679 159.199 77.9832 159.199 81.1845C159.199 84.3858 161.457 85.6986 164.246 84.0864C167.034 82.4743 169.292 78.582 169.292 75.3577Z","fill":"#686868"}] -91:["$","path",null,{"d":"M167.381 76.4641C167.381 74.4834 165.975 73.6773 164.247 74.6677C162.519 75.658 161.113 78.0762 161.113 80.0799C161.113 82.0606 162.519 82.8667 164.247 81.8764C165.975 80.886 167.381 78.4678 167.381 76.4641Z","fill":"#EAECF2"}] -92:["$","path",null,{"d":"M166.803 76.532C166.803 74.7587 165.559 74.0447 164.015 74.9429C162.471 75.8411 161.227 77.983 161.227 79.7564C161.227 81.5298 162.471 82.2437 164.015 81.3686C165.536 80.4703 166.803 78.3054 166.803 76.532Z","fill":"#686868"}] -93:["$","path",null,{"d":"M166.55 77.3377C166.55 76.094 165.674 75.5873 164.591 76.2092C163.508 76.831 162.633 78.3511 162.633 79.5947C162.633 80.8384 163.508 81.3451 164.591 80.7233C165.674 80.1014 166.55 78.5814 166.55 77.3377Z","fill":"#EAECF2"}] -195:T66c,M164.73 77.154C164.615 77.2231 164.522 77.1771 164.522 77.0389C164.522 76.9007 164.615 76.7395 164.73 76.6704C164.845 76.6013 164.937 76.6474 164.937 76.7855C164.937 76.9237 164.845 77.0849 164.73 77.154ZM164.937 80.079C164.937 79.9408 164.845 79.8947 164.73 79.9638C164.615 80.0329 164.522 80.1941 164.522 80.3323C164.522 80.4705 164.615 80.5166 164.73 80.4475C164.845 80.3784 164.937 80.2172 164.937 80.079ZM166.158 77.9832C166.274 77.9141 166.366 77.7528 166.366 77.6147C166.366 77.4765 166.274 77.4304 166.158 77.4995C166.043 77.5686 165.951 77.7298 165.951 77.868C165.928 77.9832 166.02 78.0522 166.158 77.9832ZM163.301 79.6184C163.416 79.5493 163.509 79.388 163.509 79.2499C163.509 79.1117 163.416 79.0656 163.301 79.1347C163.186 79.2038 163.094 79.365 163.094 79.5032C163.094 79.6414 163.186 79.6874 163.301 79.6184ZM165.882 76.9007C165.974 76.7625 165.974 76.6013 165.882 76.5552C165.79 76.5092 165.675 76.5783 165.582 76.7164C165.49 76.8546 165.49 77.0158 165.582 77.0619C165.675 77.131 165.79 77.0389 165.882 76.9007ZM163.877 80.3784C163.969 80.2402 163.969 80.079 163.877 80.0329C163.785 79.9868 163.67 80.0559 163.578 80.2172C163.485 80.3553 163.485 80.5166 163.578 80.5626C163.647 80.6087 163.785 80.5166 163.877 80.3784ZM165.582 79.388C165.675 79.4341 165.813 79.365 165.882 79.2038C165.974 79.0656 165.974 78.9044 165.882 78.8583C165.79 78.8123 165.675 78.8814 165.582 79.0426C165.49 79.1808 165.49 79.342 165.582 79.388ZM163.555 78.2365C163.647 78.2826 163.785 78.2135 163.854 78.0522C163.946 77.9141 163.946 77.7528 163.854 77.7068C163.762 77.6607 163.624 77.7298 163.555 77.891C163.485 78.0292 163.485 78.1904 163.555 78.2365Z94:["$","path",null,{"d":"$195","fill":"#686868"}] -95:["$","path",null,{"d":"M165.884 78.1905C165.884 77.6147 165.492 77.4074 165.008 77.6838C164.524 77.9601 164.109 78.6511 164.109 79.2269C164.109 79.7796 164.501 80.0099 165.008 79.7335C165.492 79.4572 165.884 78.7662 165.884 78.1905Z","fill":"#ffffff"}] -96:["$","path",null,{"d":"M171.922 69.8771L169.526 66.146L165.493 63.7969L153.373 69.2552L151.875 74.8287V78.744L157.244 81.8532L158.05 81.3925V77.8458L161.484 71.7195L169.065 67.3436L171.162 70.6371L171.968 75.6809L172.775 75.059L171.922 69.8771Z","fill":"#ffffff"}] -97:["$","path",null,{"d":"M171.966 75.6813L171.16 70.6375L169.063 67.3441L161.482 71.72L158.049 77.8462V81.393L157.242 81.8536V77.9383L158.763 72.3649L169.524 66.1465L171.92 69.8775L172.773 75.0595L171.966 75.6813Z","fill":"#686868"}] -98:["$","path",null,{"d":"M151.896 74.8516L151.781 78.6977L157.242 81.853V77.9377L151.896 74.8516Z","fill":"#ffffff"}] -99:["$","path",null,{"opacity":"0.5","d":"M151.896 74.8516L151.781 78.6977L157.242 81.853V77.9377L151.896 74.8516Z","fill":"#686868"}] -9a:["$","path",null,{"opacity":"0.5","d":"M158.765 72.365L157.244 77.9385L151.875 74.8294L153.373 69.2559L158.765 72.365Z","fill":"#686868"}] -9b:["$","path",null,{"d":"M152.173 82.4524L138.256 88.1411L137.449 88.6017V84.7094L138.947 79.1129L149.731 72.8945L152.127 76.6486L152.98 81.8306L152.173 82.4524Z","fill":"#ffffff"}] -9c:["$","path",null,{"d":"M152.173 82.4524L138.256 88.1411L137.449 88.6017V84.7094L138.947 79.1129L149.731 72.8945L152.127 76.6486L152.98 81.8306L152.173 82.4524Z","fill":"#686868"}] -9d:["$","path",null,{"d":"M156.205 84.7786L152.173 82.4525L151.366 77.4087L149.246 74.1152L153.279 76.4414L155.398 79.7348L156.205 84.7786Z","fill":"#ffffff"}] -9e:["$","path",null,{"d":"M156.205 84.7786L152.173 82.4525L151.366 77.4087L149.246 74.1152L153.279 76.4414L155.398 79.7348L156.205 84.7786Z","fill":"#686868"}] -9f:["$","path",null,{"opacity":"0.5","d":"M156.205 84.7786L152.173 82.4525L151.366 77.4087L149.246 74.1152L153.279 76.4414L155.398 79.7348L156.205 84.7786Z","fill":"#686868"}] -a0:["$","path",null,{"d":"M153.531 84.4557C153.531 82.8435 152.955 81.715 152.056 81.1853L149.36 79.6422C148.438 79.1125 147.194 79.2046 145.789 80.0107C143 81.6228 140.742 85.5381 140.742 88.7394C140.742 90.3516 141.318 91.4801 142.217 92.0098L144.89 93.5529C145.812 94.0826 147.079 94.0135 148.461 93.2074C151.273 91.5722 153.531 87.68 153.531 84.4557Z","fill":"#ffffff"}] -a1:["$","path",null,{"d":"M153.53 84.4551C153.53 81.2538 151.272 79.941 148.484 81.5532C145.696 83.1654 143.438 87.0806 143.438 90.2819C143.438 93.4832 145.696 94.796 148.484 93.1838C151.272 91.5717 153.53 87.6794 153.53 84.4551Z","fill":"#686868"}] -a2:["$","path",null,{"d":"M151.619 85.5617C151.619 83.5811 150.214 82.775 148.485 83.7653C146.757 84.7556 145.352 87.1739 145.352 89.1776C145.352 91.1583 146.757 91.9643 148.485 90.974C150.214 89.9837 151.619 87.5654 151.619 85.5617Z","fill":"#EAECF2"}] -a3:["$","path",null,{"d":"M151.041 85.6301C151.041 83.8567 149.797 83.1427 148.253 84.0179C146.709 84.9161 145.465 87.058 145.465 88.8314C145.465 90.6048 146.709 91.3187 148.253 90.4436C149.774 89.5684 151.041 87.4035 151.041 85.6301Z","fill":"#686868"}] -a4:["$","path",null,{"d":"M150.788 86.4354C150.788 85.1917 149.913 84.685 148.83 85.3068C147.747 85.9287 146.871 87.4487 146.871 88.6924C146.871 89.9361 147.747 90.4427 148.83 89.8209C149.913 89.1991 150.788 87.679 150.788 86.4354Z","fill":"#EAECF2"}] -196:T66c,M148.968 86.2515C148.853 86.3206 148.761 86.2745 148.761 86.1363C148.761 85.9981 148.853 85.8369 148.968 85.7678C149.083 85.6987 149.175 85.7678 149.175 85.883C149.175 86.0212 149.083 86.1824 148.968 86.2515ZM149.175 89.1534C149.175 89.0152 149.083 88.9691 148.968 89.0382C148.853 89.1073 148.761 89.2685 148.761 89.4067C148.761 89.5449 148.853 89.591 148.968 89.5219C149.083 89.4758 149.175 89.2916 149.175 89.1534ZM150.397 87.0806C150.512 87.0115 150.604 86.8503 150.604 86.7121C150.604 86.5739 150.512 86.5279 150.397 86.597C150.281 86.666 150.189 86.8273 150.189 86.9654C150.189 87.1036 150.281 87.1497 150.397 87.0806ZM147.539 88.7158C147.655 88.6467 147.747 88.4855 147.747 88.3473C147.747 88.2091 147.655 88.1631 147.539 88.2322C147.424 88.3012 147.332 88.4625 147.332 88.6007C147.332 88.7388 147.424 88.7849 147.539 88.7158ZM150.12 85.9981C150.212 85.86 150.212 85.6987 150.12 85.6527C150.028 85.6066 149.89 85.6757 149.821 85.8369C149.728 85.9751 149.728 86.1363 149.821 86.1824C149.913 86.2054 150.028 86.1363 150.12 85.9981ZM148.115 89.4758C148.208 89.3376 148.208 89.1764 148.115 89.1304C148.023 89.0843 147.885 89.1534 147.816 89.2916C147.724 89.4298 147.724 89.591 147.816 89.637C147.885 89.7061 148.023 89.614 148.115 89.4758ZM149.821 88.4855C149.913 88.5316 150.051 88.4625 150.12 88.3012C150.212 88.1631 150.212 88.0018 150.12 87.9558C150.028 87.9097 149.89 87.9788 149.821 88.14C149.728 88.2782 149.728 88.4394 149.821 88.4855ZM147.793 87.3339C147.885 87.38 148 87.3109 148.092 87.1497C148.185 87.0115 148.185 86.8503 148.092 86.8042C148 86.7582 147.862 86.8273 147.793 86.9885C147.724 87.1267 147.724 87.2879 147.793 87.3339Za5:["$","path",null,{"d":"$196","fill":"#686868"}] -a6:["$","path",null,{"d":"M150.122 87.2879C150.122 86.7351 149.73 86.5048 149.246 86.7812C148.762 87.0575 148.348 87.7485 148.348 88.3242C148.348 88.877 148.739 89.1073 149.246 88.8309C149.73 88.5546 150.122 87.8636 150.122 87.2879Z","fill":"#ffffff"}] -a7:["$","path",null,{"d":"M156.16 78.9977L153.787 75.2207L149.731 72.8945L137.611 78.3529L136.113 83.9264V87.8416L141.482 90.9508L142.289 90.4672V86.9434L145.722 80.8172L153.28 76.4413L155.4 79.7347L156.206 84.7785L157.013 84.1567L156.16 78.9977Z","fill":"#ffffff"}] -a8:["$","path",null,{"d":"M156.205 84.7786L155.398 79.7348L153.278 76.4413L145.72 80.8172L142.287 86.9435V90.4672L141.48 90.9509V87.0356L143.001 81.4621L153.785 75.2207L156.159 78.9978L157.011 84.1567L156.205 84.7786Z","fill":"#686868"}] -a9:["$","path",null,{"d":"M136.135 83.9492L136.02 87.7954L141.481 90.9506V87.0354L136.135 83.9492Z","fill":"#ffffff"}] -aa:["$","path",null,{"opacity":"0.5","d":"M136.135 83.9492L136.02 87.7954L141.481 90.9506V87.0354L136.135 83.9492Z","fill":"#686868"}] -ab:["$","path",null,{"opacity":"0.5","d":"M143.003 81.4627L141.482 87.0362L136.113 83.927L137.611 78.3535L143.003 81.4627Z","fill":"#686868"}] -ac:["$","path",null,{"d":"M136.412 91.5251L122.494 97.2368L121.688 97.6974V93.8051L123.185 88.2086L133.969 81.9902L136.366 85.7443L137.218 90.9263L136.412 91.5251Z","fill":"#ffffff"}] -ad:["$","path",null,{"d":"M136.412 91.5251L122.494 97.2368L121.688 97.6974V93.8051L123.185 88.2086L133.969 81.9902L136.366 85.7443L137.218 90.9263L136.412 91.5251Z","fill":"#686868"}] -ae:["$","path",null,{"d":"M140.466 93.8743L136.411 91.5251L135.604 86.5044L133.484 83.2109L137.517 85.5371L139.637 88.8305L140.466 93.8743Z","fill":"#ffffff"}] -af:["$","path",null,{"d":"M140.466 93.8743L136.411 91.5251L135.604 86.5044L133.484 83.2109L137.517 85.5371L139.637 88.8305L140.466 93.8743Z","fill":"#686868"}] -b0:["$","path",null,{"opacity":"0.5","d":"M140.466 93.8743L136.411 91.5251L135.604 86.5044L133.484 83.2109L137.517 85.5371L139.637 88.8305L140.466 93.8743Z","fill":"#686868"}] -b1:["$","path",null,{"d":"M137.769 93.5514C137.769 91.9392 137.193 90.8107 136.294 90.281L133.598 88.7379C132.677 88.2082 131.432 88.3003 130.027 89.1064C127.239 90.7185 124.98 94.6338 124.98 97.8351C124.98 99.4473 125.557 100.576 126.455 101.106L129.128 102.649C130.05 103.178 131.317 103.109 132.7 102.303C135.511 100.668 137.769 96.7527 137.769 93.5514Z","fill":"#ffffff"}] -b2:["$","path",null,{"d":"M137.768 93.551C137.768 90.3267 135.51 89.037 132.722 90.6491C129.934 92.2613 127.676 96.1766 127.676 99.3779C127.676 102.602 129.934 103.892 132.722 102.28C135.51 100.668 137.768 96.7524 137.768 93.551Z","fill":"#686868"}] -b3:["$","path",null,{"d":"M135.857 94.6574C135.857 92.6768 134.452 91.8707 132.724 92.861C130.995 93.8514 129.59 96.2696 129.59 98.2733C129.59 100.254 130.995 101.06 132.724 100.07C134.452 99.0564 135.857 96.6611 135.857 94.6574Z","fill":"#EAECF2"}] -b4:["$","path",null,{"d":"M135.279 94.7258C135.279 92.9524 134.035 92.2384 132.491 93.1136C130.947 94.0118 129.703 96.1537 129.703 97.9271C129.703 99.7005 130.947 100.414 132.491 99.5393C134.012 98.6641 135.279 96.4992 135.279 94.7258Z","fill":"#686868"}] -b5:["$","path",null,{"d":"M135.027 95.5311C135.027 94.2874 134.151 93.7807 133.068 94.4025C131.985 95.0244 131.109 96.5444 131.109 97.7881C131.109 99.0318 131.985 99.5385 133.068 98.9166C134.151 98.2948 135.027 96.7747 135.027 95.5311Z","fill":"#EAECF2"}] -197:T676,M133.206 95.3472C133.091 95.4163 132.999 95.3472 132.999 95.232C132.999 95.0938 133.091 94.9326 133.206 94.8635C133.322 94.7944 133.414 94.8635 133.414 94.9787C133.414 95.1169 133.322 95.2781 133.206 95.3472ZM133.414 98.2721C133.414 98.1339 133.322 98.0879 133.206 98.157C133.091 98.2261 132.999 98.3873 132.999 98.5255C132.999 98.6637 133.091 98.7097 133.206 98.6406C133.322 98.5715 133.414 98.3873 133.414 98.2721ZM134.635 96.1763C134.75 96.1072 134.842 95.946 134.842 95.8078C134.842 95.6696 134.75 95.6236 134.635 95.6927C134.52 95.7617 134.428 95.923 134.428 96.0612C134.405 96.1763 134.497 96.2454 134.635 96.1763ZM131.778 97.8115C131.893 97.7424 131.985 97.5812 131.985 97.443C131.985 97.3048 131.893 97.2588 131.778 97.3279C131.662 97.397 131.57 97.5582 131.57 97.6964C131.57 97.8345 131.662 97.8806 131.778 97.8115ZM134.358 95.0938C134.451 94.9557 134.451 94.7944 134.358 94.7484C134.266 94.7023 134.128 94.7714 134.059 94.9326C133.967 95.0708 133.967 95.232 134.059 95.2781C134.151 95.3011 134.266 95.232 134.358 95.0938ZM132.354 98.5715C132.446 98.4333 132.446 98.2721 132.354 98.2261C132.262 98.18 132.123 98.2491 132.054 98.4103C131.962 98.5485 131.962 98.7097 132.054 98.7558C132.123 98.8018 132.262 98.7097 132.354 98.5715ZM134.059 97.5812C134.151 97.6273 134.289 97.5582 134.358 97.3969C134.451 97.2588 134.451 97.0975 134.358 97.0515C134.266 97.0054 134.128 97.0745 134.059 97.2357C133.967 97.3739 133.967 97.5351 134.059 97.5812ZM132.031 96.4296C132.123 96.4757 132.239 96.4066 132.331 96.2454C132.423 96.1072 132.423 95.946 132.331 95.8999C132.239 95.8539 132.123 95.923 132.031 96.0842C131.962 96.2224 131.962 96.3836 132.031 96.4296Zb6:["$","path",null,{"d":"$197","fill":"#686868"}] -b7:["$","path",null,{"d":"M134.36 96.3836C134.36 95.8308 133.968 95.6005 133.485 95.8769C133.001 96.1532 132.586 96.8442 132.586 97.42C132.586 97.9727 132.978 98.203 133.485 97.9266C133.968 97.6272 134.36 96.9593 134.36 96.3836Z","fill":"#ffffff"}] -b8:["$","path",null,{"d":"M140.399 88.0704L138.025 84.3164L133.97 81.9902L121.849 87.4486L120.352 93.0221V96.9373L125.72 100.047L126.527 99.5629V96.0391L129.96 89.8899L137.518 85.537L139.638 88.8304L140.468 93.8742L141.251 93.2524L140.399 88.0704Z","fill":"#ffffff"}] -b9:["$","path",null,{"d":"M140.466 93.8743L139.637 88.8305L137.517 85.537L129.959 89.8899L126.525 96.0392V99.5629L125.719 100.047V96.1313L127.24 90.5578L138.024 84.3164L140.397 88.0705L141.25 93.2524L140.466 93.8743Z","fill":"#686868"}] -ba:["$","path",null,{"d":"M120.373 93.0449L120.258 96.8911L125.719 100.046V96.1311L120.373 93.0449Z","fill":"#ffffff"}] -bb:["$","path",null,{"opacity":"0.5","d":"M120.373 93.0449L120.258 96.8911L125.719 100.046V96.1311L120.373 93.0449Z","fill":"#686868"}] -bc:["$","path",null,{"opacity":"0.5","d":"M127.241 90.5584L125.72 96.1319L120.352 93.0227L121.849 87.4492L127.241 90.5584Z","fill":"#686868"}] -bd:["$","path",null,{"d":"M145.882 0L31.8438 65.7996V110.457L65.1173 129.641L179.132 63.8419V19.1848L145.882 0Z","fill":"white"}] -be:["$","path",null,{"opacity":"0.4","d":"M179.132 19.1855V63.8426L65.1168 129.642L65.0938 84.9851L179.132 19.1855Z","fill":"#686868"}] -bf:["$","path",null,{"opacity":"0.2","d":"M31.8438 65.7988L65.0943 84.9836L65.1173 129.641L31.8438 110.456V65.7988Z","fill":"#686868"}] -c0:["$","path",null,{"opacity":"0.4","d":"M36.9375 97.6055V113.382L60.0262 126.694V110.917L36.9375 97.6055Z","fill":"#686868"}] -c1:["$","path",null,{"d":"M0 111.01L0.714322 110.596L2.35035 111.54L3.06467 112.784V117.16L2.35035 117.574L0.714322 116.607L0 115.386V111.01Z","fill":"#ffffff"}] -c2:["$","path",null,{"opacity":"0.5","d":"M2.35035 111.54L0.714322 110.596L0 111.01V115.386L0.115213 115.593V111.747L0.529981 111.517L1.77428 112.231L2.18905 112.945V116.837L1.77428 117.09L0.599109 116.4L0.714322 116.607L2.35035 117.574L3.06467 117.16V112.784L2.35035 111.54Z","fill":"#686868"}] -c3:["$","path",null,{"d":"M3.06312 115.709L2.1875 115.387V116.838L4.90653 119.164L5.68998 118.726V116.746L3.06312 115.709Z","fill":"#ffffff"}] -c4:["$","path",null,{"opacity":"0.5","d":"M4.90653 117.183L2.1875 115.387V116.838L4.90653 119.164V117.183Z","fill":"#686868"}] -c5:["$","path",null,{"d":"M5.6897 118.725L4.90625 119.162V117.182L5.6897 116.744V118.725Z","fill":"#686868"}] -c6:["$","path",null,{"d":"M0 108.2L0.714322 107.785L2.35035 108.729L3.06467 109.973V111.24L2.35035 111.631L0.714322 110.687L0 109.466V108.2Z","fill":"#ffffff"}] -c7:["$","path",null,{"opacity":"0.5","d":"M2.35035 108.729L0.714322 107.785L0 108.2V109.466L0.115213 109.674V108.937L0.529981 108.706L1.77428 109.42L2.18905 110.134V110.917L1.77428 111.171L0.599109 110.48L0.714322 110.687L2.35035 111.631L3.06467 111.24V109.973L2.35035 108.729Z","fill":"#686868"}] -c8:["$","path",null,{"d":"M3.06312 110.665L2.1875 110.365V110.918L4.90653 113.244L5.68998 112.807V112.162L3.06312 110.665Z","fill":"#ffffff"}] -c9:["$","path",null,{"opacity":"0.5","d":"M4.90653 112.599L2.1875 110.365V110.918L4.90653 113.244V112.599Z","fill":"#686868"}] -ca:["$","path",null,{"d":"M5.6897 112.807L4.90625 113.245V112.6L5.6897 112.162V112.807Z","fill":"#686868"}] -cb:["$","path",null,{"d":"M40.1171 136.436L48.8042 141.433L48.1359 147.421L37.375 141.203L40.1171 136.436Z","fill":"#ffffff"}] -cc:["$","path",null,{"d":"M40.1171 136.436L48.8042 141.433L48.1359 147.421L37.375 141.203L40.1171 136.436Z","fill":"#686868"}] -cd:["$","path",null,{"d":"M40.1171 136.436L48.8042 141.433L48.1359 147.421L37.375 141.203L40.1171 136.436Z","fill":"#686868"}] -ce:["$","path",null,{"d":"M48.2301 145.233C48.2301 143.621 47.654 142.492 46.7553 141.986L44.0594 140.42C43.1376 139.89 41.8933 139.982 40.4877 140.788C37.6996 142.4 35.4414 146.315 35.4414 149.517C35.4414 151.129 36.0175 152.257 36.9161 152.787L39.5891 154.33C40.5108 154.86 41.7781 154.791 43.1607 153.985C45.9719 152.35 48.2301 148.434 48.2301 145.233Z","fill":"#ffffff"}] -cf:["$","path",null,{"d":"M48.2294 145.232C48.2294 142.031 45.9712 140.718 43.1831 142.331C40.3949 143.943 38.1367 147.858 38.1367 151.059C38.1367 154.261 40.3949 155.573 43.1831 153.961C45.9712 152.349 48.2294 148.434 48.2294 145.232Z","fill":"#686868"}] -d0:["$","path",null,{"d":"M46.3184 146.339C46.3184 144.358 44.9128 143.552 43.1846 144.543C41.4564 145.533 40.0508 147.951 40.0508 149.955C40.0508 151.936 41.4564 152.742 43.1846 151.751C44.9128 150.738 46.3184 148.32 46.3184 146.339Z","fill":"#EAECF2"}] -d1:["$","path",null,{"d":"M45.7404 146.384C45.7404 144.611 44.4961 143.897 42.9522 144.772C41.4084 145.67 40.1641 147.812 40.1641 149.585C40.1641 151.359 41.4084 152.073 42.9522 151.197C44.4961 150.322 45.7404 148.157 45.7404 146.384Z","fill":"#686868"}] -d2:["$","path",null,{"d":"M45.4876 147.213C45.4876 145.969 44.6119 145.462 43.5289 146.084C42.4459 146.706 41.5703 148.226 41.5703 149.47C41.5703 150.713 42.4459 151.22 43.5289 150.598C44.6119 149.976 45.4876 148.456 45.4876 147.213Z","fill":"#EAECF2"}] -198:T670,M43.6673 147.03C43.5521 147.099 43.4599 147.03 43.4599 146.915C43.4599 146.777 43.5521 146.616 43.6673 146.547C43.7825 146.478 43.8747 146.524 43.8747 146.662C43.8747 146.777 43.7825 146.961 43.6673 147.03ZM43.8747 149.932C43.8747 149.794 43.7825 149.748 43.6673 149.817C43.5521 149.886 43.4599 150.047 43.4599 150.186C43.4599 150.324 43.5521 150.37 43.6673 150.301C43.7825 150.232 43.8747 150.07 43.8747 149.932ZM45.0959 147.836C45.2111 147.767 45.3033 147.606 45.3033 147.468C45.3033 147.33 45.2111 147.284 45.0959 147.353C44.9807 147.422 44.8885 147.583 44.8885 147.721C44.8655 147.859 44.9807 147.906 45.0959 147.836ZM42.2386 149.495C42.3538 149.426 42.446 149.264 42.446 149.126C42.446 148.988 42.3538 148.942 42.2386 149.011C42.1234 149.08 42.0312 149.241 42.0312 149.38C42.0312 149.495 42.1234 149.564 42.2386 149.495ZM44.8194 146.754C44.9116 146.616 44.9116 146.455 44.8194 146.409C44.7272 146.362 44.612 146.432 44.5199 146.593C44.4277 146.731 44.4277 146.892 44.5199 146.938C44.612 146.984 44.7503 146.892 44.8194 146.754ZM42.8147 150.255C42.9069 150.117 42.9069 149.955 42.8147 149.909C42.7225 149.863 42.5843 149.932 42.5151 150.093C42.423 150.232 42.423 150.393 42.5151 150.439C42.5843 150.462 42.7225 150.393 42.8147 150.255ZM44.5199 149.264C44.612 149.31 44.7503 149.241 44.8194 149.08C44.9116 148.942 44.9116 148.781 44.8194 148.735C44.7272 148.689 44.589 148.758 44.5199 148.919C44.4277 149.057 44.4277 149.218 44.5199 149.264ZM42.5151 148.09C42.6073 148.136 42.7456 148.067 42.8147 147.906C42.9069 147.767 42.9069 147.606 42.8147 147.56C42.7225 147.514 42.5843 147.583 42.5151 147.744C42.423 147.883 42.423 148.044 42.5151 148.09Zd3:["$","path",null,{"d":"$198","fill":"#686868"}] -d4:["$","path",null,{"d":"M44.8208 148.065C44.8208 147.512 44.429 147.282 43.9221 147.559C43.4382 147.835 43.0234 148.526 43.0234 149.102C43.0234 149.677 43.4152 149.908 43.9221 149.608C44.429 149.309 44.8208 148.618 44.8208 148.065Z","fill":"#ffffff"}] -d5:["$","path",null,{"d":"M36.3161 148.688L38.7356 144.013L11.8218 128.49L5.07031 132.382V141.226L31.9611 156.749L36.3392 154.239L36.3161 148.688Z","fill":"#ffffff"}] -d6:["$","path",null,{"d":"M36.339 154.239L31.9609 156.75V147.906L38.7355 144.014L36.316 148.689L36.339 154.239Z","fill":"#686868"}] -d7:["$","path",null,{"opacity":"0.5","d":"M31.9611 156.75L5.07031 141.227V132.383L31.9611 147.906V156.75Z","fill":"#686868"}] -d8:["$","path",null,{"d":"M55.2329 131.714L28.3191 116.168L8.87109 127.407V130.194L35.7849 145.717L38.8726 143.92L39.2643 142.815L45.555 139.199L46.0158 139.798L55.2329 134.501V131.714Z","fill":"#ffffff"}] -d9:["$","path",null,{"d":"M35.7852 145.718L38.8729 143.921L39.2646 142.816L45.5552 139.2L46.0161 139.799L55.2332 134.502V131.715L35.7852 142.931V145.718Z","fill":"#686868"}] -da:["$","path",null,{"opacity":"0.5","d":"M35.7849 145.716V142.929L8.87109 127.406V130.193L35.7849 145.716Z","fill":"#686868"}] -db:["$","path",null,{"d":"M31.9592 147.906L5.06839 132.383L3.13281 134.824V143.668L27.7424 157.878L31.9592 156.75V147.906Z","fill":"#ffffff"}] -dc:["$","path",null,{"opacity":"0.8","d":"M27.7422 157.879L31.959 156.75V147.906L27.7422 149.012V157.879Z","fill":"#686868"}] -dd:["$","path",null,{"opacity":"0.5","d":"M27.7424 157.878L3.13281 143.668V134.824L27.7424 149.011V157.878Z","fill":"#686868"}] -de:["$","path",null,{"d":"M3.13281 134.822V143.666L6.01314 146.43L22.9495 156.218L27.7424 157.876V149.009L3.13281 134.822Z","fill":"#ffffff"}] -df:["$","path",null,{"opacity":"0.5","d":"M22.9481 156.218L6.01172 146.43V137.586L22.925 147.351L22.9481 156.218Z","fill":"#686868"}] -e0:["$","path",null,{"opacity":"0.6","d":"M6.01314 137.586L3.13281 134.822V143.666L6.01314 146.43V137.586Z","fill":"#686868"}] -e1:["$","path",null,{"opacity":"0.6","d":"M22.9492 147.352V156.218L27.7421 157.877V149.01L22.9492 147.352Z","fill":"#686868"}] -e2:["$","path",null,{"d":"M55.6022 116.191V109.673L28.7114 94.1504L24.8633 96.3614V118.172L51.7771 133.695V111.884V119.208V133.695L55.6022 131.484V116.191Z","fill":"white"}] -e3:["$","path",null,{"opacity":"0.6","d":"M51.7771 133.695L24.8633 118.172V96.3613L51.7771 111.884V133.695Z","fill":"#686868"}] -e4:["$","path",null,{"opacity":"0.4","d":"M55.6024 131.484L51.7773 133.695V119.209V111.885L55.6024 109.674V116.192V131.484Z","fill":"#686868"}] -e5:["$","path",null,{"opacity":"0.6","d":"M55.6022 109.673L51.7771 111.884L24.8633 96.3614L28.7114 94.1504L55.6022 109.673Z","fill":"#686868"}] -e6:["$","path",null,{"d":"M51.386 133.925V119.438V112.114L49.6348 111.124L24.4722 96.5915L22.721 95.5781L5.07031 105.781V132.382L31.9611 147.905L36.4774 145.302L38.0213 141.64L51.386 133.925Z","fill":"white"}] -e7:["$","path",null,{"opacity":"0.6","d":"M38.4802 117.55L49.6329 111.124L24.4703 96.5915L22.719 95.5781L11.5664 102.027L38.4802 117.55Z","fill":"#686868"}] -e8:["$","path",null,{"opacity":"0.4","d":"M49.6346 111.125L31.9609 121.305V134.617V147.905L36.4773 145.303L38.0212 141.641L51.3859 133.926V119.439V112.115L49.6346 111.125Z","fill":"#686868"}] -e9:["$","path",null,{"opacity":"0.2","d":"M5.07031 105.781L31.9611 121.304V147.905L5.07031 132.382V105.781Z","fill":"#686868"}] -ea:["$","path",null,{"d":"M31.9592 134.617L5.06839 119.094L4.53841 119.393L3.13281 123.285V134.824L27.7424 149.011L31.9592 147.906V134.617Z","fill":"white"}] -eb:["$","path",null,{"opacity":"0.4","d":"M27.7422 137.496L31.429 134.917L31.959 134.617V147.906L27.7422 149.012V137.496Z","fill":"#686868"}] -ec:["$","path",null,{"opacity":"0.2","d":"M27.7424 149.011L3.13281 134.824V123.285L27.7424 137.495V149.011Z","fill":"#686868"}] -ed:["$","path",null,{"d":"M5.06904 109.121L4.53906 109.444V119.393L31.4298 134.916L31.9598 134.616V124.667L5.06904 109.121Z","fill":"#ffffff"}] -ee:["$","path",null,{"d":"M31.4297 134.917L31.9597 134.617V124.668L31.4297 124.967V134.917Z","fill":"#686868"}] -ef:["$","path",null,{"opacity":"0.5","d":"M31.4298 134.916V124.966L4.53906 109.443V119.393L31.4298 134.916Z","fill":"#686868"}] -f0:["$","path",null,{"d":"M31.4298 134.916V124.966L26.5909 123.492L7.07375 112.23L4.53906 109.443V119.393L6.70507 122.41L26.1992 133.672L31.4298 134.916Z","fill":"#ffffff"}] -f1:["$","path",null,{"d":"M21.3621 123.515L21.7077 120.682L15.0484 116.836L14.6797 119.669L21.3621 123.515Z","fill":"#686868"}] -f2:["$","path",null,{"d":"M30.7148 124.736L30.4844 126.579L31.4291 127.132V124.967L30.7148 124.736Z","fill":"#686868"}] -f3:["$","path",null,{"d":"M10.9664 114.463L7.0722 112.229L6.72656 111.838V117.78L10.9664 114.463Z","fill":"#686868"}] -f4:["$","path",null,{"d":"M28.5034 132.337L9.00934 121.074L6.84333 119.094L4.53906 119.393L6.70507 122.41L26.1992 133.672L31.4298 134.916V133.028L28.5034 132.337Z","fill":"#686868"}] -f5:["$","path",null,{"opacity":"0.3","d":"M7.07336 112.23L6.68163 122.41L4.51562 119.393V109.443L7.07336 112.23ZM26.5905 123.492L26.1988 133.672L31.4294 134.916V124.966L26.5905 123.492Z","fill":"#686868"}] -f6:["$","path",null,{"d":"M26.5905 123.492L7.07336 112.23L4.51562 109.443V119.393L6.68163 122.41L26.1988 133.672L31.4294 134.916V124.966L26.5905 123.492ZM26.3601 133.257L7.00423 122.064L4.97648 119.232V110.572L6.79685 112.576L26.3601 123.861L30.9916 125.266V134.34L26.3601 133.257Z","fill":"#686868"}] -f7:["$","path",null,{"d":"M42.4199 119.508L33.6406 124.575V133.303L42.4199 126.44V119.508Z","fill":"#ffffff"}] -f8:["$","path",null,{"opacity":"0.4","d":"M43.9414 118.632V125.242L48.4808 121.696L49.7251 118.655V115.293L43.9414 118.632Z","fill":"#686868"}] -f9:["$","path",null,{"d":"M41.1523 135.952L42.4197 135.238V132.451L41.1523 133.188V135.952Z","fill":"#ffffff"}] -fa:["$","path",null,{"d":"M41.8671 135.1L41.4062 135.376V133.488L41.8671 133.234V135.1Z","fill":"#686868"}] -fb:["$","path",null,{"d":"M49.6783 141.872L46.1989 139.016L45.4385 138.578L39.3783 142.079L35.9219 148.942V154.493L36.6823 154.93L37.4427 154.47V149.264L40.5074 143.207L45.715 140.19L47.7428 141.872L48.1345 142.309V147.422L48.9179 147.86L49.6783 147.422V141.872Z","fill":"#ffffff"}] -fc:["$","path",null,{"d":"M49.6796 147.422L48.9192 147.86V142.655L45.8546 140.121L40.5087 143.207L37.444 149.264V154.469L36.6836 154.93V149.38L40.163 142.516L46.2002 139.016L49.6796 141.871V147.422Z","fill":"#686868"}] -fd:["$","path",null,{"d":"M45.8531 140.121L45.7148 140.19L47.7426 141.871L48.1343 142.309V147.422L48.9178 147.86V142.655L45.8531 140.121Z","fill":"#686868"}] -fe:["$","path",null,{"opacity":"0.5","d":"M45.8531 140.121L45.7148 140.19L47.7426 141.871L48.1343 142.309V147.422L48.9178 147.86V142.655L45.8531 140.121Z","fill":"#686868"}] -ff:["$","path",null,{"opacity":"0.3","d":"M40.1617 142.516L39.3783 142.078L35.9219 148.941L36.6823 149.379L40.1617 142.516Z","fill":"#686868"}] -100:["$","path",null,{"opacity":"0.5","d":"M36.6823 149.379L35.9219 148.941V154.492L36.6823 154.929V149.379Z","fill":"#686868"}] -101:["$","path",null,{"d":"M55.2342 96.1772L28.3204 80.6543L14.8635 96.062L11.6836 101.52L38.5974 117.043L49.6348 110.664L51.3861 111.677L55.2342 109.466V96.1772Z","fill":"white"}] -102:["$","path",null,{"opacity":"0.4","d":"M55.2344 109.467L51.3863 111.678L49.6351 110.664L38.5977 117.044L41.7775 111.585L55.2344 96.1777V109.467Z","fill":"#686868"}] -103:["$","path",null,{"opacity":"0.1","d":"M38.5974 117.044L41.7773 111.585L14.8635 96.0625L11.6836 101.521L38.5974 117.044Z","fill":"#686868"}] -104:["$","path",null,{"d":"M27.7424 137.495L3.13281 123.285V134.824L6.01314 137.587L22.9264 147.353L27.7424 149.011V137.495Z","fill":"white"}] -105:["$","path",null,{"opacity":"0.3","d":"M3.13281 123.285V134.824L6.01314 137.587V130.31L3.13281 123.285Z","fill":"#686868"}] -106:["$","path",null,{"opacity":"0.3","d":"M3.13281 123.285V134.824L4.1006 135.146V129.204L3.13281 123.285Z","fill":"#686868"}] -107:["$","path",null,{"opacity":"0.3","d":"M27.7417 137.494V149.01L22.9258 147.351V140.074L27.7417 137.494Z","fill":"#686868"}] -108:["$","path",null,{"opacity":"0.3","d":"M27.7436 137.494V149.01L24.8633 147.121V141.179L27.7436 137.494Z","fill":"#686868"}] -109:["$","path",null,{"d":"M6.01562 137.586L22.9289 147.352V140.074L6.01562 130.309V137.586Z","fill":"#ffffff"}] -10a:["$","path",null,{"opacity":"0.5","d":"M6.01562 137.586L22.9289 147.352V140.074L6.01562 130.309V137.586Z","fill":"#686868"}] -10b:["$","path",null,{"d":"M27.7424 137.495L22.9264 140.075L6.01314 130.31L3.13281 123.285L4.7458 125.105L24.5625 136.551L27.7424 137.495Z","fill":"#ffffff"}] -10c:["$","path",null,{"opacity":"0.4","d":"M32.8117 124.045L32.7656 124.068V133.903V147.468L32.973 147.33V133.903V124.207L43.0657 118.38V138.716L43.2961 138.601V117.988L32.8117 124.045Z","fill":"#686868"}] -10d:["$","path",null,{"d":"M31.9592 121.304L5.06839 105.781L4.12365 106.334L3.13281 110.664V111.562L27.7424 125.772L31.9592 124.667V121.304Z","fill":"white"}] -10e:["$","path",null,{"opacity":"0.4","d":"M27.7422 124.874V125.773L31.959 124.667V121.305L31.0142 121.857L27.7422 124.874Z","fill":"#686868"}] -10f:["$","path",null,{"opacity":"0.1","d":"M27.7424 124.874L31.0144 121.857L4.12365 106.334L3.13281 110.664L27.7424 124.874Z","fill":"#686868"}] -110:["$","path",null,{"opacity":"0.2","d":"M27.7424 125.772V124.874L3.13281 110.664V111.562L27.7424 125.772Z","fill":"#686868"}] -111:["$","path",null,{"d":"M38.2031 121.949L33.6406 124.575V128.398L37.1431 130.425L38.2031 121.949Z","fill":"#686868"}] -112:["$","path",null,{"d":"M33.6406 124.575V133.303L42.4199 126.44V119.508L33.6406 124.575ZM34.0784 132.405V124.828L41.959 120.268V126.21L34.0784 132.405Z","fill":"#686868"}] -113:["$","path",null,{"d":"M27.7423 150.783L24.1016 149.539V152.165L27.7423 153.431L29.8853 152.856V150.23L27.7423 150.783Z","fill":"white"}] -114:["$","path",null,{"opacity":"0.4","d":"M29.8852 150.23L27.7422 150.783V153.432L29.8852 152.856V150.23Z","fill":"#686868"}] -115:["$","path",null,{"d":"M5.06839 138.438L3.13281 136.596V139.244L5.06839 141.087V138.438Z","fill":"white"}] -116:["$","path",null,{"opacity":"0.5","d":"M7.14453 132.682V137.403L21.8227 145.878V141.157L7.14453 132.682Z","fill":"#686868"}] -117:["$","path",null,{"d":"M21.8227 141.157V141.871L7.14453 133.396V132.682L21.8227 141.157ZM7.14453 134.017V134.731L21.8457 143.207V142.493L7.14453 134.017ZM7.14453 135.353V136.067L21.8457 144.543V143.829L7.14453 135.353ZM7.14453 136.666V137.38L21.8457 145.855V145.141L7.14453 136.666Z","fill":"#686868"}] -118:["$","path",null,{"opacity":"0.5","d":"M7.14453 139.338V144.059L21.8227 152.535V147.813L7.14453 139.338Z","fill":"#686868"}] -119:["$","path",null,{"d":"M21.8227 147.813V148.527L7.14453 140.052V139.338L21.8227 147.813ZM7.14453 140.674V141.388L21.8457 149.863V149.149L7.14453 140.674ZM7.14453 141.986V142.7L21.8457 151.176V150.462L7.14453 141.986ZM7.14453 143.322V144.036L21.8457 152.512V151.798L7.14453 143.322Z","fill":"#686868"}] -11a:["$","path",null,{"d":"M37.3078 152.281L35.5105 151.244L33.1602 152.603V153.386L34.9344 154.422L37.3078 153.064V152.281Z","fill":"#ffffff"}] -11b:["$","path",null,{"d":"M34.9336 153.64V154.423L37.307 153.064V152.281L34.9336 153.64Z","fill":"#686868"}] -11c:["$","path",null,{"opacity":"0.5","d":"M33.1602 152.604V153.387L34.9344 154.423V153.64L33.1602 152.604Z","fill":"#686868"}] -11d:["$","path",null,{"d":"M35.5105 148.135L33.1602 149.494V152.603L33.9436 153.063L36.317 151.705V148.595L35.5105 148.135Z","fill":"#ffffff"}] -11e:["$","path",null,{"opacity":"0.5","d":"M33.1602 149.494V152.603L33.9436 153.064V149.955L33.1602 149.494Z","fill":"#686868"}] -11f:["$","path",null,{"d":"M33.9453 149.955V153.064L36.3187 151.705V148.596L33.9453 149.955Z","fill":"#686868"}] -120:["$","path",null,{"d":"M36.7518 132.198L36.0375 130.977L34.3784 130.033L33.6641 130.425V134.801L34.3784 136.044L36.0375 136.989L36.7518 136.574V132.198Z","fill":"#ffffff"}] -121:["$","path",null,{"opacity":"0.5","d":"M36.0375 130.977L34.3784 130.033L33.6641 130.425V134.801L33.7793 135.008V131.185L34.194 130.954L35.4383 131.668L35.8531 132.382V136.275L35.4383 136.505L34.2632 135.837L34.3784 136.044L36.0375 136.989L36.7518 136.574V132.198L36.0375 130.977Z","fill":"#686868"}] -122:["$","path",null,{"d":"M32.6038 132.268L31.8203 132.705V134.686L33.7789 135.077V133.626L33.6637 133.373L32.6038 132.268Z","fill":"#ffffff"}] -123:["$","path",null,{"opacity":"0.5","d":"M31.8203 132.705L33.7789 133.626V135.077L31.8203 134.686V132.705Z","fill":"#686868"}] -124:["$","path",null,{"d":"M36.7518 129.388L36.0375 128.167L34.3784 127.223L33.6641 127.614V128.881L34.3784 130.125L36.0375 131.069L36.7518 130.654V129.388Z","fill":"#ffffff"}] -125:["$","path",null,{"opacity":"0.5","d":"M36.0375 128.167L34.3784 127.223L33.6641 127.614V128.881L33.7793 129.088V128.374L34.194 128.144L35.4383 128.835L35.8531 129.572V130.355L35.4383 130.608L34.2632 129.917L34.3784 130.125L36.0375 131.069L36.7518 130.654V129.388L36.0375 128.167Z","fill":"#686868"}] -126:["$","path",null,{"d":"M32.6038 127.684L31.8203 128.121V128.766L33.7789 129.158V128.605L33.6637 128.328L32.6038 127.684Z","fill":"#ffffff"}] -127:["$","path",null,{"opacity":"0.5","d":"M31.8203 128.121L33.7789 128.605V129.157L31.8203 128.766V128.121Z","fill":"#686868"}] -128:["$","div",null,{"className":"elementor-element elementor-element-c582715 elementor-widget elementor-widget-logico_heading","data-id":"c582715","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"Mid Mile"}]}]}] -129:["$","div",null,{"className":"elementor-element elementor-element-3ae1ce0 elementor-widget elementor-widget-text-editor","data-id":"3ae1ce0","data-element_type":"widget","data-e-type":"widget","data-widget_type":"text-editor.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","p",null,{"children":"Smooth inter-city delivery through strategically located hubs with live tracking."}]}]}] -199:T676,M13.6906 103.458C13.5567 103.54 13.4495 103.458 13.4495 103.323C13.4495 103.187 13.5567 102.997 13.6906 102.916C13.8246 102.835 13.905 102.889 13.905 103.052C13.9318 103.214 13.8246 103.377 13.6906 103.458ZM13.9318 106.602C13.9318 106.44 13.8246 106.386 13.7174 106.467C13.5835 106.548 13.4763 106.711 13.4763 106.873C13.4763 107.009 13.5835 107.09 13.7174 107.009C13.8246 106.928 13.9318 106.738 13.9318 106.602ZM15.2177 104.353C15.3517 104.271 15.4589 104.109 15.4589 103.946C15.4589 103.811 15.3517 103.756 15.2177 103.811C15.0838 103.892 15.0034 104.055 15.0034 104.217C14.9766 104.353 15.0838 104.407 15.2177 104.353ZM12.1635 106.115C12.2975 106.033 12.3779 105.871 12.3779 105.708C12.3779 105.572 12.2707 105.491 12.1635 105.572C12.0296 105.654 11.9492 105.816 11.9492 105.979C11.9492 106.142 12.0564 106.196 12.1635 106.115ZM14.923 103.187C15.0034 103.025 15.0034 102.862 14.923 102.808C14.8427 102.754 14.6819 102.835 14.6015 102.997C14.5212 103.16 14.5212 103.323 14.6015 103.377C14.7087 103.431 14.8427 103.35 14.923 103.187ZM12.7797 106.928C12.8601 106.765 12.8601 106.602 12.7797 106.548C12.6994 106.494 12.5386 106.575 12.4583 106.738C12.3779 106.901 12.3779 107.063 12.4583 107.117C12.5386 107.172 12.6994 107.09 12.7797 106.928ZM14.6015 105.871C14.6819 105.925 14.8427 105.843 14.923 105.681C15.0034 105.518 15.0034 105.356 14.923 105.301C14.8427 105.247 14.6819 105.328 14.6015 105.491C14.5212 105.654 14.5212 105.816 14.6015 105.871ZM12.4583 104.624C12.5386 104.678 12.6994 104.597 12.7797 104.434C12.8601 104.271 12.8601 104.109 12.7797 104.055C12.6994 104 12.5386 104.082 12.4583 104.244C12.3779 104.407 12.3779 104.57 12.4583 104.624Z12a:["$","path",null,{"d":"$199","fill":"#686868"}] -12b:["$","path",null,{"d":"M14.9223 104.569C14.9223 103.945 14.4936 103.729 13.9846 104.027C13.4755 104.325 13.0469 105.084 13.0469 105.68C13.0469 106.304 13.4755 106.52 13.9846 106.222C14.4936 105.924 14.9223 105.192 14.9223 104.569Z","fill":"#ffffff"}] -12c:["$","path",null,{"d":"M21.3793 95.6257L18.8074 91.5871L14.5208 89.0664L1.60747 94.9481L0 100.965V105.167L5.73331 108.528L6.59062 108.013V104.191L10.2342 97.5773L18.2984 92.8882L20.5488 96.4389L21.4061 101.86L22.2634 101.209L21.3793 95.6257Z","fill":"white"}] -12d:["$","path",null,{"opacity":"0.4","d":"M21.4072 101.861L20.5499 96.4396L18.2994 92.8889L10.2353 97.578L6.59169 104.192V108.013L5.73438 108.528V104.3L7.34184 98.2828L18.8085 91.5879L21.3804 95.6265L22.2645 101.21L21.4072 101.861Z","fill":"#686868"}] -12e:["$","path",null,{"d":"M5.73331 108.527L0 105.166V100.965L5.73331 104.299V108.527Z","fill":"#ffffff"}] -12f:["$","path",null,{"opacity":"0.5","d":"M5.73331 108.527L0 105.166V100.965L5.73331 104.299V108.527Z","fill":"#686868"}] -130:["$","path",null,{"opacity":"0.2","d":"M7.34078 98.2812L5.73331 104.298L0 100.965L1.60747 94.9473L7.34078 98.2812Z","fill":"#686868"}] -131:["$","path",null,{"d":"M18.8093 91.5871L7.34268 98.282L1.60938 94.9481L14.5227 89.0664L18.8093 91.5871Z","fill":"white"}] -132:["$","path",null,{"opacity":"0.4","d":"M2.22403 95.707L0.964844 100.396L2.22403 99.6643V95.707Z","fill":"#686868"}] -133:["$","path",null,{"d":"M2.22403 99.6641L0.964844 100.396L5.27822 102.917L5.59971 101.643L2.22403 99.6641Z","fill":"white"}] -134:["$","path",null,{"d":"M6.50924 98.2278L2.22266 95.707V99.6643L5.59834 101.643L6.50924 98.2278Z","fill":"#ffffff"}] -135:["$","path",null,{"d":"M3.21484 96.3027V99.0945L5.86717 100.667L6.51015 98.2272L3.21484 96.3027Z","fill":"white"}] -136:["$","path",null,{"d":"M106.629 48.2188L3.24219 108.608V112.809L20.8172 123.082L124.204 62.6927V58.4643L106.629 48.2188Z","fill":"#ffffff"}] -137:["$","path",null,{"opacity":"0.5","d":"M20.8172 118.853V123.081L3.24219 112.809V108.607L20.8172 118.853Z","fill":"#686868"}] -138:["$","path",null,{"d":"M124.203 58.4648L20.8164 118.854V123.083L124.203 62.6932V58.4648Z","fill":"#686868"}] -139:["$","path",null,{"d":"M84.9002 88.1191L76.4609 93.0522V96.4132L77.2915 96.9011L85.7575 91.968V88.607L84.9002 88.1191Z","fill":"#ffffff"}] -13a:["$","path",null,{"d":"M77.2915 93.5676L76.4609 93.0526V96.4136L77.2915 96.9015L85.7575 91.9684V88.6074L77.2915 93.5676Z","fill":"#686868"}] -13b:["$","path",null,{"d":"M96.7694 84.9199L69.6836 100.749V101.942L70.5141 102.43L97.6268 86.6004V85.4078L96.7694 84.9199Z","fill":"#ffffff"}] -13c:["$","path",null,{"d":"M70.5141 101.237L69.6836 100.749V101.942L70.5141 102.43L97.6268 86.6008V85.4082L70.5141 101.237Z","fill":"#686868"}] -13d:["$","path",null,{"d":"M113.192 74.0771L98.3495 80.2299L97.4922 80.7178V76.5166L99.0997 70.4993L110.593 63.7773L113.138 67.8431L114.022 73.3995L113.192 74.0771Z","fill":"#ffffff"}] -13e:["$","path",null,{"d":"M113.192 74.0771L98.3495 80.2299L97.4922 80.7178V76.5166L99.0997 70.4993L110.593 63.7773L113.138 67.8431L114.022 73.3995L113.192 74.0771Z","fill":"#686868"}] -13f:["$","path",null,{"d":"M117.48 76.5976L113.193 74.0769L112.309 68.6559L110.059 65.0781L114.372 67.5989L116.622 71.1496L117.48 76.5976Z","fill":"#ffffff"}] -140:["$","path",null,{"d":"M114.637 76.2447C114.637 74.51 114.047 73.2903 113.056 72.7211L110.189 71.0406C109.225 70.4714 107.885 70.5527 106.385 71.4201C103.411 73.1819 101 77.3831 101 80.8525C101 82.5872 101.589 83.807 102.581 84.3762L105.447 86.0566C106.412 86.6258 107.778 86.5445 109.252 85.6772C112.225 83.9154 114.637 79.7141 114.637 76.2447Z","fill":"#ffffff"}] -141:["$","path",null,{"d":"M114.637 76.2439C114.637 72.7745 112.226 71.3921 109.252 73.1268C106.278 74.8615 103.867 79.0628 103.867 82.5322C103.867 86.0016 106.278 87.3839 109.252 85.6492C112.226 83.9145 114.637 79.7133 114.637 76.2439Z","fill":"#686868"}] -142:["$","path",null,{"d":"M112.574 77.4368C112.574 75.2955 111.074 74.4282 109.252 75.5124C107.403 76.5965 105.93 79.1986 105.93 81.3399C105.93 83.4811 107.43 84.3485 109.252 83.2643C111.074 82.1801 112.574 79.5781 112.574 77.4368Z","fill":"#EAECF2"}] -143:["$","path",null,{"d":"M111.959 77.5194C111.959 75.595 110.62 74.836 108.986 75.7847C107.351 76.7334 106.012 79.0644 106.012 80.9888C106.012 82.9132 107.351 83.6722 108.986 82.7235C110.647 81.7477 111.959 79.4167 111.959 77.5194Z","fill":"#686868"}] -144:["$","path",null,{"d":"M111.715 78.3864C111.715 77.0312 110.777 76.4891 109.625 77.1667C108.473 77.8443 107.535 79.4706 107.535 80.8259C107.535 82.1811 108.473 82.7232 109.625 82.0456C110.777 81.368 111.715 79.7146 111.715 78.3864Z","fill":"#EAECF2"}] -19a:T664,M109.761 78.1692C109.627 78.2505 109.52 78.1963 109.52 78.0337C109.52 77.8981 109.627 77.7084 109.761 77.6271C109.895 77.5458 109.975 77.6 109.975 77.7626C109.975 77.9252 109.895 78.115 109.761 78.1692ZM109.975 81.3133C109.975 81.1778 109.868 81.0965 109.761 81.1778C109.627 81.2591 109.52 81.4218 109.52 81.5844C109.52 81.7199 109.627 81.8012 109.761 81.7199C109.895 81.6386 109.975 81.476 109.975 81.3133ZM111.288 79.0637C111.422 78.9823 111.529 78.8197 111.529 78.6571C111.529 78.4945 111.422 78.4402 111.288 78.5216C111.154 78.6029 111.074 78.7655 111.047 78.9281C111.047 79.0908 111.154 79.145 111.288 79.0637ZM108.234 80.8526C108.368 80.7712 108.475 80.6086 108.475 80.446C108.475 80.3105 108.368 80.2291 108.234 80.3105C108.1 80.3918 108.02 80.5815 108.02 80.717C108.02 80.8526 108.127 80.9068 108.234 80.8526ZM110.993 77.8981C111.074 77.7355 111.074 77.5729 110.993 77.5187C110.913 77.4645 110.752 77.5458 110.672 77.7084C110.591 77.871 110.591 78.0337 110.672 78.0879C110.752 78.1421 110.913 78.0608 110.993 77.8981ZM108.85 81.6657C108.93 81.5031 108.93 81.3404 108.85 81.2862C108.77 81.232 108.609 81.3133 108.529 81.476C108.448 81.6386 108.448 81.8012 108.529 81.8554C108.609 81.8825 108.743 81.8012 108.85 81.6657ZM110.672 80.5815C110.752 80.6357 110.913 80.5544 110.993 80.3918C111.074 80.2292 111.074 80.0665 110.993 80.0123C110.913 79.9581 110.752 80.0394 110.672 80.202C110.591 80.3647 110.591 80.5273 110.672 80.5815ZM108.529 79.3347C108.609 79.3889 108.77 79.3076 108.85 79.145C108.93 78.9823 108.93 78.8197 108.85 78.7655C108.77 78.7113 108.609 78.7926 108.529 78.9552C108.421 79.1179 108.421 79.2805 108.529 79.3347Z145:["$","path",null,{"d":"$19a","fill":"#686868"}] -146:["$","path",null,{"d":"M110.993 79.308C110.993 78.7117 110.564 78.4678 110.055 78.7659C109.546 79.0641 109.117 79.7959 109.117 80.4193C109.117 81.0156 109.546 81.2596 110.055 80.9614C110.564 80.6361 110.993 79.9043 110.993 79.308Z","fill":"#ffffff"}] -147:["$","path",null,{"d":"M117.423 70.3367L114.878 66.2981L110.591 63.7773L97.651 69.6591L96.0703 75.6763V79.8776L101.804 83.2385L102.661 82.7235V78.9289L106.305 72.3153L114.369 67.5991L116.619 71.1498L117.476 76.5979L118.334 75.9203L117.423 70.3367Z","fill":"#ffffff"}] -148:["$","path",null,{"d":"M117.478 76.5986L116.62 71.1506L114.37 67.5999L106.306 72.3161L102.662 78.9296V82.7243L101.805 83.2393V79.038L103.385 73.0208L114.879 66.2988L117.424 70.3374L118.335 75.921L117.478 76.5986Z","fill":"#686868"}] -149:["$","path",null,{"d":"M96.0988 75.7031L95.9648 79.8502L101.805 83.2382V79.037L96.0988 75.7031Z","fill":"#ffffff"}] -14a:["$","path",null,{"opacity":"0.5","d":"M96.0988 75.7031L95.9648 79.8502L101.805 83.2382V79.037L96.0988 75.7031Z","fill":"#686868"}] -14b:["$","path",null,{"opacity":"0.5","d":"M103.384 73.0192L101.804 79.0364L96.0703 75.6755L97.651 69.6582L103.384 73.0192Z","fill":"#686868"}] -14c:["$","path",null,{"d":"M98.0293 0L33.3555 37.784V79.7692L67.3266 99.6099L132 61.8259V19.8407L98.0293 0Z","fill":"white"}] -14d:["$","path",null,{"opacity":"0.4","d":"M132.002 19.8398V61.8251L67.3281 99.609V57.6238L132.002 19.8398Z","fill":"#686868"}] -14e:["$","path",null,{"opacity":"0.2","d":"M33.3555 37.7832L67.3266 57.6239V99.6091L33.3555 79.7684V37.7832Z","fill":"#686868"}] -14f:["$","path",null,{"opacity":"0.5","d":"M38.5508 66.4609V82.8051L62.127 96.5743V80.2572L38.5508 66.4609Z","fill":"#686868"}] -150:["$","path",null,{"d":"M62.1268 104.544L57.7599 101.996L42.1406 111.103V111.944L46.5076 114.491L62.1268 105.357V104.544Z","fill":"#ffffff"}] -151:["$","path",null,{"d":"M62.1268 104.544L57.7599 101.996L42.1406 111.103V111.944L46.5076 114.491L62.1268 105.357V104.544Z","fill":"#686868"}] -152:["$","path",null,{"d":"M46.5076 113.651L62.1268 104.544L57.7599 101.996L42.1406 111.103L46.5076 113.651Z","fill":"#ffffff"}] -153:["$","path",null,{"d":"M57.7599 98.6348L42.1406 107.769V111.103L42.9711 111.618L58.6172 102.484V99.1227L57.7599 98.6348Z","fill":"#ffffff"}] -154:["$","path",null,{"d":"M42.9711 108.257L42.1406 107.769V111.103L42.9711 111.618L58.6172 102.484V99.123L42.9711 108.257Z","fill":"#686868"}] -155:["$","path",null,{"d":"M57.1733 74.1581L55.807 73.3721L38.4731 63.2349L37.8033 62.8555L24.9168 70.3635L23.9523 71.7187L20.9785 81.368V81.9643L6.3505 94.2156L6.10938 95.9503V106.928L23.6844 117.2L25.0507 117.038L42.5453 108.5L58.62 99.1216V81.9643L57.1733 74.1581Z","fill":"white"}] -156:["$","path",null,{"d":"M37.8014 62.8555L24.9149 70.3635L23.9504 71.7187L20.9766 81.368V95.8961L37.0245 86.5179V69.3606L38.4712 63.2349L37.8014 62.8555Z","fill":"white"}] -157:["$","path",null,{"d":"M42.6774 82.642L23.9504 71.7188L20.9766 81.368V95.8962L42.5434 108.5V93.9717L42.6774 82.642Z","fill":"white"}] -158:["$","path",null,{"d":"M24.4335 72.9648L21.9688 80.9607L41.7406 92.5344L41.8478 83.1291L24.4335 72.9648Z","fill":"#ffffff"}] -159:["$","path",null,{"opacity":"0.3","d":"M41.8494 83.1299L41.3136 82.8047L33.2227 87.548L34.6158 88.3612L41.8226 84.1599L41.8494 83.1299Z","fill":"#706680"}] -15a:["$","path",null,{"d":"M6.35156 94.215L20.9795 82.5329L21.4082 81.6113L6.35156 94.215Z","fill":"white"}] -15b:["$","path",null,{"d":"M6.35156 106.114L20.9795 95.8958V82.5332L6.35156 94.2153V106.114Z","fill":"white"}] -15c:["$","path",null,{"d":"M6.10938 95.9495V106.927L6.3505 106.114V94.2148L6.10938 95.9495Z","fill":"white"}] -15d:["$","path",null,{"d":"M55.8085 73.373L42.9219 80.881L42.6808 82.6429L42.5469 93.9726V108.501L58.6216 99.1225V81.9652L57.1748 74.1591L55.8085 73.373Z","fill":"white"}] -15e:["$","path",null,{"opacity":"0.4","d":"M55.8085 73.373L42.9219 80.881L42.6808 82.6429L42.5469 93.9726V108.501L58.6216 99.1225V81.9652L57.1748 74.1591L55.8085 73.373Z","fill":"#686868"}] -15f:["$","path",null,{"opacity":"0.4","d":"M43.5352 106.766V93.4573L43.5887 93.105V82.6425L43.8834 82.1546L55.9395 75.1074L56.2074 75.2701L57.6541 82.7509V98.553L57.6005 98.5801L43.5352 106.766ZM43.7495 82.6967V93.1321L43.6959 93.4844V106.495L57.4398 98.4717V82.7781L56.0198 75.3785L55.9127 75.3243L43.9906 82.2902L43.7495 82.6967Z","fill":"#686868"}] -160:["$","path",null,{"opacity":"0.2","d":"M25.0508 105.139L42.5454 95.1377L42.1167 93.7012L25.0508 105.139Z","fill":"#686868"}] -161:["$","path",null,{"opacity":"0.4","d":"M25.0508 117.037L42.5454 108.499V95.1367L25.0508 105.138V117.037Z","fill":"#686868"}] -162:["$","path",null,{"opacity":"0.4","d":"M23.6836 106.223V117.2L25.0499 117.038V105.139L23.6836 106.223Z","fill":"#686868"}] -163:["$","path",null,{"d":"M44.3125 82.8315L44.4197 92.5621L44.3393 93.1042V93.9445L56.824 84.6205V83.2923L55.3772 76.3535L44.3125 82.8315Z","fill":"#ffffff"}] -164:["$","path",null,{"d":"M55.1641 92.8872L56.3697 92.1825V88.957L55.1641 89.6617V92.8872Z","fill":"#ffffff"}] -165:["$","path",null,{"d":"M56.1826 90.3397L55.3789 90.8005V90.15L56.1826 89.6621V90.3397Z","fill":"#686868"}] -166:["$","path",null,{"d":"M23.6844 106.224V117.201L6.10938 106.929V95.9512L23.6844 106.224Z","fill":"white"}] -167:["$","path",null,{"opacity":"0.2","d":"M25.0507 105.138L23.6844 106.222L6.10938 95.9495L6.3505 94.2148L25.0507 105.138Z","fill":"#686868"}] -168:["$","path",null,{"d":"M42.1177 93.7L21.4082 81.6113L6.35156 94.215L25.0518 105.138L42.1177 93.7Z","fill":"white"}] -169:["$","path",null,{"opacity":"0.2","d":"M42.9213 80.8799L42.6801 82.6417L23.9531 71.7185L24.9176 70.3633L42.9213 80.8799Z","fill":"#686868"}] -16a:["$","path",null,{"d":"M55.8082 73.3721L42.9216 80.8801L24.918 70.3635L37.8045 62.8555L55.8082 73.3721Z","fill":"white"}] -16b:["$","path",null,{"d":"M22.9062 80.5814V81.4217L29.9255 76.1634L25.2639 73.4258L22.9866 80.0393L22.9062 80.5814Z","fill":"#686868"}] -16c:["$","path",null,{"d":"M41.7406 92.5343L41.7674 89.8781L24.9158 80.0391L21.9688 80.9606L41.7406 92.5343Z","fill":"#686868"}] -16d:["$","path",null,{"d":"M52.6445 87.7378L54.0913 80.1214L51.5193 78.6035L44.3125 82.8319L44.3661 87.3854L49.2957 90.2585L52.6445 87.7378Z","fill":"#686868"}] -16e:["$","path",null,{"d":"M37.0546 83.1024L39.1443 81.5574L32.125 77.4375L32.1518 80.2293L37.0546 83.1024Z","fill":"#686868"}] -16f:["$","path",null,{"d":"M21.9688 80.9605L41.7406 92.5071L41.8478 83.1018L24.4603 72.9375L21.9688 80.9605ZM41.5799 83.2644L41.4727 92.1005L22.2367 80.8521L24.5675 73.317L41.5799 83.2644Z","fill":"#686868"}] -170:["$","path",null,{"d":"M44.3398 93.1039V93.9441L49.2962 90.2579L44.3666 87.3848L44.4202 92.5618L44.3398 93.1039Z","fill":"#ffffff"}] -171:["$","path",null,{"d":"M44.3125 82.8315L44.4197 92.5621L44.3393 93.1042V93.9174L56.824 84.5933V83.2923L55.3772 76.3535L44.3125 82.8315ZM56.5828 84.4849L44.6072 93.4295V93.1313L44.6876 92.5892L44.5804 82.9671L55.2433 76.733L56.6096 83.3194V84.4849H56.5828Z","fill":"#686868"}] -172:["$","path",null,{"d":"M8.76172 98.6074V107.389L20.8981 114.464V105.709L8.76172 98.6074Z","fill":"#ffffff"}] -173:["$","path",null,{"d":"M19.6394 111.942V112.484L9.16406 106.359V105.817L19.6394 111.942ZM9.16406 104.868V105.41L19.6394 111.536V110.994L9.16406 104.868ZM19.6394 112.864L9.16406 106.738V107.145L19.6394 113.271V112.864ZM9.16406 103.946V104.489L19.6394 110.614V110.072L9.16406 103.946ZM9.16406 100.314V100.748L19.6394 106.874V106.44L9.16406 100.314ZM9.16406 102.998V103.54L19.6394 109.666V109.123L9.16406 102.998ZM9.16406 101.128V101.67L19.6394 107.795V107.253L9.16406 101.128ZM9.16406 102.076V102.618L19.6394 108.744V108.202L9.16406 102.076Z","fill":"#686868"}] -174:["$","path",null,{"opacity":"0.4","d":"M20.7109 98.6334L21.2736 100.314L32.8205 93.1582L20.7109 98.6334Z","fill":"#686868"}] -175:["$","path",null,{"d":"M14.6285 94.5132L14.0391 95.5161L22.6926 86.707L14.6285 94.5132Z","fill":"white"}] -176:["$","path",null,{"d":"M21.2727 100.314L20.7101 98.6336L14.6285 94.5137L14.0391 95.5165L21.2727 100.314Z","fill":"#ffffff"}] -177:["$","path",null,{"opacity":"0.2","d":"M22.693 86.707L32.8201 93.158L20.7105 98.6331L14.6289 94.5132L22.693 86.707Z","fill":"#686868"}] -178:["$","path",null,{"d":"M43.5088 114.761L28.6933 120.914L27.8359 121.429V117.2L29.4166 111.183L40.91 104.488L43.4552 108.527L44.3661 114.11L43.5088 114.761Z","fill":"#ffffff"}] -179:["$","path",null,{"d":"M43.5088 114.761L28.6933 120.914L27.8359 121.429V117.2L29.4166 111.183L40.91 104.488L43.4552 108.527L44.3661 114.11L43.5088 114.761Z","fill":"#686868"}] -17a:["$","path",null,{"d":"M47.8196 117.281L43.5062 114.761L42.6221 109.34L40.3984 105.789L44.685 108.31L46.9355 111.861L47.8196 117.281Z","fill":"#ffffff"}] -17b:["$","path",null,{"d":"M44.9531 116.93C44.9531 115.196 44.3369 113.976 43.3724 113.407L40.5058 111.726C39.5413 111.157 38.2017 111.238 36.7014 112.106C33.7276 113.84 31.3164 118.042 31.3164 121.511C31.3164 123.246 31.9326 124.465 32.8971 125.035L35.7637 126.715C36.7282 127.284 38.0946 127.203 39.5681 126.336C42.5419 124.628 44.9531 120.4 44.9531 116.93Z","fill":"#ffffff"}] -17c:["$","path",null,{"d":"M44.9536 116.929C44.9536 113.46 42.5424 112.078 39.5686 113.812C36.5948 115.547 34.1836 119.748 34.1836 123.218C34.1836 126.687 36.5948 128.097 39.5686 126.335C42.5424 124.627 44.9536 120.399 44.9536 116.929Z","fill":"#686868"}] -17d:["$","path",null,{"d":"M42.8903 118.15C42.8903 116.008 41.39 115.141 39.5682 116.225C37.7196 117.309 36.2461 119.911 36.2461 122.053C36.2461 124.194 37.7464 125.061 39.5682 123.977C41.4168 122.893 42.8903 120.291 42.8903 118.15Z","fill":"#EAECF2"}] -17e:["$","path",null,{"d":"M42.2992 118.205C42.2992 116.281 40.9596 115.522 39.3254 116.47C37.6911 117.419 36.3516 119.75 36.3516 121.674C36.3516 123.599 37.6911 124.358 39.3254 123.409C40.9596 122.433 42.2992 120.102 42.2992 118.205Z","fill":"#686868"}] -17f:["$","path",null,{"d":"M42.031 119.072C42.031 117.717 41.0933 117.175 39.9413 117.852C38.7893 118.53 37.8516 120.156 37.8516 121.511C37.8516 122.867 38.7893 123.409 39.9413 122.731C41.0933 122.054 42.031 120.427 42.031 119.072Z","fill":"#EAECF2"}] -19b:T66c,M40.0769 118.882C39.943 118.963 39.8358 118.882 39.8358 118.746C39.8358 118.611 39.943 118.421 40.0769 118.34C40.2109 118.258 40.3181 118.313 40.3181 118.475C40.3181 118.638 40.2109 118.801 40.0769 118.882ZM40.3181 122.026C40.3181 121.89 40.2109 121.809 40.0769 121.89C39.943 121.972 39.8358 122.134 39.8358 122.297C39.8358 122.46 39.943 122.514 40.0769 122.433C40.2109 122.351 40.3181 122.162 40.3181 122.026ZM41.604 119.776C41.738 119.695 41.8451 119.532 41.8451 119.37C41.8451 119.234 41.738 119.153 41.604 119.234C41.4701 119.316 41.3629 119.478 41.3629 119.641C41.3629 119.776 41.4701 119.831 41.604 119.776ZM38.5766 121.538C38.7106 121.457 38.8177 121.294 38.8177 121.132C38.8177 120.996 38.7106 120.915 38.6034 120.996C38.4695 121.077 38.3891 121.24 38.3891 121.403C38.3355 121.565 38.4427 121.619 38.5766 121.538ZM41.3093 118.584C41.3897 118.421 41.3897 118.258 41.3093 118.204C41.229 118.15 41.0682 118.231 40.9878 118.394C40.9075 118.557 40.9075 118.719 40.9878 118.773C41.095 118.828 41.229 118.746 41.3093 118.584ZM39.166 122.351C39.2464 122.189 39.2464 122.026 39.166 121.972C39.0857 121.918 38.9249 121.999 38.8445 122.162C38.7642 122.324 38.7642 122.487 38.8445 122.541C38.9517 122.595 39.0857 122.514 39.166 122.351ZM40.9878 121.294C41.0682 121.348 41.229 121.267 41.3093 121.104C41.3897 120.942 41.3897 120.779 41.3093 120.725C41.229 120.671 41.0682 120.752 40.9878 120.915C40.9075 121.077 40.9075 121.24 40.9878 121.294ZM38.8445 120.047C38.9249 120.102 39.0857 120.02 39.166 119.858C39.2464 119.695 39.2464 119.532 39.166 119.478C39.0857 119.424 38.9249 119.505 38.8445 119.668C38.7642 119.831 38.7642 119.993 38.8445 120.047Z180:["$","path",null,{"d":"$19b","fill":"#686868"}] -181:["$","path",null,{"d":"M41.309 119.993C41.309 119.369 40.8803 119.152 40.3713 119.451C39.8623 119.749 39.4336 120.508 39.4336 121.104C39.4336 121.727 39.8623 121.944 40.3713 121.646C40.9071 121.348 41.309 120.616 41.309 119.993Z","fill":"#ffffff"}] -182:["$","path",null,{"d":"M47.7661 111.048L45.2209 106.982L40.9075 104.488L27.9942 110.343L26.3867 116.387V120.588L32.12 123.949L32.9773 123.434V119.613L36.6477 112.999L44.6851 108.31L46.9355 111.861L47.8196 117.282L48.6502 116.604L47.7661 111.048Z","fill":"white"}] -183:["$","path",null,{"opacity":"0.4","d":"M47.8207 117.282L46.9366 111.861L44.6861 108.311L36.6488 113L32.9784 119.613V123.435L32.1211 123.95V119.722L33.7286 113.704L45.222 106.982L47.7671 111.048L48.6512 116.605L47.8207 117.282Z","fill":"#686868"}] -184:["$","path",null,{"d":"M26.4153 116.387L25.7188 116.712V120.208L32.1218 123.949V119.721L26.4153 116.387Z","fill":"#ffffff"}] -185:["$","path",null,{"opacity":"0.5","d":"M26.4153 116.387L25.7188 116.712V120.208L32.1218 123.949V119.721L26.4153 116.387Z","fill":"#686868"}] -186:["$","path",null,{"opacity":"0.2","d":"M33.7275 113.705L32.12 119.722L26.3867 116.388L27.9942 110.344L33.7275 113.705Z","fill":"#686868"}] -187:["$","path",null,{"opacity":"0.4","d":"M28.6113 111.129L27.3789 115.818L28.6113 115.086V111.129Z","fill":"#686868"}] -188:["$","path",null,{"d":"M28.6113 115.086L27.3789 115.818L31.6655 118.339L32.0138 117.065L28.6113 115.086Z","fill":"white"}] -189:["$","path",null,{"d":"M32.9267 113.65L28.6133 111.129V115.086L32.0158 117.065L32.9267 113.65Z","fill":"#ffffff"}] -18a:["$","path",null,{"d":"M29.6016 111.697V114.516L32.2539 116.061L32.9237 113.649L29.6016 111.697Z","fill":"white"}] -18b:["$","path",null,{"d":"M50.2602 90.747L49.4832 89.446L47.7418 88.416L46.9648 88.8497V93.5659L47.7418 94.894L49.4832 95.924L50.2602 95.4903V90.747Z","fill":"#ffffff"}] -18c:["$","path",null,{"opacity":"0.5","d":"M49.4832 89.446L47.7418 88.416L46.9648 88.8497V93.5659L47.0988 93.7827V89.6628L47.5542 89.3918L48.867 90.1778L49.2957 90.9368V95.138L48.867 95.409L47.6078 94.6772L47.7418 94.894L49.4832 95.924L50.2602 95.4903V90.747L49.4832 89.446Z","fill":"#686868"}] -18d:["$","path",null,{"d":"M45.8383 90.8281L45.0078 91.316V93.4302L47.0975 93.8638V92.2918L46.9636 91.9936L45.8383 90.8281Z","fill":"#ffffff"}] -18e:["$","path",null,{"opacity":"0.5","d":"M45.0078 91.3164L47.0975 92.2922V93.8642L45.0078 93.4306V91.3164Z","fill":"#686868"}] -18f:["$","div",null,{"className":"elementor-element elementor-element-fb01b90 elementor-widget elementor-widget-logico_heading","data-id":"fb01b90","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"Last Mile"}]}]}] -190:["$","div",null,{"className":"elementor-element elementor-element-1057c22 elementor-widget elementor-widget-text-editor","data-id":"1057c22","data-element_type":"widget","data-e-type":"widget","data-widget_type":"text-editor.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","p",null,{"children":"Packages are delivered to customers with real-time updates and proof of delivery."}]}]}] -193:["$","article",null,{"className":"wcd-card","style":{"height":"100%"},"children":[["$","div",null,{"className":"wcd-card-media","children":["$","$L192",null,{"src":"/images/last-mile-approach.jpg","alt":"Hub to Doorstep","fill":true,"sizes":"(max-width: 1020px) 100vw, 33vw"}]}],["$","div",null,{"className":"wcd-card-body","children":[["$","div",null,{"className":"wcd-card-label","children":"03 / Last Mile"}],["$","h3",null,{"className":"wcd-card-title","children":"Hub to Doorstep"}],["$","p",null,{"className":"wcd-card-desc","children":"The final and most complex phase. We optimise multi-stop routes, deliver within precise windows, and capture digital proof of delivery at every door."}],["$","ul",null,{"className":"wcd-card-points","children":[["$","li","Multi-stop route optimisation",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Multi-stop route optimisation"}]]}],["$","li","Precise delivery windows",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Precise delivery windows"}]]}],["$","li","Digital proof of delivery",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Digital proof of delivery"}]]}]]}]]}]]}] -66:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -19c:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -63:null -68:[["$","title","0",{"children":"How It Works – Doormile"}],["$","meta","1",{"name":"description","content":"See how Doormile connects first, mid, and last mile into a seamless delivery experience powered by MileTruth™ AI."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L19c","7",{}]] +0:{"P":null,"c":["","how-it-works"],"q":"","i":false,"f":[[["",{"children":["how-it-works",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"59","className":"elementor elementor-59","children":[["$","$Lc",null,{}],["$","$Ld",null,{}]]}]}]}]}],[["$","script","script-0",{"src":"/_next/static/chunks/0b-q_kb9hrnlj.js","async":true,"nonce":"$undefined"}]],["$","$Le",null,{"children":["$","$f",null,{"name":"Next.MetadataOutlet","children":"$@10"}]}]]}],{},null,false,null]},null,false,"$@11"]},null,false,null],["$","$1","h",{"children":[null,["$","$L12",null,{"children":"$L13"}],["$","div",null,{"hidden":true,"children":["$","$L14",null,{"children":["$","$f",null,{"name":"Next.Metadata","children":"$L15"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$16",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +17:[] +11:"$W17" +13:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] +18:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +10:null +15:[["$","title","0",{"children":"How It Works – Doormile"}],["$","meta","1",{"name":"description","content":"See how Doormile connects first, mid, and last mile into a seamless delivery experience powered by MileTruth™ AI."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L18","7",{}]] diff --git a/build/how-it-works/__next._head.txt b/build/how-it-works/__next._head.txt index ff2fc83..4cf235a 100644 --- a/build/how-it-works/__next._head.txt +++ b/build/how-it-works/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"How It Works – Doormile"}],["$","meta","1",{"name":"description","content":"See how Doormile connects first, mid, and last mile into a seamless delivery experience powered by MileTruth™ AI."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"How It Works – Doormile"}],["$","meta","1",{"name":"description","content":"See how Doormile connects first, mid, and last mile into a seamless delivery experience powered by MileTruth™ AI."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/how-it-works/__next._index.txt b/build/how-it-works/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/how-it-works/__next._index.txt +++ b/build/how-it-works/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/how-it-works/__next._tree.txt b/build/how-it-works/__next._tree.txt index ecfe2ae..76acf9b 100644 --- a/build/how-it-works/__next._tree.txt +++ b/build/how-it-works/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"how-it-works","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"how-it-works","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/how-it-works/__next.how-it-works.__PAGE__.txt b/build/how-it-works/__next.how-it-works.__PAGE__.txt index 20c4d8b..cc29cb5 100644 --- a/build/how-it-works/__next.how-it-works.__PAGE__.txt +++ b/build/how-it-works/__next.how-it-works.__PAGE__.txt @@ -1,763 +1,7 @@ 1:"$Sreact.fragment" -2:I[74528,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0goeli7p09ovo.js"],"default"] -52:I[24911,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0goeli7p09ovo.js"],"default"] -53:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] -54:"$Sreact.suspense" -17e:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0goeli7p09ovo.js"],"ScrollReveal"] -17f:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0goeli7p09ovo.js"],"Image"] -3:T1d85, - /* ===================================================================== - How It Works · "Doormile connects first, mid, and last mile" section - Self-contained recreation of the original Elementor design - (originally Elementor section CSS, now inlined below + in /public/css/site.css). - Explicit flex/grid values because the Elementor framework reads them - from CSS custom properties that aren't set in this rebuild. - ===================================================================== */ - - /* Section shell — dark card fully inset from the edges. The page body is - white, so margins expose a white gutter on all sides and all four - corners are rounded, matching the reference. */ - .elementor-element-c36a604 { - display: flex; - flex-direction: column; - width: auto; - margin: 20px 20px 0 20px; - background-color: #1F1F1F; - border-radius: 25px 25px 0 0; - padding: 90px 0 0 0; - } - /* Boxed inner — centered, original content width */ - .elementor-element-c36a604 > .e-con-inner { - width: 100%; - max-width: 1630px; - margin: 0 auto; - padding: 0; - } - - /* Outer content wrapper — full width, stacks header then grid */ - .elementor-element-77d1265 { - display: flex; - flex-direction: column; - width: 100%; - max-width: 1630px; - margin: 0 auto; - padding: 0 20px; - box-sizing: border-box; - } - - /* Header row + its inner column (eyebrow + heading, top-left) */ - .elementor-element-b147420 { - display: flex; - flex-direction: row; - width: 100%; - } - .elementor-element-5bc90f3 { - display: flex; - flex-direction: column; - align-items: flex-start; - text-align: left; - } - - /* Eyebrow: "/ How It Works /" */ - .elementor-element-176d17f .logico-title { - font-size: 14px; - font-weight: 500; - line-height: 2.1429em; - color: #FFFFFF; - margin: 0; - } - - /* Main heading (h3 kit typography, white) - NOTE: theme-core sets ".logico-front-end h3:not([class*=logico-title-h]) - { color: var(--logico-dark-text-color) }" at specificity (0,2,1), which - renders this

dark. We prefix .logico-front-end - (-> (0,3,0)) to win, and force -webkit-text-fill-color (it had inherited - the dark currentColor). */ - .elementor-element-63a9de5 > .elementor-widget-container { - margin: 18px 0 0 0; - } - .logico-front-end .elementor-element-63a9de5 .logico-title { - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: 60px; - font-weight: 500; - line-height: 1.2em; - letter-spacing: -0.03em; - text-transform: uppercase; - color: #FFFFFF; - -webkit-text-fill-color: #FFFFFF; - opacity: 1; - visibility: visible; - margin: 0; - } - - /* 3-column card grid. - Original column-gap is 120px, but at laptop widths (1280–1500) that - squeezes columns so descriptions wrap to 3 lines. Reduced to 60px so - columns stay wide enough for ~2-line descriptions like the reference, - while keeping the 70px row-gap. */ - .elementor-element-4add972 { - display: grid; - /* Elementor's ".e-con.e-grid" (specificity 0,2,0) sets grid-template-columns - from this CSS var, which OUT-RANKS a plain ".elementor-element-4add972" - (0,1,0) rule — so the responsive breakpoints below MUST drive the var, - not grid-template-columns directly, or the grid never collapses on mobile. */ - --e-con-grid-template-columns: repeat(3, 1fr); - grid-template-columns: repeat(3, 1fr); - grid-auto-flow: row; - gap: 70px 60px; - width: 100%; - margin: 55px 0 0 0; - } - /* Each card stacks: truck / title / description, left-aligned */ - .elementor-element-4add972 > .e-con { - display: flex; - flex-direction: column; - align-items: flex-start; - text-align: left; - } - - /* Truck illustrations — exact original heights + baseline padding */ - .elementor-element-4add972 .elementor-icon-wrapper { - text-align: start; - } - .elementor-element-4add972 .elementor-icon svg { - width: auto; - max-width: 100%; - height: auto; - } - .elementor-element-74687fb > .elementor-widget-container { padding: 22px 0 0 0; } - .elementor-element-74687fb .elementor-icon svg { max-height: 139px; } - .elementor-element-fd9c57e .elementor-icon svg { max-height: 158px; } - .elementor-element-fbb1628 > .elementor-widget-container { padding: 25px 0 0 0; } - .elementor-element-fbb1628 .elementor-icon svg { max-height: 128px; } - - /* Card titles (First / Mid / Last Mile) */ - .elementor-element-d310968 > .elementor-widget-container, - .elementor-element-c582715 > .elementor-widget-container, - .elementor-element-fb01b90 > .elementor-widget-container { - margin: 25px 0 20px 0; - } - .elementor-element-d310968 .logico-title, - .elementor-element-c582715 .logico-title, - .elementor-element-fb01b90 .logico-title { - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: 20px; - font-weight: 700; - line-height: 24px; - letter-spacing: -0.03em; - color: #FFFFFF; - margin: 0; - } - - /* Card descriptions */ - .elementor-element-9989187 p, - .elementor-element-3ae1ce0 p, - .elementor-element-1057c22 p { - font-size: 18px; - font-weight: 400; - line-height: 1.6667em; - color: #FFFFFF; - margin: 0; - } - - /* ---- Responsive (grid breakpoints mirror the original section-miles3 - cascade: 3-col@120gap >1200, 3-col@40gap ≤1200, 2-col ≤1020, 1-col - ≤480). The ≤1200 step is what keeps columns wide enough at laptop - widths so descriptions stay ~2 lines and trucks stay proportionate. */ - @media (max-width: 1200px) { - .elementor-element-4add972 { gap: 70px 40px; } - .logico-front-end .elementor-element-63a9de5 .logico-title { font-size: clamp(40px, 5vw, 60px); } - } - @media (max-width: 1020px) { - .elementor-element-c36a604 { margin: 15px 15px 0 15px; padding: 76px 0 60px 0; } - .elementor-element-77d1265 { padding: 0 30px; } - .elementor-element-4add972 { --e-con-grid-template-columns: repeat(2, 1fr); grid-template-columns: repeat(2, 1fr); gap: 50px 40px; } - .logico-front-end .elementor-element-63a9de5 .logico-title { font-size: clamp(34px, 6vw, 52px); } - } - @media (max-width: 480px) { - .elementor-element-c36a604 { margin: 12px 12px 0 12px; border-radius: 20px 20px 0 0; padding: 70px 0 50px 0; } - .elementor-element-77d1265 { padding: 0 22px; } - .elementor-element-4add972 { --e-con-grid-template-columns: 1fr; grid-template-columns: 1fr; gap: 56px; } - .logico-front-end .elementor-element-63a9de5 .logico-title { font-size: clamp(30px, 9vw, 44px); } - } - 0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"59","className":"elementor elementor-59","children":[["$","$L2",null,{}],[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$3"}}],"$L4"],"$L5","$L6"]}]}]}]}],["$L7"],"$L8"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} -4:["$","div",null,{"className":"elementor-element elementor-element-c36a604 e-flex e-con-boxed cut-corner-no sticky-container-off e-con e-child","data-id":"c36a604","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"e-con-inner","children":["$","div",null,{"className":"elementor-element elementor-element-77d1265 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"77d1265","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-b147420 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"b147420","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-5bc90f3 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"5bc90f3","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-176d17f elementor-widget elementor-widget-logico_heading","data-id":"176d17f","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"/ How It Works /"}]}]}],["$","div",null,{"className":"elementor-element elementor-element-63a9de5 elementor-widget elementor-widget-logico_heading","data-id":"63a9de5","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","h3",null,{"className":"logico-title","children":"Doormile connects first, mid, and last mile into a seamless delivery experience"}]}]}]]}]}],["$","div",null,{"className":"elementor-element elementor-element-4add972 e-con-full e-grid cut-corner-no sticky-container-off e-con e-child","data-id":"4add972","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-e1670a9 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"e1670a9","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-74687fb elementor-view-default elementor-widget elementor-widget-icon","data-id":"74687fb","data-element_type":"widget","data-e-type":"widget","data-widget_type":"icon.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"elementor-icon-wrapper","children":["$","div",null,{"className":"elementor-icon","children":["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","width":"138","height":"139","viewBox":"0 0 138 139","fill":"none","children":[["$","g",null,{"clipPath":"url(#clip0_1_97412)","children":[["$","g",null,{"clipPath":"url(#clip1_1_97412)","children":[["$","path",null,{"d":"M106 57L137.999 75.4121V77.6922L137.084 78.2052L105.113 59.8217V57.513L106 57Z","fill":"#ffffff"}],["$","path",null,{"d":"M137.084 75.9257L137.999 75.4127V77.6928L137.084 78.2059L105.113 59.8223V57.5137L137.084 75.9257Z","fill":"#686868"}],["$","path",null,{"d":"M121.413 80.4003L107.258 86.1862L106.457 86.6422V82.6805L107.973 77.0371L118.925 70.7383L121.356 74.529L122.214 79.7733L121.413 80.4003Z","fill":"#ffffff"}],["$","path",null,{"d":"M121.413 80.4003L107.258 86.1862L106.457 86.6422V82.6805L107.973 77.0371L118.925 70.7383L121.356 74.529L122.214 79.7733L121.413 80.4003Z","fill":"#686868"}],["$","path",null,{"d":"M125.505 82.765L121.415 80.3994L120.586 75.2976L118.441 71.9629L122.559 74.3285L124.675 77.6632L125.505 82.765Z","fill":"#ffffff"}],["$","path",null,{"d":"M122.789 82.4522C122.789 80.8276 122.217 79.6875 121.273 79.146L118.528 77.5784C117.613 77.0369 116.326 77.1224 114.896 77.9489C112.065 79.5735 109.777 83.5353 109.777 86.7844C109.777 88.409 110.349 89.5491 111.293 90.0906L114.01 91.6582C114.953 92.1998 116.211 92.1142 117.641 91.2877C120.501 89.6631 122.789 85.7014 122.789 82.4522Z","fill":"#ffffff"}],"$L9","$La","$Lb","$Lc","$Ld","$Le","$Lf","$L10","$L11","$L12","$L13"]}],"$L14","$L15","$L16","$L17","$L18","$L19","$L1a","$L1b","$L1c","$L1d","$L1e","$L1f","$L20","$L21","$L22","$L23","$L24","$L25","$L26","$L27","$L28","$L29","$L2a","$L2b","$L2c","$L2d","$L2e","$L2f","$L30","$L31","$L32","$L33","$L34","$L35","$L36","$L37","$L38","$L39","$L3a","$L3b","$L3c","$L3d","$L3e","$L3f","$L40","$L41","$L42","$L43","$L44","$L45","$L46","$L47","$L48","$L49","$L4a"]}],"$L4b"]}]}]}]}]}],"$L4c","$L4d"]}],"$L4e","$L4f"]}]]}]}]}] -50:T1e53, - /* ===================================================================== - "Why Businesses Choose Doormile" — First / Mid / Last Mile stage cards. - Dark rounded card on the white page (consistent with the Miles3 - section), each stage shown with a photo, numbered red label, title, - description and a red-checkmark feature list. - Card titles are

; theme-core forces a dark color on bare headings - (.logico-front-end h3:not([class*=logico-title-h]) @ (0,2,1)), so the - white title rule is prefixed to outrank it. - ===================================================================== */ - .wcd-section { - display: flex; - flex-direction: column; - width: auto; - margin: -250px 20px 20px 20px; /* Snug pull-up overlap to touch Miles3 columns without covering their text! */ - background-color: #1F1F1F; - border-radius: 0 0 25px 25px; - padding: 50px 0 110px; - } - .wcd-inner { - width: 100%; - max-width: 1630px; - margin: 0 auto; - padding: 0 50px; - box-sizing: border-box; - } - /* Centered header block (eyebrow + heading) with a faint map backdrop */ - .wcd-head { - position: relative; - text-align: center; - margin: 0 0 70px; - } - @keyframes wcd-float { - 0% { transform: translateX(-50%) translateY(0px) scale(1); } - 50% { transform: translateX(-50%) translateY(-12px) scale(1.02); } - 100% { transform: translateX(-50%) translateY(0px) scale(1); } - } - .wcd-head::after { - content: ""; - position: absolute; - left: 50%; - top: 75%; /* Shifted down to the bottom of the header block to overlap the top of the cards */ - transform: translateX(-50%); - width: min(1180px, 95%); - aspect-ratio: 2 / 1; - background: url('/images/bg-map.png') center / contain no-repeat; - opacity: 0.06; /* Elegant faint visibility */ - filter: invert(1); /* Invert dark map dots to white/light-gray to make them visible on the #1F1F1F background */ - z-index: 0; - pointer-events: none; - animation: wcd-float 20s ease-in-out infinite; /* Premium floating map animation */ - } - .wcd-card-wrapper { - display: flex; - flex-direction: column; - height: 100%; - } - .wcd-eyebrow { - position: relative; - z-index: 1; - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: 14px; - font-weight: 500; - line-height: 2.1429em; - letter-spacing: 0.5px; - color: #FFFFFF; - margin: 0 0 18px; - } - .logico-front-end .wcd-section h2.wcd-heading { - position: relative; - z-index: 1; - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: clamp(34px, 4.4vw, 60px); - font-weight: 500; - line-height: 1.08; - letter-spacing: -0.03em; - text-transform: uppercase; - color: #FFFFFF; - -webkit-text-fill-color: #FFFFFF; - max-width: 1180px; - margin: 0 auto; - } - - .wcd-grid { - display: grid; - grid-template-columns: repeat(3, 1fr); - gap: 30px; - width: 100%; - } - - .wcd-card { - display: flex; - flex-direction: column; - background: rgba(255, 255, 255, 0.02); - border: 1px solid rgba(255, 255, 255, 0.08); - border-radius: 20px; - overflow: hidden; - transition: border-color 0.4s ease, box-shadow 0.4s ease, transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1); - } - .wcd-card:hover { - border-color: #c01227 !important; - box-shadow: 0 10px 30px rgba(192, 18, 39, 0.25) !important; - transform: translateY(-8px); - } - .wcd-card-media { - position: relative; - width: 100%; - aspect-ratio: 16 / 10; - overflow: hidden; - } - .wcd-card-media img { - object-fit: cover; - transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1); - } - .wcd-card:hover .wcd-card-media img { - transform: scale(1.06); - } - .wcd-card-body { - display: flex; - flex-direction: column; - flex: 1; - padding: 40px; - } - .wcd-card-label { - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: 14px; - font-weight: 700; - letter-spacing: 1px; - text-transform: uppercase; - color: #c01227; - margin: 0 0 20px; - } - .logico-front-end .wcd-section h3.wcd-card-title { - font-family: var(--font-manrope), "Manrope", sans-serif; - font-size: 32px; - font-weight: 700; - line-height: 1.1; - letter-spacing: -0.02em; - text-transform: uppercase; - color: #FFFFFF; - -webkit-text-fill-color: #FFFFFF; - margin: 0 0 22px; - } - .wcd-card-desc { - font-size: 17px; - font-weight: 400; - line-height: 1.6; - color: rgba(255, 255, 255, 0.6); - margin: 0 0 34px; - } - .wcd-card-points { - list-style: none; - margin: auto 0 0; - padding: 0; - display: flex; - flex-direction: column; - gap: 16px; - } - .wcd-section .wcd-card-points li { - /* Flex row so the check icon and its label always sit on the same line. - Scoped with .wcd-section to outrank the global ".logico-front-end ul li" - theme rule, which adds 1.7em padding + a fontello bullet icon. */ - display: flex; - align-items: flex-start; - gap: 12px; - padding-left: 0; - font-size: 16px; - font-weight: 700; - line-height: 1.3; - color: #FFFFFF; - } - /* Suppress the theme's default fontello list bullet - (.logico-front-end ul li:before) so only our circle-check SVG renders. */ - .wcd-section .wcd-card-points li::before { - content: none; - display: none; - } - /* Clean circle-check feature icon (inline SVG, see markup below) — replaces - the old border-based chevron. Brand red with thin, rounded strokes. */ - .wcd-card-points .wcd-check { - flex: 0 0 auto; - width: 18px; - height: 18px; - margin-top: 0.12em; - color: #c01227; - transition: transform 0.3s ease; - } - .wcd-card:hover .wcd-card-points .wcd-check { - transform: scale(1.1); - } - - @media (max-width: 1020px) { - /* No pull-up overlap on mobile/tablet: the Miles3 cards stack into a - 1–2 col layout, so a negative margin-top covers the last card's - text. Both sections share #1F1F1F + equal side margins, so butting - them at margin-top:0 keeps the seamless dark panel. */ - .wcd-section { margin: 0 15px 15px 15px; padding: 40px 0 80px; } - .wcd-inner { padding: 0 30px; } - .wcd-grid { grid-template-columns: 1fr; gap: 24px; } - .wcd-card-body { padding: 32px; } - .logico-front-end .wcd-section h3.wcd-card-title { font-size: 28px; } - } - @media (max-width: 480px) { - .wcd-section { margin: 0 12px 12px 12px; border-radius: 0 0 20px 20px; padding: 30px 0 64px; } - .wcd-inner { padding: 0 20px; } - .wcd-card-body { padding: 24px; } - } - 5:[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$50"}}],"$L51"] -6:["$","$L52",null,{}] -7:["$","script","script-0",{"src":"/_next/static/chunks/0goeli7p09ovo.js","async":true}] -8:["$","$L53",null,{"children":["$","$54",null,{"name":"Next.MetadataOutlet","children":"$@55"}]}] -9:["$","path",null,{"d":"M122.788 82.453C122.788 79.2039 120.501 77.8928 117.669 79.5174C114.838 81.142 112.551 85.1037 112.551 88.3529C112.551 91.6021 114.838 92.9131 117.669 91.2886C120.501 89.664 122.788 85.7022 122.788 82.453Z","fill":"#686868"}] -a:["$","path",null,{"d":"M120.844 83.5634C120.844 81.5398 119.415 80.7417 117.67 81.7393C115.897 82.7654 114.496 85.2165 114.496 87.2116C114.496 89.2352 115.926 90.0333 117.67 89.0357C119.415 88.0382 120.844 85.587 120.844 83.5634Z","fill":"#EAECF2"}] -b:["$","path",null,{"d":"M120.244 83.6203C120.244 81.8247 118.986 81.1121 117.413 81.9957C115.84 82.8792 114.582 85.0739 114.582 86.8695C114.582 88.6651 115.84 89.4061 117.413 88.4941C118.986 87.6105 120.244 85.4159 120.244 83.6203Z","fill":"#686868"}] -c:["$","path",null,{"d":"M120.015 84.4467C120.015 83.1927 119.129 82.6796 118.013 83.3067C116.898 83.9337 116.012 85.4728 116.012 86.7554C116.012 88.0379 116.898 88.5225 118.013 87.8954C119.129 87.2399 120.015 85.7008 120.015 84.4467Z","fill":"#EAECF2"}] -56:T67b,M118.156 84.2757C118.042 84.3328 117.927 84.2758 117.927 84.1617C117.927 84.0192 118.013 83.8482 118.156 83.7912C118.27 83.7057 118.385 83.7627 118.385 83.9052C118.356 84.0192 118.27 84.1902 118.156 84.2757ZM118.356 87.2114C118.356 87.0689 118.242 87.0119 118.127 87.0974C118.013 87.1544 117.899 87.3254 117.899 87.4679C117.899 87.6104 117.984 87.6674 118.127 87.5819C118.27 87.5249 118.356 87.3539 118.356 87.2114ZM119.586 85.1023C119.7 85.0453 119.815 84.8743 119.815 84.7318C119.815 84.5893 119.729 84.5323 119.586 84.5893C119.471 84.6463 119.357 84.8173 119.357 84.9598C119.386 85.1023 119.471 85.1593 119.586 85.1023ZM116.698 86.7554C116.812 86.6984 116.926 86.5274 116.926 86.3849C116.926 86.2424 116.841 86.1854 116.698 86.2709C116.583 86.3279 116.469 86.4989 116.469 86.6414C116.469 86.7839 116.583 86.8409 116.698 86.7554ZM119.328 83.9907C119.414 83.8482 119.414 83.6772 119.328 83.6487C119.243 83.5917 119.1 83.6772 119.014 83.8197C118.928 83.9622 118.928 84.1332 119.014 84.1617C119.1 84.2187 119.243 84.1332 119.328 83.9907ZM117.269 87.5249C117.355 87.3824 117.355 87.2114 117.269 87.1829C117.184 87.1259 117.041 87.2114 116.955 87.3539C116.869 87.4964 116.869 87.6674 116.955 87.6959C117.069 87.7529 117.184 87.6674 117.269 87.5249ZM119.014 86.5274C119.1 86.5844 119.243 86.4989 119.328 86.3564C119.414 86.2139 119.414 86.0429 119.328 85.9858C119.243 85.9288 119.1 86.0144 119.014 86.1569C118.928 86.3279 118.928 86.4704 119.014 86.5274ZM116.983 85.3588C117.069 85.4158 117.212 85.3303 117.298 85.1878C117.384 85.0453 117.384 84.8743 117.298 84.8458C117.212 84.7888 117.069 84.8743 116.983 85.0168C116.898 85.1593 116.898 85.3018 116.983 85.3588Zd:["$","path",null,{"d":"$56","fill":"#686868"}] -e:["$","path",null,{"d":"M119.329 85.3017C119.329 84.7317 118.929 84.5037 118.414 84.7887C117.928 85.0737 117.527 85.7578 117.527 86.3563C117.527 86.9263 117.928 87.1544 118.414 86.8693C118.929 86.5843 119.329 85.9003 119.329 85.3017Z","fill":"#ffffff"}] -f:["$","path",null,{"d":"M125.475 76.8946L123.044 73.1039L118.926 70.7383L106.602 76.2391L105.086 81.9109V85.8726L110.548 89.0078L111.377 88.5518V84.9606L114.866 78.7472L122.558 74.3295L124.674 77.6642L125.504 82.766L126.333 82.1389L125.475 76.8946Z","fill":"#ffffff"}] -10:["$","path",null,{"d":"M125.503 82.7656L124.673 77.6638L122.557 74.3291L114.865 78.7468L111.376 84.9602V88.5514L110.547 89.0074V85.0457L112.091 79.4024L123.043 73.1035L125.474 76.8942L126.332 82.1385L125.503 82.7656Z","fill":"#686868"}] -11:["$","path",null,{"d":"M105.114 81.9102L105 85.8149L110.548 89.0071V85.0453L105.114 81.9102Z","fill":"#ffffff"}] -12:["$","path",null,{"opacity":"0.5","d":"M105.114 81.9102L105 85.8149L110.548 89.0071V85.0453L105.114 81.9102Z","fill":"#686868"}] -13:["$","path",null,{"opacity":"0.5","d":"M112.092 79.402L110.548 85.0453L105.086 81.9101L106.602 76.2383L112.092 79.402Z","fill":"#686868"}] -14:["$","path",null,{"d":"M99.3148 0L31.0938 39.4392V86.7464L69.7788 109.089L138 69.6494V22.3754L99.3148 0Z","fill":"white"}] -15:["$","path",null,{"opacity":"0.4","d":"M137.998 22.375V69.6489L69.7773 109.088V61.8142L137.998 22.375Z","fill":"#686868"}] -16:["$","path",null,{"opacity":"0.2","d":"M31.0938 39.4395L69.7788 61.8149V109.089L31.0938 86.7466V39.4395Z","fill":"#686868"}] -17:["$","path",null,{"opacity":"0.5","d":"M37.0273 63.8398V90.1659L63.8782 105.669L61.9555 78.2478L37.0273 63.8398Z","fill":"#686868"}] -18:["$","path",null,{"d":"M7.52344 83.0273L8.45161 82.4961L10.6063 83.7576L11.5676 85.3843V91.1608L10.6063 91.6919L8.45161 90.4304L7.52344 88.8037V83.0273Z","fill":"#ffffff"}] -19:["$","path",null,{"opacity":"0.5","d":"M10.6063 83.7576L8.45161 82.4961L7.52344 83.0273V88.8037L7.65603 89.0693V84.0232L8.21957 83.7244L9.84388 84.654L10.3743 85.6167V90.7624L9.84388 91.0612L8.28587 90.1648L8.45161 90.4304L10.6063 91.6919L11.5676 91.1608V85.3843L10.6063 83.7576Z","fill":"#686868"}] -1a:["$","path",null,{"d":"M11.5684 89.2343L10.375 88.8359V90.7614L13.9883 93.8156L15.0159 93.2181V90.6286L11.5684 89.2343Z","fill":"#ffffff"}] -1b:["$","path",null,{"opacity":"0.5","d":"M13.9883 91.193L10.375 88.8359V90.7614L13.9883 93.8156V91.193Z","fill":"#686868"}] -1c:["$","path",null,{"d":"M15.0159 93.2183L13.9883 93.8159V91.1933L15.0159 90.6289V93.2183Z","fill":"#686868"}] -1d:["$","path",null,{"d":"M36.857 108.69L32.3984 116.424L45.3167 123.893L49.7752 116.16L36.857 108.69Z","fill":"#ffffff"}] -1e:["$","path",null,{"d":"M36.857 108.69L32.3984 116.424L45.3167 123.893L49.7752 116.16L36.857 108.69Z","fill":"#686868"}] -1f:["$","path",null,{"d":"M44.1534 123.829C44.1534 121.937 43.4904 120.642 42.4296 120.011L39.2805 118.185C38.2197 117.588 36.728 117.654 35.1037 118.617C31.8551 120.509 29.2031 125.09 29.2031 128.842C29.2031 130.734 29.8661 132.062 30.9269 132.659L34.0761 134.452C35.1368 135.083 36.6285 134.983 38.2529 134.054C41.5015 132.161 44.1534 127.58 44.1534 123.829Z","fill":"#ffffff"}] -20:["$","path",null,{"d":"M44.1527 123.828C44.1527 120.076 41.5007 118.549 38.2521 120.442C35.0035 122.334 32.3516 126.915 32.3516 130.667C32.3516 134.418 35.0035 135.945 38.2521 134.053C41.5007 132.161 44.1527 127.579 44.1527 123.828Z","fill":"#686868"}] -21:["$","path",null,{"d":"M41.8983 125.124C41.8983 122.8 40.274 121.837 38.2519 123.032C36.2298 124.194 34.6055 127.016 34.6055 129.34C34.6055 131.664 36.2298 132.627 38.2519 131.431C40.274 130.303 41.8983 127.448 41.8983 125.124Z","fill":"#EAECF2"}] -22:["$","path",null,{"d":"M41.2355 125.191C41.2355 123.099 39.777 122.269 37.9869 123.331C36.1968 124.361 34.7383 126.917 34.7383 128.975C34.7383 131.067 36.1968 131.897 37.9869 130.867C39.777 129.805 41.2355 127.282 41.2355 125.191Z","fill":"#686868"}] -23:["$","path",null,{"d":"M40.9379 126.153C40.9379 124.693 39.9102 124.095 38.6506 124.825C37.3909 125.556 36.3633 127.348 36.3633 128.809C36.3633 130.27 37.3909 130.867 38.6506 130.137C39.9102 129.407 40.9379 127.614 40.9379 126.153Z","fill":"#EAECF2"}] -57:T66e,M38.8152 125.954C38.6826 126.021 38.55 125.954 38.55 125.821C38.55 125.655 38.6494 125.456 38.8152 125.39C38.9478 125.324 39.0804 125.39 39.0804 125.523C39.0472 125.655 38.9478 125.855 38.8152 125.954ZM39.0472 129.34C39.0472 129.174 38.9478 129.108 38.782 129.208C38.6494 129.274 38.5168 129.473 38.5168 129.639C38.5168 129.805 38.6163 129.872 38.782 129.772C38.9478 129.706 39.0472 129.506 39.0472 129.34ZM40.4726 126.884C40.6052 126.817 40.7378 126.618 40.7378 126.452C40.7378 126.286 40.6384 126.22 40.4726 126.319C40.34 126.386 40.2074 126.585 40.2074 126.751C40.2074 126.917 40.34 126.983 40.4726 126.884ZM37.1246 128.809C37.2572 128.743 37.3566 128.544 37.3898 128.378C37.3898 128.212 37.2903 128.145 37.1246 128.245C36.992 128.311 36.8594 128.511 36.8594 128.677C36.8925 128.843 36.992 128.909 37.1246 128.809ZM40.1411 125.622C40.2406 125.456 40.2406 125.257 40.1411 125.224C40.0417 125.158 39.876 125.257 39.7765 125.423C39.6771 125.589 39.6771 125.788 39.7765 125.821C39.9091 125.888 40.0748 125.788 40.1411 125.622ZM37.8207 129.706C37.9201 129.54 37.9201 129.34 37.8207 129.307C37.7213 129.241 37.5555 129.34 37.4561 129.506C37.3566 129.672 37.3566 129.838 37.4561 129.905C37.5555 129.971 37.7213 129.872 37.8207 129.706ZM39.8097 128.544C39.9091 128.61 40.0748 128.511 40.1743 128.345C40.2737 128.179 40.2737 127.979 40.1743 127.946C40.0748 127.88 39.9091 127.979 39.8097 128.145C39.7102 128.311 39.7102 128.511 39.8097 128.544ZM37.4561 127.216C37.5555 127.282 37.7213 127.183 37.8207 127.017C37.9201 126.851 37.9201 126.651 37.8207 126.618C37.7213 126.552 37.5555 126.651 37.4561 126.817C37.3566 126.95 37.3566 127.149 37.4561 127.216Z24:["$","path",null,{"d":"$57","fill":"#686868"}] -25:["$","path",null,{"d":"M40.1412 127.149C40.1412 126.485 39.6771 126.219 39.1136 126.551C38.55 126.883 38.0859 127.68 38.0859 128.344C38.0859 129.008 38.55 129.273 39.1136 128.941C39.6771 128.609 40.1412 127.813 40.1412 127.149Z","fill":"#ffffff"}] -26:["$","path",null,{"d":"M4.47514 103.346L0.39779 107.064L0 111.38L0.39779 110.948V118.185L2.45304 115.629L3.18232 109.653L5.96685 104.474L4.47514 103.346Z","fill":"#ffffff"}] -27:["$","path",null,{"d":"M61.3266 114.632V103.544L60.8293 98.0666L58.7078 74.3632L35.9343 61.1836L32.6194 63.1091L28.9067 66.8936L5.76854 98.1993L1.55859 109.088V120.21L24.2658 133.323L31.0282 132.161L31.7575 126.185L34.542 121.006L41.4039 117.056L44.7188 119.247L45.3155 123.895L61.3266 114.632Z","fill":"white"}] -28:["$","path",null,{"opacity":"0.4","d":"M9.81274 103.909L5.76854 98.1992L1.55859 109.088L24.2658 120.774L33.1829 114.035L25.426 112.939L9.81274 103.909Z","fill":"#686868"}] -29:["$","path",null,{"opacity":"0.4","d":"M61.3264 114.632V103.544L60.8292 98.0666L58.7076 74.3632L57.8457 73.8652L54.564 75.7907L50.8181 79.5753L33.1828 114.035L24.2656 120.774V133.323L31.0281 132.161L31.7573 126.185L34.5419 121.006L41.4037 117.056L44.7187 119.247L45.3153 123.895L61.3264 114.632Z","fill":"#686868"}] -2a:["$","path",null,{"opacity":"0.2","d":"M61.3264 114.632V103.544L60.8292 98.0664L33.1828 114.035L24.2656 120.774V133.323L31.0281 132.161L31.7573 126.185L34.5419 121.006L41.4037 117.056L44.7187 119.247L45.3153 123.894L61.3264 114.632Z","fill":"#686868"}] -2b:["$","path",null,{"d":"M61.3265 114.632V109.619L44.7188 119.247L45.3154 123.894L61.3265 114.632Z","fill":"#ffffff"}] -2c:["$","path",null,{"d":"M61.3265 114.632V109.619L44.7188 119.247L45.3154 123.894L61.3265 114.632Z","fill":"#686868"}] -2d:["$","path",null,{"opacity":"0.1","d":"M50.8179 79.5756L54.5637 75.791L32.619 63.1094L28.9062 66.8939L50.8179 79.5756Z","fill":"#686868"}] -2e:["$","path",null,{"opacity":"0.2","d":"M33.1839 114.036L50.8193 79.5762L28.9077 66.8945L5.76953 98.2002L9.81373 103.91L25.427 112.94L33.1839 114.036Z","fill":"#686868"}] -2f:["$","path",null,{"opacity":"0.4","d":"M24.2658 133.322V120.774L1.55859 109.088V120.209L24.2658 133.322Z","fill":"#686868"}] -30:["$","path",null,{"d":"M39.3164 110.483V107.097L47.4711 90.9291L54.333 86.9785L54.0678 98.133L51.6479 101.851L39.3164 110.483Z","fill":"#ffffff"}] -31:["$","path",null,{"opacity":"0.4","d":"M46.079 122.301L45.5818 118.284L41.8359 115.794L38.2227 117.886V107.129L46.974 89.966H47.0072L55.5597 85.0195L56.3553 100.722L54.068 117.686L46.079 122.301ZM41.8359 115.528L45.7807 118.151L46.2779 121.936L53.9354 117.52L56.2227 100.689L55.4271 85.3847L47.2061 90.132L38.4547 107.196V117.487L41.8359 115.528Z","fill":"#686868"}] -32:["$","path",null,{"d":"M26.6192 134.684L24.2656 133.323V122.234L26.6192 123.595V134.684Z","fill":"#686868"}] -33:["$","path",null,{"d":"M33.4475 121.006L32.2541 120.309L24.2652 122.234L20.1215 119.844L18.5635 122.101V123.463L5.73481 116.026V111.511L1.55801 109.088L0 111.379V121.106L22.7072 134.252L26.6188 134.684L31.4254 133.289L32.1547 127.314L34.9392 122.135L33.4475 121.006Z","fill":"#ffffff"}] -34:["$","path",null,{"d":"M5.73379 111.512V116.027L4.17578 118.284V113.769L5.73379 111.512Z","fill":"#686868"}] -35:["$","path",null,{"opacity":"0.5","d":"M22.7072 134.252L0 121.106V111.379L4.1768 113.769V118.284L18.5635 126.617V122.102L22.7072 124.492V134.252Z","fill":"#686868"}] -36:["$","path",null,{"d":"M26.6172 123.595V134.683L31.4238 133.289L32.1531 127.313L34.9376 122.135L33.4459 121.006L26.6172 123.595Z","fill":"#686868"}] -37:["$","path",null,{"opacity":"0.7","d":"M26.6186 123.596V134.684L22.707 134.252V124.492L26.6186 123.596Z","fill":"#686868"}] -38:["$","path",null,{"d":"M35.9686 108.591L44.8194 91.3612L39.4492 89.6681L25.0956 81.3354L20.9851 77.6172L9.44922 93.2534L13.1951 98.5319L29.3719 107.894L35.9686 108.591Z","fill":"#ffffff"}] -39:["$","path",null,{"d":"M39.6473 89.7012L37.7578 102.549L38.7523 103.146L44.8186 91.3611L39.6473 89.7012Z","fill":"#686868"}] -3a:["$","path",null,{"d":"M12.8637 93.9839L24.2338 86.0164L26.6537 82.265L25.0957 81.3355L21.6813 78.2148L11.9023 91.2617V93.7847L12.8637 93.9839Z","fill":"#686868"}] -3b:["$","path",null,{"opacity":"0.5","d":"M31.8912 103.909L15.7476 94.5799L9.44922 93.252L13.1951 98.5304L29.3719 107.892L35.9686 108.589L38.0238 104.572L31.8912 103.909Z","fill":"#686868"}] -3c:["$","path",null,{"d":"M49.0626 90.0332L47.4715 90.9295L40.7422 104.275L44.8195 106.632L48.5985 103.976L50.5212 90.8963L49.0626 90.0332Z","fill":"#686868"}] -3d:["$","path",null,{"d":"M39.3164 107.097V110.483L51.6479 101.851L54.0678 98.133L54.333 86.9785L47.4711 90.9291L39.3164 107.097ZM53.6369 88.1736L53.4048 97.9339L51.1507 101.386L41.6037 108.059L40.775 105.669L47.9683 91.427L53.6369 88.1736Z","fill":"#686868"}] -3e:["$","path",null,{"d":"M33.6807 99.8585L35.5371 87.376L25.3271 81.4668L23.5039 93.9824L33.6807 99.8585Z","fill":"#686868"}] -3f:["$","path",null,{"d":"M39.4472 89.6681L25.0605 81.3686L20.9831 77.6172L9.41406 93.2534L13.1931 98.5319L29.3699 107.894L35.9665 108.591L44.7842 91.3612L39.4472 89.6681ZM35.5688 107.861L29.5688 107.197L13.6572 98.0008L10.2759 93.2534L21.1157 78.6131L24.6958 81.8997L39.1489 90.2656L43.8561 91.7927L35.5688 107.861Z","fill":"#686868"}] -40:["$","path",null,{"d":"M26.0879 114.068L20.1211 119.845L24.2647 122.235L29.204 118.948L32.7841 115.994L33.1819 114.035L26.0879 114.068Z","fill":"white"}] -41:["$","path",null,{"opacity":"0.2","d":"M32.785 115.994L33.1828 114.035L24.2656 122.235L29.2049 118.948L32.785 115.994Z","fill":"#686868"}] -42:["$","path",null,{"d":"M5.76854 98.1992L8.38732 103.843L5.73539 111.512L1.55859 109.088L5.76854 98.1992Z","fill":"white"}] -43:["$","path",null,{"d":"M7.69141 111.179V115.694L18.1665 121.736V117.221L19.6251 115.661L8.88478 109.453L7.69141 111.179Z","fill":"#ffffff"}] -44:["$","path",null,{"opacity":"0.5","d":"M7.69141 111.18V115.695L18.1665 121.737V117.222L7.69141 111.18Z","fill":"#686868"}] -45:["$","path",null,{"d":"M52.6406 108.259L54.1323 107.396V103.445L52.6406 104.275V108.259Z","fill":"#ffffff"}] -46:["$","path",null,{"d":"M53.9007 105.105L52.9062 105.703V104.873L53.9007 104.275V105.105Z","fill":"#686868"}] -47:["$","path",null,{"d":"M47.0051 105.869L46.077 104.242L43.8891 102.98L42.9609 103.545V109.321L43.8891 110.948L46.077 112.176L47.0051 111.645V105.869Z","fill":"#ffffff"}] -48:["$","path",null,{"opacity":"0.5","d":"M46.077 104.242L43.8891 102.98L42.9609 103.545V109.321L43.1267 109.587V104.541L43.6571 104.209L45.2814 105.138L45.8449 106.101V111.247L45.2814 111.546L43.7565 110.682L43.8891 110.948L46.077 112.176L47.0051 111.645V105.869L46.077 104.242Z","fill":"#686868"}] -49:["$","path",null,{"d":"M41.5374 105.969L40.543 106.533V109.156L43.1286 109.654V107.761L42.9629 107.396L41.5374 105.969Z","fill":"#ffffff"}] -4a:["$","path",null,{"opacity":"0.5","d":"M40.543 106.533L43.1286 107.762V109.654L40.543 109.156V106.533Z","fill":"#686868"}] -4b:["$","defs",null,{"children":[["$","clipPath",null,{"id":"clip0_1_97412","children":["$","rect",null,{"width":"138","height":"139","fill":"white"}]}],["$","clipPath",null,{"id":"clip1_1_97412","children":["$","rect",null,{"width":"33","height":"35","fill":"white","transform":"translate(105 57)"}]}]]}] -4c:["$","div",null,{"className":"elementor-element elementor-element-d310968 elementor-widget elementor-widget-logico_heading","data-id":"d310968","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"First Mile"}]}]}] -4d:["$","div",null,{"className":"elementor-element elementor-element-9989187 elementor-widget elementor-widget-text-editor","data-id":"9989187","data-element_type":"widget","data-e-type":"widget","data-widget_type":"text-editor.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","p",null,{"children":"Orders are picked up from warehouses with live tracking and quality checks."}]}]}] -4e:["$","div",null,{"className":"elementor-element elementor-element-97a7e5b e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"97a7e5b","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-fd9c57e elementor-view-default elementor-widget elementor-widget-icon","data-id":"fd9c57e","data-element_type":"widget","data-e-type":"widget","data-widget_type":"icon.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"elementor-icon-wrapper","children":["$","div",null,{"className":"elementor-icon","children":["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","width":"180","height":"158","viewBox":"0 0 180 158","fill":"none","children":[["$","path",null,{"d":"M75.5135 92.6543L103.649 108.891V110.918L102.865 111.378L74.707 95.1416V93.1149L75.5135 92.6543Z","fill":"#ffffff"}],["$","path",null,{"d":"M102.865 109.352L103.649 108.891V110.918L102.865 111.379L74.707 95.142V93.1152L102.865 109.352Z","fill":"#686868"}],["$","path",null,{"d":"M55.7417 98.9414L19.0117 120.153V128.444L25.7863 132.359L62.5393 111.148L63.8988 109.19L64.5901 106.795V104.031L55.7417 98.9414Z","fill":"#ffffff"}],["$","path",null,{"d":"M64.589 106.795L27.8359 128.007V125.243L64.589 104.031V106.795Z","fill":"#686868"}],["$","path",null,{"d":"M63.8975 109.19L27.1445 130.379L27.8358 128.006L64.5888 106.795L63.8975 109.19Z","fill":"#686868"}],["$","path",null,{"d":"M62.5382 111.147L25.7852 132.359L27.1447 130.378L63.8977 109.189L62.5382 111.147Z","fill":"#686868"}],["$","path",null,{"opacity":"0.5","d":"M25.7863 132.359L27.1458 130.378L27.8371 128.006V125.242L19.0117 120.152V128.444L25.7863 132.359Z","fill":"#686868"}],["$","path",null,{"d":"M91.2729 106.91L99.96 111.931L99.2918 117.919L88.5078 111.701L91.2729 106.91Z","fill":"#ffffff"}],["$","path",null,{"d":"M91.2729 106.91L99.96 111.931L99.2918 117.919L88.5078 111.701L91.2729 106.91Z","fill":"#686868"}],["$","path",null,{"d":"M91.2729 106.91L99.96 111.931L99.2918 117.919L88.5078 111.701L91.2729 106.91Z","fill":"#686868"}],["$","path",null,{"d":"M80.029 95.9473L6.26953 138.509V142.424L22.7681 151.936L96.5276 109.374L96.5045 105.459L80.029 95.9473Z","fill":"#686868"}],["$","path",null,{"opacity":"0.5","d":"M22.7681 148.02V151.935L6.26953 142.423V138.508L22.7681 148.02Z","fill":"#686868"}],["$","path",null,{"d":"M96.506 105.459L22.7695 148.02V151.936L96.529 109.374L96.506 105.459Z","fill":"#686868"}],["$","path",null,{"d":"M99.3863 115.708C99.3863 114.096 98.8103 112.967 97.9116 112.461L95.2156 110.918C94.2939 110.388 93.0496 110.48 91.644 111.286C88.8558 112.898 86.5977 116.813 86.5977 120.015C86.5977 121.627 87.1737 122.755 88.0724 123.285L90.7453 124.828C91.667 125.358 92.9344 125.289 94.3169 124.483C97.1281 122.825 99.3863 118.909 99.3863 115.708Z","fill":"#ffffff"}],["$","path",null,{"d":"M99.3856 115.707C99.3856 112.483 97.1275 111.193 94.3393 112.805C91.5511 114.418 89.293 118.333 89.293 121.534C89.293 124.735 91.5511 126.048 94.3393 124.436C97.1275 122.824 99.3856 118.909 99.3856 115.707Z","fill":"#686868"}],["$","path",null,{"d":"M97.4512 116.814C97.4512 114.833 96.0456 114.027 94.3174 115.017C92.5892 116.008 91.1836 118.426 91.1836 120.43C91.1836 122.41 92.5892 123.216 94.3174 122.226C96.0686 121.236 97.4512 118.817 97.4512 116.814Z","fill":"#EAECF2"}],["$","path",null,{"d":"M96.8732 116.882C96.8732 115.108 95.6289 114.394 94.085 115.293C92.5412 116.191 91.2969 118.333 91.2969 120.106C91.2969 121.879 92.5412 122.593 94.085 121.718C95.6289 120.82 96.8732 118.655 96.8732 116.882Z","fill":"#686868"}],["$","path",null,{"d":"M96.6438 117.689C96.6438 116.446 95.7682 115.939 94.6852 116.561C93.6022 117.183 92.7266 118.703 92.7266 119.946C92.7266 121.19 93.6022 121.697 94.6852 121.075C95.7682 120.453 96.6438 118.933 96.6438 117.689Z","fill":"#EAECF2"}],"$L58","$L59","$L5a","$L5b","$L5c","$L5d","$L5e","$L5f","$L60","$L61","$L62","$L63","$L64","$L65","$L66","$L67","$L68","$L69","$L6a","$L6b","$L6c","$L6d","$L6e","$L6f","$L70","$L71","$L72","$L73","$L74","$L75","$L76","$L77","$L78","$L79","$L7a","$L7b","$L7c","$L7d","$L7e","$L7f","$L80","$L81","$L82","$L83","$L84","$L85","$L86","$L87","$L88","$L89","$L8a","$L8b","$L8c","$L8d","$L8e","$L8f","$L90","$L91","$L92","$L93","$L94","$L95","$L96","$L97","$L98","$L99","$L9a","$L9b","$L9c","$L9d","$L9e","$L9f","$La0","$La1","$La2","$La3","$La4","$La5","$La6","$La7","$La8","$La9","$Laa","$Lab","$Lac","$Lad","$Lae","$Laf","$Lb0","$Lb1","$Lb2","$Lb3","$Lb4","$Lb5","$Lb6","$Lb7","$Lb8","$Lb9","$Lba","$Lbb","$Lbc","$Lbd","$Lbe","$Lbf","$Lc0","$Lc1","$Lc2","$Lc3","$Lc4","$Lc5","$Lc6","$Lc7","$Lc8","$Lc9","$Lca","$Lcb","$Lcc","$Lcd","$Lce","$Lcf","$Ld0","$Ld1","$Ld2","$Ld3","$Ld4","$Ld5","$Ld6","$Ld7","$Ld8","$Ld9","$Lda","$Ldb","$Ldc","$Ldd","$Lde","$Ldf","$Le0","$Le1","$Le2","$Le3","$Le4","$Le5","$Le6","$Le7","$Le8","$Le9","$Lea","$Leb","$Lec","$Led","$Lee","$Lef","$Lf0","$Lf1","$Lf2","$Lf3","$Lf4","$Lf5","$Lf6","$Lf7","$Lf8","$Lf9","$Lfa","$Lfb","$Lfc","$Lfd","$Lfe","$Lff","$L100","$L101","$L102","$L103","$L104","$L105","$L106","$L107","$L108","$L109","$L10a","$L10b","$L10c","$L10d","$L10e","$L10f","$L110","$L111","$L112","$L113","$L114"]}]}]}]}]}],"$L115","$L116"]}] -4f:["$","div",null,{"className":"elementor-element elementor-element-86fb82f e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"86fb82f","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-fbb1628 elementor-view-default elementor-widget elementor-widget-icon","data-id":"fbb1628","data-element_type":"widget","data-e-type":"widget","data-widget_type":"icon.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"elementor-icon-wrapper","children":["$","div",null,{"className":"elementor-icon","children":["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","width":"132","height":"128","viewBox":"0 0 132 128","fill":"none","children":[["$","path",null,{"d":"M18.1914 72.045L18.9416 71.6113L20.7098 72.6142L21.4599 73.9423V78.6857L20.7098 79.1193L18.9416 78.0894L18.1914 76.7612V72.045Z","fill":"#ffffff"}],["$","path",null,{"opacity":"0.5","d":"M20.7098 72.6142L18.9416 71.6113L18.1914 72.045V76.7612L18.3254 76.9781V72.8581L18.754 72.5871L20.0936 73.346L20.5222 74.1321V78.3333L20.0668 78.6043L18.8344 77.8725L18.9416 78.0894L20.7098 79.1193L21.4599 78.6857V73.9423L20.7098 72.6142Z","fill":"#686868"}],["$","path",null,{"d":"M21.4611 77.1143L20.5234 76.7891V78.334L23.4437 80.8548L24.2474 80.3669V78.2256L21.4611 77.1143Z","fill":"#ffffff"}],["$","path",null,{"opacity":"0.5","d":"M23.4437 78.7135L20.5234 76.7891V78.334L23.4437 80.8548V78.7135Z","fill":"#686868"}],["$","path",null,{"d":"M24.2451 80.3659L23.4414 80.8538V78.7125L24.2451 78.2246V80.3659Z","fill":"#686868"}],["$","path",null,{"d":"M100.654 48.3828L130.633 65.8925V68.0608L129.776 68.5487L99.7969 51.0662V48.8707L100.654 48.3828Z","fill":"#ffffff"}],["$","path",null,{"d":"M129.776 66.3807L130.633 65.8929V68.0612L129.776 68.5491L99.7969 51.0666V48.8711L129.776 66.3807Z","fill":"#686868"}],["$","path",null,{"d":"M17.1215 99.3662L2.30598 105.492L1.42188 106.007V101.806L3.02934 95.7884L14.5227 89.0664L17.0679 93.105L17.9788 98.6886L17.1215 99.3662Z","fill":"#ffffff"}],["$","path",null,{"d":"M17.1215 99.3662L2.30598 105.492L1.42188 106.007V101.806L3.02934 95.7884L14.5227 89.0664L17.0679 93.105L17.9788 98.6886L17.1215 99.3662Z","fill":"#686868"}],["$","path",null,{"d":"M21.4061 101.86L17.1195 99.366L16.2354 93.9179L14.0117 90.3672L18.2983 92.8879L20.5488 96.4386L21.4061 101.86Z","fill":"#ffffff"}],["$","path",null,{"d":"M18.5664 101.534C18.5664 99.7991 17.9502 98.5794 16.9857 98.0102L14.1191 96.3297C13.1546 95.7605 11.815 95.8418 10.3147 96.7092C7.34089 98.4439 4.92969 102.645 4.92969 106.115C4.92969 107.849 5.54588 109.069 6.51037 109.638L9.37702 111.319C10.3415 111.888 11.7078 111.806 13.1814 110.939C16.1552 109.204 18.5664 104.976 18.5664 101.534Z","fill":"#ffffff"}],["$","path",null,{"d":"M18.5669 101.533C18.5669 98.0635 16.1557 96.6812 13.1819 98.4159C10.2081 100.151 7.79688 104.352 7.79688 107.821C7.79688 111.291 10.2081 112.673 13.1819 110.938C16.1557 109.204 18.5669 104.975 18.5669 101.533Z","fill":"#686868"}],["$","path",null,{"d":"M16.5036 102.726C16.5036 100.585 15.0033 99.7172 13.1815 100.801C11.3329 101.886 9.85938 104.488 9.85938 106.629C9.85938 108.77 11.3597 109.638 13.1815 108.553C15.0301 107.469 16.5036 104.867 16.5036 102.726Z","fill":"#EAECF2"}],["$","path",null,{"d":"M15.9125 102.781C15.9125 100.857 14.5729 100.098 12.9387 101.046C11.3044 101.995 9.96484 104.326 9.96484 106.251C9.96484 108.175 11.3044 108.934 12.9387 107.985C14.5729 107.037 15.9125 104.706 15.9125 102.781Z","fill":"#686868"}],["$","path",null,{"d":"M15.6443 103.648C15.6443 102.293 14.7066 101.751 13.5546 102.428C12.4025 103.106 11.4648 104.732 11.4648 106.088C11.4648 107.443 12.4025 107.985 13.5546 107.307C14.7066 106.657 15.6443 105.003 15.6443 103.648Z","fill":"#EAECF2"}],"$L117","$L118","$L119","$L11a","$L11b","$L11c","$L11d","$L11e","$L11f","$L120","$L121","$L122","$L123","$L124","$L125","$L126","$L127","$L128","$L129","$L12a","$L12b","$L12c","$L12d","$L12e","$L12f","$L130","$L131","$L132","$L133","$L134","$L135","$L136","$L137","$L138","$L139","$L13a","$L13b","$L13c","$L13d","$L13e","$L13f","$L140","$L141","$L142","$L143","$L144","$L145","$L146","$L147","$L148","$L149","$L14a","$L14b","$L14c","$L14d","$L14e","$L14f","$L150","$L151","$L152","$L153","$L154","$L155","$L156","$L157","$L158","$L159","$L15a","$L15b","$L15c","$L15d","$L15e","$L15f","$L160","$L161","$L162","$L163","$L164","$L165","$L166","$L167","$L168","$L169","$L16a","$L16b","$L16c","$L16d","$L16e","$L16f","$L170","$L171","$L172","$L173","$L174","$L175","$L176","$L177","$L178","$L179","$L17a","$L17b"]}]}]}]}]}],"$L17c","$L17d"]}] -51:["$","section",null,{"className":"wcd-section","children":["$","div",null,{"className":"wcd-inner","children":[["$","$L17e",null,{"delay":0.1,"children":["$","div",null,{"className":"wcd-head","children":[["$","div",null,{"className":"wcd-eyebrow","children":"/ Why Businesses Choose Doormile /"}],["$","h2",null,{"className":"wcd-heading","children":"The connected approach delivers measurable advantages"}]]}]}],["$","div",null,{"className":"wcd-grid","children":[["$","$L17e","01 / First Mile",{"delay":0,"duration":0.8,"yOffset":50,"className":"wcd-card-wrapper","children":["$","article",null,{"className":"wcd-card","style":{"height":"100%"},"children":[["$","div",null,{"className":"wcd-card-media","children":["$","$L17f",null,{"src":"/images/first-mile-approach.jpg","alt":"Origin to Hub","fill":true,"sizes":"(max-width: 1020px) 100vw, 33vw"}]}],["$","div",null,{"className":"wcd-card-body","children":[["$","div",null,{"className":"wcd-card-label","children":"01 / First Mile"}],["$","h3",null,{"className":"wcd-card-title","children":"Origin to Hub"}],["$","p",null,{"className":"wcd-card-desc","children":"We collect freight directly from your facility, optimise vehicle assignment in real time, and consolidate loads for maximum efficiency before they reach the hub."}],["$","ul",null,{"className":"wcd-card-points","children":[["$","li","AI-scheduled pickups",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"AI-scheduled pickups"}]]}],["$","li","Dynamic load consolidation",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Dynamic load consolidation"}]]}],["$","li","Yard & dock management",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Yard & dock management"}]]}]]}]]}]]}]}],["$","$L17e","02 / Mid Mile",{"delay":0.15,"duration":0.8,"yOffset":50,"className":"wcd-card-wrapper","children":["$","article",null,{"className":"wcd-card","style":{"height":"100%"},"children":[["$","div",null,{"className":"wcd-card-media","children":["$","$L17f",null,{"src":"/images/mid-mile-approach.jpg","alt":"Hub to Hub Transit","fill":true,"sizes":"(max-width: 1020px) 100vw, 33vw"}]}],["$","div",null,{"className":"wcd-card-body","children":[["$","div",null,{"className":"wcd-card-label","children":"02 / Mid Mile"}],["$","h3",null,{"className":"wcd-card-title","children":"Hub to Hub Transit"}],["$","p",null,{"className":"wcd-card-desc","children":"Freight moves between hubs on optimised line-haul routes. Real-time tracking, cross-docking, and SLA monitoring keep every shipment on schedule."}],["$","ul",null,{"className":"wcd-card-points","children":[["$","li","Optimised line-haul routing",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Optimised line-haul routing"}]]}],["$","li","Cross-docking & sortation",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Cross-docking & sortation"}]]}],["$","li","Live SLA monitoring",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Live SLA monitoring"}]]}]]}]]}]]}]}],["$","$L17e","03 / Last Mile",{"delay":0.3,"duration":0.8,"yOffset":50,"className":"wcd-card-wrapper","children":"$L180"}]]}]]}]}] -55:null -181:T672,M94.8001 117.505C94.6849 117.574 94.5927 117.505 94.5927 117.367C94.5927 117.229 94.6849 117.068 94.8001 116.999C94.9153 116.93 95.0075 116.976 95.0075 117.114C95.0305 117.275 94.9384 117.436 94.8001 117.505ZM95.0305 120.43C95.0305 120.292 94.9384 120.246 94.8232 120.315C94.7079 120.384 94.6158 120.545 94.6158 120.684C94.6158 120.822 94.7079 120.868 94.8232 120.799C94.9384 120.73 95.0305 120.545 95.0305 120.43ZM96.2288 118.335C96.344 118.265 96.4361 118.104 96.4361 117.966C96.4361 117.828 96.344 117.782 96.2288 117.851C96.1135 117.92 96.0214 118.081 96.0214 118.219C96.0214 118.335 96.1135 118.404 96.2288 118.335ZM93.3945 119.97C93.5097 119.901 93.6019 119.739 93.6019 119.601C93.6019 119.463 93.5097 119.417 93.3945 119.486C93.2793 119.555 93.1871 119.716 93.1871 119.855C93.1641 119.993 93.2562 120.039 93.3945 119.97ZM95.9753 117.252C96.0675 117.114 96.0675 116.953 95.9753 116.907C95.8831 116.861 95.7679 116.93 95.6757 117.091C95.5836 117.229 95.5836 117.39 95.6757 117.436C95.7449 117.459 95.8831 117.39 95.9753 117.252ZM93.9475 120.73C94.0397 120.592 94.0397 120.43 93.9475 120.384C93.8554 120.338 93.7171 120.407 93.648 120.569C93.5558 120.707 93.5558 120.868 93.648 120.914C93.7401 120.96 93.8784 120.868 93.9475 120.73ZM95.6757 119.739C95.7679 119.785 95.9062 119.716 95.9753 119.555C96.0675 119.417 96.0675 119.256 95.9753 119.21C95.8831 119.164 95.7679 119.233 95.6757 119.394C95.5836 119.532 95.5836 119.693 95.6757 119.739ZM93.648 118.588C93.7401 118.634 93.8554 118.565 93.9475 118.427C94.0397 118.288 94.0397 118.127 93.9475 118.081C93.8554 118.035 93.7171 118.104 93.648 118.265C93.5788 118.381 93.5788 118.542 93.648 118.588Z58:["$","path",null,{"d":"$181","fill":"#686868"}] -59:["$","path",null,{"d":"M95.977 118.542C95.977 117.989 95.5853 117.759 95.0783 118.035C94.5945 118.311 94.2027 119.002 94.1797 119.555C94.1797 120.108 94.5714 120.338 95.0783 120.062C95.5622 119.785 95.977 119.118 95.977 118.542Z","fill":"#ffffff"}] -5a:["$","path",null,{"d":"M100.838 112.368L97.3587 109.512L96.5983 109.074L90.538 112.552L87.0586 119.415V124.966L87.842 125.403L88.6025 124.966V119.738L91.6671 113.68L96.8517 110.686L98.9025 112.368L99.2942 112.782V117.918L100.055 118.356L100.838 117.918V112.368Z","fill":"#ffffff"}] -5b:["$","path",null,{"d":"M100.84 117.918L100.056 118.356V113.128L96.9917 110.617L91.6688 113.68L88.6042 119.737V124.966L87.8438 125.403V119.876L91.3001 113.012L97.3604 109.512L100.84 112.368V117.918Z","fill":"#686868"}] -5c:["$","path",null,{"d":"M96.9898 110.617L96.8516 110.686L98.9024 112.368L99.2941 112.782V117.918L100.054 118.356V113.128L96.9898 110.617Z","fill":"#686868"}] -5d:["$","path",null,{"opacity":"0.5","d":"M96.9898 110.617L96.8516 110.686L98.9024 112.368L99.2941 112.782V117.918L100.054 118.356V113.128L96.9898 110.617Z","fill":"#686868"}] -5e:["$","path",null,{"opacity":"0.3","d":"M91.2984 113.013L90.538 112.553L87.0586 119.416L87.842 119.877L91.2984 113.013Z","fill":"#686868"}] -5f:["$","path",null,{"opacity":"0.5","d":"M87.842 119.877L87.0586 119.416V124.966L87.842 125.404V119.877Z","fill":"#686868"}] -60:["$","path",null,{"d":"M79.546 112.668L42.793 133.88V142.171L49.5905 146.086L86.3436 124.897L87.7031 122.917L88.3713 120.545V117.781L79.546 112.668Z","fill":"#ffffff"}] -61:["$","path",null,{"d":"M88.3702 120.545L51.6172 141.733V138.97L88.3702 117.781V120.545Z","fill":"#686868"}] -62:["$","path",null,{"d":"M87.7022 122.917L50.9492 144.106L51.6175 141.733L88.3705 120.545L87.7022 122.917Z","fill":"#686868"}] -63:["$","path",null,{"d":"M86.3429 124.897L49.5898 146.085L50.9494 144.105L87.7024 122.916L86.3429 124.897Z","fill":"#686868"}] -64:["$","path",null,{"opacity":"0.5","d":"M49.5905 146.085L50.9501 144.105L51.6183 141.732V138.969L42.793 133.879V142.17L49.5905 146.085Z","fill":"#686868"}] -65:["$","path",null,{"d":"M74.4738 89.9824L29.8633 115.731V119.001L56.6849 134.501L101.319 108.753V105.482L74.4738 89.9824Z","fill":"#ffffff"}] -66:["$","path",null,{"d":"M101.317 105.482V108.753L56.6836 134.501V131.231L101.317 105.482Z","fill":"#686868"}] -67:["$","path",null,{"opacity":"0.5","d":"M29.8633 115.73L56.6849 131.23V134.501L29.8633 119.001V115.73Z","fill":"#686868"}] -68:["$","path",null,{"d":"M78.6235 109.075L85.6745 104.999L85.6975 104.054L75.0979 97.9512L68.0469 102.028V102.972L78.6235 109.075Z","fill":"#686868"}] -69:["$","path",null,{"d":"M85.6991 104.055L85.676 104.999L78.625 109.075V108.131L85.6991 104.055Z","fill":"#686868"}] -6a:["$","path",null,{"opacity":"0.5","d":"M78.6235 108.131L68.0469 102.027V102.972L78.6235 109.075V108.131Z","fill":"#686868"}] -6b:["$","path",null,{"d":"M74.4287 100.853C73.7835 101.221 73.4609 101.728 73.4609 102.211V102.603C73.4609 103.087 73.7835 103.593 74.4287 103.962C75.7191 104.722 77.839 104.722 79.1294 103.962C79.7746 103.593 80.0972 103.087 80.0972 102.603V102.234C80.0972 101.751 79.7746 101.244 79.1294 100.876C77.816 100.116 75.7191 100.116 74.4287 100.853Z","fill":"#ffffff"}] -6c:["$","path",null,{"opacity":"0.5","d":"M75.3041 101.566C74.4976 102.027 74.4976 102.81 75.3041 103.27C76.1336 103.731 77.4471 103.731 78.2766 103.27C79.0831 102.787 79.0831 102.027 78.2766 101.566C77.4471 101.106 76.1106 101.106 75.3041 101.566Z","fill":"#686868"}] -6d:["$","path",null,{"d":"M80.0972 102.234C80.0972 102.718 79.7746 103.225 79.1294 103.593C77.839 104.353 75.7191 104.353 74.4287 103.593C73.7835 103.225 73.4609 102.718 73.4609 102.234V102.603C73.4609 103.087 73.7835 103.593 74.4287 103.962C75.7191 104.722 77.839 104.722 79.1294 103.962C79.7746 103.593 80.0972 103.087 80.0972 102.603V102.234Z","fill":"#686868"}] -6e:["$","path",null,{"d":"M149.314 52.7188L177.449 68.9556V70.9823L176.666 71.443L148.508 55.1831V53.1794L149.314 52.7188Z","fill":"#ffffff"}] -6f:["$","path",null,{"d":"M176.666 69.4165L177.449 68.9559V70.9826L176.666 71.4433L148.508 55.1834V53.1797L176.666 69.4165Z","fill":"#686868"}] -70:["$","path",null,{"d":"M152.403 53.502L55.3242 109.536V113.429L71.7997 122.94L168.878 66.929V63.0138L152.403 53.502Z","fill":"#ffffff"}] -71:["$","path",null,{"opacity":"0.5","d":"M71.7997 119.049V122.941L55.3242 113.429V109.537L71.7997 119.049Z","fill":"#686868"}] -72:["$","path",null,{"d":"M168.879 63.0137L71.8008 119.048V122.94L168.879 66.9289V63.0137Z","fill":"#686868"}] -73:["$","path",null,{"d":"M115.855 99.8398L111.754 102.212V105.321L112.537 105.782L116.639 103.41V100.3L115.855 99.8398Z","fill":"#ffffff"}] -74:["$","path",null,{"d":"M112.537 102.673L111.754 102.212V105.322L112.537 105.782L116.639 103.41V100.301L112.537 102.673Z","fill":"#686868"}] -75:["$","path",null,{"d":"M121.985 99.7715L106.523 108.684V109.767L107.33 110.228L122.769 101.315V100.232L121.985 99.7715Z","fill":"#ffffff"}] -76:["$","path",null,{"d":"M107.33 109.145L106.523 108.685V109.767L107.33 110.228L122.769 101.315V100.232L107.33 109.145Z","fill":"#686868"}] -77:["$","path",null,{"d":"M167.935 73.3547L154.017 79.0434L153.211 79.527V75.6118L154.709 70.0152L165.493 63.7969L167.889 67.5509L168.742 72.7329L167.935 73.3547Z","fill":"#ffffff"}] -78:["$","path",null,{"d":"M167.935 73.3547L154.017 79.0434L153.211 79.527V75.6118L154.709 70.0152L165.493 63.7969L167.889 67.5509L168.742 72.7329L167.935 73.3547Z","fill":"#686868"}] -79:["$","path",null,{"d":"M171.967 75.6809L167.934 73.3548L167.128 68.311L165.008 65.0176L169.063 67.3437L171.16 70.6371L171.967 75.6809Z","fill":"#ffffff"}] -7a:["$","path",null,{"d":"M171.967 75.6809L167.934 73.3548L167.128 68.311L165.008 65.0176L169.063 67.3437L171.16 70.6371L171.967 75.6809Z","fill":"#686868"}] -7b:["$","path",null,{"opacity":"0.5","d":"M171.967 75.6809L167.934 73.3548L167.128 68.311L165.008 65.0176L169.063 67.3437L171.16 70.6371L171.967 75.6809Z","fill":"#686868"}] -7c:["$","path",null,{"d":"M169.293 75.358C169.293 73.7458 168.717 72.6173 167.818 72.0876L165.122 70.5445C164.2 70.0148 162.956 70.1069 161.55 70.913C158.762 72.5252 156.504 76.4174 156.504 79.6418C156.504 81.2539 157.08 82.3824 157.979 82.9122L160.652 84.4552C161.573 84.985 162.841 84.9159 164.223 84.1098C167.034 82.4746 169.293 78.5823 169.293 75.358Z","fill":"#ffffff"}] -7d:["$","path",null,{"d":"M169.292 75.3577C169.292 72.1333 167.034 70.8436 164.246 72.4558C161.457 74.0679 159.199 77.9832 159.199 81.1845C159.199 84.3858 161.457 85.6986 164.246 84.0864C167.034 82.4743 169.292 78.582 169.292 75.3577Z","fill":"#686868"}] -7e:["$","path",null,{"d":"M167.381 76.4641C167.381 74.4834 165.975 73.6773 164.247 74.6677C162.519 75.658 161.113 78.0762 161.113 80.0799C161.113 82.0606 162.519 82.8667 164.247 81.8764C165.975 80.886 167.381 78.4678 167.381 76.4641Z","fill":"#EAECF2"}] -7f:["$","path",null,{"d":"M166.803 76.532C166.803 74.7587 165.559 74.0447 164.015 74.9429C162.471 75.8411 161.227 77.983 161.227 79.7564C161.227 81.5298 162.471 82.2437 164.015 81.3686C165.536 80.4703 166.803 78.3054 166.803 76.532Z","fill":"#686868"}] -80:["$","path",null,{"d":"M166.55 77.3377C166.55 76.094 165.674 75.5873 164.591 76.2092C163.508 76.831 162.633 78.3511 162.633 79.5947C162.633 80.8384 163.508 81.3451 164.591 80.7233C165.674 80.1014 166.55 78.5814 166.55 77.3377Z","fill":"#EAECF2"}] -182:T66c,M164.73 77.154C164.615 77.2231 164.522 77.1771 164.522 77.0389C164.522 76.9007 164.615 76.7395 164.73 76.6704C164.845 76.6013 164.937 76.6474 164.937 76.7855C164.937 76.9237 164.845 77.0849 164.73 77.154ZM164.937 80.079C164.937 79.9408 164.845 79.8947 164.73 79.9638C164.615 80.0329 164.522 80.1941 164.522 80.3323C164.522 80.4705 164.615 80.5166 164.73 80.4475C164.845 80.3784 164.937 80.2172 164.937 80.079ZM166.158 77.9832C166.274 77.9141 166.366 77.7528 166.366 77.6147C166.366 77.4765 166.274 77.4304 166.158 77.4995C166.043 77.5686 165.951 77.7298 165.951 77.868C165.928 77.9832 166.02 78.0522 166.158 77.9832ZM163.301 79.6184C163.416 79.5493 163.509 79.388 163.509 79.2499C163.509 79.1117 163.416 79.0656 163.301 79.1347C163.186 79.2038 163.094 79.365 163.094 79.5032C163.094 79.6414 163.186 79.6874 163.301 79.6184ZM165.882 76.9007C165.974 76.7625 165.974 76.6013 165.882 76.5552C165.79 76.5092 165.675 76.5783 165.582 76.7164C165.49 76.8546 165.49 77.0158 165.582 77.0619C165.675 77.131 165.79 77.0389 165.882 76.9007ZM163.877 80.3784C163.969 80.2402 163.969 80.079 163.877 80.0329C163.785 79.9868 163.67 80.0559 163.578 80.2172C163.485 80.3553 163.485 80.5166 163.578 80.5626C163.647 80.6087 163.785 80.5166 163.877 80.3784ZM165.582 79.388C165.675 79.4341 165.813 79.365 165.882 79.2038C165.974 79.0656 165.974 78.9044 165.882 78.8583C165.79 78.8123 165.675 78.8814 165.582 79.0426C165.49 79.1808 165.49 79.342 165.582 79.388ZM163.555 78.2365C163.647 78.2826 163.785 78.2135 163.854 78.0522C163.946 77.9141 163.946 77.7528 163.854 77.7068C163.762 77.6607 163.624 77.7298 163.555 77.891C163.485 78.0292 163.485 78.1904 163.555 78.2365Z81:["$","path",null,{"d":"$182","fill":"#686868"}] -82:["$","path",null,{"d":"M165.884 78.1905C165.884 77.6147 165.492 77.4074 165.008 77.6838C164.524 77.9601 164.109 78.6511 164.109 79.2269C164.109 79.7796 164.501 80.0099 165.008 79.7335C165.492 79.4572 165.884 78.7662 165.884 78.1905Z","fill":"#ffffff"}] -83:["$","path",null,{"d":"M171.922 69.8771L169.526 66.146L165.493 63.7969L153.373 69.2552L151.875 74.8287V78.744L157.244 81.8532L158.05 81.3925V77.8458L161.484 71.7195L169.065 67.3436L171.162 70.6371L171.968 75.6809L172.775 75.059L171.922 69.8771Z","fill":"#ffffff"}] -84:["$","path",null,{"d":"M171.966 75.6813L171.16 70.6375L169.063 67.3441L161.482 71.72L158.049 77.8462V81.393L157.242 81.8536V77.9383L158.763 72.3649L169.524 66.1465L171.92 69.8775L172.773 75.0595L171.966 75.6813Z","fill":"#686868"}] -85:["$","path",null,{"d":"M151.896 74.8516L151.781 78.6977L157.242 81.853V77.9377L151.896 74.8516Z","fill":"#ffffff"}] -86:["$","path",null,{"opacity":"0.5","d":"M151.896 74.8516L151.781 78.6977L157.242 81.853V77.9377L151.896 74.8516Z","fill":"#686868"}] -87:["$","path",null,{"opacity":"0.5","d":"M158.765 72.365L157.244 77.9385L151.875 74.8294L153.373 69.2559L158.765 72.365Z","fill":"#686868"}] -88:["$","path",null,{"d":"M152.173 82.4524L138.256 88.1411L137.449 88.6017V84.7094L138.947 79.1129L149.731 72.8945L152.127 76.6486L152.98 81.8306L152.173 82.4524Z","fill":"#ffffff"}] -89:["$","path",null,{"d":"M152.173 82.4524L138.256 88.1411L137.449 88.6017V84.7094L138.947 79.1129L149.731 72.8945L152.127 76.6486L152.98 81.8306L152.173 82.4524Z","fill":"#686868"}] -8a:["$","path",null,{"d":"M156.205 84.7786L152.173 82.4525L151.366 77.4087L149.246 74.1152L153.279 76.4414L155.398 79.7348L156.205 84.7786Z","fill":"#ffffff"}] -8b:["$","path",null,{"d":"M156.205 84.7786L152.173 82.4525L151.366 77.4087L149.246 74.1152L153.279 76.4414L155.398 79.7348L156.205 84.7786Z","fill":"#686868"}] -8c:["$","path",null,{"opacity":"0.5","d":"M156.205 84.7786L152.173 82.4525L151.366 77.4087L149.246 74.1152L153.279 76.4414L155.398 79.7348L156.205 84.7786Z","fill":"#686868"}] -8d:["$","path",null,{"d":"M153.531 84.4557C153.531 82.8435 152.955 81.715 152.056 81.1853L149.36 79.6422C148.438 79.1125 147.194 79.2046 145.789 80.0107C143 81.6228 140.742 85.5381 140.742 88.7394C140.742 90.3516 141.318 91.4801 142.217 92.0098L144.89 93.5529C145.812 94.0826 147.079 94.0135 148.461 93.2074C151.273 91.5722 153.531 87.68 153.531 84.4557Z","fill":"#ffffff"}] -8e:["$","path",null,{"d":"M153.53 84.4551C153.53 81.2538 151.272 79.941 148.484 81.5532C145.696 83.1654 143.438 87.0806 143.438 90.2819C143.438 93.4832 145.696 94.796 148.484 93.1838C151.272 91.5717 153.53 87.6794 153.53 84.4551Z","fill":"#686868"}] -8f:["$","path",null,{"d":"M151.619 85.5617C151.619 83.5811 150.214 82.775 148.485 83.7653C146.757 84.7556 145.352 87.1739 145.352 89.1776C145.352 91.1583 146.757 91.9643 148.485 90.974C150.214 89.9837 151.619 87.5654 151.619 85.5617Z","fill":"#EAECF2"}] -90:["$","path",null,{"d":"M151.041 85.6301C151.041 83.8567 149.797 83.1427 148.253 84.0179C146.709 84.9161 145.465 87.058 145.465 88.8314C145.465 90.6048 146.709 91.3187 148.253 90.4436C149.774 89.5684 151.041 87.4035 151.041 85.6301Z","fill":"#686868"}] -91:["$","path",null,{"d":"M150.788 86.4354C150.788 85.1917 149.913 84.685 148.83 85.3068C147.747 85.9287 146.871 87.4487 146.871 88.6924C146.871 89.9361 147.747 90.4427 148.83 89.8209C149.913 89.1991 150.788 87.679 150.788 86.4354Z","fill":"#EAECF2"}] -183:T66c,M148.968 86.2515C148.853 86.3206 148.761 86.2745 148.761 86.1363C148.761 85.9981 148.853 85.8369 148.968 85.7678C149.083 85.6987 149.175 85.7678 149.175 85.883C149.175 86.0212 149.083 86.1824 148.968 86.2515ZM149.175 89.1534C149.175 89.0152 149.083 88.9691 148.968 89.0382C148.853 89.1073 148.761 89.2685 148.761 89.4067C148.761 89.5449 148.853 89.591 148.968 89.5219C149.083 89.4758 149.175 89.2916 149.175 89.1534ZM150.397 87.0806C150.512 87.0115 150.604 86.8503 150.604 86.7121C150.604 86.5739 150.512 86.5279 150.397 86.597C150.281 86.666 150.189 86.8273 150.189 86.9654C150.189 87.1036 150.281 87.1497 150.397 87.0806ZM147.539 88.7158C147.655 88.6467 147.747 88.4855 147.747 88.3473C147.747 88.2091 147.655 88.1631 147.539 88.2322C147.424 88.3012 147.332 88.4625 147.332 88.6007C147.332 88.7388 147.424 88.7849 147.539 88.7158ZM150.12 85.9981C150.212 85.86 150.212 85.6987 150.12 85.6527C150.028 85.6066 149.89 85.6757 149.821 85.8369C149.728 85.9751 149.728 86.1363 149.821 86.1824C149.913 86.2054 150.028 86.1363 150.12 85.9981ZM148.115 89.4758C148.208 89.3376 148.208 89.1764 148.115 89.1304C148.023 89.0843 147.885 89.1534 147.816 89.2916C147.724 89.4298 147.724 89.591 147.816 89.637C147.885 89.7061 148.023 89.614 148.115 89.4758ZM149.821 88.4855C149.913 88.5316 150.051 88.4625 150.12 88.3012C150.212 88.1631 150.212 88.0018 150.12 87.9558C150.028 87.9097 149.89 87.9788 149.821 88.14C149.728 88.2782 149.728 88.4394 149.821 88.4855ZM147.793 87.3339C147.885 87.38 148 87.3109 148.092 87.1497C148.185 87.0115 148.185 86.8503 148.092 86.8042C148 86.7582 147.862 86.8273 147.793 86.9885C147.724 87.1267 147.724 87.2879 147.793 87.3339Z92:["$","path",null,{"d":"$183","fill":"#686868"}] -93:["$","path",null,{"d":"M150.122 87.2879C150.122 86.7351 149.73 86.5048 149.246 86.7812C148.762 87.0575 148.348 87.7485 148.348 88.3242C148.348 88.877 148.739 89.1073 149.246 88.8309C149.73 88.5546 150.122 87.8636 150.122 87.2879Z","fill":"#ffffff"}] -94:["$","path",null,{"d":"M156.16 78.9977L153.787 75.2207L149.731 72.8945L137.611 78.3529L136.113 83.9264V87.8416L141.482 90.9508L142.289 90.4672V86.9434L145.722 80.8172L153.28 76.4413L155.4 79.7347L156.206 84.7785L157.013 84.1567L156.16 78.9977Z","fill":"#ffffff"}] -95:["$","path",null,{"d":"M156.205 84.7786L155.398 79.7348L153.278 76.4413L145.72 80.8172L142.287 86.9435V90.4672L141.48 90.9509V87.0356L143.001 81.4621L153.785 75.2207L156.159 78.9978L157.011 84.1567L156.205 84.7786Z","fill":"#686868"}] -96:["$","path",null,{"d":"M136.135 83.9492L136.02 87.7954L141.481 90.9506V87.0354L136.135 83.9492Z","fill":"#ffffff"}] -97:["$","path",null,{"opacity":"0.5","d":"M136.135 83.9492L136.02 87.7954L141.481 90.9506V87.0354L136.135 83.9492Z","fill":"#686868"}] -98:["$","path",null,{"opacity":"0.5","d":"M143.003 81.4627L141.482 87.0362L136.113 83.927L137.611 78.3535L143.003 81.4627Z","fill":"#686868"}] -99:["$","path",null,{"d":"M136.412 91.5251L122.494 97.2368L121.688 97.6974V93.8051L123.185 88.2086L133.969 81.9902L136.366 85.7443L137.218 90.9263L136.412 91.5251Z","fill":"#ffffff"}] -9a:["$","path",null,{"d":"M136.412 91.5251L122.494 97.2368L121.688 97.6974V93.8051L123.185 88.2086L133.969 81.9902L136.366 85.7443L137.218 90.9263L136.412 91.5251Z","fill":"#686868"}] -9b:["$","path",null,{"d":"M140.466 93.8743L136.411 91.5251L135.604 86.5044L133.484 83.2109L137.517 85.5371L139.637 88.8305L140.466 93.8743Z","fill":"#ffffff"}] -9c:["$","path",null,{"d":"M140.466 93.8743L136.411 91.5251L135.604 86.5044L133.484 83.2109L137.517 85.5371L139.637 88.8305L140.466 93.8743Z","fill":"#686868"}] -9d:["$","path",null,{"opacity":"0.5","d":"M140.466 93.8743L136.411 91.5251L135.604 86.5044L133.484 83.2109L137.517 85.5371L139.637 88.8305L140.466 93.8743Z","fill":"#686868"}] -9e:["$","path",null,{"d":"M137.769 93.5514C137.769 91.9392 137.193 90.8107 136.294 90.281L133.598 88.7379C132.677 88.2082 131.432 88.3003 130.027 89.1064C127.239 90.7185 124.98 94.6338 124.98 97.8351C124.98 99.4473 125.557 100.576 126.455 101.106L129.128 102.649C130.05 103.178 131.317 103.109 132.7 102.303C135.511 100.668 137.769 96.7527 137.769 93.5514Z","fill":"#ffffff"}] -9f:["$","path",null,{"d":"M137.768 93.551C137.768 90.3267 135.51 89.037 132.722 90.6491C129.934 92.2613 127.676 96.1766 127.676 99.3779C127.676 102.602 129.934 103.892 132.722 102.28C135.51 100.668 137.768 96.7524 137.768 93.551Z","fill":"#686868"}] -a0:["$","path",null,{"d":"M135.857 94.6574C135.857 92.6768 134.452 91.8707 132.724 92.861C130.995 93.8514 129.59 96.2696 129.59 98.2733C129.59 100.254 130.995 101.06 132.724 100.07C134.452 99.0564 135.857 96.6611 135.857 94.6574Z","fill":"#EAECF2"}] -a1:["$","path",null,{"d":"M135.279 94.7258C135.279 92.9524 134.035 92.2384 132.491 93.1136C130.947 94.0118 129.703 96.1537 129.703 97.9271C129.703 99.7005 130.947 100.414 132.491 99.5393C134.012 98.6641 135.279 96.4992 135.279 94.7258Z","fill":"#686868"}] -a2:["$","path",null,{"d":"M135.027 95.5311C135.027 94.2874 134.151 93.7807 133.068 94.4025C131.985 95.0244 131.109 96.5444 131.109 97.7881C131.109 99.0318 131.985 99.5385 133.068 98.9166C134.151 98.2948 135.027 96.7747 135.027 95.5311Z","fill":"#EAECF2"}] -184:T676,M133.206 95.3472C133.091 95.4163 132.999 95.3472 132.999 95.232C132.999 95.0938 133.091 94.9326 133.206 94.8635C133.322 94.7944 133.414 94.8635 133.414 94.9787C133.414 95.1169 133.322 95.2781 133.206 95.3472ZM133.414 98.2721C133.414 98.1339 133.322 98.0879 133.206 98.157C133.091 98.2261 132.999 98.3873 132.999 98.5255C132.999 98.6637 133.091 98.7097 133.206 98.6406C133.322 98.5715 133.414 98.3873 133.414 98.2721ZM134.635 96.1763C134.75 96.1072 134.842 95.946 134.842 95.8078C134.842 95.6696 134.75 95.6236 134.635 95.6927C134.52 95.7617 134.428 95.923 134.428 96.0612C134.405 96.1763 134.497 96.2454 134.635 96.1763ZM131.778 97.8115C131.893 97.7424 131.985 97.5812 131.985 97.443C131.985 97.3048 131.893 97.2588 131.778 97.3279C131.662 97.397 131.57 97.5582 131.57 97.6964C131.57 97.8345 131.662 97.8806 131.778 97.8115ZM134.358 95.0938C134.451 94.9557 134.451 94.7944 134.358 94.7484C134.266 94.7023 134.128 94.7714 134.059 94.9326C133.967 95.0708 133.967 95.232 134.059 95.2781C134.151 95.3011 134.266 95.232 134.358 95.0938ZM132.354 98.5715C132.446 98.4333 132.446 98.2721 132.354 98.2261C132.262 98.18 132.123 98.2491 132.054 98.4103C131.962 98.5485 131.962 98.7097 132.054 98.7558C132.123 98.8018 132.262 98.7097 132.354 98.5715ZM134.059 97.5812C134.151 97.6273 134.289 97.5582 134.358 97.3969C134.451 97.2588 134.451 97.0975 134.358 97.0515C134.266 97.0054 134.128 97.0745 134.059 97.2357C133.967 97.3739 133.967 97.5351 134.059 97.5812ZM132.031 96.4296C132.123 96.4757 132.239 96.4066 132.331 96.2454C132.423 96.1072 132.423 95.946 132.331 95.8999C132.239 95.8539 132.123 95.923 132.031 96.0842C131.962 96.2224 131.962 96.3836 132.031 96.4296Za3:["$","path",null,{"d":"$184","fill":"#686868"}] -a4:["$","path",null,{"d":"M134.36 96.3836C134.36 95.8308 133.968 95.6005 133.485 95.8769C133.001 96.1532 132.586 96.8442 132.586 97.42C132.586 97.9727 132.978 98.203 133.485 97.9266C133.968 97.6272 134.36 96.9593 134.36 96.3836Z","fill":"#ffffff"}] -a5:["$","path",null,{"d":"M140.399 88.0704L138.025 84.3164L133.97 81.9902L121.849 87.4486L120.352 93.0221V96.9373L125.72 100.047L126.527 99.5629V96.0391L129.96 89.8899L137.518 85.537L139.638 88.8304L140.468 93.8742L141.251 93.2524L140.399 88.0704Z","fill":"#ffffff"}] -a6:["$","path",null,{"d":"M140.466 93.8743L139.637 88.8305L137.517 85.537L129.959 89.8899L126.525 96.0392V99.5629L125.719 100.047V96.1313L127.24 90.5578L138.024 84.3164L140.397 88.0705L141.25 93.2524L140.466 93.8743Z","fill":"#686868"}] -a7:["$","path",null,{"d":"M120.373 93.0449L120.258 96.8911L125.719 100.046V96.1311L120.373 93.0449Z","fill":"#ffffff"}] -a8:["$","path",null,{"opacity":"0.5","d":"M120.373 93.0449L120.258 96.8911L125.719 100.046V96.1311L120.373 93.0449Z","fill":"#686868"}] -a9:["$","path",null,{"opacity":"0.5","d":"M127.241 90.5584L125.72 96.1319L120.352 93.0227L121.849 87.4492L127.241 90.5584Z","fill":"#686868"}] -aa:["$","path",null,{"d":"M145.882 0L31.8438 65.7996V110.457L65.1173 129.641L179.132 63.8419V19.1848L145.882 0Z","fill":"white"}] -ab:["$","path",null,{"opacity":"0.4","d":"M179.132 19.1855V63.8426L65.1168 129.642L65.0938 84.9851L179.132 19.1855Z","fill":"#686868"}] -ac:["$","path",null,{"opacity":"0.2","d":"M31.8438 65.7988L65.0943 84.9836L65.1173 129.641L31.8438 110.456V65.7988Z","fill":"#686868"}] -ad:["$","path",null,{"opacity":"0.4","d":"M36.9375 97.6055V113.382L60.0262 126.694V110.917L36.9375 97.6055Z","fill":"#686868"}] -ae:["$","path",null,{"d":"M0 111.01L0.714322 110.596L2.35035 111.54L3.06467 112.784V117.16L2.35035 117.574L0.714322 116.607L0 115.386V111.01Z","fill":"#ffffff"}] -af:["$","path",null,{"opacity":"0.5","d":"M2.35035 111.54L0.714322 110.596L0 111.01V115.386L0.115213 115.593V111.747L0.529981 111.517L1.77428 112.231L2.18905 112.945V116.837L1.77428 117.09L0.599109 116.4L0.714322 116.607L2.35035 117.574L3.06467 117.16V112.784L2.35035 111.54Z","fill":"#686868"}] -b0:["$","path",null,{"d":"M3.06312 115.709L2.1875 115.387V116.838L4.90653 119.164L5.68998 118.726V116.746L3.06312 115.709Z","fill":"#ffffff"}] -b1:["$","path",null,{"opacity":"0.5","d":"M4.90653 117.183L2.1875 115.387V116.838L4.90653 119.164V117.183Z","fill":"#686868"}] -b2:["$","path",null,{"d":"M5.6897 118.725L4.90625 119.162V117.182L5.6897 116.744V118.725Z","fill":"#686868"}] -b3:["$","path",null,{"d":"M0 108.2L0.714322 107.785L2.35035 108.729L3.06467 109.973V111.24L2.35035 111.631L0.714322 110.687L0 109.466V108.2Z","fill":"#ffffff"}] -b4:["$","path",null,{"opacity":"0.5","d":"M2.35035 108.729L0.714322 107.785L0 108.2V109.466L0.115213 109.674V108.937L0.529981 108.706L1.77428 109.42L2.18905 110.134V110.917L1.77428 111.171L0.599109 110.48L0.714322 110.687L2.35035 111.631L3.06467 111.24V109.973L2.35035 108.729Z","fill":"#686868"}] -b5:["$","path",null,{"d":"M3.06312 110.665L2.1875 110.365V110.918L4.90653 113.244L5.68998 112.807V112.162L3.06312 110.665Z","fill":"#ffffff"}] -b6:["$","path",null,{"opacity":"0.5","d":"M4.90653 112.599L2.1875 110.365V110.918L4.90653 113.244V112.599Z","fill":"#686868"}] -b7:["$","path",null,{"d":"M5.6897 112.807L4.90625 113.245V112.6L5.6897 112.162V112.807Z","fill":"#686868"}] -b8:["$","path",null,{"d":"M40.1171 136.436L48.8042 141.433L48.1359 147.421L37.375 141.203L40.1171 136.436Z","fill":"#ffffff"}] -b9:["$","path",null,{"d":"M40.1171 136.436L48.8042 141.433L48.1359 147.421L37.375 141.203L40.1171 136.436Z","fill":"#686868"}] -ba:["$","path",null,{"d":"M40.1171 136.436L48.8042 141.433L48.1359 147.421L37.375 141.203L40.1171 136.436Z","fill":"#686868"}] -bb:["$","path",null,{"d":"M48.2301 145.233C48.2301 143.621 47.654 142.492 46.7553 141.986L44.0594 140.42C43.1376 139.89 41.8933 139.982 40.4877 140.788C37.6996 142.4 35.4414 146.315 35.4414 149.517C35.4414 151.129 36.0175 152.257 36.9161 152.787L39.5891 154.33C40.5108 154.86 41.7781 154.791 43.1607 153.985C45.9719 152.35 48.2301 148.434 48.2301 145.233Z","fill":"#ffffff"}] -bc:["$","path",null,{"d":"M48.2294 145.232C48.2294 142.031 45.9712 140.718 43.1831 142.331C40.3949 143.943 38.1367 147.858 38.1367 151.059C38.1367 154.261 40.3949 155.573 43.1831 153.961C45.9712 152.349 48.2294 148.434 48.2294 145.232Z","fill":"#686868"}] -bd:["$","path",null,{"d":"M46.3184 146.339C46.3184 144.358 44.9128 143.552 43.1846 144.543C41.4564 145.533 40.0508 147.951 40.0508 149.955C40.0508 151.936 41.4564 152.742 43.1846 151.751C44.9128 150.738 46.3184 148.32 46.3184 146.339Z","fill":"#EAECF2"}] -be:["$","path",null,{"d":"M45.7404 146.384C45.7404 144.611 44.4961 143.897 42.9522 144.772C41.4084 145.67 40.1641 147.812 40.1641 149.585C40.1641 151.359 41.4084 152.073 42.9522 151.197C44.4961 150.322 45.7404 148.157 45.7404 146.384Z","fill":"#686868"}] -bf:["$","path",null,{"d":"M45.4876 147.213C45.4876 145.969 44.6119 145.462 43.5289 146.084C42.4459 146.706 41.5703 148.226 41.5703 149.47C41.5703 150.713 42.4459 151.22 43.5289 150.598C44.6119 149.976 45.4876 148.456 45.4876 147.213Z","fill":"#EAECF2"}] -185:T670,M43.6673 147.03C43.5521 147.099 43.4599 147.03 43.4599 146.915C43.4599 146.777 43.5521 146.616 43.6673 146.547C43.7825 146.478 43.8747 146.524 43.8747 146.662C43.8747 146.777 43.7825 146.961 43.6673 147.03ZM43.8747 149.932C43.8747 149.794 43.7825 149.748 43.6673 149.817C43.5521 149.886 43.4599 150.047 43.4599 150.186C43.4599 150.324 43.5521 150.37 43.6673 150.301C43.7825 150.232 43.8747 150.07 43.8747 149.932ZM45.0959 147.836C45.2111 147.767 45.3033 147.606 45.3033 147.468C45.3033 147.33 45.2111 147.284 45.0959 147.353C44.9807 147.422 44.8885 147.583 44.8885 147.721C44.8655 147.859 44.9807 147.906 45.0959 147.836ZM42.2386 149.495C42.3538 149.426 42.446 149.264 42.446 149.126C42.446 148.988 42.3538 148.942 42.2386 149.011C42.1234 149.08 42.0312 149.241 42.0312 149.38C42.0312 149.495 42.1234 149.564 42.2386 149.495ZM44.8194 146.754C44.9116 146.616 44.9116 146.455 44.8194 146.409C44.7272 146.362 44.612 146.432 44.5199 146.593C44.4277 146.731 44.4277 146.892 44.5199 146.938C44.612 146.984 44.7503 146.892 44.8194 146.754ZM42.8147 150.255C42.9069 150.117 42.9069 149.955 42.8147 149.909C42.7225 149.863 42.5843 149.932 42.5151 150.093C42.423 150.232 42.423 150.393 42.5151 150.439C42.5843 150.462 42.7225 150.393 42.8147 150.255ZM44.5199 149.264C44.612 149.31 44.7503 149.241 44.8194 149.08C44.9116 148.942 44.9116 148.781 44.8194 148.735C44.7272 148.689 44.589 148.758 44.5199 148.919C44.4277 149.057 44.4277 149.218 44.5199 149.264ZM42.5151 148.09C42.6073 148.136 42.7456 148.067 42.8147 147.906C42.9069 147.767 42.9069 147.606 42.8147 147.56C42.7225 147.514 42.5843 147.583 42.5151 147.744C42.423 147.883 42.423 148.044 42.5151 148.09Zc0:["$","path",null,{"d":"$185","fill":"#686868"}] -c1:["$","path",null,{"d":"M44.8208 148.065C44.8208 147.512 44.429 147.282 43.9221 147.559C43.4382 147.835 43.0234 148.526 43.0234 149.102C43.0234 149.677 43.4152 149.908 43.9221 149.608C44.429 149.309 44.8208 148.618 44.8208 148.065Z","fill":"#ffffff"}] -c2:["$","path",null,{"d":"M36.3161 148.688L38.7356 144.013L11.8218 128.49L5.07031 132.382V141.226L31.9611 156.749L36.3392 154.239L36.3161 148.688Z","fill":"#ffffff"}] -c3:["$","path",null,{"d":"M36.339 154.239L31.9609 156.75V147.906L38.7355 144.014L36.316 148.689L36.339 154.239Z","fill":"#686868"}] -c4:["$","path",null,{"opacity":"0.5","d":"M31.9611 156.75L5.07031 141.227V132.383L31.9611 147.906V156.75Z","fill":"#686868"}] -c5:["$","path",null,{"d":"M55.2329 131.714L28.3191 116.168L8.87109 127.407V130.194L35.7849 145.717L38.8726 143.92L39.2643 142.815L45.555 139.199L46.0158 139.798L55.2329 134.501V131.714Z","fill":"#ffffff"}] -c6:["$","path",null,{"d":"M35.7852 145.718L38.8729 143.921L39.2646 142.816L45.5552 139.2L46.0161 139.799L55.2332 134.502V131.715L35.7852 142.931V145.718Z","fill":"#686868"}] -c7:["$","path",null,{"opacity":"0.5","d":"M35.7849 145.716V142.929L8.87109 127.406V130.193L35.7849 145.716Z","fill":"#686868"}] -c8:["$","path",null,{"d":"M31.9592 147.906L5.06839 132.383L3.13281 134.824V143.668L27.7424 157.878L31.9592 156.75V147.906Z","fill":"#ffffff"}] -c9:["$","path",null,{"opacity":"0.8","d":"M27.7422 157.879L31.959 156.75V147.906L27.7422 149.012V157.879Z","fill":"#686868"}] -ca:["$","path",null,{"opacity":"0.5","d":"M27.7424 157.878L3.13281 143.668V134.824L27.7424 149.011V157.878Z","fill":"#686868"}] -cb:["$","path",null,{"d":"M3.13281 134.822V143.666L6.01314 146.43L22.9495 156.218L27.7424 157.876V149.009L3.13281 134.822Z","fill":"#ffffff"}] -cc:["$","path",null,{"opacity":"0.5","d":"M22.9481 156.218L6.01172 146.43V137.586L22.925 147.351L22.9481 156.218Z","fill":"#686868"}] -cd:["$","path",null,{"opacity":"0.6","d":"M6.01314 137.586L3.13281 134.822V143.666L6.01314 146.43V137.586Z","fill":"#686868"}] -ce:["$","path",null,{"opacity":"0.6","d":"M22.9492 147.352V156.218L27.7421 157.877V149.01L22.9492 147.352Z","fill":"#686868"}] -cf:["$","path",null,{"d":"M55.6022 116.191V109.673L28.7114 94.1504L24.8633 96.3614V118.172L51.7771 133.695V111.884V119.208V133.695L55.6022 131.484V116.191Z","fill":"white"}] -d0:["$","path",null,{"opacity":"0.6","d":"M51.7771 133.695L24.8633 118.172V96.3613L51.7771 111.884V133.695Z","fill":"#686868"}] -d1:["$","path",null,{"opacity":"0.4","d":"M55.6024 131.484L51.7773 133.695V119.209V111.885L55.6024 109.674V116.192V131.484Z","fill":"#686868"}] -d2:["$","path",null,{"opacity":"0.6","d":"M55.6022 109.673L51.7771 111.884L24.8633 96.3614L28.7114 94.1504L55.6022 109.673Z","fill":"#686868"}] -d3:["$","path",null,{"d":"M51.386 133.925V119.438V112.114L49.6348 111.124L24.4722 96.5915L22.721 95.5781L5.07031 105.781V132.382L31.9611 147.905L36.4774 145.302L38.0213 141.64L51.386 133.925Z","fill":"white"}] -d4:["$","path",null,{"opacity":"0.6","d":"M38.4802 117.55L49.6329 111.124L24.4703 96.5915L22.719 95.5781L11.5664 102.027L38.4802 117.55Z","fill":"#686868"}] -d5:["$","path",null,{"opacity":"0.4","d":"M49.6346 111.125L31.9609 121.305V134.617V147.905L36.4773 145.303L38.0212 141.641L51.3859 133.926V119.439V112.115L49.6346 111.125Z","fill":"#686868"}] -d6:["$","path",null,{"opacity":"0.2","d":"M5.07031 105.781L31.9611 121.304V147.905L5.07031 132.382V105.781Z","fill":"#686868"}] -d7:["$","path",null,{"d":"M31.9592 134.617L5.06839 119.094L4.53841 119.393L3.13281 123.285V134.824L27.7424 149.011L31.9592 147.906V134.617Z","fill":"white"}] -d8:["$","path",null,{"opacity":"0.4","d":"M27.7422 137.496L31.429 134.917L31.959 134.617V147.906L27.7422 149.012V137.496Z","fill":"#686868"}] -d9:["$","path",null,{"opacity":"0.2","d":"M27.7424 149.011L3.13281 134.824V123.285L27.7424 137.495V149.011Z","fill":"#686868"}] -da:["$","path",null,{"d":"M5.06904 109.121L4.53906 109.444V119.393L31.4298 134.916L31.9598 134.616V124.667L5.06904 109.121Z","fill":"#ffffff"}] -db:["$","path",null,{"d":"M31.4297 134.917L31.9597 134.617V124.668L31.4297 124.967V134.917Z","fill":"#686868"}] -dc:["$","path",null,{"opacity":"0.5","d":"M31.4298 134.916V124.966L4.53906 109.443V119.393L31.4298 134.916Z","fill":"#686868"}] -dd:["$","path",null,{"d":"M31.4298 134.916V124.966L26.5909 123.492L7.07375 112.23L4.53906 109.443V119.393L6.70507 122.41L26.1992 133.672L31.4298 134.916Z","fill":"#ffffff"}] -de:["$","path",null,{"d":"M21.3621 123.515L21.7077 120.682L15.0484 116.836L14.6797 119.669L21.3621 123.515Z","fill":"#686868"}] -df:["$","path",null,{"d":"M30.7148 124.736L30.4844 126.579L31.4291 127.132V124.967L30.7148 124.736Z","fill":"#686868"}] -e0:["$","path",null,{"d":"M10.9664 114.463L7.0722 112.229L6.72656 111.838V117.78L10.9664 114.463Z","fill":"#686868"}] -e1:["$","path",null,{"d":"M28.5034 132.337L9.00934 121.074L6.84333 119.094L4.53906 119.393L6.70507 122.41L26.1992 133.672L31.4298 134.916V133.028L28.5034 132.337Z","fill":"#686868"}] -e2:["$","path",null,{"opacity":"0.3","d":"M7.07336 112.23L6.68163 122.41L4.51562 119.393V109.443L7.07336 112.23ZM26.5905 123.492L26.1988 133.672L31.4294 134.916V124.966L26.5905 123.492Z","fill":"#686868"}] -e3:["$","path",null,{"d":"M26.5905 123.492L7.07336 112.23L4.51562 109.443V119.393L6.68163 122.41L26.1988 133.672L31.4294 134.916V124.966L26.5905 123.492ZM26.3601 133.257L7.00423 122.064L4.97648 119.232V110.572L6.79685 112.576L26.3601 123.861L30.9916 125.266V134.34L26.3601 133.257Z","fill":"#686868"}] -e4:["$","path",null,{"d":"M42.4199 119.508L33.6406 124.575V133.303L42.4199 126.44V119.508Z","fill":"#ffffff"}] -e5:["$","path",null,{"opacity":"0.4","d":"M43.9414 118.632V125.242L48.4808 121.696L49.7251 118.655V115.293L43.9414 118.632Z","fill":"#686868"}] -e6:["$","path",null,{"d":"M41.1523 135.952L42.4197 135.238V132.451L41.1523 133.188V135.952Z","fill":"#ffffff"}] -e7:["$","path",null,{"d":"M41.8671 135.1L41.4062 135.376V133.488L41.8671 133.234V135.1Z","fill":"#686868"}] -e8:["$","path",null,{"d":"M49.6783 141.872L46.1989 139.016L45.4385 138.578L39.3783 142.079L35.9219 148.942V154.493L36.6823 154.93L37.4427 154.47V149.264L40.5074 143.207L45.715 140.19L47.7428 141.872L48.1345 142.309V147.422L48.9179 147.86L49.6783 147.422V141.872Z","fill":"#ffffff"}] -e9:["$","path",null,{"d":"M49.6796 147.422L48.9192 147.86V142.655L45.8546 140.121L40.5087 143.207L37.444 149.264V154.469L36.6836 154.93V149.38L40.163 142.516L46.2002 139.016L49.6796 141.871V147.422Z","fill":"#686868"}] -ea:["$","path",null,{"d":"M45.8531 140.121L45.7148 140.19L47.7426 141.871L48.1343 142.309V147.422L48.9178 147.86V142.655L45.8531 140.121Z","fill":"#686868"}] -eb:["$","path",null,{"opacity":"0.5","d":"M45.8531 140.121L45.7148 140.19L47.7426 141.871L48.1343 142.309V147.422L48.9178 147.86V142.655L45.8531 140.121Z","fill":"#686868"}] -ec:["$","path",null,{"opacity":"0.3","d":"M40.1617 142.516L39.3783 142.078L35.9219 148.941L36.6823 149.379L40.1617 142.516Z","fill":"#686868"}] -ed:["$","path",null,{"opacity":"0.5","d":"M36.6823 149.379L35.9219 148.941V154.492L36.6823 154.929V149.379Z","fill":"#686868"}] -ee:["$","path",null,{"d":"M55.2342 96.1772L28.3204 80.6543L14.8635 96.062L11.6836 101.52L38.5974 117.043L49.6348 110.664L51.3861 111.677L55.2342 109.466V96.1772Z","fill":"white"}] -ef:["$","path",null,{"opacity":"0.4","d":"M55.2344 109.467L51.3863 111.678L49.6351 110.664L38.5977 117.044L41.7775 111.585L55.2344 96.1777V109.467Z","fill":"#686868"}] -f0:["$","path",null,{"opacity":"0.1","d":"M38.5974 117.044L41.7773 111.585L14.8635 96.0625L11.6836 101.521L38.5974 117.044Z","fill":"#686868"}] -f1:["$","path",null,{"d":"M27.7424 137.495L3.13281 123.285V134.824L6.01314 137.587L22.9264 147.353L27.7424 149.011V137.495Z","fill":"white"}] -f2:["$","path",null,{"opacity":"0.3","d":"M3.13281 123.285V134.824L6.01314 137.587V130.31L3.13281 123.285Z","fill":"#686868"}] -f3:["$","path",null,{"opacity":"0.3","d":"M3.13281 123.285V134.824L4.1006 135.146V129.204L3.13281 123.285Z","fill":"#686868"}] -f4:["$","path",null,{"opacity":"0.3","d":"M27.7417 137.494V149.01L22.9258 147.351V140.074L27.7417 137.494Z","fill":"#686868"}] -f5:["$","path",null,{"opacity":"0.3","d":"M27.7436 137.494V149.01L24.8633 147.121V141.179L27.7436 137.494Z","fill":"#686868"}] -f6:["$","path",null,{"d":"M6.01562 137.586L22.9289 147.352V140.074L6.01562 130.309V137.586Z","fill":"#ffffff"}] -f7:["$","path",null,{"opacity":"0.5","d":"M6.01562 137.586L22.9289 147.352V140.074L6.01562 130.309V137.586Z","fill":"#686868"}] -f8:["$","path",null,{"d":"M27.7424 137.495L22.9264 140.075L6.01314 130.31L3.13281 123.285L4.7458 125.105L24.5625 136.551L27.7424 137.495Z","fill":"#ffffff"}] -f9:["$","path",null,{"opacity":"0.4","d":"M32.8117 124.045L32.7656 124.068V133.903V147.468L32.973 147.33V133.903V124.207L43.0657 118.38V138.716L43.2961 138.601V117.988L32.8117 124.045Z","fill":"#686868"}] -fa:["$","path",null,{"d":"M31.9592 121.304L5.06839 105.781L4.12365 106.334L3.13281 110.664V111.562L27.7424 125.772L31.9592 124.667V121.304Z","fill":"white"}] -fb:["$","path",null,{"opacity":"0.4","d":"M27.7422 124.874V125.773L31.959 124.667V121.305L31.0142 121.857L27.7422 124.874Z","fill":"#686868"}] -fc:["$","path",null,{"opacity":"0.1","d":"M27.7424 124.874L31.0144 121.857L4.12365 106.334L3.13281 110.664L27.7424 124.874Z","fill":"#686868"}] -fd:["$","path",null,{"opacity":"0.2","d":"M27.7424 125.772V124.874L3.13281 110.664V111.562L27.7424 125.772Z","fill":"#686868"}] -fe:["$","path",null,{"d":"M38.2031 121.949L33.6406 124.575V128.398L37.1431 130.425L38.2031 121.949Z","fill":"#686868"}] -ff:["$","path",null,{"d":"M33.6406 124.575V133.303L42.4199 126.44V119.508L33.6406 124.575ZM34.0784 132.405V124.828L41.959 120.268V126.21L34.0784 132.405Z","fill":"#686868"}] -100:["$","path",null,{"d":"M27.7423 150.783L24.1016 149.539V152.165L27.7423 153.431L29.8853 152.856V150.23L27.7423 150.783Z","fill":"white"}] -101:["$","path",null,{"opacity":"0.4","d":"M29.8852 150.23L27.7422 150.783V153.432L29.8852 152.856V150.23Z","fill":"#686868"}] -102:["$","path",null,{"d":"M5.06839 138.438L3.13281 136.596V139.244L5.06839 141.087V138.438Z","fill":"white"}] -103:["$","path",null,{"opacity":"0.5","d":"M7.14453 132.682V137.403L21.8227 145.878V141.157L7.14453 132.682Z","fill":"#686868"}] -104:["$","path",null,{"d":"M21.8227 141.157V141.871L7.14453 133.396V132.682L21.8227 141.157ZM7.14453 134.017V134.731L21.8457 143.207V142.493L7.14453 134.017ZM7.14453 135.353V136.067L21.8457 144.543V143.829L7.14453 135.353ZM7.14453 136.666V137.38L21.8457 145.855V145.141L7.14453 136.666Z","fill":"#686868"}] -105:["$","path",null,{"opacity":"0.5","d":"M7.14453 139.338V144.059L21.8227 152.535V147.813L7.14453 139.338Z","fill":"#686868"}] -106:["$","path",null,{"d":"M21.8227 147.813V148.527L7.14453 140.052V139.338L21.8227 147.813ZM7.14453 140.674V141.388L21.8457 149.863V149.149L7.14453 140.674ZM7.14453 141.986V142.7L21.8457 151.176V150.462L7.14453 141.986ZM7.14453 143.322V144.036L21.8457 152.512V151.798L7.14453 143.322Z","fill":"#686868"}] -107:["$","path",null,{"d":"M37.3078 152.281L35.5105 151.244L33.1602 152.603V153.386L34.9344 154.422L37.3078 153.064V152.281Z","fill":"#ffffff"}] -108:["$","path",null,{"d":"M34.9336 153.64V154.423L37.307 153.064V152.281L34.9336 153.64Z","fill":"#686868"}] -109:["$","path",null,{"opacity":"0.5","d":"M33.1602 152.604V153.387L34.9344 154.423V153.64L33.1602 152.604Z","fill":"#686868"}] -10a:["$","path",null,{"d":"M35.5105 148.135L33.1602 149.494V152.603L33.9436 153.063L36.317 151.705V148.595L35.5105 148.135Z","fill":"#ffffff"}] -10b:["$","path",null,{"opacity":"0.5","d":"M33.1602 149.494V152.603L33.9436 153.064V149.955L33.1602 149.494Z","fill":"#686868"}] -10c:["$","path",null,{"d":"M33.9453 149.955V153.064L36.3187 151.705V148.596L33.9453 149.955Z","fill":"#686868"}] -10d:["$","path",null,{"d":"M36.7518 132.198L36.0375 130.977L34.3784 130.033L33.6641 130.425V134.801L34.3784 136.044L36.0375 136.989L36.7518 136.574V132.198Z","fill":"#ffffff"}] -10e:["$","path",null,{"opacity":"0.5","d":"M36.0375 130.977L34.3784 130.033L33.6641 130.425V134.801L33.7793 135.008V131.185L34.194 130.954L35.4383 131.668L35.8531 132.382V136.275L35.4383 136.505L34.2632 135.837L34.3784 136.044L36.0375 136.989L36.7518 136.574V132.198L36.0375 130.977Z","fill":"#686868"}] -10f:["$","path",null,{"d":"M32.6038 132.268L31.8203 132.705V134.686L33.7789 135.077V133.626L33.6637 133.373L32.6038 132.268Z","fill":"#ffffff"}] -110:["$","path",null,{"opacity":"0.5","d":"M31.8203 132.705L33.7789 133.626V135.077L31.8203 134.686V132.705Z","fill":"#686868"}] -111:["$","path",null,{"d":"M36.7518 129.388L36.0375 128.167L34.3784 127.223L33.6641 127.614V128.881L34.3784 130.125L36.0375 131.069L36.7518 130.654V129.388Z","fill":"#ffffff"}] -112:["$","path",null,{"opacity":"0.5","d":"M36.0375 128.167L34.3784 127.223L33.6641 127.614V128.881L33.7793 129.088V128.374L34.194 128.144L35.4383 128.835L35.8531 129.572V130.355L35.4383 130.608L34.2632 129.917L34.3784 130.125L36.0375 131.069L36.7518 130.654V129.388L36.0375 128.167Z","fill":"#686868"}] -113:["$","path",null,{"d":"M32.6038 127.684L31.8203 128.121V128.766L33.7789 129.158V128.605L33.6637 128.328L32.6038 127.684Z","fill":"#ffffff"}] -114:["$","path",null,{"opacity":"0.5","d":"M31.8203 128.121L33.7789 128.605V129.157L31.8203 128.766V128.121Z","fill":"#686868"}] -115:["$","div",null,{"className":"elementor-element elementor-element-c582715 elementor-widget elementor-widget-logico_heading","data-id":"c582715","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"Mid Mile"}]}]}] -116:["$","div",null,{"className":"elementor-element elementor-element-3ae1ce0 elementor-widget elementor-widget-text-editor","data-id":"3ae1ce0","data-element_type":"widget","data-e-type":"widget","data-widget_type":"text-editor.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","p",null,{"children":"Smooth inter-city delivery through strategically located hubs with live tracking."}]}]}] -186:T676,M13.6906 103.458C13.5567 103.54 13.4495 103.458 13.4495 103.323C13.4495 103.187 13.5567 102.997 13.6906 102.916C13.8246 102.835 13.905 102.889 13.905 103.052C13.9318 103.214 13.8246 103.377 13.6906 103.458ZM13.9318 106.602C13.9318 106.44 13.8246 106.386 13.7174 106.467C13.5835 106.548 13.4763 106.711 13.4763 106.873C13.4763 107.009 13.5835 107.09 13.7174 107.009C13.8246 106.928 13.9318 106.738 13.9318 106.602ZM15.2177 104.353C15.3517 104.271 15.4589 104.109 15.4589 103.946C15.4589 103.811 15.3517 103.756 15.2177 103.811C15.0838 103.892 15.0034 104.055 15.0034 104.217C14.9766 104.353 15.0838 104.407 15.2177 104.353ZM12.1635 106.115C12.2975 106.033 12.3779 105.871 12.3779 105.708C12.3779 105.572 12.2707 105.491 12.1635 105.572C12.0296 105.654 11.9492 105.816 11.9492 105.979C11.9492 106.142 12.0564 106.196 12.1635 106.115ZM14.923 103.187C15.0034 103.025 15.0034 102.862 14.923 102.808C14.8427 102.754 14.6819 102.835 14.6015 102.997C14.5212 103.16 14.5212 103.323 14.6015 103.377C14.7087 103.431 14.8427 103.35 14.923 103.187ZM12.7797 106.928C12.8601 106.765 12.8601 106.602 12.7797 106.548C12.6994 106.494 12.5386 106.575 12.4583 106.738C12.3779 106.901 12.3779 107.063 12.4583 107.117C12.5386 107.172 12.6994 107.09 12.7797 106.928ZM14.6015 105.871C14.6819 105.925 14.8427 105.843 14.923 105.681C15.0034 105.518 15.0034 105.356 14.923 105.301C14.8427 105.247 14.6819 105.328 14.6015 105.491C14.5212 105.654 14.5212 105.816 14.6015 105.871ZM12.4583 104.624C12.5386 104.678 12.6994 104.597 12.7797 104.434C12.8601 104.271 12.8601 104.109 12.7797 104.055C12.6994 104 12.5386 104.082 12.4583 104.244C12.3779 104.407 12.3779 104.57 12.4583 104.624Z117:["$","path",null,{"d":"$186","fill":"#686868"}] -118:["$","path",null,{"d":"M14.9223 104.569C14.9223 103.945 14.4936 103.729 13.9846 104.027C13.4755 104.325 13.0469 105.084 13.0469 105.68C13.0469 106.304 13.4755 106.52 13.9846 106.222C14.4936 105.924 14.9223 105.192 14.9223 104.569Z","fill":"#ffffff"}] -119:["$","path",null,{"d":"M21.3793 95.6257L18.8074 91.5871L14.5208 89.0664L1.60747 94.9481L0 100.965V105.167L5.73331 108.528L6.59062 108.013V104.191L10.2342 97.5773L18.2984 92.8882L20.5488 96.4389L21.4061 101.86L22.2634 101.209L21.3793 95.6257Z","fill":"white"}] -11a:["$","path",null,{"opacity":"0.4","d":"M21.4072 101.861L20.5499 96.4396L18.2994 92.8889L10.2353 97.578L6.59169 104.192V108.013L5.73438 108.528V104.3L7.34184 98.2828L18.8085 91.5879L21.3804 95.6265L22.2645 101.21L21.4072 101.861Z","fill":"#686868"}] -11b:["$","path",null,{"d":"M5.73331 108.527L0 105.166V100.965L5.73331 104.299V108.527Z","fill":"#ffffff"}] -11c:["$","path",null,{"opacity":"0.5","d":"M5.73331 108.527L0 105.166V100.965L5.73331 104.299V108.527Z","fill":"#686868"}] -11d:["$","path",null,{"opacity":"0.2","d":"M7.34078 98.2812L5.73331 104.298L0 100.965L1.60747 94.9473L7.34078 98.2812Z","fill":"#686868"}] -11e:["$","path",null,{"d":"M18.8093 91.5871L7.34268 98.282L1.60938 94.9481L14.5227 89.0664L18.8093 91.5871Z","fill":"white"}] -11f:["$","path",null,{"opacity":"0.4","d":"M2.22403 95.707L0.964844 100.396L2.22403 99.6643V95.707Z","fill":"#686868"}] -120:["$","path",null,{"d":"M2.22403 99.6641L0.964844 100.396L5.27822 102.917L5.59971 101.643L2.22403 99.6641Z","fill":"white"}] -121:["$","path",null,{"d":"M6.50924 98.2278L2.22266 95.707V99.6643L5.59834 101.643L6.50924 98.2278Z","fill":"#ffffff"}] -122:["$","path",null,{"d":"M3.21484 96.3027V99.0945L5.86717 100.667L6.51015 98.2272L3.21484 96.3027Z","fill":"white"}] -123:["$","path",null,{"d":"M106.629 48.2188L3.24219 108.608V112.809L20.8172 123.082L124.204 62.6927V58.4643L106.629 48.2188Z","fill":"#ffffff"}] -124:["$","path",null,{"opacity":"0.5","d":"M20.8172 118.853V123.081L3.24219 112.809V108.607L20.8172 118.853Z","fill":"#686868"}] -125:["$","path",null,{"d":"M124.203 58.4648L20.8164 118.854V123.083L124.203 62.6932V58.4648Z","fill":"#686868"}] -126:["$","path",null,{"d":"M84.9002 88.1191L76.4609 93.0522V96.4132L77.2915 96.9011L85.7575 91.968V88.607L84.9002 88.1191Z","fill":"#ffffff"}] -127:["$","path",null,{"d":"M77.2915 93.5676L76.4609 93.0526V96.4136L77.2915 96.9015L85.7575 91.9684V88.6074L77.2915 93.5676Z","fill":"#686868"}] -128:["$","path",null,{"d":"M96.7694 84.9199L69.6836 100.749V101.942L70.5141 102.43L97.6268 86.6004V85.4078L96.7694 84.9199Z","fill":"#ffffff"}] -129:["$","path",null,{"d":"M70.5141 101.237L69.6836 100.749V101.942L70.5141 102.43L97.6268 86.6008V85.4082L70.5141 101.237Z","fill":"#686868"}] -12a:["$","path",null,{"d":"M113.192 74.0771L98.3495 80.2299L97.4922 80.7178V76.5166L99.0997 70.4993L110.593 63.7773L113.138 67.8431L114.022 73.3995L113.192 74.0771Z","fill":"#ffffff"}] -12b:["$","path",null,{"d":"M113.192 74.0771L98.3495 80.2299L97.4922 80.7178V76.5166L99.0997 70.4993L110.593 63.7773L113.138 67.8431L114.022 73.3995L113.192 74.0771Z","fill":"#686868"}] -12c:["$","path",null,{"d":"M117.48 76.5976L113.193 74.0769L112.309 68.6559L110.059 65.0781L114.372 67.5989L116.622 71.1496L117.48 76.5976Z","fill":"#ffffff"}] -12d:["$","path",null,{"d":"M114.637 76.2447C114.637 74.51 114.047 73.2903 113.056 72.7211L110.189 71.0406C109.225 70.4714 107.885 70.5527 106.385 71.4201C103.411 73.1819 101 77.3831 101 80.8525C101 82.5872 101.589 83.807 102.581 84.3762L105.447 86.0566C106.412 86.6258 107.778 86.5445 109.252 85.6772C112.225 83.9154 114.637 79.7141 114.637 76.2447Z","fill":"#ffffff"}] -12e:["$","path",null,{"d":"M114.637 76.2439C114.637 72.7745 112.226 71.3921 109.252 73.1268C106.278 74.8615 103.867 79.0628 103.867 82.5322C103.867 86.0016 106.278 87.3839 109.252 85.6492C112.226 83.9145 114.637 79.7133 114.637 76.2439Z","fill":"#686868"}] -12f:["$","path",null,{"d":"M112.574 77.4368C112.574 75.2955 111.074 74.4282 109.252 75.5124C107.403 76.5965 105.93 79.1986 105.93 81.3399C105.93 83.4811 107.43 84.3485 109.252 83.2643C111.074 82.1801 112.574 79.5781 112.574 77.4368Z","fill":"#EAECF2"}] -130:["$","path",null,{"d":"M111.959 77.5194C111.959 75.595 110.62 74.836 108.986 75.7847C107.351 76.7334 106.012 79.0644 106.012 80.9888C106.012 82.9132 107.351 83.6722 108.986 82.7235C110.647 81.7477 111.959 79.4167 111.959 77.5194Z","fill":"#686868"}] -131:["$","path",null,{"d":"M111.715 78.3864C111.715 77.0312 110.777 76.4891 109.625 77.1667C108.473 77.8443 107.535 79.4706 107.535 80.8259C107.535 82.1811 108.473 82.7232 109.625 82.0456C110.777 81.368 111.715 79.7146 111.715 78.3864Z","fill":"#EAECF2"}] -187:T664,M109.761 78.1692C109.627 78.2505 109.52 78.1963 109.52 78.0337C109.52 77.8981 109.627 77.7084 109.761 77.6271C109.895 77.5458 109.975 77.6 109.975 77.7626C109.975 77.9252 109.895 78.115 109.761 78.1692ZM109.975 81.3133C109.975 81.1778 109.868 81.0965 109.761 81.1778C109.627 81.2591 109.52 81.4218 109.52 81.5844C109.52 81.7199 109.627 81.8012 109.761 81.7199C109.895 81.6386 109.975 81.476 109.975 81.3133ZM111.288 79.0637C111.422 78.9823 111.529 78.8197 111.529 78.6571C111.529 78.4945 111.422 78.4402 111.288 78.5216C111.154 78.6029 111.074 78.7655 111.047 78.9281C111.047 79.0908 111.154 79.145 111.288 79.0637ZM108.234 80.8526C108.368 80.7712 108.475 80.6086 108.475 80.446C108.475 80.3105 108.368 80.2291 108.234 80.3105C108.1 80.3918 108.02 80.5815 108.02 80.717C108.02 80.8526 108.127 80.9068 108.234 80.8526ZM110.993 77.8981C111.074 77.7355 111.074 77.5729 110.993 77.5187C110.913 77.4645 110.752 77.5458 110.672 77.7084C110.591 77.871 110.591 78.0337 110.672 78.0879C110.752 78.1421 110.913 78.0608 110.993 77.8981ZM108.85 81.6657C108.93 81.5031 108.93 81.3404 108.85 81.2862C108.77 81.232 108.609 81.3133 108.529 81.476C108.448 81.6386 108.448 81.8012 108.529 81.8554C108.609 81.8825 108.743 81.8012 108.85 81.6657ZM110.672 80.5815C110.752 80.6357 110.913 80.5544 110.993 80.3918C111.074 80.2292 111.074 80.0665 110.993 80.0123C110.913 79.9581 110.752 80.0394 110.672 80.202C110.591 80.3647 110.591 80.5273 110.672 80.5815ZM108.529 79.3347C108.609 79.3889 108.77 79.3076 108.85 79.145C108.93 78.9823 108.93 78.8197 108.85 78.7655C108.77 78.7113 108.609 78.7926 108.529 78.9552C108.421 79.1179 108.421 79.2805 108.529 79.3347Z132:["$","path",null,{"d":"$187","fill":"#686868"}] -133:["$","path",null,{"d":"M110.993 79.308C110.993 78.7117 110.564 78.4678 110.055 78.7659C109.546 79.0641 109.117 79.7959 109.117 80.4193C109.117 81.0156 109.546 81.2596 110.055 80.9614C110.564 80.6361 110.993 79.9043 110.993 79.308Z","fill":"#ffffff"}] -134:["$","path",null,{"d":"M117.423 70.3367L114.878 66.2981L110.591 63.7773L97.651 69.6591L96.0703 75.6763V79.8776L101.804 83.2385L102.661 82.7235V78.9289L106.305 72.3153L114.369 67.5991L116.619 71.1498L117.476 76.5979L118.334 75.9203L117.423 70.3367Z","fill":"#ffffff"}] -135:["$","path",null,{"d":"M117.478 76.5986L116.62 71.1506L114.37 67.5999L106.306 72.3161L102.662 78.9296V82.7243L101.805 83.2393V79.038L103.385 73.0208L114.879 66.2988L117.424 70.3374L118.335 75.921L117.478 76.5986Z","fill":"#686868"}] -136:["$","path",null,{"d":"M96.0988 75.7031L95.9648 79.8502L101.805 83.2382V79.037L96.0988 75.7031Z","fill":"#ffffff"}] -137:["$","path",null,{"opacity":"0.5","d":"M96.0988 75.7031L95.9648 79.8502L101.805 83.2382V79.037L96.0988 75.7031Z","fill":"#686868"}] -138:["$","path",null,{"opacity":"0.5","d":"M103.384 73.0192L101.804 79.0364L96.0703 75.6755L97.651 69.6582L103.384 73.0192Z","fill":"#686868"}] -139:["$","path",null,{"d":"M98.0293 0L33.3555 37.784V79.7692L67.3266 99.6099L132 61.8259V19.8407L98.0293 0Z","fill":"white"}] -13a:["$","path",null,{"opacity":"0.4","d":"M132.002 19.8398V61.8251L67.3281 99.609V57.6238L132.002 19.8398Z","fill":"#686868"}] -13b:["$","path",null,{"opacity":"0.2","d":"M33.3555 37.7832L67.3266 57.6239V99.6091L33.3555 79.7684V37.7832Z","fill":"#686868"}] -13c:["$","path",null,{"opacity":"0.5","d":"M38.5508 66.4609V82.8051L62.127 96.5743V80.2572L38.5508 66.4609Z","fill":"#686868"}] -13d:["$","path",null,{"d":"M62.1268 104.544L57.7599 101.996L42.1406 111.103V111.944L46.5076 114.491L62.1268 105.357V104.544Z","fill":"#ffffff"}] -13e:["$","path",null,{"d":"M62.1268 104.544L57.7599 101.996L42.1406 111.103V111.944L46.5076 114.491L62.1268 105.357V104.544Z","fill":"#686868"}] -13f:["$","path",null,{"d":"M46.5076 113.651L62.1268 104.544L57.7599 101.996L42.1406 111.103L46.5076 113.651Z","fill":"#ffffff"}] -140:["$","path",null,{"d":"M57.7599 98.6348L42.1406 107.769V111.103L42.9711 111.618L58.6172 102.484V99.1227L57.7599 98.6348Z","fill":"#ffffff"}] -141:["$","path",null,{"d":"M42.9711 108.257L42.1406 107.769V111.103L42.9711 111.618L58.6172 102.484V99.123L42.9711 108.257Z","fill":"#686868"}] -142:["$","path",null,{"d":"M57.1733 74.1581L55.807 73.3721L38.4731 63.2349L37.8033 62.8555L24.9168 70.3635L23.9523 71.7187L20.9785 81.368V81.9643L6.3505 94.2156L6.10938 95.9503V106.928L23.6844 117.2L25.0507 117.038L42.5453 108.5L58.62 99.1216V81.9643L57.1733 74.1581Z","fill":"white"}] -143:["$","path",null,{"d":"M37.8014 62.8555L24.9149 70.3635L23.9504 71.7187L20.9766 81.368V95.8961L37.0245 86.5179V69.3606L38.4712 63.2349L37.8014 62.8555Z","fill":"white"}] -144:["$","path",null,{"d":"M42.6774 82.642L23.9504 71.7188L20.9766 81.368V95.8962L42.5434 108.5V93.9717L42.6774 82.642Z","fill":"white"}] -145:["$","path",null,{"d":"M24.4335 72.9648L21.9688 80.9607L41.7406 92.5344L41.8478 83.1291L24.4335 72.9648Z","fill":"#ffffff"}] -146:["$","path",null,{"opacity":"0.3","d":"M41.8494 83.1299L41.3136 82.8047L33.2227 87.548L34.6158 88.3612L41.8226 84.1599L41.8494 83.1299Z","fill":"#706680"}] -147:["$","path",null,{"d":"M6.35156 94.215L20.9795 82.5329L21.4082 81.6113L6.35156 94.215Z","fill":"white"}] -148:["$","path",null,{"d":"M6.35156 106.114L20.9795 95.8958V82.5332L6.35156 94.2153V106.114Z","fill":"white"}] -149:["$","path",null,{"d":"M6.10938 95.9495V106.927L6.3505 106.114V94.2148L6.10938 95.9495Z","fill":"white"}] -14a:["$","path",null,{"d":"M55.8085 73.373L42.9219 80.881L42.6808 82.6429L42.5469 93.9726V108.501L58.6216 99.1225V81.9652L57.1748 74.1591L55.8085 73.373Z","fill":"white"}] -14b:["$","path",null,{"opacity":"0.4","d":"M55.8085 73.373L42.9219 80.881L42.6808 82.6429L42.5469 93.9726V108.501L58.6216 99.1225V81.9652L57.1748 74.1591L55.8085 73.373Z","fill":"#686868"}] -14c:["$","path",null,{"opacity":"0.4","d":"M43.5352 106.766V93.4573L43.5887 93.105V82.6425L43.8834 82.1546L55.9395 75.1074L56.2074 75.2701L57.6541 82.7509V98.553L57.6005 98.5801L43.5352 106.766ZM43.7495 82.6967V93.1321L43.6959 93.4844V106.495L57.4398 98.4717V82.7781L56.0198 75.3785L55.9127 75.3243L43.9906 82.2902L43.7495 82.6967Z","fill":"#686868"}] -14d:["$","path",null,{"opacity":"0.2","d":"M25.0508 105.139L42.5454 95.1377L42.1167 93.7012L25.0508 105.139Z","fill":"#686868"}] -14e:["$","path",null,{"opacity":"0.4","d":"M25.0508 117.037L42.5454 108.499V95.1367L25.0508 105.138V117.037Z","fill":"#686868"}] -14f:["$","path",null,{"opacity":"0.4","d":"M23.6836 106.223V117.2L25.0499 117.038V105.139L23.6836 106.223Z","fill":"#686868"}] -150:["$","path",null,{"d":"M44.3125 82.8315L44.4197 92.5621L44.3393 93.1042V93.9445L56.824 84.6205V83.2923L55.3772 76.3535L44.3125 82.8315Z","fill":"#ffffff"}] -151:["$","path",null,{"d":"M55.1641 92.8872L56.3697 92.1825V88.957L55.1641 89.6617V92.8872Z","fill":"#ffffff"}] -152:["$","path",null,{"d":"M56.1826 90.3397L55.3789 90.8005V90.15L56.1826 89.6621V90.3397Z","fill":"#686868"}] -153:["$","path",null,{"d":"M23.6844 106.224V117.201L6.10938 106.929V95.9512L23.6844 106.224Z","fill":"white"}] -154:["$","path",null,{"opacity":"0.2","d":"M25.0507 105.138L23.6844 106.222L6.10938 95.9495L6.3505 94.2148L25.0507 105.138Z","fill":"#686868"}] -155:["$","path",null,{"d":"M42.1177 93.7L21.4082 81.6113L6.35156 94.215L25.0518 105.138L42.1177 93.7Z","fill":"white"}] -156:["$","path",null,{"opacity":"0.2","d":"M42.9213 80.8799L42.6801 82.6417L23.9531 71.7185L24.9176 70.3633L42.9213 80.8799Z","fill":"#686868"}] -157:["$","path",null,{"d":"M55.8082 73.3721L42.9216 80.8801L24.918 70.3635L37.8045 62.8555L55.8082 73.3721Z","fill":"white"}] -158:["$","path",null,{"d":"M22.9062 80.5814V81.4217L29.9255 76.1634L25.2639 73.4258L22.9866 80.0393L22.9062 80.5814Z","fill":"#686868"}] -159:["$","path",null,{"d":"M41.7406 92.5343L41.7674 89.8781L24.9158 80.0391L21.9688 80.9606L41.7406 92.5343Z","fill":"#686868"}] -15a:["$","path",null,{"d":"M52.6445 87.7378L54.0913 80.1214L51.5193 78.6035L44.3125 82.8319L44.3661 87.3854L49.2957 90.2585L52.6445 87.7378Z","fill":"#686868"}] -15b:["$","path",null,{"d":"M37.0546 83.1024L39.1443 81.5574L32.125 77.4375L32.1518 80.2293L37.0546 83.1024Z","fill":"#686868"}] -15c:["$","path",null,{"d":"M21.9688 80.9605L41.7406 92.5071L41.8478 83.1018L24.4603 72.9375L21.9688 80.9605ZM41.5799 83.2644L41.4727 92.1005L22.2367 80.8521L24.5675 73.317L41.5799 83.2644Z","fill":"#686868"}] -15d:["$","path",null,{"d":"M44.3398 93.1039V93.9441L49.2962 90.2579L44.3666 87.3848L44.4202 92.5618L44.3398 93.1039Z","fill":"#ffffff"}] -15e:["$","path",null,{"d":"M44.3125 82.8315L44.4197 92.5621L44.3393 93.1042V93.9174L56.824 84.5933V83.2923L55.3772 76.3535L44.3125 82.8315ZM56.5828 84.4849L44.6072 93.4295V93.1313L44.6876 92.5892L44.5804 82.9671L55.2433 76.733L56.6096 83.3194V84.4849H56.5828Z","fill":"#686868"}] -15f:["$","path",null,{"d":"M8.76172 98.6074V107.389L20.8981 114.464V105.709L8.76172 98.6074Z","fill":"#ffffff"}] -160:["$","path",null,{"d":"M19.6394 111.942V112.484L9.16406 106.359V105.817L19.6394 111.942ZM9.16406 104.868V105.41L19.6394 111.536V110.994L9.16406 104.868ZM19.6394 112.864L9.16406 106.738V107.145L19.6394 113.271V112.864ZM9.16406 103.946V104.489L19.6394 110.614V110.072L9.16406 103.946ZM9.16406 100.314V100.748L19.6394 106.874V106.44L9.16406 100.314ZM9.16406 102.998V103.54L19.6394 109.666V109.123L9.16406 102.998ZM9.16406 101.128V101.67L19.6394 107.795V107.253L9.16406 101.128ZM9.16406 102.076V102.618L19.6394 108.744V108.202L9.16406 102.076Z","fill":"#686868"}] -161:["$","path",null,{"opacity":"0.4","d":"M20.7109 98.6334L21.2736 100.314L32.8205 93.1582L20.7109 98.6334Z","fill":"#686868"}] -162:["$","path",null,{"d":"M14.6285 94.5132L14.0391 95.5161L22.6926 86.707L14.6285 94.5132Z","fill":"white"}] -163:["$","path",null,{"d":"M21.2727 100.314L20.7101 98.6336L14.6285 94.5137L14.0391 95.5165L21.2727 100.314Z","fill":"#ffffff"}] -164:["$","path",null,{"opacity":"0.2","d":"M22.693 86.707L32.8201 93.158L20.7105 98.6331L14.6289 94.5132L22.693 86.707Z","fill":"#686868"}] -165:["$","path",null,{"d":"M43.5088 114.761L28.6933 120.914L27.8359 121.429V117.2L29.4166 111.183L40.91 104.488L43.4552 108.527L44.3661 114.11L43.5088 114.761Z","fill":"#ffffff"}] -166:["$","path",null,{"d":"M43.5088 114.761L28.6933 120.914L27.8359 121.429V117.2L29.4166 111.183L40.91 104.488L43.4552 108.527L44.3661 114.11L43.5088 114.761Z","fill":"#686868"}] -167:["$","path",null,{"d":"M47.8196 117.281L43.5062 114.761L42.6221 109.34L40.3984 105.789L44.685 108.31L46.9355 111.861L47.8196 117.281Z","fill":"#ffffff"}] -168:["$","path",null,{"d":"M44.9531 116.93C44.9531 115.196 44.3369 113.976 43.3724 113.407L40.5058 111.726C39.5413 111.157 38.2017 111.238 36.7014 112.106C33.7276 113.84 31.3164 118.042 31.3164 121.511C31.3164 123.246 31.9326 124.465 32.8971 125.035L35.7637 126.715C36.7282 127.284 38.0946 127.203 39.5681 126.336C42.5419 124.628 44.9531 120.4 44.9531 116.93Z","fill":"#ffffff"}] -169:["$","path",null,{"d":"M44.9536 116.929C44.9536 113.46 42.5424 112.078 39.5686 113.812C36.5948 115.547 34.1836 119.748 34.1836 123.218C34.1836 126.687 36.5948 128.097 39.5686 126.335C42.5424 124.627 44.9536 120.399 44.9536 116.929Z","fill":"#686868"}] -16a:["$","path",null,{"d":"M42.8903 118.15C42.8903 116.008 41.39 115.141 39.5682 116.225C37.7196 117.309 36.2461 119.911 36.2461 122.053C36.2461 124.194 37.7464 125.061 39.5682 123.977C41.4168 122.893 42.8903 120.291 42.8903 118.15Z","fill":"#EAECF2"}] -16b:["$","path",null,{"d":"M42.2992 118.205C42.2992 116.281 40.9596 115.522 39.3254 116.47C37.6911 117.419 36.3516 119.75 36.3516 121.674C36.3516 123.599 37.6911 124.358 39.3254 123.409C40.9596 122.433 42.2992 120.102 42.2992 118.205Z","fill":"#686868"}] -16c:["$","path",null,{"d":"M42.031 119.072C42.031 117.717 41.0933 117.175 39.9413 117.852C38.7893 118.53 37.8516 120.156 37.8516 121.511C37.8516 122.867 38.7893 123.409 39.9413 122.731C41.0933 122.054 42.031 120.427 42.031 119.072Z","fill":"#EAECF2"}] -188:T66c,M40.0769 118.882C39.943 118.963 39.8358 118.882 39.8358 118.746C39.8358 118.611 39.943 118.421 40.0769 118.34C40.2109 118.258 40.3181 118.313 40.3181 118.475C40.3181 118.638 40.2109 118.801 40.0769 118.882ZM40.3181 122.026C40.3181 121.89 40.2109 121.809 40.0769 121.89C39.943 121.972 39.8358 122.134 39.8358 122.297C39.8358 122.46 39.943 122.514 40.0769 122.433C40.2109 122.351 40.3181 122.162 40.3181 122.026ZM41.604 119.776C41.738 119.695 41.8451 119.532 41.8451 119.37C41.8451 119.234 41.738 119.153 41.604 119.234C41.4701 119.316 41.3629 119.478 41.3629 119.641C41.3629 119.776 41.4701 119.831 41.604 119.776ZM38.5766 121.538C38.7106 121.457 38.8177 121.294 38.8177 121.132C38.8177 120.996 38.7106 120.915 38.6034 120.996C38.4695 121.077 38.3891 121.24 38.3891 121.403C38.3355 121.565 38.4427 121.619 38.5766 121.538ZM41.3093 118.584C41.3897 118.421 41.3897 118.258 41.3093 118.204C41.229 118.15 41.0682 118.231 40.9878 118.394C40.9075 118.557 40.9075 118.719 40.9878 118.773C41.095 118.828 41.229 118.746 41.3093 118.584ZM39.166 122.351C39.2464 122.189 39.2464 122.026 39.166 121.972C39.0857 121.918 38.9249 121.999 38.8445 122.162C38.7642 122.324 38.7642 122.487 38.8445 122.541C38.9517 122.595 39.0857 122.514 39.166 122.351ZM40.9878 121.294C41.0682 121.348 41.229 121.267 41.3093 121.104C41.3897 120.942 41.3897 120.779 41.3093 120.725C41.229 120.671 41.0682 120.752 40.9878 120.915C40.9075 121.077 40.9075 121.24 40.9878 121.294ZM38.8445 120.047C38.9249 120.102 39.0857 120.02 39.166 119.858C39.2464 119.695 39.2464 119.532 39.166 119.478C39.0857 119.424 38.9249 119.505 38.8445 119.668C38.7642 119.831 38.7642 119.993 38.8445 120.047Z16d:["$","path",null,{"d":"$188","fill":"#686868"}] -16e:["$","path",null,{"d":"M41.309 119.993C41.309 119.369 40.8803 119.152 40.3713 119.451C39.8623 119.749 39.4336 120.508 39.4336 121.104C39.4336 121.727 39.8623 121.944 40.3713 121.646C40.9071 121.348 41.309 120.616 41.309 119.993Z","fill":"#ffffff"}] -16f:["$","path",null,{"d":"M47.7661 111.048L45.2209 106.982L40.9075 104.488L27.9942 110.343L26.3867 116.387V120.588L32.12 123.949L32.9773 123.434V119.613L36.6477 112.999L44.6851 108.31L46.9355 111.861L47.8196 117.282L48.6502 116.604L47.7661 111.048Z","fill":"white"}] -170:["$","path",null,{"opacity":"0.4","d":"M47.8207 117.282L46.9366 111.861L44.6861 108.311L36.6488 113L32.9784 119.613V123.435L32.1211 123.95V119.722L33.7286 113.704L45.222 106.982L47.7671 111.048L48.6512 116.605L47.8207 117.282Z","fill":"#686868"}] -171:["$","path",null,{"d":"M26.4153 116.387L25.7188 116.712V120.208L32.1218 123.949V119.721L26.4153 116.387Z","fill":"#ffffff"}] -172:["$","path",null,{"opacity":"0.5","d":"M26.4153 116.387L25.7188 116.712V120.208L32.1218 123.949V119.721L26.4153 116.387Z","fill":"#686868"}] -173:["$","path",null,{"opacity":"0.2","d":"M33.7275 113.705L32.12 119.722L26.3867 116.388L27.9942 110.344L33.7275 113.705Z","fill":"#686868"}] -174:["$","path",null,{"opacity":"0.4","d":"M28.6113 111.129L27.3789 115.818L28.6113 115.086V111.129Z","fill":"#686868"}] -175:["$","path",null,{"d":"M28.6113 115.086L27.3789 115.818L31.6655 118.339L32.0138 117.065L28.6113 115.086Z","fill":"white"}] -176:["$","path",null,{"d":"M32.9267 113.65L28.6133 111.129V115.086L32.0158 117.065L32.9267 113.65Z","fill":"#ffffff"}] -177:["$","path",null,{"d":"M29.6016 111.697V114.516L32.2539 116.061L32.9237 113.649L29.6016 111.697Z","fill":"white"}] -178:["$","path",null,{"d":"M50.2602 90.747L49.4832 89.446L47.7418 88.416L46.9648 88.8497V93.5659L47.7418 94.894L49.4832 95.924L50.2602 95.4903V90.747Z","fill":"#ffffff"}] -179:["$","path",null,{"opacity":"0.5","d":"M49.4832 89.446L47.7418 88.416L46.9648 88.8497V93.5659L47.0988 93.7827V89.6628L47.5542 89.3918L48.867 90.1778L49.2957 90.9368V95.138L48.867 95.409L47.6078 94.6772L47.7418 94.894L49.4832 95.924L50.2602 95.4903V90.747L49.4832 89.446Z","fill":"#686868"}] -17a:["$","path",null,{"d":"M45.8383 90.8281L45.0078 91.316V93.4302L47.0975 93.8638V92.2918L46.9636 91.9936L45.8383 90.8281Z","fill":"#ffffff"}] -17b:["$","path",null,{"opacity":"0.5","d":"M45.0078 91.3164L47.0975 92.2922V93.8642L45.0078 93.4306V91.3164Z","fill":"#686868"}] -17c:["$","div",null,{"className":"elementor-element elementor-element-fb01b90 elementor-widget elementor-widget-logico_heading","data-id":"fb01b90","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"Last Mile"}]}]}] -17d:["$","div",null,{"className":"elementor-element elementor-element-1057c22 elementor-widget elementor-widget-text-editor","data-id":"1057c22","data-element_type":"widget","data-e-type":"widget","data-widget_type":"text-editor.default","children":["$","div",null,{"className":"elementor-widget-container","children":["$","p",null,{"children":"Packages are delivered to customers with real-time updates and proof of delivery."}]}]}] -180:["$","article",null,{"className":"wcd-card","style":{"height":"100%"},"children":[["$","div",null,{"className":"wcd-card-media","children":["$","$L17f",null,{"src":"/images/last-mile-approach.jpg","alt":"Hub to Doorstep","fill":true,"sizes":"(max-width: 1020px) 100vw, 33vw"}]}],["$","div",null,{"className":"wcd-card-body","children":[["$","div",null,{"className":"wcd-card-label","children":"03 / Last Mile"}],["$","h3",null,{"className":"wcd-card-title","children":"Hub to Doorstep"}],["$","p",null,{"className":"wcd-card-desc","children":"The final and most complex phase. We optimise multi-stop routes, deliver within precise windows, and capture digital proof of delivery at every door."}],["$","ul",null,{"className":"wcd-card-points","children":[["$","li","Multi-stop route optimisation",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Multi-stop route optimisation"}]]}],["$","li","Precise delivery windows",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Precise delivery windows"}]]}],["$","li","Digital proof of delivery",{"children":[["$","svg",null,{"className":"wcd-check","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","aria-hidden":"true","children":[["$","circle",null,{"cx":"12","cy":"12","r":"10"}],["$","path",null,{"d":"m9 12 2 2 4-4"}]]}],["$","span",null,{"children":"Digital proof of delivery"}]]}]]}]]}]]}] +2:I[74528,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b-q_kb9hrnlj.js"],"default"] +3:I[16948,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b-q_kb9hrnlj.js"],"default"] +4:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] +5:"$Sreact.suspense" +0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"59","className":"elementor elementor-59","children":[["$","$L2",null,{}],["$","$L3",null,{}]]}]}]}]}],[["$","script","script-0",{"src":"/_next/static/chunks/0b-q_kb9hrnlj.js","async":true}]],["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} +6:null diff --git a/build/how-it-works/__next.how-it-works.txt b/build/how-it-works/__next.how-it-works.txt index 1334b06..19dcdca 100644 --- a/build/how-it-works/__next.how-it-works.txt +++ b/build/how-it-works/__next.how-it-works.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/images/b5b560fe-aab0-4fe6-9f8c-4b187c2f0e99.png b/build/images/b5b560fe-aab0-4fe6-9f8c-4b187c2f0e99.png new file mode 100644 index 0000000..b74d2e9 Binary files /dev/null and b/build/images/b5b560fe-aab0-4fe6-9f8c-4b187c2f0e99.png differ diff --git a/build/images/mile-1.png b/build/images/mile-1.png new file mode 100644 index 0000000..0287905 Binary files /dev/null and b/build/images/mile-1.png differ diff --git a/build/index.html b/build/index.html index 2ba4d2f..f91ed5d 100644 --- a/build/index.html +++ b/build/index.html @@ -1,4 +1,4 @@ -Doormile — Delivering Trust. Beyond Boundaries

Doormile

Doormile

EV Logistics

Cleaner miles, lower costs

/ EV-Native Design /

BUILT FOR ELECTRIC. NOT ADAPTED.

DoorMile electric delivery van
100%ELECTRIC FLEET
-40%COST / MILE
Battery-Aware Routing

Battery level, health, and degradation are first-class inputs to route optimization — not afterthoughts.

Charging Integration

Seamlessly integrate charging stops without compromising delivery windows or SLA commitments.

Energy-Optimized Paths

Factor in elevation, speed limits, payload weight, and live weather for maximum range efficiency.

Predictable Operations

EVs become predictable assets, not operational risks. Full visibility from depot to doorstep.

SLA Compliance0.0%
Distance Saved0%
Fewer Vehicles0%
Dispatch Latency0ms
/ Industry Solutions /

Smart solutions built exclusively for your industry

\ No newline at end of file + \ No newline at end of file diff --git a/build/index.txt b/build/index.txt index 65ff8b6..32e6943 100644 --- a/build/index.txt +++ b/build/index.txt @@ -1,19 +1,19 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -c:I[97677,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -d:I[58140,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -e:I[36854,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -17:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +c:I[97677,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +d:I[58140,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +e:I[36854,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +17:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -21,14 +21,14 @@ e:I[36854,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"61","className":"elementor elementor-61","children":[["$","$Lc",null,{}],["$","$Ld",null,{}],["$","$Le",null,{}],["$","div",null,{"className":"elementor-element elementor-element-b62c0b3 e-con-full e-flex cut-corner-no sticky-container-off e-con e-parent","data-id":"b62c0b3","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-592e9e8 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"592e9e8","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-ab41b28 elementor-widget elementor-widget-logico_marquee","data-id":"ab41b28","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_marquee.default","children":["$","div",null,{"className":"elementor-widget-container","children":"$Lf"}]}]}]}],"$L10","$L11","$L12","$L13"]}]}]}]}],["$L14"],"$L15"]}],{},null,false,null]},null,false,null],"$L16",false]],"m":"$undefined","G":["$17",["$L18"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -1b:I[32693,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -1c:I[24911,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -1d:I[14224,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"default"] -22:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +0:{"P":null,"c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"61","className":"elementor elementor-61","children":[["$","$Lc",null,{}],["$","$Ld",null,{}],["$","$Le",null,{}],["$","div",null,{"className":"elementor-element elementor-element-b62c0b3 e-con-full e-flex cut-corner-no sticky-container-off e-con e-parent","data-id":"b62c0b3","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-592e9e8 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"592e9e8","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"elementor-element elementor-element-ab41b28 elementor-widget elementor-widget-logico_marquee","data-id":"ab41b28","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_marquee.default","children":["$","div",null,{"className":"elementor-widget-container","children":"$Lf"}]}]}]}],"$L10","$L11","$L12","$L13"]}]}]}]}],["$L14"],"$L15"]}],{},null,false,null]},null,false,null],"$L16",false]],"m":"$undefined","G":["$17",["$L18"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +1b:I[32693,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +1c:I[24911,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +1d:I[14224,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"default"] +22:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 23:"$Sreact.suspense" -25:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -27:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +25:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +27:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] f:["$","div",null,{"className":"logico-ticker-wrapper","style":{"overflow":"hidden","position":"relative","width":"100%"},"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"\n @keyframes cssMarquee {\n 0% { transform: translate3d(0, 0, 0); }\n 100% { transform: translate3d(-33.33%, 0, 0); }\n }\n .marquee-container-css {\n display: flex;\n width: max-content;\n animation: cssMarquee 25s linear infinite;\n }\n .marquee-container-css:hover {\n animation-play-state: paused;\n }\n "}}],["$","div",null,{"className":"marquee-container-css","children":[["$","div","0",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","1",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","2",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","3",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","4",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","5",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","6",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}],["$","div","7",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":"$L19"}]]}],"$L1a"]}]]}] 10:["$","$L1b",null,{}] 11:["$","$L1c",null,{}] @@ -71,13 +71,13 @@ f:["$","div",null,{"className":"logico-ticker-wrapper","style":{"overflow":"hidd } } 13:["$","div",null,{"className":"elementor-element elementor-element-3b4a7cc e-flex e-con-boxed cut-corner-no sticky-container-off e-con e-parent","data-id":"3b4a7cc","data-element_type":"container","data-e-type":"container","children":["$","div",null,{"className":"e-con-inner","children":["$","div",null,{"className":"elementor-element elementor-element-d602f7f e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"d602f7f","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-f64bd88 e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"f64bd88","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-5ed2dbb e-con-full e-flex cut-corner-no sticky-container-off e-con e-child","data-id":"5ed2dbb","data-element_type":"container","data-e-type":"container","children":[["$","div",null,{"className":"elementor-element elementor-element-c8162c4 elementor-widget elementor-widget-logico_heading industry-section-label","data-id":"c8162c4","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$1e"}}],["$","div",null,{"className":"elementor-widget-container","children":["$","div",null,{"className":"logico-title","children":"/ Industry Solutions /"}]}]]}],["$","div",null,{"className":"elementor-element elementor-element-1487241 elementor-widget__width-initial elementor-widget elementor-widget-logico_heading","data-id":"1487241","data-element_type":"widget","data-e-type":"widget","data-widget_type":"logico_heading.default","children":["$","div",null,{"className":"elementor-widget-container","style":{"margin":"30px 0 0 0"},"children":["$","h3",null,{"className":"logico-title","style":{"fontSize":"clamp(28px, 3.5vw, 48px)","lineHeight":"1.1","fontWeight":800,"textTransform":"uppercase","maxWidth":"900px"},"children":"$L1f"}]}]}]]}],"$L20"]}],"$L21"]}]}]}] -14:["$","script","script-0",{"src":"/_next/static/chunks/000jk3-x5hh9p.js","async":true,"nonce":"$undefined"}] +14:["$","script","script-0",{"src":"/_next/static/chunks/0szb3fwecq10z.js","async":true,"nonce":"$undefined"}] 15:["$","$L22",null,{"children":["$","$23",null,{"name":"Next.MetadataOutlet","children":"$@24"}]}] 16:["$","$1","h",{"children":[null,["$","$L25",null,{"children":"$L26"}],["$","div",null,{"hidden":true,"children":["$","$L27",null,{"children":["$","$23",null,{"name":"Next.Metadata","children":"$L28"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -18:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] -29:I[2018,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"ScrollReveal"] -2a:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],""] -2b:I[5500,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/000jk3-x5hh9p.js"],"Image"] +18:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +29:I[2018,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"ScrollReveal"] +2a:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],""] +2b:I[5500,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0szb3fwecq10z.js"],"Image"] 19:["$","i",null,{"className":"fontello icon-half-logo"}] 1a:["$","div","8",{"className":"ticker","style":{"display":"inline-flex","alignItems":"center","whiteSpace":"nowrap","paddingRight":"50px"},"children":[["$","span",null,{"className":"ticker-text","children":["$","p",null,{"style":{"margin":0,"display":"inline"},"children":"30% More Cost Efficient"}]}],["$","span",null,{"className":"separator","style":{"marginLeft":"25px","display":"inline-flex","alignItems":"center"},"children":["$","i",null,{"className":"fontello icon-half-logo"}]}]]}] 1f:["$","$L29",null,{"delay":0.05,"duration":0.8,"yOffset":25,"children":["Smart solutions built exclusively for your ",["$","span",null,{"style":{"color":"#c01227"},"children":"industry"}]]}] @@ -88,6 +88,6 @@ f:["$","div",null,{"className":"logico-ticker-wrapper","style":{"overflow":"hidd 2e:["$","div",null,{"className":"industry-card-hover-bottom","children":[["$","div",null,{"className":"industry-card-hover-icon","children":["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"3","strokeLinecap":"round","strokeLinejoin":"round","style":{"width":"20px","height":"20px"},"children":[["$","line",null,{"x1":"7","y1":"17","x2":"17","y2":"7"}],["$","polyline",null,{"points":"7 7 17 7 17 17"}]]}]}],["$","h4",null,{"className":"industry-card-hover-title","children":"Pharmaceutical"}]]}] 2f:["$","$L2a",null,{"href":"/solutions","className":"industry-card-link","children":[["$","div",null,{"className":"industry-card-bg","children":["$","$L2b",null,{"src":"/images/tab-pic-3.jpeg","alt":"Enterprise Logistics","fill":true,"style":{"objectFit":"cover"},"sizes":"(max-width: 768px) 100vw, (max-width: 1024px) 50vw, 33vw"}]}],["$","div",null,{"className":"industry-card-overlay"}],["$","div",null,{"className":"industry-card-hover-bg"}],["$","div",null,{"className":"industry-card-default-content","children":["$","h4",null,{"className":"industry-card-default-title","children":"Enterprise & B2B"}]}],["$","div",null,{"className":"industry-card-hover-content","children":[["$","div",null,{"className":"industry-card-hover-top","children":[["$","p",null,{"className":"industry-card-description","children":"High-value shipments with complex delivery requirements."}],["$","div",null,{"children":[["$","h5",null,{"className":"industry-card-section-title","children":"Challenges"}],["$","ul",null,{"className":"industry-card-list","children":[["$","li",null,{"className":"industry-card-list-item bullet-1","children":"Appointment scheduling coordination"}],["$","li",null,{"className":"industry-card-list-item bullet-2","children":"White-glove delivery standards"}],["$","li",null,{"className":"industry-card-list-item bullet-3","children":"Multi-location routing complexity"}]]}]]}],["$","div",null,{"children":[["$","h5",null,{"className":"industry-card-section-title","children":"Doormile Solutions"}],["$","ul",null,{"className":"industry-card-list","children":[["$","li",null,{"className":"industry-card-list-item bullet-4","children":"Automated appointment optimization"}],["$","li",null,{"className":"industry-card-list-item bullet-5","children":"Service level guarantee tracking"}],["$","li",null,{"className":"industry-card-list-item bullet-6","children":"Enterprise integration APIs"}]]}]]}]]}],["$","div",null,{"className":"industry-card-hover-bottom","children":[["$","div",null,{"className":"industry-card-hover-icon","children":["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":"3","strokeLinecap":"round","strokeLinejoin":"round","style":{"width":"20px","height":"20px"},"children":[["$","line",null,{"x1":"7","y1":"17","x2":"17","y2":"7"}],["$","polyline",null,{"points":"7 7 17 7 17 17"}]]}]}],["$","h4",null,{"className":"industry-card-hover-title","children":"Enterprise & B2B"}]]}]]}]]}] 26:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -30:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +30:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 24:null 28:[["$","title","0",{"children":"Doormile — Delivering Trust. Beyond Boundaries"}],["$","meta","1",{"name":"description","content":"Doormile helps logistics companies track every mile with MileTruth™ AI. Real-time SLA protection and connected miles visibility."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L30","7",{}]] diff --git a/build/miletruth.html b/build/miletruth.html index 46f6119..5eddc36 100644 --- a/build/miletruth.html +++ b/build/miletruth.html @@ -1,4 +1,4 @@ -MileTruth – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

OPTIMIZE EVERY MILE

Cut travel distance, reduce operating cost, and improve fleet productivity across every route.

/ Performance /

SMARTER ROUTES. LOWER COSTS.

-42%DISTANCE SAVED
-37%FEWER VEHICLES
Performance InsightAI ENGINE
0%Distance Saved
0%Faster Routes
0%Lower Cost
0.0%On-Time
Route Optimization

AI selects the most efficient path across every zone.

Distance Reduction

Same volume delivered with a leaner, better-used fleet.

Fleet Efficiency

Higher utilisation and lower operating cost.

SLA Performance

Real-time correction keeps deliveries on time.

Distance Saved0%
Faster Routes0%
Lower Cost0%
On-Time0.0%
CHOOSE THE BEST PLAN

Analyze thousands of route possibilities and automatically select the most efficient delivery strategy.

/ Innovation /

MANY STRATEGIES. ONE BEST PLAN.

45msINFERENCE
100%SLA-FIRST
AI Decision EngineAI ENGINE
Generating Routes
6 plansRoute Plans Generated

Generate Routes

  • Parallel strategies explored
  • 59 orders in scope
  • Real-time combinations

The Parallel Universe Engine evaluates many routing strategies at once for every dispatch window, exploring route combinations in real time.

01/04
Inference0ms
Strategies0+
SLA Met0.0%
Adaptive0/7
CHOOSE THE BEST PLAN

Analyze thousands of route possibilities and automatically select the most efficient delivery strategy.

/ Innovation /

MANY STRATEGIES. ONE BEST PLAN.

AI route-planning engine selecting the best delivery plan
45msINFERENCE
100%SLA-FIRST
AI Decision EngineAI ENGINE
0msInference
0+Strategies
0.0%SLA Met
0/7Adaptive
Generate Routes

Many strategies explored per dispatch window.

Check Constraints

Battery, capacity, distance and time validated.

Score & Compare

Plans ranked by total cost in parallel.

Select Best Plan

SLA-first plan locked in and dispatched.

Inference0ms
Strategies0+
SLA Met0.0%
Adaptive0/7
\ No newline at end of file + \ No newline at end of file diff --git a/build/miletruth.txt b/build/miletruth.txt index e254f12..e948513 100644 --- a/build/miletruth.txt +++ b/build/miletruth.txt @@ -1,24 +1,24 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -c:I[58829,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0sbgg51muajoi.js"],"default"] -d:I[76756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0sbgg51muajoi.js"],"default"] -e:I[38730,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0sbgg51muajoi.js"],"default"] -f:I[33016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0sbgg51muajoi.js"],"default"] -10:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +c:I[58829,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b3v69j3z_cyv.js"],"default"] +d:I[76756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b3v69j3z_cyv.js"],"default"] +e:I[38730,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b3v69j3z_cyv.js"],"default"] +f:I[33016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b3v69j3z_cyv.js"],"default"] +10:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 11:"$Sreact.suspense" -14:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -16:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -18:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +14:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +16:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +18:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -26,10 +26,10 @@ f:I[33016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","miletruth"],"q":"","i":false,"f":[[["",{"children":["miletruth",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"59","className":"elementor elementor-59","children":[["$","$Lc",null,{}],["$","$Ld",null,{}],["$","$Le",null,{}],["$","$Lf",null,{}]]}]}]}]}],[["$","script","script-0",{"src":"/_next/static/chunks/0sbgg51muajoi.js","async":true,"nonce":"$undefined"}]],["$","$L10",null,{"children":["$","$11",null,{"name":"Next.MetadataOutlet","children":"$@12"}]}]]}],{},null,false,null]},null,false,"$@13"]},null,false,null],["$","$1","h",{"children":[null,["$","$L14",null,{"children":"$L15"}],["$","div",null,{"hidden":true,"children":["$","$L16",null,{"children":["$","$11",null,{"name":"Next.Metadata","children":"$L17"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$18",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","miletruth"],"q":"","i":false,"f":[[["",{"children":["miletruth",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"59","className":"elementor elementor-59","children":[["$","$Lc",null,{}],["$","$Ld",null,{}],["$","$Le",null,{}],["$","$Lf",null,{}]]}]}]}]}],[["$","script","script-0",{"src":"/_next/static/chunks/0b3v69j3z_cyv.js","async":true,"nonce":"$undefined"}]],["$","$L10",null,{"children":["$","$11",null,{"name":"Next.MetadataOutlet","children":"$@12"}]}]]}],{},null,false,null]},null,false,"$@13"]},null,false,null],["$","$1","h",{"children":[null,["$","$L14",null,{"children":"$L15"}],["$","div",null,{"hidden":true,"children":["$","$L16",null,{"children":["$","$11",null,{"name":"Next.Metadata","children":"$L17"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$18",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 19:[] 13:"$W19" 15:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -1a:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +1a:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 12:null 17:[["$","title","0",{"children":"MileTruth – Doormile"}],["$","meta","1",{"name":"description","content":"Optimizes every stage of the delivery journey for maximum efficiency. Explore the only AI built exclusively for logistics."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L1a","7",{}]] diff --git a/build/miletruth/__next._full.txt b/build/miletruth/__next._full.txt index e254f12..e948513 100644 --- a/build/miletruth/__next._full.txt +++ b/build/miletruth/__next._full.txt @@ -1,24 +1,24 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -c:I[58829,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0sbgg51muajoi.js"],"default"] -d:I[76756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0sbgg51muajoi.js"],"default"] -e:I[38730,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0sbgg51muajoi.js"],"default"] -f:I[33016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0sbgg51muajoi.js"],"default"] -10:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +c:I[58829,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b3v69j3z_cyv.js"],"default"] +d:I[76756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b3v69j3z_cyv.js"],"default"] +e:I[38730,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b3v69j3z_cyv.js"],"default"] +f:I[33016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b3v69j3z_cyv.js"],"default"] +10:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 11:"$Sreact.suspense" -14:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -16:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] -18:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +14:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +16:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] +18:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -26,10 +26,10 @@ f:I[33016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","miletruth"],"q":"","i":false,"f":[[["",{"children":["miletruth",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"59","className":"elementor elementor-59","children":[["$","$Lc",null,{}],["$","$Ld",null,{}],["$","$Le",null,{}],["$","$Lf",null,{}]]}]}]}]}],[["$","script","script-0",{"src":"/_next/static/chunks/0sbgg51muajoi.js","async":true,"nonce":"$undefined"}]],["$","$L10",null,{"children":["$","$11",null,{"name":"Next.MetadataOutlet","children":"$@12"}]}]]}],{},null,false,null]},null,false,"$@13"]},null,false,null],["$","$1","h",{"children":[null,["$","$L14",null,{"children":"$L15"}],["$","div",null,{"hidden":true,"children":["$","$L16",null,{"children":["$","$11",null,{"name":"Next.Metadata","children":"$L17"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$18",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} +0:{"P":null,"c":["","miletruth"],"q":"","i":false,"f":[[["",{"children":["miletruth",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"59","className":"elementor elementor-59","children":[["$","$Lc",null,{}],["$","$Ld",null,{}],["$","$Le",null,{}],["$","$Lf",null,{}]]}]}]}]}],[["$","script","script-0",{"src":"/_next/static/chunks/0b3v69j3z_cyv.js","async":true,"nonce":"$undefined"}]],["$","$L10",null,{"children":["$","$11",null,{"name":"Next.MetadataOutlet","children":"$@12"}]}]]}],{},null,false,null]},null,false,"$@13"]},null,false,null],["$","$1","h",{"children":[null,["$","$L14",null,{"children":"$L15"}],["$","div",null,{"hidden":true,"children":["$","$L16",null,{"children":["$","$11",null,{"name":"Next.Metadata","children":"$L17"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$18",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} 19:[] 13:"$W19" 15:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -1a:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +1a:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 12:null 17:[["$","title","0",{"children":"MileTruth – Doormile"}],["$","meta","1",{"name":"description","content":"Optimizes every stage of the delivery journey for maximum efficiency. Explore the only AI built exclusively for logistics."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L1a","7",{}]] diff --git a/build/miletruth/__next._head.txt b/build/miletruth/__next._head.txt index 48da591..f08ec73 100644 --- a/build/miletruth/__next._head.txt +++ b/build/miletruth/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"MileTruth – Doormile"}],["$","meta","1",{"name":"description","content":"Optimizes every stage of the delivery journey for maximum efficiency. Explore the only AI built exclusively for logistics."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"MileTruth – Doormile"}],["$","meta","1",{"name":"description","content":"Optimizes every stage of the delivery journey for maximum efficiency. Explore the only AI built exclusively for logistics."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/miletruth/__next._index.txt b/build/miletruth/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/miletruth/__next._index.txt +++ b/build/miletruth/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/miletruth/__next._tree.txt b/build/miletruth/__next._tree.txt index 3e42f0b..7f0bac6 100644 --- a/build/miletruth/__next._tree.txt +++ b/build/miletruth/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"miletruth","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"miletruth","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/miletruth/__next.miletruth.__PAGE__.txt b/build/miletruth/__next.miletruth.__PAGE__.txt index 76eb0f4..418d391 100644 --- a/build/miletruth/__next.miletruth.__PAGE__.txt +++ b/build/miletruth/__next.miletruth.__PAGE__.txt @@ -1,9 +1,9 @@ 1:"$Sreact.fragment" -2:I[58829,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0sbgg51muajoi.js"],"default"] -3:I[76756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0sbgg51muajoi.js"],"default"] -4:I[38730,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0sbgg51muajoi.js"],"default"] -5:I[33016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0sbgg51muajoi.js"],"default"] -6:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +2:I[58829,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b3v69j3z_cyv.js"],"default"] +3:I[76756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b3v69j3z_cyv.js"],"default"] +4:I[38730,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b3v69j3z_cyv.js"],"default"] +5:I[33016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/0b3v69j3z_cyv.js"],"default"] +6:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 7:"$Sreact.suspense" -0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"59","className":"elementor elementor-59","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{}],["$","$L5",null,{}]]}]}]}]}],[["$","script","script-0",{"src":"/_next/static/chunks/0sbgg51muajoi.js","async":true}]],["$","$L6",null,{"children":["$","$7",null,{"name":"Next.MetadataOutlet","children":"$@8"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"59","className":"elementor elementor-59","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{}],["$","$L5",null,{}]]}]}]}]}],[["$","script","script-0",{"src":"/_next/static/chunks/0b3v69j3z_cyv.js","async":true}]],["$","$L6",null,{"children":["$","$7",null,{"name":"Next.MetadataOutlet","children":"$@8"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 8:null diff --git a/build/miletruth/__next.miletruth.txt b/build/miletruth/__next.miletruth.txt index 1334b06..19dcdca 100644 --- a/build/miletruth/__next.miletruth.txt +++ b/build/miletruth/__next.miletruth.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/models/3d_scene_final.glb b/build/models/3d_scene_final.glb new file mode 100644 index 0000000..a7a7526 Binary files /dev/null and b/build/models/3d_scene_final.glb differ diff --git a/build/privacy-policy.html b/build/privacy-policy.html index 56a5002..3ba7e6a 100644 --- a/build/privacy-policy.html +++ b/build/privacy-policy.html @@ -1,4 +1,4 @@ -Privacy Policy – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

\ No newline at end of file + \ No newline at end of file diff --git a/build/privacy-policy.txt b/build/privacy-policy.txt index 28e9851..4adf379 100644 --- a/build/privacy-policy.txt +++ b/build/privacy-policy.txt @@ -1,16 +1,16 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -19:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +19:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -18,11 +18,11 @@ b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","privacy-policy"],"q":"","i":false,"f":[[["",{"children":["privacy-policy",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Privacy Policy","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","Information We Collect",{"children":["$","a",null,{"href":"#information-we-collect","children":"Information We Collect"}]}],["$","li","How We Use Your Information",{"children":["$","a",null,{"href":"#how-we-use-your-information","children":"How We Use Your Information"}]}],["$","li","Information Sharing",{"children":"$Lc"}],"$Ld","$Le","$Lf","$L10","$L11","$L12","$L13"]}]}]]}]}],"$L14"]}],"$L15"]}]}]}]}],null,"$L16"]}],{},null,false,null]},null,false,"$@17"]},null,false,null],"$L18",false]],"m":"$undefined","G":["$19",["$L1a"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -20:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +0:{"P":null,"c":["","privacy-policy"],"q":"","i":false,"f":[[["",{"children":["privacy-policy",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Privacy Policy","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","Information We Collect",{"children":["$","a",null,{"href":"#information-we-collect","children":"Information We Collect"}]}],["$","li","How We Use Your Information",{"children":["$","a",null,{"href":"#how-we-use-your-information","children":"How We Use Your Information"}]}],["$","li","Information Sharing",{"children":"$Lc"}],"$Ld","$Le","$Lf","$L10","$L11","$L12","$L13"]}]}]]}]}],"$L14"]}],"$L15"]}]}]}]}],null,"$L16"]}],{},null,false,null]},null,false,"$@17"]},null,false,null],"$L18",false]],"m":"$undefined","G":["$19",["$L1a"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +20:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 21:"$Sreact.suspense" -24:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -26:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +24:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +26:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] c:["$","a",null,{"href":"#information-sharing","children":"Information Sharing"}] d:["$","li","Data Security",{"children":["$","a",null,{"href":"#data-security","children":"Data Security"}]}] e:["$","li","Data Retention",{"children":["$","a",null,{"href":"#data-retention","children":"Data Retention"}]}] @@ -210,13 +210,13 @@ f:["$","li","Cookies and Tracking Technologies",{"children":["$","a",null,{"href 23:[] 17:"$W23" 18:["$","$1","h",{"children":[null,["$","$L24",null,{"children":"$L25"}],["$","div",null,{"hidden":true,"children":["$","$L26",null,{"children":["$","$21",null,{"name":"Next.Metadata","children":"$L27"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -1a:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] -28:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],""] +1a:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +28:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],""] 1b:["$","section","Your Rights",{"id":"your-rights","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Your Rights"}],[["$","p","0",{"className":"dm-legal__p","children":"Depending on applicable laws, you may have the right to:"}],["$","ul","1",{"className":"dm-legal__ul","children":[["$","li","0",{"children":"Access your personal information"}],["$","li","1",{"children":"Request correction of inaccurate data"}],["$","li","2",{"children":"Request deletion of personal information"}],["$","li","3",{"children":"Restrict or object to certain processing activities"}],["$","li","4",{"children":"Withdraw consent where applicable"}]]}]]]}] 1c:["$","section","Third-Party Links",{"id":"third-party-links","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Third-Party Links"}],[["$","p","0",{"className":"dm-legal__p","children":"Our website may contain links to third-party websites. We are not responsible for the privacy practices or content of external websites."}]]]}] 1d:["$","section","Policy Updates",{"id":"policy-updates","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Policy Updates"}],[["$","p","0",{"className":"dm-legal__p","children":"We may update this Privacy Policy periodically. Any changes will be posted on this page with a revised effective date."}]]]}] 1e:["$","section","Contact Us",{"id":"contact-us","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Contact Us"}],[["$","p","0",{"className":"dm-legal__p","children":["For privacy-related questions or requests, please contact us through our ",["$","$L28",null,{"href":"/contact","className":"dm-legal__link","children":"Contact page"}],"."]}]]]}] 25:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -29:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +29:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 22:null 27:[["$","title","0",{"children":"Privacy Policy – Doormile"}],["$","meta","1",{"name":"description","content":"How Doormile collects, uses, stores, and protects your information when you visit our website, interact with our services, or communicate with us."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L29","7",{}]] diff --git a/build/privacy-policy/__next._full.txt b/build/privacy-policy/__next._full.txt index 28e9851..4adf379 100644 --- a/build/privacy-policy/__next._full.txt +++ b/build/privacy-policy/__next._full.txt @@ -1,16 +1,16 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -19:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +19:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -18,11 +18,11 @@ b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","privacy-policy"],"q":"","i":false,"f":[[["",{"children":["privacy-policy",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Privacy Policy","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","Information We Collect",{"children":["$","a",null,{"href":"#information-we-collect","children":"Information We Collect"}]}],["$","li","How We Use Your Information",{"children":["$","a",null,{"href":"#how-we-use-your-information","children":"How We Use Your Information"}]}],["$","li","Information Sharing",{"children":"$Lc"}],"$Ld","$Le","$Lf","$L10","$L11","$L12","$L13"]}]}]]}]}],"$L14"]}],"$L15"]}]}]}]}],null,"$L16"]}],{},null,false,null]},null,false,"$@17"]},null,false,null],"$L18",false]],"m":"$undefined","G":["$19",["$L1a"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -20:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +0:{"P":null,"c":["","privacy-policy"],"q":"","i":false,"f":[[["",{"children":["privacy-policy",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Privacy Policy","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","Information We Collect",{"children":["$","a",null,{"href":"#information-we-collect","children":"Information We Collect"}]}],["$","li","How We Use Your Information",{"children":["$","a",null,{"href":"#how-we-use-your-information","children":"How We Use Your Information"}]}],["$","li","Information Sharing",{"children":"$Lc"}],"$Ld","$Le","$Lf","$L10","$L11","$L12","$L13"]}]}]]}]}],"$L14"]}],"$L15"]}]}]}]}],null,"$L16"]}],{},null,false,null]},null,false,"$@17"]},null,false,null],"$L18",false]],"m":"$undefined","G":["$19",["$L1a"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +20:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 21:"$Sreact.suspense" -24:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -26:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +24:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +26:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] c:["$","a",null,{"href":"#information-sharing","children":"Information Sharing"}] d:["$","li","Data Security",{"children":["$","a",null,{"href":"#data-security","children":"Data Security"}]}] e:["$","li","Data Retention",{"children":["$","a",null,{"href":"#data-retention","children":"Data Retention"}]}] @@ -210,13 +210,13 @@ f:["$","li","Cookies and Tracking Technologies",{"children":["$","a",null,{"href 23:[] 17:"$W23" 18:["$","$1","h",{"children":[null,["$","$L24",null,{"children":"$L25"}],["$","div",null,{"hidden":true,"children":["$","$L26",null,{"children":["$","$21",null,{"name":"Next.Metadata","children":"$L27"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -1a:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] -28:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],""] +1a:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +28:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],""] 1b:["$","section","Your Rights",{"id":"your-rights","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Your Rights"}],[["$","p","0",{"className":"dm-legal__p","children":"Depending on applicable laws, you may have the right to:"}],["$","ul","1",{"className":"dm-legal__ul","children":[["$","li","0",{"children":"Access your personal information"}],["$","li","1",{"children":"Request correction of inaccurate data"}],["$","li","2",{"children":"Request deletion of personal information"}],["$","li","3",{"children":"Restrict or object to certain processing activities"}],["$","li","4",{"children":"Withdraw consent where applicable"}]]}]]]}] 1c:["$","section","Third-Party Links",{"id":"third-party-links","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Third-Party Links"}],[["$","p","0",{"className":"dm-legal__p","children":"Our website may contain links to third-party websites. We are not responsible for the privacy practices or content of external websites."}]]]}] 1d:["$","section","Policy Updates",{"id":"policy-updates","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Policy Updates"}],[["$","p","0",{"className":"dm-legal__p","children":"We may update this Privacy Policy periodically. Any changes will be posted on this page with a revised effective date."}]]]}] 1e:["$","section","Contact Us",{"id":"contact-us","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Contact Us"}],[["$","p","0",{"className":"dm-legal__p","children":["For privacy-related questions or requests, please contact us through our ",["$","$L28",null,{"href":"/contact","className":"dm-legal__link","children":"Contact page"}],"."]}]]]}] 25:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -29:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +29:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 22:null 27:[["$","title","0",{"children":"Privacy Policy – Doormile"}],["$","meta","1",{"name":"description","content":"How Doormile collects, uses, stores, and protects your information when you visit our website, interact with our services, or communicate with us."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L29","7",{}]] diff --git a/build/privacy-policy/__next._head.txt b/build/privacy-policy/__next._head.txt index 7a7b3a6..8ea5c43 100644 --- a/build/privacy-policy/__next._head.txt +++ b/build/privacy-policy/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Privacy Policy – Doormile"}],["$","meta","1",{"name":"description","content":"How Doormile collects, uses, stores, and protects your information when you visit our website, interact with our services, or communicate with us."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Privacy Policy – Doormile"}],["$","meta","1",{"name":"description","content":"How Doormile collects, uses, stores, and protects your information when you visit our website, interact with our services, or communicate with us."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/privacy-policy/__next._index.txt b/build/privacy-policy/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/privacy-policy/__next._index.txt +++ b/build/privacy-policy/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/privacy-policy/__next._tree.txt b/build/privacy-policy/__next._tree.txt index 19d0141..c9f93f0 100644 --- a/build/privacy-policy/__next._tree.txt +++ b/build/privacy-policy/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"privacy-policy","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"privacy-policy","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/privacy-policy/__next.privacy-policy.__PAGE__.txt b/build/privacy-policy/__next.privacy-policy.__PAGE__.txt index 8277341..964dae3 100644 --- a/build/privacy-policy/__next.privacy-policy.__PAGE__.txt +++ b/build/privacy-policy/__next.privacy-policy.__PAGE__.txt @@ -1,8 +1,8 @@ 1:"$Sreact.fragment" -c:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],""] -e:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +c:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],""] +e:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] f:"$Sreact.suspense" -0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Privacy Policy","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","Information We Collect",{"children":["$","a",null,{"href":"#information-we-collect","children":"Information We Collect"}]}],["$","li","How We Use Your Information",{"children":["$","a",null,{"href":"#how-we-use-your-information","children":"How We Use Your Information"}]}],["$","li","Information Sharing",{"children":["$","a",null,{"href":"#information-sharing","children":"Information Sharing"}]}],["$","li","Data Security",{"children":["$","a",null,{"href":"#data-security","children":"Data Security"}]}],["$","li","Data Retention",{"children":["$","a",null,{"href":"#data-retention","children":"Data Retention"}]}],["$","li","Cookies and Tracking Technologies",{"children":["$","a",null,{"href":"#cookies-and-tracking-technologies","children":"Cookies and Tracking Technologies"}]}],["$","li","Your Rights",{"children":["$","a",null,{"href":"#your-rights","children":"Your Rights"}]}],["$","li","Third-Party Links",{"children":["$","a",null,{"href":"#third-party-links","children":"Third-Party Links"}]}],["$","li","Policy Updates",{"children":["$","a",null,{"href":"#policy-updates","children":"Policy Updates"}]}],["$","li","Contact Us",{"children":["$","a",null,{"href":"#contact-us","children":"Contact Us"}]}]]}]}]]}]}],["$","div",null,{"className":"dm-legal__main","children":[["$","header",null,{"className":"dm-legal__hero","children":[["$","h1",null,{"className":"dm-legal__title","children":"Privacy Policy"}],["$","p",null,{"className":"dm-legal__updated","children":["Last Updated: ","June 2026"]}],["$","p",null,{"className":"dm-legal__lead","children":"At Doormile, we are committed to protecting your privacy and maintaining the security of the information you share with us. This Privacy Policy outlines how we collect, use, store, and protect your information when you visit our website, interact with our services, or communicate with us."}]]}],["$","article",null,{"className":"dm-legal__content","children":[["$","section","Information We Collect",{"id":"information-we-collect","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Information We Collect"}],[["$","p","0",{"className":"dm-legal__p","children":"We may collect the following information:"}],["$","ul","1",{"className":"dm-legal__ul","children":[["$","li","0",{"children":"Full name"}],["$","li","1",{"children":"Email address"}],["$","li","2",{"children":"Phone number"}],["$","li","3",{"children":"Company name"}],["$","li","4",{"children":"Job title"}],["$","li","5",{"children":"Information submitted through contact forms"}],["$","li","6",{"children":"Service inquiry details"}],["$","li","7",{"children":"Website usage data and analytics"}],["$","li","8",{"children":"Browser, device, and IP information"}]]}]]]}],["$","section","How We Use Your Information",{"id":"how-we-use-your-information","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"How We Use Your Information"}],[["$","p","0",{"className":"dm-legal__p","children":"We use your information to:"}],["$","ul","1",{"className":"dm-legal__ul","children":[["$","li","0",{"children":"Respond to inquiries and support requests"}],["$","li","1",{"children":"Provide information about our services"}],["$","li","2",{"children":"Improve website performance and user experience"}],["$","li","3",{"children":"Analyze usage trends and platform effectiveness"}],["$","li","4",{"children":"Maintain security and prevent unauthorized access"}],["$","li","5",{"children":"Communicate service updates and business information"}],["$","li","6",{"children":"Comply with legal and regulatory requirements"}]]}]]]}],"$L2","$L3","$L4","$L5","$L6","$L7","$L8","$L9"]}]]}]]}],"$La"]}]}]}]}],null,"$Lb"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Privacy Policy","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","Information We Collect",{"children":["$","a",null,{"href":"#information-we-collect","children":"Information We Collect"}]}],["$","li","How We Use Your Information",{"children":["$","a",null,{"href":"#how-we-use-your-information","children":"How We Use Your Information"}]}],["$","li","Information Sharing",{"children":["$","a",null,{"href":"#information-sharing","children":"Information Sharing"}]}],["$","li","Data Security",{"children":["$","a",null,{"href":"#data-security","children":"Data Security"}]}],["$","li","Data Retention",{"children":["$","a",null,{"href":"#data-retention","children":"Data Retention"}]}],["$","li","Cookies and Tracking Technologies",{"children":["$","a",null,{"href":"#cookies-and-tracking-technologies","children":"Cookies and Tracking Technologies"}]}],["$","li","Your Rights",{"children":["$","a",null,{"href":"#your-rights","children":"Your Rights"}]}],["$","li","Third-Party Links",{"children":["$","a",null,{"href":"#third-party-links","children":"Third-Party Links"}]}],["$","li","Policy Updates",{"children":["$","a",null,{"href":"#policy-updates","children":"Policy Updates"}]}],["$","li","Contact Us",{"children":["$","a",null,{"href":"#contact-us","children":"Contact Us"}]}]]}]}]]}]}],["$","div",null,{"className":"dm-legal__main","children":[["$","header",null,{"className":"dm-legal__hero","children":[["$","h1",null,{"className":"dm-legal__title","children":"Privacy Policy"}],["$","p",null,{"className":"dm-legal__updated","children":["Last Updated: ","June 2026"]}],["$","p",null,{"className":"dm-legal__lead","children":"At Doormile, we are committed to protecting your privacy and maintaining the security of the information you share with us. This Privacy Policy outlines how we collect, use, store, and protect your information when you visit our website, interact with our services, or communicate with us."}]]}],["$","article",null,{"className":"dm-legal__content","children":[["$","section","Information We Collect",{"id":"information-we-collect","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Information We Collect"}],[["$","p","0",{"className":"dm-legal__p","children":"We may collect the following information:"}],["$","ul","1",{"className":"dm-legal__ul","children":[["$","li","0",{"children":"Full name"}],["$","li","1",{"children":"Email address"}],["$","li","2",{"children":"Phone number"}],["$","li","3",{"children":"Company name"}],["$","li","4",{"children":"Job title"}],["$","li","5",{"children":"Information submitted through contact forms"}],["$","li","6",{"children":"Service inquiry details"}],["$","li","7",{"children":"Website usage data and analytics"}],["$","li","8",{"children":"Browser, device, and IP information"}]]}]]]}],["$","section","How We Use Your Information",{"id":"how-we-use-your-information","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"How We Use Your Information"}],[["$","p","0",{"className":"dm-legal__p","children":"We use your information to:"}],["$","ul","1",{"className":"dm-legal__ul","children":[["$","li","0",{"children":"Respond to inquiries and support requests"}],["$","li","1",{"children":"Provide information about our services"}],["$","li","2",{"children":"Improve website performance and user experience"}],["$","li","3",{"children":"Analyze usage trends and platform effectiveness"}],["$","li","4",{"children":"Maintain security and prevent unauthorized access"}],["$","li","5",{"children":"Communicate service updates and business information"}],["$","li","6",{"children":"Comply with legal and regulatory requirements"}]]}]]]}],"$L2","$L3","$L4","$L5","$L6","$L7","$L8","$L9"]}]]}]]}],"$La"]}]}]}]}],null,"$Lb"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 2:["$","section","Information Sharing",{"id":"information-sharing","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Information Sharing"}],[["$","p","0",{"className":"dm-legal__p","children":"Doormile does not sell, rent, or trade personal information. Information may be shared with trusted service providers that assist with website hosting, analytics, communications, and operational support, subject to appropriate confidentiality and security obligations."}]]]}] 3:["$","section","Data Security",{"id":"data-security","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Data Security"}],[["$","p","0",{"className":"dm-legal__p","children":"We implement industry-standard administrative, technical, and organizational safeguards designed to protect personal information from unauthorized access, disclosure, alteration, or destruction."}]]]}] 4:["$","section","Data Retention",{"id":"data-retention","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Data Retention"}],[["$","p","0",{"className":"dm-legal__p","children":"We retain information only for as long as necessary to fulfill the purposes described in this policy, comply with legal obligations, resolve disputes, and enforce agreements."}]]]}] diff --git a/build/privacy-policy/__next.privacy-policy.txt b/build/privacy-policy/__next.privacy-policy.txt index 1334b06..19dcdca 100644 --- a/build/privacy-policy/__next.privacy-policy.txt +++ b/build/privacy-policy/__next.privacy-policy.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/solutions.html b/build/solutions.html index f3fab2d..b1c723a 100644 --- a/build/solutions.html +++ b/build/solutions.html @@ -1,4 +1,4 @@ -Solutions – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

FMCG logistics

FMCG

FMCG logistics demands speed, precision, and continuous fulfillment across high-volume delivery networks. Businesses must balance tight delivery timelines, inventory movement, and operational efficiency without compromising product availability.

  • Unpredictable demand spikes create delivery pressure and reduce operational efficiency during peak periods.
  • Fresh product expiry constraints require faster, precisely timed deliveries to maintain product quality.
  • Multi-stop route complexity increases travel time, operational costs, and delivery coordination challenges.
  • Inventory stockout risks increase when delivery delays disrupt fast-moving product distribution.
Pharma logistics

Pharma

Pharma logistics requires precision, compliance, and real-time monitoring so every shipment arrives safely and on time — from temperature-sensitive medicines to urgent emergency deliveries.

  • Cold chain integrity demands precise temperature control throughout transit.
  • Regulatory compliance must be tracked and documented on every delivery.
  • Critical delivery time windows require highly accurate scheduling.
  • Emergency shipments need instant dispatch and zero-delay execution.
Enterprise and B2B logistics

Enterprise & B2B

Enterprise and B2B logistics require coordination and reliability to manage high-value shipments at scale — with appointment scheduling, white-glove standards, and strict SLA commitments.

  • Appointment scheduling requires precise timing across many locations.
  • White-glove delivery standards demand premium handling and accuracy.
  • Multi-location routing complexity grows with large-scale operations.
  • Strict SLA commitments pressure teams to stay timely and error-free.
FMCG logistics

FMCG

FMCG logistics demands speed, precision, and continuous fulfillment across high-volume delivery networks. Businesses must balance tight delivery timelines, inventory movement, and operational efficiency without compromising product availability.

  • Unpredictable demand spikes create delivery pressure and reduce operational efficiency during peak periods.
  • Fresh product expiry constraints require faster, precisely timed deliveries to maintain product quality.
  • Multi-stop route complexity increases travel time, operational costs, and delivery coordination challenges.
  • Inventory stockout risks increase when delivery delays disrupt fast-moving product distribution.
Pharma logistics

Pharma

Pharma logistics requires precision, compliance, and real-time monitoring so every shipment arrives safely and on time — from temperature-sensitive medicines to urgent emergency deliveries.

  • Cold chain integrity demands precise temperature control throughout transit.
  • Regulatory compliance must be tracked and documented on every delivery.
  • Critical delivery time windows require highly accurate scheduling.
  • Emergency shipments need instant dispatch and zero-delay execution.
Enterprise and B2B logistics

Enterprise & B2B

Enterprise and B2B logistics require coordination and reliability to manage high-value shipments at scale — with appointment scheduling, white-glove standards, and strict SLA commitments.

  • Appointment scheduling requires precise timing across many locations.
  • White-glove delivery standards demand premium handling and accuracy.
  • Multi-location routing complexity grows with large-scale operations.
  • Strict SLA commitments pressure teams to stay timely and error-free.
\ No newline at end of file + \ No newline at end of file diff --git a/build/solutions.txt b/build/solutions.txt index 44f9ae9..bc44a4a 100644 --- a/build/solutions.txt +++ b/build/solutions.txt @@ -1,16 +1,16 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -12:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +12:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -56,21 +56,21 @@ c:T5ca, margin: 0 !important; } } - 0:{"P":null,"c":["","solutions"],"q":"","i":false,"f":[[["",{"children":["solutions",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$c"}}],"$Ld"],["$Le"],"$Lf"]}],{},null,false,null]},null,false,"$@10"]},null,false,null],"$L11",false]],"m":"$undefined","G":["$12",["$L13"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -14:I[89937,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0y0w40785mt~m.js"],"default"] -15:I[40086,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0y0w40785mt~m.js"],"default"] -16:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] + 0:{"P":null,"c":["","solutions"],"q":"","i":false,"f":[[["",{"children":["solutions",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$c"}}],"$Ld"],["$Le"],"$Lf"]}],{},null,false,null]},null,false,"$@10"]},null,false,null],"$L11",false]],"m":"$undefined","G":["$12",["$L13"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +14:I[89937,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/01om.zjj76s3i.js"],"default"] +15:I[40086,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/01om.zjj76s3i.js"],"default"] +16:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 17:"$Sreact.suspense" -1a:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -1c:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +1a:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +1c:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] d:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"59","className":"elementor elementor-59","children":[["$","$L14",null,{}],["$","$L15",null,{}]]}]}]}]}] -e:["$","script","script-0",{"src":"/_next/static/chunks/0y0w40785mt~m.js","async":true,"nonce":"$undefined"}] +e:["$","script","script-0",{"src":"/_next/static/chunks/01om.zjj76s3i.js","async":true,"nonce":"$undefined"}] f:["$","$L16",null,{"children":["$","$17",null,{"name":"Next.MetadataOutlet","children":"$@18"}]}] 19:[] 10:"$W19" 11:["$","$1","h",{"children":[null,["$","$L1a",null,{"children":"$L1b"}],["$","div",null,{"hidden":true,"children":["$","$L1c",null,{"children":["$","$17",null,{"name":"Next.Metadata","children":"$L1d"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -13:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +13:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] 1b:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -1e:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +1e:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 18:null 1d:[["$","title","0",{"children":"Solutions – Doormile"}],["$","meta","1",{"name":"description","content":"Discover how Doormile's connected logistics platform serves diverse industries (FMCG, Pharma, and Enterprise) with tailored solutions."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L1e","7",{}]] diff --git a/build/solutions/__next._full.txt b/build/solutions/__next._full.txt index 44f9ae9..bc44a4a 100644 --- a/build/solutions/__next._full.txt +++ b/build/solutions/__next._full.txt @@ -1,16 +1,16 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -12:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +12:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -56,21 +56,21 @@ c:T5ca, margin: 0 !important; } } - 0:{"P":null,"c":["","solutions"],"q":"","i":false,"f":[[["",{"children":["solutions",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$c"}}],"$Ld"],["$Le"],"$Lf"]}],{},null,false,null]},null,false,"$@10"]},null,false,null],"$L11",false]],"m":"$undefined","G":["$12",["$L13"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -14:I[89937,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0y0w40785mt~m.js"],"default"] -15:I[40086,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0y0w40785mt~m.js"],"default"] -16:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] + 0:{"P":null,"c":["","solutions"],"q":"","i":false,"f":[[["",{"children":["solutions",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$c"}}],"$Ld"],["$Le"],"$Lf"]}],{},null,false,null]},null,false,"$@10"]},null,false,null],"$L11",false]],"m":"$undefined","G":["$12",["$L13"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +14:I[89937,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/01om.zjj76s3i.js"],"default"] +15:I[40086,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/01om.zjj76s3i.js"],"default"] +16:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 17:"$Sreact.suspense" -1a:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -1c:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +1a:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +1c:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] d:["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"59","className":"elementor elementor-59","children":[["$","$L14",null,{}],["$","$L15",null,{}]]}]}]}]}] -e:["$","script","script-0",{"src":"/_next/static/chunks/0y0w40785mt~m.js","async":true,"nonce":"$undefined"}] +e:["$","script","script-0",{"src":"/_next/static/chunks/01om.zjj76s3i.js","async":true,"nonce":"$undefined"}] f:["$","$L16",null,{"children":["$","$17",null,{"name":"Next.MetadataOutlet","children":"$@18"}]}] 19:[] 10:"$W19" 11:["$","$1","h",{"children":[null,["$","$L1a",null,{"children":"$L1b"}],["$","div",null,{"hidden":true,"children":["$","$L1c",null,{"children":["$","$17",null,{"name":"Next.Metadata","children":"$L1d"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -13:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +13:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] 1b:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -1e:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +1e:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 18:null 1d:[["$","title","0",{"children":"Solutions – Doormile"}],["$","meta","1",{"name":"description","content":"Discover how Doormile's connected logistics platform serves diverse industries (FMCG, Pharma, and Enterprise) with tailored solutions."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L1e","7",{}]] diff --git a/build/solutions/__next._head.txt b/build/solutions/__next._head.txt index f534cfc..d48d230 100644 --- a/build/solutions/__next._head.txt +++ b/build/solutions/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Solutions – Doormile"}],["$","meta","1",{"name":"description","content":"Discover how Doormile's connected logistics platform serves diverse industries (FMCG, Pharma, and Enterprise) with tailored solutions."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Solutions – Doormile"}],["$","meta","1",{"name":"description","content":"Discover how Doormile's connected logistics platform serves diverse industries (FMCG, Pharma, and Enterprise) with tailored solutions."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/solutions/__next._index.txt b/build/solutions/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/solutions/__next._index.txt +++ b/build/solutions/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/solutions/__next._tree.txt b/build/solutions/__next._tree.txt index cc5ee6f..f09e276 100644 --- a/build/solutions/__next._tree.txt +++ b/build/solutions/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"solutions","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"solutions","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/solutions/__next.solutions.__PAGE__.txt b/build/solutions/__next.solutions.__PAGE__.txt index 7e814fb..660b92f 100644 --- a/build/solutions/__next.solutions.__PAGE__.txt +++ b/build/solutions/__next.solutions.__PAGE__.txt @@ -1,7 +1,7 @@ 1:"$Sreact.fragment" -3:I[89937,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0y0w40785mt~m.js"],"default"] -4:I[40086,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0y0w40785mt~m.js"],"default"] -5:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +3:I[89937,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/01om.zjj76s3i.js"],"default"] +4:I[40086,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js","/_next/static/chunks/01om.zjj76s3i.js"],"default"] +5:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 6:"$Sreact.suspense" 2:T5ca, /* Fix "Why Businesses Choose Doormile" section — anchor absolute image left, push content right */ @@ -41,5 +41,5 @@ margin: 0 !important; } } - 0:{"rsc":["$","$1","c",{"children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"59","className":"elementor elementor-59","children":[["$","$L3",null,{}],["$","$L4",null,{}]]}]}]}]}]],[["$","script","script-0",{"src":"/_next/static/chunks/0y0w40785mt~m.js","async":true}]],["$","$L5",null,{"children":["$","$6",null,{"name":"Next.MetadataOutlet","children":"$@7"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} + 0:{"rsc":["$","$1","c",{"children":[[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"$2"}}],["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","div",null,{"data-elementor-type":"wp-page","data-elementor-id":"59","className":"elementor elementor-59","children":[["$","$L3",null,{}],["$","$L4",null,{}]]}]}]}]}]],[["$","script","script-0",{"src":"/_next/static/chunks/01om.zjj76s3i.js","async":true}]],["$","$L5",null,{"children":["$","$6",null,{"name":"Next.MetadataOutlet","children":"$@7"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 7:null diff --git a/build/solutions/__next.solutions.txt b/build/solutions/__next.solutions.txt index 1334b06..19dcdca 100644 --- a/build/solutions/__next.solutions.txt +++ b/build/solutions/__next.solutions.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/terms-of-service.html b/build/terms-of-service.html index b94bd94..3e837f1 100644 --- a/build/terms-of-service.html +++ b/build/terms-of-service.html @@ -1,4 +1,4 @@ -Terms of Service – Doormile

Doormile

Doormile logo
Our Location

5th Floor, Vision Ultima, Street No.3, Jayabheri Enclave, Gachibowli, Hyderabad, Telangana 500032.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

Doormile

Doormile logo
Address
Hyderabad

5th Floor, Vision Ultima,
Street No.3, Jayabheri Enclave,
Gachibowli, Hyderabad,
Telangana 500032.

Coimbatore

Mayflower Valencia,
Near Nava India Bus Stop,
Avinashi Road,
Udayampalayam,
Tamil Nadu 641037.

Bengaluru

C612, 6th Floor,
Trifecta Starlight,
ITPL Road,
Garudacharapalya,
Mahadevapura,
Bangalore 560048,
Karnataka, India.

Contact Us

Tel : +91 86886 97941

Email

care@doormile.com

\ No newline at end of file + \ No newline at end of file diff --git a/build/terms-of-service.txt b/build/terms-of-service.txt index 610ab31..6a462d5 100644 --- a/build/terms-of-service.txt +++ b/build/terms-of-service.txt @@ -1,16 +1,16 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -19:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +19:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -18,11 +18,11 @@ b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","terms-of-service"],"q":"","i":false,"f":[[["",{"children":["terms-of-service",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Terms of Service","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","Acceptance of Terms",{"children":["$","a",null,{"href":"#acceptance-of-terms","children":"Acceptance of Terms"}]}],["$","li","Permitted Use",{"children":["$","a",null,{"href":"#permitted-use","children":"Permitted Use"}]}],["$","li","Intellectual Property Rights",{"children":["$","a",null,{"href":"#intellectual-property-rights","children":"Intellectual Property Rights"}]}],"$Lc","$Ld","$Le","$Lf","$L10","$L11","$L12","$L13"]}]}]]}]}],"$L14"]}],"$L15"]}]}]}]}],null,"$L16"]}],{},null,false,null]},null,false,"$@17"]},null,false,null],"$L18",false]],"m":"$undefined","G":["$19",["$L1a"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -20:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +0:{"P":null,"c":["","terms-of-service"],"q":"","i":false,"f":[[["",{"children":["terms-of-service",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Terms of Service","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","Acceptance of Terms",{"children":["$","a",null,{"href":"#acceptance-of-terms","children":"Acceptance of Terms"}]}],["$","li","Permitted Use",{"children":["$","a",null,{"href":"#permitted-use","children":"Permitted Use"}]}],["$","li","Intellectual Property Rights",{"children":["$","a",null,{"href":"#intellectual-property-rights","children":"Intellectual Property Rights"}]}],"$Lc","$Ld","$Le","$Lf","$L10","$L11","$L12","$L13"]}]}]]}]}],"$L14"]}],"$L15"]}]}]}]}],null,"$L16"]}],{},null,false,null]},null,false,"$@17"]},null,false,null],"$L18",false]],"m":"$undefined","G":["$19",["$L1a"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +20:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 21:"$Sreact.suspense" -24:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -26:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +24:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +26:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] c:["$","li","User Submissions",{"children":["$","a",null,{"href":"#user-submissions","children":"User Submissions"}]}] d:["$","li","Service Availability",{"children":["$","a",null,{"href":"#service-availability","children":"Service Availability"}]}] e:["$","li","Disclaimer of Warranties",{"children":["$","a",null,{"href":"#disclaimer-of-warranties","children":"Disclaimer of Warranties"}]}] @@ -210,13 +210,13 @@ f:["$","li","Limitation of Liability",{"children":["$","a",null,{"href":"#limita 23:[] 17:"$W23" 18:["$","$1","h",{"children":[null,["$","$L24",null,{"children":"$L25"}],["$","div",null,{"hidden":true,"children":["$","$L26",null,{"children":["$","$21",null,{"name":"Next.Metadata","children":"$L27"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -1a:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] -28:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],""] +1a:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +28:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],""] 1b:["$","section","Indemnification",{"id":"indemnification","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Indemnification"}],[["$","p","0",{"className":"dm-legal__p","children":"Users agree to indemnify and hold harmless Doormile, its employees, partners, and affiliates from claims arising from misuse of the website or violation of these terms."}]]]}] 1c:["$","section","Modifications",{"id":"modifications","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Modifications"}],[["$","p","0",{"className":"dm-legal__p","children":"We reserve the right to update or modify these Terms of Service at any time. Continued use of the website following updates constitutes acceptance of the revised terms."}]]]}] 1d:["$","section","Governing Law",{"id":"governing-law","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Governing Law"}],[["$","p","0",{"className":"dm-legal__p","children":"These Terms shall be governed by and interpreted in accordance with applicable laws and regulations in the jurisdictions where Doormile conducts business."}]]]}] 1e:["$","section","Contact Us",{"id":"contact-us","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Contact Us"}],[["$","p","0",{"className":"dm-legal__p","children":["Questions regarding these Terms of Service may be submitted through our ",["$","$L28",null,{"href":"/contact","className":"dm-legal__link","children":"Contact page"}],"."]}]]]}] 25:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -29:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +29:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 22:null 27:[["$","title","0",{"children":"Terms of Service – Doormile"}],["$","meta","1",{"name":"description","content":"The Terms of Service governing your access to and use of the Doormile website and related services."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L29","7",{}]] diff --git a/build/terms-of-service/__next._full.txt b/build/terms-of-service/__next._full.txt index 610ab31..6a462d5 100644 --- a/build/terms-of-service/__next._full.txt +++ b/build/terms-of-service/__next._full.txt @@ -1,16 +1,16 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -19:I[68027,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default",1] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +19:I[68027,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default",1] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -18,11 +18,11 @@ b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"P":null,"c":["","terms-of-service"],"q":"","i":false,"f":[[["",{"children":["terms-of-service",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Terms of Service","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","Acceptance of Terms",{"children":["$","a",null,{"href":"#acceptance-of-terms","children":"Acceptance of Terms"}]}],["$","li","Permitted Use",{"children":["$","a",null,{"href":"#permitted-use","children":"Permitted Use"}]}],["$","li","Intellectual Property Rights",{"children":["$","a",null,{"href":"#intellectual-property-rights","children":"Intellectual Property Rights"}]}],"$Lc","$Ld","$Le","$Lf","$L10","$L11","$L12","$L13"]}]}]]}]}],"$L14"]}],"$L15"]}]}]}]}],null,"$L16"]}],{},null,false,null]},null,false,"$@17"]},null,false,null],"$L18",false]],"m":"$undefined","G":["$19",["$L1a"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"SnoAOpbT_RGaY5uBgRytO"} -20:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +0:{"P":null,"c":["","terms-of-service"],"q":"","i":false,"f":[[["",{"children":["terms-of-service",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L9",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$La",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Terms of Service","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","Acceptance of Terms",{"children":["$","a",null,{"href":"#acceptance-of-terms","children":"Acceptance of Terms"}]}],["$","li","Permitted Use",{"children":["$","a",null,{"href":"#permitted-use","children":"Permitted Use"}]}],["$","li","Intellectual Property Rights",{"children":["$","a",null,{"href":"#intellectual-property-rights","children":"Intellectual Property Rights"}]}],"$Lc","$Ld","$Le","$Lf","$L10","$L11","$L12","$L13"]}]}]]}]}],"$L14"]}],"$L15"]}]}]}]}],null,"$L16"]}],{},null,false,null]},null,false,"$@17"]},null,false,null],"$L18",false]],"m":"$undefined","G":["$19",["$L1a"]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"6fArXL0vngyn3fcJQtVmY"} +20:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] 21:"$Sreact.suspense" -24:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -26:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +24:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +26:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] c:["$","li","User Submissions",{"children":["$","a",null,{"href":"#user-submissions","children":"User Submissions"}]}] d:["$","li","Service Availability",{"children":["$","a",null,{"href":"#service-availability","children":"Service Availability"}]}] e:["$","li","Disclaimer of Warranties",{"children":["$","a",null,{"href":"#disclaimer-of-warranties","children":"Disclaimer of Warranties"}]}] @@ -210,13 +210,13 @@ f:["$","li","Limitation of Liability",{"children":["$","a",null,{"href":"#limita 23:[] 17:"$W23" 18:["$","$1","h",{"children":[null,["$","$L24",null,{"children":"$L25"}],["$","div",null,{"hidden":true,"children":["$","$L26",null,{"children":["$","$21",null,{"name":"Next.Metadata","children":"$L27"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}] -1a:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] -28:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],""] +1a:["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] +28:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],""] 1b:["$","section","Indemnification",{"id":"indemnification","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Indemnification"}],[["$","p","0",{"className":"dm-legal__p","children":"Users agree to indemnify and hold harmless Doormile, its employees, partners, and affiliates from claims arising from misuse of the website or violation of these terms."}]]]}] 1c:["$","section","Modifications",{"id":"modifications","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Modifications"}],[["$","p","0",{"className":"dm-legal__p","children":"We reserve the right to update or modify these Terms of Service at any time. Continued use of the website following updates constitutes acceptance of the revised terms."}]]]}] 1d:["$","section","Governing Law",{"id":"governing-law","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Governing Law"}],[["$","p","0",{"className":"dm-legal__p","children":"These Terms shall be governed by and interpreted in accordance with applicable laws and regulations in the jurisdictions where Doormile conducts business."}]]]}] 1e:["$","section","Contact Us",{"id":"contact-us","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Contact Us"}],[["$","p","0",{"className":"dm-legal__p","children":["Questions regarding these Terms of Service may be submitted through our ",["$","$L28",null,{"href":"/contact","className":"dm-legal__link","children":"Contact page"}],"."]}]]]}] 25:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] -29:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] +29:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] 22:null 27:[["$","title","0",{"children":"Terms of Service – Doormile"}],["$","meta","1",{"name":"description","content":"The Terms of Service governing your access to and use of the Doormile website and related services."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L29","7",{}]] diff --git a/build/terms-of-service/__next._head.txt b/build/terms-of-service/__next._head.txt index 86dfe5e..0b712f9 100644 --- a/build/terms-of-service/__next._head.txt +++ b/build/terms-of-service/__next._head.txt @@ -1,6 +1,6 @@ 1:"$Sreact.fragment" -2:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"ViewportBoundary"] -3:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"MetadataBoundary"] +2:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"ViewportBoundary"] +3:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"MetadataBoundary"] 4:"$Sreact.suspense" -5:I[27201,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"IconMark"] -0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Terms of Service – Doormile"}],["$","meta","1",{"name":"description","content":"The Terms of Service governing your access to and use of the Doormile website and related services."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +5:I[27201,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"IconMark"] +0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Terms of Service – Doormile"}],["$","meta","1",{"name":"description","content":"The Terms of Service governing your access to and use of the Doormile website and related services."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","link","3",{"rel":"shortcut icon","href":"/images/cropped-image-2.png"}],["$","link","4",{"rel":"icon","href":"/favicon.ico?favicon.14w3bhkxgz946.ico","sizes":"40x40","type":"image/x-icon"}],["$","link","5",{"rel":"icon","href":"/images/cropped-image-2.png"}],["$","link","6",{"rel":"apple-touch-icon","href":"/images/cropped-image-2.png"}],["$","$L5","7",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/terms-of-service/__next._index.txt b/build/terms-of-service/__next._index.txt index 50dcc2a..ff0616b 100644 --- a/build/terms-of-service/__next._index.txt +++ b/build/terms-of-service/__next._index.txt @@ -1,15 +1,15 @@ 1:"$Sreact.fragment" -2:I[67989,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[8971,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -4:I[48064,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -5:I[26290,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -6:I[82637,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"HeaderUIProvider"] -7:I[92260,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -8:I[3374,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -9:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -a:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -b:I[58234,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +2:I[67989,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[8971,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +4:I[48064,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +5:I[26290,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +6:I[82637,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"HeaderUIProvider"] +7:I[92260,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +8:I[3374,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +9:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +a:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +b:I[58234,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0ejo5d-~uyw2f.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/09319k21oxyrj.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/03-hxrp~efw2j.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/13sdgpt7~urhz.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/13qsc49n0mct2.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/06n0m6ck5r8gy.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0n.gft-j~h_v_.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/04xui0pxt.et1.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/0d3shmwh5_nmn.js","async":true}],["$","script","script-4",{"src":"/_next/static/chunks/0yllnwb9z_62m.js","async":true}]],["$","html",null,{"lang":"en-US","data-scroll-behavior":"smooth","className":"manrope_67dc055e-module__BHrBnq__variable space_grotesk_2e42c3c6-module__3Wl9rq__variable syne_ef5854ac-module__2TJB3a__variable dm_sans_2770e922-module__TdA3fW__variable inter_5dbe1e89-module__i9oJOa__variable","children":[["$","head",null,{"children":[["$","link",null,{"rel":"stylesheet","href":"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"}],["$","link",null,{"rel":"stylesheet","href":"/css/site.css"}]]}],["$","body",null,{"className":"wp-singular page-template-default page wp-theme-logico wp-child-theme-logico-child theme-logico ehf-header ehf-footer ehf-template-logico ehf-stylesheet-logico-child logico-front-end logico-theme-style-rounded elementor-default elementor-kit-5 elementor-page","children":[["$","$L2",null,{}],["$","$L3",null,{}],["$","$L4",null,{"children":[["$","$L5",null,{}],["$","$L6",null,{"children":[["$","$L7",null,{}],["$","div",null,{"className":"body-container","children":["$","div",null,{"id":"page","className":"hfeed site","children":[["$","$L8",null,{}],["$","$L9",null,{"parallelRouterKey":"children","template":["$","$La",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}],["$","$Lb",null,{}]]}]}]]}]]}]]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/terms-of-service/__next._tree.txt b/build/terms-of-service/__next._tree.txt index d045033..73783ca 100644 --- a/build/terms-of-service/__next._tree.txt +++ b/build/terms-of-service/__next._tree.txt @@ -1,4 +1,4 @@ -:HL["/_next/static/chunks/0ejo5d-~uyw2f.css","style"] +:HL["/_next/static/chunks/13qsc49n0mct2.css","style"] :HL["/_next/static/media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/5c285b27cdda1fe8-s.p.0yo6-5yoeeudq.woff2","font",{"crossOrigin":"","type":"font/woff2"}] @@ -6,4 +6,4 @@ :HL["/_next/static/media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css","style"] :HL["/css/site.css","style"] -0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"terms-of-service","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"terms-of-service","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}}}},"staleTime":300,"buildId":"6fArXL0vngyn3fcJQtVmY"} diff --git a/build/terms-of-service/__next.terms-of-service.__PAGE__.txt b/build/terms-of-service/__next.terms-of-service.__PAGE__.txt index 8806e91..672cee9 100644 --- a/build/terms-of-service/__next.terms-of-service.__PAGE__.txt +++ b/build/terms-of-service/__next.terms-of-service.__PAGE__.txt @@ -1,8 +1,8 @@ 1:"$Sreact.fragment" -c:I[22016,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],""] -e:I[97367,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"OutletBoundary"] +c:I[22016,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],""] +e:I[97367,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"OutletBoundary"] f:"$Sreact.suspense" -0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Terms of Service","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","Acceptance of Terms",{"children":["$","a",null,{"href":"#acceptance-of-terms","children":"Acceptance of Terms"}]}],["$","li","Permitted Use",{"children":["$","a",null,{"href":"#permitted-use","children":"Permitted Use"}]}],["$","li","Intellectual Property Rights",{"children":["$","a",null,{"href":"#intellectual-property-rights","children":"Intellectual Property Rights"}]}],["$","li","User Submissions",{"children":["$","a",null,{"href":"#user-submissions","children":"User Submissions"}]}],["$","li","Service Availability",{"children":["$","a",null,{"href":"#service-availability","children":"Service Availability"}]}],["$","li","Disclaimer of Warranties",{"children":["$","a",null,{"href":"#disclaimer-of-warranties","children":"Disclaimer of Warranties"}]}],["$","li","Limitation of Liability",{"children":["$","a",null,{"href":"#limitation-of-liability","children":"Limitation of Liability"}]}],["$","li","Indemnification",{"children":["$","a",null,{"href":"#indemnification","children":"Indemnification"}]}],["$","li","Modifications",{"children":["$","a",null,{"href":"#modifications","children":"Modifications"}]}],["$","li","Governing Law",{"children":["$","a",null,{"href":"#governing-law","children":"Governing Law"}]}],["$","li","Contact Us",{"children":["$","a",null,{"href":"#contact-us","children":"Contact Us"}]}]]}]}]]}]}],["$","div",null,{"className":"dm-legal__main","children":[["$","header",null,{"className":"dm-legal__hero","children":[["$","h1",null,{"className":"dm-legal__title","children":"Terms of Service"}],["$","p",null,{"className":"dm-legal__updated","children":["Last Updated: ","June 2026"]}],["$","p",null,{"className":"dm-legal__lead","children":"These Terms of Service govern your access to and use of the Doormile website and related services. By accessing or using our website, you agree to comply with these terms."}]]}],["$","article",null,{"className":"dm-legal__content","children":[["$","section","Acceptance of Terms",{"id":"acceptance-of-terms","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Acceptance of Terms"}],[["$","p","0",{"className":"dm-legal__p","children":"By accessing this website, you acknowledge that you have read, understood, and agreed to these Terms of Service and all applicable laws and regulations."}]]]}],["$","section","Permitted Use",{"id":"permitted-use","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Permitted Use"}],[["$","p","0",{"className":"dm-legal__p","children":"You agree to use the website and services only for lawful purposes and in accordance with these terms."}],["$","p","1",{"className":"dm-legal__p","children":"You agree not to:"}],["$","ul","2",{"className":"dm-legal__ul","children":[["$","li","0",{"children":"Violate applicable laws or regulations"}],["$","li","1",{"children":"Attempt unauthorized access to systems or networks"}],["$","li","2",{"children":"Interfere with website functionality or security"}],["$","li","3",{"children":"Distribute malicious software or harmful code"}],["$","li","4",{"children":"Misrepresent your identity or organization"}],["$","li","5",{"children":"Use website content without authorization"}]]}]]]}],["$","section","Intellectual Property Rights",{"id":"intellectual-property-rights","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Intellectual Property Rights"}],[["$","p","0",{"className":"dm-legal__p","children":"All content, technology, software, graphics, trademarks, logos, text, designs, and other materials available on this website are the property of Doormile or its licensors and are protected by applicable intellectual property laws."}]]]}],"$L2","$L3","$L4","$L5","$L6","$L7","$L8","$L9"]}]]}]]}],"$La"]}]}]}]}],null,"$Lb"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[["$","div",null,{"className":"content-wrapper content-wrapper-may-contain-elementor-code content-wrapper-sidebar-position-none","children":["$","div",null,{"className":"content","children":["$","div",null,{"className":"content-inner","children":["$","section",null,{"className":"dm-legal","aria-label":"Terms of Service","children":[["$","div",null,{"className":"dm-legal__wrap","children":[["$","aside",null,{"className":"dm-legal__toc","aria-label":"On this page","children":["$","div",null,{"className":"dm-legal__toc-inner","children":[["$","p",null,{"className":"dm-legal__toc-label","children":"On this page"}],["$","nav",null,{"children":["$","ul",null,{"children":[["$","li","Acceptance of Terms",{"children":["$","a",null,{"href":"#acceptance-of-terms","children":"Acceptance of Terms"}]}],["$","li","Permitted Use",{"children":["$","a",null,{"href":"#permitted-use","children":"Permitted Use"}]}],["$","li","Intellectual Property Rights",{"children":["$","a",null,{"href":"#intellectual-property-rights","children":"Intellectual Property Rights"}]}],["$","li","User Submissions",{"children":["$","a",null,{"href":"#user-submissions","children":"User Submissions"}]}],["$","li","Service Availability",{"children":["$","a",null,{"href":"#service-availability","children":"Service Availability"}]}],["$","li","Disclaimer of Warranties",{"children":["$","a",null,{"href":"#disclaimer-of-warranties","children":"Disclaimer of Warranties"}]}],["$","li","Limitation of Liability",{"children":["$","a",null,{"href":"#limitation-of-liability","children":"Limitation of Liability"}]}],["$","li","Indemnification",{"children":["$","a",null,{"href":"#indemnification","children":"Indemnification"}]}],["$","li","Modifications",{"children":["$","a",null,{"href":"#modifications","children":"Modifications"}]}],["$","li","Governing Law",{"children":["$","a",null,{"href":"#governing-law","children":"Governing Law"}]}],["$","li","Contact Us",{"children":["$","a",null,{"href":"#contact-us","children":"Contact Us"}]}]]}]}]]}]}],["$","div",null,{"className":"dm-legal__main","children":[["$","header",null,{"className":"dm-legal__hero","children":[["$","h1",null,{"className":"dm-legal__title","children":"Terms of Service"}],["$","p",null,{"className":"dm-legal__updated","children":["Last Updated: ","June 2026"]}],["$","p",null,{"className":"dm-legal__lead","children":"These Terms of Service govern your access to and use of the Doormile website and related services. By accessing or using our website, you agree to comply with these terms."}]]}],["$","article",null,{"className":"dm-legal__content","children":[["$","section","Acceptance of Terms",{"id":"acceptance-of-terms","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Acceptance of Terms"}],[["$","p","0",{"className":"dm-legal__p","children":"By accessing this website, you acknowledge that you have read, understood, and agreed to these Terms of Service and all applicable laws and regulations."}]]]}],["$","section","Permitted Use",{"id":"permitted-use","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Permitted Use"}],[["$","p","0",{"className":"dm-legal__p","children":"You agree to use the website and services only for lawful purposes and in accordance with these terms."}],["$","p","1",{"className":"dm-legal__p","children":"You agree not to:"}],["$","ul","2",{"className":"dm-legal__ul","children":[["$","li","0",{"children":"Violate applicable laws or regulations"}],["$","li","1",{"children":"Attempt unauthorized access to systems or networks"}],["$","li","2",{"children":"Interfere with website functionality or security"}],["$","li","3",{"children":"Distribute malicious software or harmful code"}],["$","li","4",{"children":"Misrepresent your identity or organization"}],["$","li","5",{"children":"Use website content without authorization"}]]}]]]}],["$","section","Intellectual Property Rights",{"id":"intellectual-property-rights","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Intellectual Property Rights"}],[["$","p","0",{"className":"dm-legal__p","children":"All content, technology, software, graphics, trademarks, logos, text, designs, and other materials available on this website are the property of Doormile or its licensors and are protected by applicable intellectual property laws."}]]]}],"$L2","$L3","$L4","$L5","$L6","$L7","$L8","$L9"]}]]}]]}],"$La"]}]}]}]}],null,"$Lb"]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"6fArXL0vngyn3fcJQtVmY"} 2:["$","section","User Submissions",{"id":"user-submissions","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"User Submissions"}],[["$","p","0",{"className":"dm-legal__p","children":"Any information submitted through forms, inquiries, or communications must be accurate and lawful. Users are responsible for the content they submit."}]]]}] 3:["$","section","Service Availability",{"id":"service-availability","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Service Availability"}],[["$","p","0",{"className":"dm-legal__p","children":"While we strive to maintain uninterrupted access, we do not guarantee that the website or services will always be available, secure, or error-free."}]]]}] 4:["$","section","Disclaimer of Warranties",{"id":"disclaimer-of-warranties","className":"dm-legal__section","children":[["$","h2",null,{"className":"dm-legal__h2","children":"Disclaimer of Warranties"}],[["$","p","0",{"className":"dm-legal__p","children":"The website and services are provided on an \"as is\" and \"as available\" basis without warranties of any kind, whether express or implied."}]]]}] diff --git a/build/terms-of-service/__next.terms-of-service.txt b/build/terms-of-service/__next.terms-of-service.txt index 1334b06..19dcdca 100644 --- a/build/terms-of-service/__next.terms-of-service.txt +++ b/build/terms-of-service/__next.terms-of-service.txt @@ -1,5 +1,5 @@ 1:"$Sreact.fragment" -2:I[39756,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] -3:I[37457,["/_next/static/chunks/09319k21oxyrj.js","/_next/static/chunks/03-hxrp~efw2j.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/13sdgpt7~urhz.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"default"] +2:I[39756,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] +3:I[37457,["/_next/static/chunks/06n0m6ck5r8gy.js","/_next/static/chunks/0n.gft-j~h_v_.js","/_next/static/chunks/04xui0pxt.et1.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/0yllnwb9z_62m.js"],"default"] 4:[] -0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"SnoAOpbT_RGaY5uBgRytO"} +0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"6fArXL0vngyn3fcJQtVmY"}