{"version":3,"file":"static/js/444.e3cef290.chunk.js","mappings":"uQAIQA,EAAeC,EAAAA,EAAWC,OAA1BF,WAEKG,GAAYC,EAAAA,EAAAA,GAAW,CAClCC,MAAIC,EAAAA,EAAAA,GAAA,CACFC,QAAS,OACTC,cAAe,eACdC,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCH,cAAe,QAGnBI,gBAAcN,EAAAA,EAAAA,GAAA,GACXG,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCH,cAAe,MACfK,UAAW,cAGfC,2BAAyBC,EAAAA,EAAAA,IAAAT,EAAAA,EAAAA,GAAA,CACvBU,eAAgB,gBAChBC,MAAO,OACPC,aAAc,aACbT,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCO,aAAc,IACdL,UAAW,cAEW,UAApBJ,EAAAA,EAAMU,WAAyB,CACjCC,MAAOpB,IAGXqB,aAAc,CACZC,OAAQ,qBACRL,MAAO,qBACPM,WAAY,YACZC,WAAY,e,4EC/BhBC,EAQIxB,EAAAA,EAAWC,OAPbwB,EAAYD,EAAZC,aACAC,EAASF,EAATE,UACAC,EAAYH,EAAZG,aACAC,EAAYJ,EAAZI,aACAC,EAAKL,EAALK,MACAC,EAAKN,EAALM,MACAC,EAASP,EAATO,UASK,IAPkBC,EAOZ9B,GAAYC,EAAAA,EAAAA,GAAW,CAClCC,MAAIU,EAAAA,EAAAA,GAAA,CACFmB,aAAc,IACdC,UAAW,OACXC,OAAO,mBAADC,OAAqBX,GAC3BY,WAAY,QACZpB,aAAc,YACdqB,QAAS,oBACTC,SAAU,WACVvB,MAAO,QACiB,UAApBR,EAAAA,EAAMU,WAAyB,CACjCe,aAAc,UACd,2BAA4B,CAC1BO,KAAMT,KAIZU,UAAQpC,EAAAA,EAAAA,GAAA,CACN8B,OAAQ,OACRO,aAAa,kBAADN,OAAoBV,IAC/BlB,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCyB,OAAO,mBAADC,OAAqBX,KAG/BkB,aAAc,CACZC,WAAY,SACZN,QAAS,IACTO,SAAU,UAEZC,YAAa,CACXT,WAAYV,EACZM,aAAc,MACdd,MAAOU,EACPR,OAAQ,YACR0B,OAAQ,IACRC,SAAU,QACVhC,MAAO,aAETiC,aAAW5C,EAAAA,EAAAA,GAAA,CACT6C,UAAW,QACXH,OAAQ,cACRI,YAAa,WACblC,aAAc,WACdmC,cAAe,OACf,UAAW,CACTC,gBAAiBxB,IAElBrB,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCY,WAAY,YAGhBgC,cAAe,CACbZ,aAAc,OACd,UAAW,CACTa,eAAgB,yBAGpBC,oBAAqB,CACnBrC,MAAOS,GAET6B,cAAe,CACbnD,QAAS,OACTsC,WAAY,SACZO,YAAa,WACb,MAAO,CACLT,aAAc,SAGlBgB,oBAAkBrD,EAAAA,EAAAA,GAAA,CAChBiC,QAAS,eACR9B,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxC4B,QAAS,aAGbqB,WAAStD,EAAAA,EAAAA,GAAA,CACPC,QAAS,OACTsC,WAAY,SACZ7B,eAAgB,UACfP,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCK,eAAgB,eAGpB6C,cAAe,CACbtD,QAAS,OACTC,cAAe,MACfmC,aAAc,OACd1B,MAAO,MACP,eAAgB,CACdkC,UAAW,OACXR,aAAc,IAGlBmB,cAAe,CACbvD,QAAS,OACTC,cAAe,MACfgD,eAAgB,OAChBb,aAAc,OACd,eAAgB,CACdpC,QAAS,OACT4C,UAAW,OACXR,aAAc,IAGlBoB,eAAazD,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACXC,QAAS,QACRE,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCJ,QAAS,OACTgB,WAAY,aAEd,UAAW,CACTiC,eAAgB,yBAGpBQ,iBAAe1D,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACbkC,SAAU,WACVyB,IAAK,aACL1B,QAAS,IACT2B,MAAO,WACP5C,OAAQ,WACRL,MAAO,WACP,QAAS,CACPK,OAAQ,WACRL,MAAO,aAERR,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCuD,MAAO,YAET,UAAW,CACT,mCAAiCnD,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,IAvIdkB,EAwIE,EAvIlB,CACLkC,QAAQ,iBACRC,cAAc,IAAD/B,OAAMJ,EAAM,UAqIA,IACrBoC,aAActC,EACdG,aAAc,MAIpBoC,wBAAyB,CACvBL,IAAK,KAEPM,YAAUjE,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACRC,QAAS,OACTC,cAAe,MACfsC,SAAU,SACVP,QAAS,GACR9B,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCmC,SAAU,SAEXrC,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCmC,SAAU,WAGd0B,mBAAoB,CAClBxD,eAAgB,gBAChBiC,SAAU,MACVhC,MAAO,OACP,MAAO,CACLsB,QAAS,gCAGbzB,0BAA2B,CACzBE,eAAgB,gBAChBiC,SAAU,MACVhC,MAAO,OACP,MAAO,CACLsB,QAAS,sCAGbkC,cAAe,CACbC,WAAY,OAEdC,cAAe,CACbpE,QAAS,SACTiD,eAAgB,OAChBH,cAAe,YACfqB,WAAY,SACZE,SAAU,SACVC,aAAc,WACdC,WAAYC,EAAAA,EAASC,eAAeF,WACpCG,SAAU,WACVC,cAAe,SACfC,WAAY,UACZxC,aAAc,IACdvB,MAAO,WAETgE,gBAAiB,CACfnC,SAAU,EACVhC,MAAO,OACP,QAAS,CACPsB,QAAS,gCAGblB,aAAc,CACZC,OAAQ,qBACRL,MAAO,qBACPM,WAAY,YACZC,WAAY,e,iCChMT,SAAS6D,EAAcC,GAA4C,IAADC,EAAAC,EAAAC,EAAAC,EAAxCC,EAAML,EAANK,OACzBC,EAAUzF,IAEV0F,EAAmC,WAD3BC,EAAAA,EAAAA,KACa3E,UAC3BM,EAAwCxB,EAAAA,EAAWC,OAA3CwB,EAAYD,EAAZC,aAAcqE,EAAatE,EAAbsE,cAChBC,GAAyBC,EAAAA,EAAAA,IAAYC,EAAAA,IACrCC,GAAWC,EAAAA,EAAAA,MAoEXC,EAAyBV,EAAM,8CAAAtD,OAC2B,QAD3BkD,EACaI,EAAOW,eAAO,IAAAf,OAAA,EAAdA,EAAgBgB,QAC5D,IACA,OACD,OAAAlE,OAAiB,QAAjBmD,EAAMG,EAAOa,YAAI,IAAAhB,OAAA,EAAXA,EAAae,QAAQ,IAAK,OAAM,QAAAlE,OAAmB,QAAnBoD,EAAOE,EAAOc,aAAK,IAAAhB,OAAA,EAAZA,EAAcc,QAC1D,IACA,OACD,OAAAlE,OAAoB,QAApBqD,EAAMC,EAAOe,eAAO,IAAAhB,OAAA,EAAdA,EAAgBa,QAAQ,IAAK,QACpC,GAEJ,OACEI,EAAAA,EAAAA,MAACC,EAAAA,EAAI,CAACC,UAAS,GAAAxE,OAAKuD,EAAQvF,KAAI,qBAAoByG,SAAA,EAClDC,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAACC,WAAS,EAACC,UAAU,MAAML,UAAWjB,EAAQhD,aAAakE,UAC9DC,EAAAA,EAAAA,KAAA,MACEF,UAAS,GAAAxE,OAAKuD,EAAQ1C,YAAW,KAAAb,OAC/BwD,EAAe,wBAA0B,iBACxCiB,UAEHC,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CAACC,KAAMzB,EAAO0B,MAAQ,UAGrCV,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAACM,UAAU,MAAKR,SAAA,EACnBC,EAAAA,EAAAA,KAACQ,EAAAA,EAAU,CACTC,eAAa,EACbC,QAAS,kBA1Fe,WAC9B,IAAIC,EAAc,oCACd/B,EAAOgC,eAAiB3B,EAC1BG,GAASyB,EAAAA,EAAAA,QAETF,EAAc,kCACdvB,GAAS0B,EAAAA,EAAAA,IAAqBlC,EAAOgC,iBAGvCG,EAAAA,EAAAA,IAAW,CACTC,MAAOL,EACPM,SAAU,CACRC,iBAAiB,EACjBb,KAAM,WAERc,KAAM,WACNvC,OAAQ,CACNwC,SAAUxC,EAAOgC,aACjBS,cAAezC,EAAOe,QACtB2B,WAAY1C,EAAO0B,KACnB9D,cAAc,GAADlB,OAAKsD,EAAOW,QAAO,MAAAjE,OAAesD,EAAOa,KAAI,MAAAnE,OACxDsD,EAAOc,MAAK,KAAApE,OACVsD,EAAOe,WAGjB,CAiEuB4B,EAAyB,EACxCzB,UAAS,GAAAxE,OAAKuD,EAAQ5B,gBAAe,KAAA3B,OACnC2D,IAA2BL,EAAOgC,aAAe,eAAiB,GAAE,qBAEtE,uBAAAtF,OAAsBsD,EAAO0B,KAAI,wBACjCkB,KAAK,QAAOzB,UAEZC,EAAAA,EAAAA,KAACyB,EAAAA,EAAI,CACHpH,MAAOM,EACPwG,KACElC,IAA2BL,EAAOgC,aAC9Bc,EAAAA,EAAMC,wBACND,EAAAA,EAAMvC,qBAIhBS,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAACH,UAAWjB,EAAQjC,mBAAoBsD,WAAS,EAACC,UAAU,MAAKJ,SAAA,EACpEC,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAIC,GAAI,EAAGC,GAAI,EAAEhC,UAC9BC,EAAAA,EAAAA,KAACgC,EAAAA,EAAU,CACTC,QAASC,EAAAA,EAAeC,OACxBC,OAAO,SACPC,GAAI/C,EACJgD,YAAY,EACZ5B,QAAS,YArFnBK,EAAAA,EAAAA,IAAW,CACTC,MAAM,WAAD1F,OAAasD,EAAO0B,KAAI,eAC7BW,SAAU,CACRC,iBAAiB,EACjBb,KAAM,WAERc,KAAM,OACNvC,OAAQ,CACNwC,SAAUxC,EAAOgC,aACjBS,cAAezC,EAAOe,QACtB2B,WAAY1C,EAAO0B,KACnB9D,cAAc,GAADlB,OAAKsD,EAAOW,QAAO,MAAAjE,OAAesD,EAAOa,KAAI,MAAAnE,OACxDsD,EAAOc,MAAK,KAAApE,OACVsD,EAAOe,WA0EL,EACA4C,WAAY,CAAErC,UAAWrB,EAAQ/B,eACjC0F,UAAS,aAAAlH,OAAesD,EAAO0B,KAAI,YAAWP,UAE9CH,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAACC,WAAS,EAACC,UAAU,MAAKJ,SAAA,EAC7BC,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,EAAG/B,UAAWjB,EAAQlC,cAAcoD,UACjDC,EAAAA,EAAAA,KAACyB,EAAAA,EAAI,CACHN,KACErC,EAAe4C,EAAAA,EAAMe,iBAAmBf,EAAAA,EAAMgB,WAEhDrI,MAAO2E,OAGXY,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CACH2B,MAAI,EACJC,GAAI,GACJ/B,UAAS,GAAAxE,OAAKwD,EAAe,kBAAoB,IAAKiB,SAAA,EAEtDC,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CAACuC,QAAQ,IAAItC,KAAMzB,EAAOW,UAAsB,KAC3DS,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTuC,QAAQ,IACRtC,KAAI,GAAA/E,OAAKsD,EAAOa,KAAI,MAAAnE,OAAKsD,EAAOc,MAAK,KAAApE,OAAIsD,EAAOe,sBAM1DK,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,EAAGC,GAAI,EAAGC,GAAI,EAAGjC,UAAWjB,EAAQhC,UAAUkD,UAC3DH,EAAAA,EAAAA,MAACoC,EAAAA,EAAU,CACTO,WAAY,CAAErC,UAAWrB,EAAQ9B,eACjCsF,GAAE,OAAA/G,OAASsD,EAAOgE,OAClBN,YAAY,EACZ5B,QAAS,YApGnBK,EAAAA,EAAAA,IAAW,CACTC,MAAM,gBAAD1F,OAAkBsD,EAAO0B,MAC9BW,SAAU,CACRC,iBAAiB,EACjBb,KAAM,WAERc,KAAM,OACNvC,OAAQ,CACNwC,SAAUxC,EAAOgC,aACjBS,cAAezC,EAAOe,QACtB2B,WAAY1C,EAAO0B,KACnB9D,cAAc,GAADlB,OAAKsD,EAAOW,QAAO,MAAAjE,OAAesD,EAAOa,KAAI,MAAAnE,OACxDsD,EAAOc,MAAK,KAAApE,OACVsD,EAAOe,SACXkD,YAAajE,EAAOgE,QAwFd,EAAE7C,SAAA,EAEFC,EAAAA,EAAAA,KAACyB,EAAAA,EAAI,CACHN,KAAMrC,EAAe4C,EAAAA,EAAMoB,gBAAkBpB,EAAAA,EAAM7E,UACnDxC,MAAO2E,KAETgB,EAAAA,EAAAA,KAAA,KACEF,UAAS,GAAAxE,OACPwD,EAAe,kBAAoB,kBAAiB,KAAAxD,OAClDuD,EAAQ7B,eAAgB+C,UAE5BC,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CAACC,KAAI,GAAA/E,OAAKsD,EAAOgE,wBAQ5C,CCvLA,IAAMG,EAAoB,eACpBC,EAAa,OAOZ,SAASC,EAAU1E,GAGI,IAF5BK,EAAML,EAANK,OACAsE,EAAgB3E,EAAhB2E,iBAEMrE,EAAUzF,IACR4F,EAAkB9F,EAAAA,EAAWC,OAA7B6F,cAEFmE,EAAoC,WAD5BpE,EAAAA,EAAAA,KACc3E,UACtBgF,GAAWC,EAAAA,EAAAA,MACX+D,EAAeC,eAAeC,QAAQP,GAE5C,OAAInE,GAEAgB,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CACHC,WAAS,EACTC,UAAU,cACVL,UAAS,GAAAxE,OAAKuD,EAAQvF,KAAI,iBAAAgC,OACxB4H,EAAmBrE,EAAQhF,eAAiB,IAC3CkG,SAAA,EAEHC,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAIC,GAAI,EAAE/B,UACrBmD,GAAoBE,IAAiBJ,IACrChD,EAAAA,EAAAA,KAACgC,EAAAA,EAAU,CACTuB,eAAgB,gBAEhBtB,QAASC,EAAAA,EAAe7B,KACxBiC,YAAY,EACZkB,eAAgB,CACdxC,MAAM,gBACNC,SAAU,CACRC,iBAAiB,EACjBb,KAAM,IAERc,KAAM,OAERoB,WAAY,CACVrC,UAAU,GAAD5E,OAAKuD,EAAQ9E,0BAAyB,4BAEjD2G,QAAS,WACPtB,GAASqE,EAAAA,EAAAA,MACX,EAAE1D,UAEFH,EAAAA,EAAAA,MAAA,QAAAG,SAAA,EACEC,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTN,UAAS,GAAAxE,OAAK6H,EAAgB,gBAAkB,IAChD9C,KAAM,mBAERL,EAAAA,EAAAA,KAACyB,EAAAA,EAAI,CACHN,KAAMO,EAAAA,EAAMgC,MACZ5D,UAAWjB,EAAQvE,aACnBD,MAAO2E,QA1BN,mBAgCXgB,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAIC,GAAI,EAAE/B,UACvBC,EAAAA,EAAAA,KAAC1B,EAAc,CAACM,OAAQA,UAKzBoB,EAAAA,EAAAA,KAAA2D,EAAAA,SAAA,GACT,C,0BC9EO,SAASC,EAAcC,GAC5B,IAAMT,EAAeC,eAAeC,QAAQ,gBACtCQ,EAAWT,eAAeC,QAAQ,YAClClE,GAAWC,EAAAA,EAAAA,MACX0E,GAAU7E,EAAAA,EAAAA,IAAY8E,EAAAA,IACtBC,GAAeC,EAAAA,EAAAA,GAAwBH,OAASI,GAEtD,GAAIf,GAAgBU,EAAU,CAC5B,IAAMM,EAAyB,OAAZH,QAAY,IAAZA,OAAY,EAAZA,EAAcI,KAC3BzF,EAAmB,OAAVwF,QAAU,IAAVA,OAAU,EAAVA,EAAYE,MACzB,SAAC1F,GAAc,OAAKA,EAAOgC,eAAiBkD,CAAQ,IAGlDlF,GACFQ,GAASmF,EAAAA,EAAAA,IAAkB3F,GAE/B,CAEA,IAAM4F,GAAwBtF,EAAAA,EAAAA,IAAYuF,EAAAA,IAC1C,OAAID,GAAyBX,EAAMa,YAE/B1E,EAAAA,EAAAA,KAACiD,EAAU,CACTrE,OAAQ4F,EACRtB,iBAAkBW,EAAMX,oBAIrBlD,EAAAA,EAAAA,KAAC2E,EAAAA,GAAsB3K,EAAAA,EAAAA,GAAA,GAAK6J,GAEvC,C,iOCnCAnJ,E,SACExB,EAAWC,OADLyL,EAASlK,EAATkK,UAAW5J,EAAKN,EAALM,MAAO6J,EAAUnK,EAAVmK,WAAYC,EAASpK,EAAToK,UAAWC,EAAYrK,EAAZqK,aAGpC3L,GAAYC,EAAAA,EAAAA,GAAW,CAClC2L,OAAQ,CACNxL,QAAS,QAEX0G,UAAW,CACTzE,SAAU,WACVJ,OAAO,mBAADC,OAAqBuJ,GAC3B1J,aAAc,UACdZ,OAAQ,YAEV0K,YAAa,CACX/K,MAAO,OACPK,OAAQ,OACRiB,QAAS,YACTnB,MAAO,QACPiC,cAAe,OACfrC,eAAgB,aAChB,UAAW,CACTiD,IAAK,wBACLC,MAAO,EACPd,YAAa,UACbnC,MAAO,YACPK,OAAQ,YACR2K,QAAS,KACT1L,QAAS,QACT2L,OAAQ,IACR1J,SAAU,WACV2J,UAAW,kCACXC,UAAU,mBAAD/J,OAAqBsJ,GAC9BU,YAAY,mBAADhK,OAAqBsJ,GAChCW,cAAe,QAEjB,gBAAiB,CACf,UAAW,CACTH,UAAW,mBAGf,qBAAsB,CACpB,kCAAmC,CACjChI,QAAQ,iBACRC,cAAe,YACfC,aAActC,IAGlB,UAAW,CACTuB,gBAAiB,gBAGrBiJ,OAAQ,CACNtL,MAAO,wBACPiL,OAAQ,IAEVM,eAAgB,CACdvL,MAAO,OACPsB,QAAS,EACT2J,OAAQ,EACR9J,OAAO,mBAADC,OAAqBuJ,GAC3BzJ,UAAW,yCACXiK,UAAW,EACXK,UAAW,SACXC,UAAW,QACX,uBAAwB,CACtBzL,MAAO,SAET,6BAA8B,CAC5BkB,UAAW,iCACXwK,gBAAiB,kCAEnB,6BAA8B,CAC5BrJ,gBAAiBuI,EACjB1H,QAAQ,mBAAD9B,OAAqByJ,IAE9B,eAAgB,CACdM,UAAU,mBAAD/J,OAAqBuJ,KAGlCgB,UAAW,CACTpK,SAAU,WACVD,QAAS,WACTsK,SAAU,aACVnI,WAAY,SACZoI,UAAW,QACX,qBAAsB,CACpB,kCAAmC,CACjC3I,QAAQ,iBACRC,cAAe,YACfC,aAActC,IAGlB,uCAAwC,CACtCuB,gBAAiB,Y,WCjEjByJ,EAAqB,CACzB,CACE1F,KAAM,SACN2F,QAAS,CACP/K,OAAQ,CAAC,GAAI,MAGjB,CACEoF,KAAM,OACN4F,SAAS,GAEX,CACE5F,KAAM,kBACN4F,SAAS,EACTD,QAAS,CACPE,SAAS,EACTC,aAAa,EACbC,QAAQ,EACRC,aAAc,WACd9K,QAAS,MAUF+K,EAAwB,SAACC,GAAa,MAAM,CACvDxF,MAAOwF,EACPA,OAAOC,EAAAA,EAAAA,IAAiBD,GACzB,EAwID,EAtIiB,SAAHjI,GAUiB,IAT7BgF,EAAchF,EAAdgF,eACAmD,EAAcnI,EAAdmI,eACAC,EAAapI,EAAboI,cACAC,EAAYrI,EAAZqI,aACAX,EAAO1H,EAAP0H,QACAY,EAAQtI,EAARsI,SACA5B,EAAW1G,EAAX0G,YACA1C,EAAUhE,EAAVgE,WACAuE,EAAiBvI,EAAjBuI,kBAEMjI,EAAUzF,IAEV2N,GAAeC,EAAAA,EAAAA,QAAuB,MACtCC,GAAYD,EAAAA,EAAAA,QAA0B,MAC5CE,GAA4BC,EAAAA,EAAAA,WAAS,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAApCI,EAAMF,EAAA,GAAEG,EAASH,EAAA,GAElBI,EAAYV,EAAoBd,OAAqB7B,EAErDsD,GAAyBC,EAAAA,EAAAA,UAC7B,kBACS,OAAPzB,QAAO,IAAPA,OAAO,EAAPA,EAAS3B,MAAK,SAAAqD,GAAgB,IAAbnB,EAAKmB,EAALnB,MACToB,GAAkB,OAALpB,QAAK,IAALA,OAAK,EAALA,EAAOqB,gBAAiB,GACrCC,GAA6B,OAAbnB,QAAa,IAAbA,OAAa,EAAbA,EAAekB,gBAAiB,GAChDE,GAA2B,OAAZnB,QAAY,IAAZA,OAAY,EAAZA,EAAciB,gBAAiB,GACpD,OAAOD,IAAeE,GAAiBF,IAAeG,CACxD,GAAE,GACJ,CAAC9B,EAASU,EAAeC,IAOrBoB,EAAgB,WAChBV,GACFC,GAAU,EAEd,EAEMU,EAAoB,SAACC,GACI,IAADC,EAAV,WAAdD,EAAME,MACRb,GAAU,GACO,QAAjBY,EAAAlB,EAAUoB,eAAO,IAAAF,GAAjBA,EAAmBG,QACnBC,SAASC,KAAKC,UAAUC,OAAO,sBAEnC,EAEMC,EAAwB,SAACT,GACsB,IAADU,EAAhC,QAAdV,EAAME,KAA+B,UAAdF,EAAME,MAC/BF,EAAMW,iBACNtB,GAAU,GACO,QAAjBqB,EAAA3B,EAAUoB,eAAO,IAAAO,GAAjBA,EAAmBN,QACnBC,SAASC,KAAKC,UAAUC,OAAO,sBAEnC,EAOA,OACE9I,EAAAA,EAAAA,MAAA,OACEkJ,IAAK/B,EACLjH,UAAS,GAAAxE,OAAKuD,EAAQqB,UAAS,KAAA5E,QAAc,OAAViH,QAAU,IAAVA,OAAU,EAAVA,EAAYrC,YAAa,IAAKH,SAAA,EAEjEC,EAAAA,EAAAA,KAAC+I,EAAAA,EAAM,CACLD,IAAK7B,EACL,gBAAeK,EAAS,wBAAqBnD,EAC7C,gBAAemD,EAAS,YAASnD,EACjC,gBAAc,OACdzD,QA1CiB,WACrB6G,GAAU,SAACyB,GAAI,OAAMA,CAAI,GAC3B,EAyCM,qBAAA1N,OAAoBiI,EAAc,WAClC9C,eAAe,EACfX,UAAS,kBAAAxE,OAAoBuD,EAAQoG,YAAW,KAAA3J,QACpC,OAAViH,QAAU,IAAVA,OAAU,EAAVA,EAAY0C,cAAe,GAAE,KAAA3J,OAC3BgM,EAAS,cAAgB,IAC7BT,SAAUA,EAAS9G,UAEnBC,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CAACC,MAA4B,OAAtBoH,QAAsB,IAAtBA,OAAsB,EAAtBA,EAAwBzG,QAASiE,GAAe,OAEnEgB,IACCjG,EAAAA,EAAAA,KAACiJ,EAAAA,EAAM,CACLC,KAAM5B,EACN6B,SAAUpC,EAAasB,QACvBe,UAAU,eACV5B,UAAWA,EACX6B,YAAU,EACVC,eAAa,EACbxJ,UAAWjB,EAAQ2G,OAAOzF,SAEzB,SAAAwJ,GAAA,IAAGC,EAAeD,EAAfC,gBAAiBJ,EAASG,EAATH,UAAS,OAC5BpJ,EAAAA,EAAAA,KAACyJ,EAAAA,GAAIzP,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACCwP,GAAe,IACnBE,MAAO,CACLC,gBACgB,iBAAdP,EAA+B,WAAa,eAC9CrJ,UAEFC,EAAAA,EAAAA,KAAC4J,EAAAA,EAAK,CAAA7J,UACJC,EAAAA,EAAAA,KAAC6J,EAAAA,EAAiB,CAACC,YAAa9B,EAAcjI,UAC5CC,EAAAA,EAAAA,KAAC+J,EAAAA,EAAQ,CACPC,cAAe1C,EACf,kBAAgB,qBAChB2C,UAAWhC,EACXnI,UAAS,GAAAxE,OAAKuD,EAAQ4G,eAAc,KAAAnK,OAClCwL,EAAoB,aAAe,IAClC/G,SAEFkG,EAAQiE,KAAI,SAACC,GAAuB,OACnCnK,EAAAA,EAAAA,KAACoK,EAAAA,EAAQ,CACP,kBAAiBD,EAAO3D,MAExByD,UAAWtB,EACX7I,UAAS,kBAAAxE,OAAoBuD,EAAQgH,UAAS,KAAAvK,QAClC,OAAViH,QAAU,IAAVA,OAAU,EAAVA,EAAY0D,UAAW,mBAEzBvF,QAAS,kBA7DA8F,EA6D4B2D,EAAO3D,MA5DhEE,EAAeF,QACfe,GAAU,GAFkB,IAACf,CA6DyC,EAACzG,UAEnDC,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CAACC,KAAM8J,EAAOnJ,SAPpBmJ,EAAO3D,MAQH,YAKd,MAMnB,C,sNC9LMrN,E,SAASD,EAAWC,OAenB,IAAMC,GAAYC,EAAAA,EAAAA,GAAW,CAClCgR,OAAK9Q,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACHoM,UAAW,SAAC9B,GAAY,OAAKA,EAAMyG,UAAU,EAC7CpQ,MAAO,QACP2D,SAAU,SACVpC,SAAU,WACVc,gBAAiB,QACjBlB,OAAQ,IACR+B,QAAS,OACT5B,QAAS,oBACR9B,EAAAA,EAAMC,YAAYC,GAAG,qBAAuB,CAC3CqC,OAAQ,SACRsO,SAAU,UACV5E,UAAW,cAEZjM,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxC4B,QAAS,wBACTe,gBAAiB,QACjBlB,OAAQ,MAGZmP,YAAUxQ,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACRR,QAAS,OACTC,cAAe,SACfQ,eAAgB,SAChB6B,WAAY,SACZhC,UAAW,IACXS,OAAQ,OACRoL,UAAW,SAAC9B,GAAY,cAAAvI,OAAauI,EAAMyG,WAAU,aACrDG,cAAe,QA1CV,CACL,uBAAwB,CACtBvQ,MAAO,YAET,6BAA8B,CAC5BqC,gBAAiBpD,EAAOwB,cAE1B,6BAA8B,CAC5B4B,gBAAiBpD,EAAOuR,YAmCV,IAAAnR,EAAAA,EAAAA,GAAA,GACfG,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCW,OAAQ,OACRoL,UAAW,wBACX8E,cAAe,OAGnBE,YAAa,CACX,QAAS,CACP1O,OAAQ,qBACR1B,OAAQ,UACRL,MAAO,QAETsB,QAAS,EACTe,gBAAiB,cACjBlB,OAAQ,OACR7B,QAAS,OACT8C,cAAe,YACf,UAAW,CACTsO,OAAQ,YAGZC,KAAM,CACJ,QAAS,CACP5O,OAAQ,qBACR1B,OAAQ,UACRL,MAAO,QAETqC,gBAAiB,cACjBlB,OAAQ,OACR7B,QAAS,OACT8C,cAAe,aAEjBwO,aAAc,CACZhR,UAAW,SACXN,QAAS,QAEXuR,qBAAmBxR,EAAAA,EAAAA,GAAA,CACjBW,MAAO,WACPK,OAAQ,SACR+B,cAAe,YACf0O,UAAW,aACX,iBAAezR,EAAAA,EAAAA,GAAA,CACbgD,gBAAiB,cACjBlB,OAAQ,wBACRgB,YAAa,UACZ3C,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCyC,YAAa,SAGjB,gBAAc9C,EAAAA,EAAAA,GAAA,CACZgD,gBAAiBpD,EAAOyL,UACxBvJ,OAAQ,OACRhB,MAAOlB,EAAO4B,MACdP,WAAY,UACXd,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCY,WAAY,SAGhB,UAAW,CACToQ,OAAQ,YAETlR,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCM,MAAO,Y,6ECrFD+Q,EAAiB,SAAjBA,GAAiB,OAAjBA,EAAiB,iBAAjBA,EAAiB,kBAAjBA,EAAiB,cAAjBA,CAAiB,MAkDtB,SAASC,EAAkB3M,GAYS,IAXzC4M,EAAa5M,EAAb4M,cACA7D,EAAM/I,EAAN+I,OACA8D,EAAa7M,EAAb6M,cACAC,EAAQ9M,EAAR8M,SACAC,EAAc/M,EAAd+M,eACAC,EAAMhN,EAANgN,OACArI,EAAgB3E,EAAhB2E,iBACAsI,EAAcjN,EAAdiN,eACAC,EAA0BlN,EAA1BkN,2BACAC,EAAWnN,EAAXmN,YACAC,EAAWpN,EAAXoN,YAEMC,GAAkBC,EAAAA,EAAAA,MAClBC,EAAkBF,EAAe,GAAAtQ,OAChCsQ,EAAkB,GAAE,OACvB,OACE/M,EAAUzF,EAAU,CAAEkR,WAAYwB,IAElCC,EAAU,YACVhI,GAAU7E,EAAAA,EAAAA,IAAY8E,EAAAA,IAEtB5E,GAAWC,EAAAA,EAAAA,MACjB2M,GAAuC9M,EAAAA,EAAAA,IAAY+M,EAAAA,IAA3CC,EAAYF,EAAZE,aAAcC,EAAYH,EAAZG,aAChBC,IAA2BF,QAAiC/H,IAAjBgI,EAC3CE,IACFH,GACFC,IACa,OAAbf,QAAa,IAAbA,OAAa,EAAbA,EAAenJ,WAAYqK,EAAAA,EAAoBC,MAClC,OAAbnB,QAAa,IAAbA,OAAa,EAAbA,EAAenJ,WAAYqK,EAAAA,EAAoBE,UAE7CC,EAAoB,GACxB,GAAIJ,EACFI,GAAoBC,EAAAA,EAAAA,IAAmB,CACrCC,QAAqB,OAAZT,QAAY,IAAZA,OAAY,EAAZA,EAAcS,QACvBC,kBAA+B,OAAZV,QAAY,IAAZA,OAAY,EAAZA,EAAcW,SACjCC,kBAA+B,OAAZZ,QAAY,IAAZA,OAAY,EAAZA,EAAca,SACjCC,aAAc,OACdrN,QAASoE,SAEN,GAAIqH,GAAiBA,EAAcuB,QAAS,CACjD,IAAAhF,EACEyD,EADMuB,EAAOhF,EAAPgF,QAASM,EAAatF,EAAbsF,cAAeC,EAAavF,EAAbuF,cAExB9L,EAAagK,EAAbhK,SACRqL,GAAoBC,EAAAA,EAAAA,IAAmB,CACrCC,QAAAA,EACAK,aAAc,OACdJ,kBAAgC,OAAbK,QAAa,IAAbA,OAAa,EAAbA,EAAeE,aAClCL,kBAAgC,OAAbI,QAAa,IAAbA,OAAa,EAAbA,EAAeC,aAClC/L,SAAAA,EACAzB,QAASoE,GAEb,CAEA,IAAAqJ,GAAyBC,EAAAA,EAAAA,GAAe,GAAD/R,OAxBtB,oCAwBqCA,OAAGmR,IAAjDa,EAAMF,EAANE,OAAQjJ,EAAI+I,EAAJ/I,KAEhBkJ,EAAqClJ,GAAQ,CAAC,EAAtCmJ,EAAWD,EAAXC,YAAaC,EAAWF,EAAXE,YAGfC,IAFaF,GAAe,CAAC,GAA3BG,QACkC,CAAC,GAAnCC,oBAGFC,EACJxB,GAAqBoB,EACjB,CACEd,QAASc,EAAYd,QAAQmB,cAC7BC,YAAaN,EAAYM,YAAYD,cACrCE,UAAWP,EAAYO,UAAUC,WACjChB,cAAeQ,EAAYR,cAC3BC,cAAeO,EAAYP,cAC3BgB,YAAyB,OAAZhC,QAAY,IAAZA,OAAY,EAAZA,EAAcgC,YAC3BC,WAAYV,EAAYW,OACxBC,WAAYZ,EAAYY,WACxBC,QAAS,GACTC,KAAkB,OAAZrC,QAAY,IAAZA,OAAY,EAAZA,EAAcsC,WACpBvM,QAASqK,EAAAA,EAAoBmC,YAC7BC,UAAwB,OAAbtD,QAAa,IAAbA,OAAa,EAAbA,EAAesD,WAE5BtD,EAEAuD,EAA4B,WAChCvP,GAASwP,EAAAA,EAAAA,KAAgB,GAC3B,EAEMC,GAA0B,WAC9BzP,GAASwP,EAAAA,EAAAA,KAAgB,GAC3B,GAEAE,EAAAA,EAAAA,YAAU,WACJtD,IACFuD,EAAAA,EAAAA,IAASvD,IAEVzH,IAAWiL,EAAAA,EAAAA,IAAe,EAE7B,GAAG,KACHF,EAAAA,EAAAA,YAAU,WACR,IAAAG,EAAmC7D,GAAiB,CAAC,EAA7C2C,EAAWkB,EAAXlB,YAAaC,EAASiB,EAATjB,UACrB,GAAID,GAAeC,EAAW,CAC5B,IAAM5F,EAAG,GAAA9M,OAAMyS,EAAYlG,cAAa,KAAAvM,OAAI0S,GAC5C5O,GAAS8P,EAAAA,EAAAA,IAAiB9G,IAEX,WAAXmD,GACFsD,IAEJ,CAEF,GAAG,IA0CH,OACE7O,EAAAA,EAAAA,KAAA2D,EAAAA,SAAA,CAAA5D,eACoBoE,IAAhBuH,GAA6B3H,KAC7B/D,EAAAA,EAAAA,KAACmP,EAAAA,EAAc,CACbhE,cAAeA,EACf7D,OAAQA,EACRxH,UAAWjB,EAAQwL,MACnB+E,MAxIwB,kBAyIxBC,cAAc,EACdtD,QAASA,EACTuD,YAAY,EAAKvP,SAlDG,WAC1B,OAAQuN,GACN,IAAK,QACH,OAAOtN,EAAAA,EAAAA,KAAA,QAAMF,UAAU,QAAOC,SAAEuN,IAClC,IAAK,UACH,OACE1N,EAAAA,EAAAA,MAAA+D,EAAAA,SAAA,CAAA5D,SAAA,EACEC,EAAAA,EAAAA,KAACuP,EAAAA,EAAsB,CACrBH,MAAO/D,EACPmE,YAAalE,EACbmE,kBAAmB1D,EACnB2D,aAAcnE,EACdE,2BAA4BA,EAC5BE,YAAaA,EACbP,cAAeyC,EACfxJ,KAAMA,EACNnB,iBAAkBA,EAClByM,WAAW,KAEb3P,EAAAA,EAAAA,KAAC4P,EAAAA,EAAgB,CACfC,aAAa,MACbC,eAAgBjB,GAChBkB,iBAAkBpB,EAClBrH,OAAQ8E,EACR/H,KAAMqJ,EACNsC,sBAAuBxE,OAI/B,QACE,OACExL,EAAAA,EAAAA,KAACiQ,EAAAA,EAAqB,CACpBb,MAAO/D,GAAY,GACnBmE,YAAalE,GAAkB,GAC/BF,cAAeA,IAIzB,CAcS8E,MAKX,C,oJChPQnV,E,SAAU7B,EAAWC,OAArB4B,MACK3B,GAAYC,EAAAA,EAAAA,GAAW,CAClCgR,OAAK9Q,EAAAA,EAAAA,GAAA,CACHkC,SAAU,WACVc,gBAAiBxB,EACjBb,MAAO,OACPK,OAAQ,OACRc,OAAQ,IACR6B,IAAK,MACLiT,KAAM,KACN/K,UAAU,sBACVhI,QAAS,QACR1D,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCmM,UAAW,WACX7L,MAAO,YACPK,OAAQ,OACRgC,gBAAiBxB,EACjBM,OAAQ,IACR6B,IAAK,MACLiT,KAAM,MACN/K,UAAU,0BAGdF,QAAS,CACP1J,QAAS,uBACThC,QAAS,OACTC,cAAe,SACfqC,WAAY,SACZM,UAAW,UAEbgU,cAAe,CACbjW,aAAc,YAEhBkW,aAAc,CACZlW,aAAc,WAEhBmW,sBAAuB,CACrBpW,MAAO,OACPqQ,SAAU,WACVgG,YAAa,QAEfC,YAAa,CACXtT,IAAK,IACLiT,KAAM,MACN/K,UAAW,oBAEbqL,gBAAiB,CACftW,aAAc,UAEhBuW,iBAAenX,EAAAA,EAAAA,GAAA,CACbC,QAAS,OACTC,cAAe,SACfQ,eAAgB,UACfP,EAAAA,EAAMC,YAAYC,GAAG,qBAAuB,CAC3CH,cAAe,QAGnBkX,aAAWpX,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACTiC,QAAS,oBACTtB,MAAO,aACPC,aAAc,aAEbT,EAAAA,EAAMC,YAAYC,GAAG,qBAAuB,CAC3CyC,YAAa,UACblC,aAAc,IAEhB,eAAgB,CACdkC,YAAa,M,kECmHnB,EAhKyB,SAAHkC,GAOiB,IANrCsR,EAAYtR,EAAZsR,aACAC,EAAcvR,EAAduR,eACAC,EAAgBxR,EAAhBwR,iBACA1L,EAAI9F,EAAJ8F,KACAiD,EAAM/I,EAAN+I,OACA0I,EAAqBzR,EAArByR,sBAEMnR,EAAUzF,IACVwX,GAAc1R,EAAAA,EAAAA,IAAY2R,EAAAA,IAChClJ,EAAgDtD,GAAQ,CAAC,EAAjD+K,EAAKzH,EAALyH,MAAOlK,EAAOyC,EAAPzC,QAAS4L,EAASnJ,EAATmJ,UAAWC,EAAQpJ,EAARoJ,SAEjCpE,EAMEiE,EANFjE,QACAoB,EAKE6C,EALF7C,YACAiD,EAIEJ,EAJFI,UACAhD,EAGE4C,EAHF5C,UACAE,EAEE0C,EAFF1C,YAGMjB,EADJ2D,EADFK,cAEMhE,cAKFiE,EAAoB,CACxBC,gBAAiB,iBACjBC,QAAS,CACPC,MANW,gDAAA/V,OAAmDqR,EAAO,QAAArR,OAAO2R,EAAa,uBAAA3R,OAAsB4S,EAAYoD,KAC7H,KACD,6EAAAhW,OAA4EyS,EAAW,eAAAzS,OAAc0S,KAahGuD,GAAsB7J,EAAAA,EAAAA,UAAQ,WAClC,MAAO,CACLqG,YAAaA,GAAe,GAC5BC,UAAWA,GAAa,GACxBhN,MAAO,GACPC,SAAU,CACRuQ,aAAa,EACbnR,KAAM,yBAGZ,GAAG,CAAC0N,EAAaC,IAEXyD,GAAgBC,EAAAA,EAAAA,cACpB,SAACrR,EAAcsR,GACb,OAAOtR,EACJb,QAAQ,YAAamN,GACrBnN,QACC,gBACAmS,GAvB2BC,EAuBU7D,EAtB3B,WAAW8D,KAAKD,EAAM/J,cAAc,IACtC,MAAAvM,OAASsW,GAAK,KAAAtW,OAAUsW,IAqBoB7D,GAErDvO,QAAQ,cAAewO,GACvBxO,QAAQ,iBAAkByN,GAC1BzN,QAAQ,YAAawR,GA3BM,IAACY,CA4BjC,GACA,CAACjF,EAASoB,EAAaC,EAAWf,EAAe+D,IAG7Cc,EAAc1C,EAAQqC,EAAcrC,GAAO,GAAS,GACpD2C,EAAgB7M,EAAUuM,EAAcvM,GAAS,GAAQ,GA6B/D,OAlBA4J,EAAAA,EAAAA,YAAU,WAAO,IAADkD,EAAAC,EAAAC,EAAAC,EACRC,EACM,QADaJ,EACvBK,OAAOC,WAAG,IAAAN,GAAW,QAAXC,EAAVD,EAAYO,iBAAS,IAAAN,GAAM,QAANC,EAArBD,EAAuBO,YAAI,IAAAN,GAAW,QAAXC,EAA3BD,EAA6BO,iBAAS,IAAAN,OAA5B,EAAVA,EAAwCO,SACtC,mCAEApL,GACFyH,EAAAA,EAAAA,KAAQ/U,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAC,EACL4W,GAAW,IACd+B,WAAY9C,EACZmB,WAAW4B,EAAAA,EAAAA,IAAoB5B,GAC/B6B,SAAS,GAADvX,OAAKuU,EAAY,uCAElBuC,GAAuBpC,IAChCjB,EAAAA,EAAAA,IAASiB,EAGb,GAAG,CAAC1I,KAGFtH,EAAAA,EAAAA,KAACmP,EAAAA,EAAc,CACbhE,cA7BqB,YACvBpK,EAAAA,EAAAA,KAAU/G,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAC,EACPuX,GAAmB,IACtBvQ,MAAO,QACPG,KAAM,SAER2O,GACF,EAuBIxI,OAAQA,EACR8H,MAAO0C,EACPhS,UAAS,GAAAxE,OAAKuD,EAAQwL,MAAK,kBAC3BiF,YAAY,EAAKvP,UAEjBH,EAAAA,EAAAA,MAAA,OAAKE,UAAWjB,EAAQqG,QAAQnF,SAAA,EAC9BC,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTuC,QAAQ,KACR7C,UAAS,GAAAxE,OAAKuD,EAAQuR,cAAa,gBACnC/P,KAAMyR,KAER9R,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTuC,QAAQ,IACR7C,UAAWjB,EAAQwR,aACnBhQ,KAAM0R,KAER/R,EAAAA,EAAAA,KAAC8S,EAAAA,EAAO,CACNC,MAAO7B,EACP3O,WAAY,CACVrC,UAAWrB,EAAQyR,sBACnB0C,IAAKnU,EAAQ2R,gBAGjBxQ,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTN,UAAS,GAAAxE,OAAKuD,EAAQ4R,gBAAe,0BACrCpQ,KAAI,GAAA/E,OAAK0S,EAAS,WAAA1S,OAAUyS,EAAW,KAAAzS,OACrC0V,GAAajD,EAAYlG,gBAAkBmJ,EAAUnJ,cAAa,QAAAvM,OACtD0V,GACR,OAGRpR,EAAAA,EAAAA,MAAA,OAAKE,UAAWjB,EAAQ6R,gBAAgB3Q,SAAA,EACtCC,EAAAA,EAAAA,KAACgC,EAAAA,EAAU,CACTO,WAAY,CACVrC,UAAU,GAAD5E,OAAKuD,EAAQ8R,cAExB1O,QAASC,EAAAA,EAAe+Q,YACxBvS,QAASoP,EACTtM,gBAAcxJ,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACTuX,GAAmB,IACtBvQ,OAAe,OAAR+P,QAAQ,IAARA,OAAQ,EAARA,EAAU/P,QAAS,KAC1BjB,UAEFC,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CAACC,MAAc,OAAR0Q,QAAQ,IAARA,OAAQ,EAARA,EAAU/P,QAAS,QAEvChB,EAAAA,EAAAA,KAACgC,EAAAA,EAAU,CACTO,WAAY,CACVrC,UAAU,GAAD5E,OAAKuD,EAAQ8R,cAExB1O,QAASC,EAAAA,EAAegR,IACxBxS,QAASqP,EACTvM,gBAAcxJ,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACTuX,GAAmB,IACtBvQ,OAAgB,OAAT8P,QAAS,IAATA,OAAS,EAATA,EAAW9P,QAAS,KAC3BjB,UAEFC,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CAACC,MAAe,OAATyQ,QAAS,IAATA,OAAS,EAATA,EAAW9P,QAAS,cAMlD,C,kFCrLM7H,E,SAASD,EAAWC,OAEbC,GAAYC,EAAAA,EAAAA,GAAW,CAClCC,KAAM,CACJkC,QAAS,aAEX4T,MAAO,CACLnT,OAAQ,aACRG,UAAW,SACXlC,MAAO,OACPoC,cAAe,QAEjBkT,YAAa,CACXnV,MAAOlB,EAAO0B,aACduB,UAAW,SACXlC,MAAO,QAETiZ,aAAc,CACZ3Z,QAAS,OACT4Z,SAAU,WACVnZ,eAAgB,SAChBH,UAAW,WACX,MAAO,CACL8B,aAAa,mBAADN,OAAqBnC,EAAOwB,cACxCsB,OAAQ,WAEV/B,MAAO,U,iCCbJ,SAASmZ,EAAY9U,GAKI,IAJ9B6Q,EAAK7Q,EAAL6Q,MACAI,EAAWjR,EAAXiR,YACA8D,EAAI/U,EAAJ+U,KACA7H,EAA0BlN,EAA1BkN,2BAEM5M,EAAUzF,IAQhB,OAPA0V,EAAAA,EAAAA,YAAU,WACJrD,IACFsD,EAAAA,EAAAA,IAAStD,EAGb,GAAG,KAGD7L,EAAAA,EAAAA,MAAA,OAAKE,UAAWjB,EAAQvF,KAAKyG,SAAA,EAC3BC,EAAAA,EAAAA,KAAA,MAAIF,UAAS,GAAAxE,OAAKuD,EAAQuQ,MAAK,kBAAkB,kBAAiBA,EAAMrP,SACrEqP,KAGHpP,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTuC,QAAQ,IACR7C,UAAS,GAAAxE,OAAKuD,EAAQ2Q,YAAW,oBACjCnP,KAAMmP,IAGP8D,IACCtT,EAAAA,EAAAA,KAAA,OAAKF,UAAWjB,EAAQsU,aAAapT,SAClCwT,OAAOC,KAAKF,GAAMpJ,KAAI,SAAC9B,GACtB,OACEpI,EAAAA,EAAAA,KAAA,KAEEF,UAAW,kBACX2T,KAAMH,EAAKlL,GAAKsL,IAChBtR,OAAQkR,EAAKlL,GAAKhG,aAAU+B,EAAUpE,SAErCuT,EAAKlL,GAAKpH,OALNoH,EAQX,QAKV,C,yICxDMjP,EAASD,EAAAA,EAAWC,OAEbC,GAAYC,EAAAA,EAAAA,GAAW,CAClCsa,eAAgB,CACdzZ,MAAO,OACPJ,UAAW,UACX,kBAAmB,CACjBK,aAAc,OACd,iBAAkB,CAChBA,aAAc,aAIpByZ,eAAara,EAAAA,EAAAA,GAAA,CACXW,MAAO,OACPK,OAAQ,WACPb,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCM,MAAO,YAGX2Z,uBAAqBta,EAAAA,EAAAA,GAAA,GAClBG,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxC,sBAAuB,CACrBka,aAAc,UACd,MAAO,CACLzX,YAAa,YAGjB,qBAAsB,CACpB0X,YAAa,aAInBC,gBAAiB,CACf7Z,aAAc,QAEhB8Z,MAAO,CACL/Z,MAAO,OACPK,OAAQ,WACRgC,gBAAiBpD,EAAOyB,UACxBS,OAAQ,kBACR6Y,YAAa/a,EAAO0L,WACpBrJ,QAAS,qBAEX2Y,QAAS,CACP5Y,WAAY,cACZE,SAAU,WACVjC,QAAS,eACT2L,OAAQ,EACR5K,OAAQ,UACRL,MAAO,UACP,WAAY,CACVka,UAAW,mCACXjZ,aAAc,MACdmK,YAAa,6BACbD,UAAU,kBAAD/J,OAAoBnC,EAAO4B,OACpCmK,QAAS,KACT3K,OAAQ,YACRL,MAAO,YACPuB,SAAU,WACVuP,UAAW,aACXmF,KAAM,WACNjT,IAAK,cAGT,wBAAyB,CACvBmF,GAAI,CACF+C,UAAW,qB,iCCpEXjM,EAASD,EAAAA,EAAWC,OAEbC,GAAYC,EAAAA,EAAAA,GAAW,CAClC6G,UAAW,CACTzE,SAAU,WACVvB,MAAO,OACP,qBAAsB,CACpB+B,OAAQ,GAEV,qBAAsB,CACpBmC,WAAY,YAGhBiW,aAAc,CACZha,MAAOlB,EAAOyL,WAEhB0P,WAAY,CACVja,MAAOlB,EAAOyL,UACdnJ,SAAU,WACVvB,MAAO,OACPJ,UAAW,aAEbma,MAAO,CACLjJ,UAAW,aACXvP,SAAU,WACVvB,MAAO,OACPK,OAAQ,WACRgC,gBAAiBpD,EAAOyB,UACxBS,OAAQ,kBACR6Y,YAAa/a,EAAO0L,WACpBrJ,QAAS,oBACT2J,OAAQ,EACRjH,SAAU,UACV,UAAW,CACTd,QAAQ,kBAAD9B,OAAoBnC,EAAOob,aAClClX,cAAe,iB,WCnBd,SAASmX,EAASjW,GAWS,IAVhCyC,EAAKzC,EAALyC,MACAV,EAAI/B,EAAJ+B,KACAiD,EAAchF,EAAdgF,eACAkR,EAAUlW,EAAVkW,WACAC,EAAOnW,EAAPmW,QACAC,EAAKpW,EAALoW,MACAC,EAASrW,EAATqW,UACAhO,EAAYrI,EAAZqI,aACAzF,EAAI5C,EAAJ4C,KACA0T,EAAQtW,EAARsW,SAEMhW,EAAUzF,IACV0b,GAAUC,EAAAA,EAAAA,MACRC,GAAaF,GAAoB,CAAEE,cAAU7Q,IAA7C6Q,SAEFC,EACG,OAAPP,QAAO,IAAPA,GAAAA,EAASlO,OAA2B,cAAlBkO,EAAQlO,MAFP,UAIR,OAAPkO,QAAO,IAAPA,OAAO,EAAPA,EAASlO,MAEf,OACE5G,EAAAA,EAAAA,MAAA,OAAKsV,GAAG,aAAapV,UAAWjB,EAAQqB,UAAUH,SAAA,EAChDH,EAAAA,EAAAA,MAAA,SAAOE,UAAS,0BAA4BC,SAAA,CACzCiB,EACAyT,IAAczU,EAAAA,EAAAA,KAAA,QAAMF,UAAWjB,EAAQwV,aAAatU,SAAC,SAEvDiV,GACChV,EAAAA,EAAAA,KAAA,SAAAhG,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACMgb,EAAS1U,EAAM,CACjB6U,SAAUV,EACVC,QAAS,CACPU,SAAgB,OAAPV,QAAO,IAAPA,OAAO,EAAPA,EAASU,UAAW,GAC7B5O,MAAO,IAAI6O,OAAOJ,GAAc,QAElC,IACF9T,KAAMA,EACNb,KAAMA,EACN,kBAAiBiD,EACjB,aAAYvC,EACZlB,UAAWjB,EAAQoV,MACnBW,UAAWA,QAAazQ,EACxBgR,WAAUV,EACV7N,aAAcA,EACdiO,SAAUA,MAGZ7U,EAAAA,EAAAA,KAAA,SACEM,KAAMA,EACNR,UAAWjB,EAAQoV,MACnBW,UAAWA,QAAazQ,EACxBgR,WAAUV,EACV7N,aAAcA,EACdiO,SAAUA,IAIbF,IACC3U,EAAAA,EAAAA,KAAA,KAAGF,UAAS,gCAAAxE,OAAkCuD,EAAQyV,YAAavU,UACjEC,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CAACC,KAAMsU,QAK5B,C,0BC9EMxb,EAASD,EAAAA,EAAWC,OACpBmc,EAAYC,oBAChBC,EAAAA,EAAAA,uBACExV,EAAAA,EAAAA,KAAA,OAAKyV,MAAM,6BAA6BC,QAAQ,cAAa3V,UAC3DC,EAAAA,EAAAA,KAAA,WACEtE,KAAMvC,EAAOyL,UACb+Q,OAAO,wEAMFvc,GAAYC,EAAAA,EAAAA,GAAW,CAClCuc,mBAAoB,CAClB1b,MAAO,OACP6L,UAAW,UACXxL,OAAQ,OACRkB,SAAU,WACVjC,QAAS,OACT,qBAAsB,CACpB,MAAO,CACLoC,aAAc,0BACdJ,QAAS,WACT,UAAW,CACTnB,MAAO,WAET,UAAW,CACTA,MAAO,UACPgB,OAAQ,EACRD,UAAW,+BACXgC,QAAS,GAEXiM,WAAY,QAGhB,2BAA4B,CAC1B7P,QAAS,QACTyC,OAAQ,6BACR,UAAW,CACTmB,QAAQ,kBAAD9B,OAAoBnC,EAAOob,aAClClX,cAAe,gBAIrBwY,SAAU,CACR7K,UAAW,aACXvP,SAAU,WACVS,SAAU,UACV3B,OAAQ,UACRub,WAAY,UACZC,iBAAkB,UAClB1a,OAAQ,kBACR6Y,YAAa/a,EAAO0L,WACpBtI,gBAAiBpD,EAAOyB,UACxBV,MAAO,OACP,mBAAoB,CAClBgL,QAAS,KACT8Q,gBAAgB,2BAAD1a,OAA6Bga,EAAS,MACrD/a,OAAQ,UACR4V,KAAM,UACN1U,SAAU,WACVyB,IAAK,UACLhD,MAAO,WAET,UAAW,CACT0Q,OAAQ,YAGZ0J,WAAY,CACVja,MAAOlB,EAAOyL,UACdnJ,SAAU,WACVvB,MAAO,OACPiW,KAAM,YACN8F,OAAQ,gBC/DL,SAASC,EAAcrS,GAC5B,IAAMhF,EAAUzF,IACV0b,GAAUC,EAAAA,EAAAA,MACRC,GAAaF,GAAoB,CAAEE,cAAU7Q,IAA7C6Q,SAER,OACEpV,EAAAA,EAAAA,MAAA,OACEsV,GAAG,iBACHpV,UAAS,GAAAxE,OAAKuD,EAAQ+W,mBAAkB,iBAAgB7V,SAAA,CAEvDiV,GACChV,EAAAA,EAAAA,KAAA,SAAAhG,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACMgb,EAASnR,EAAMvD,KAAM,CAAE6U,SAAUtR,EAAM4Q,cAAa,IACxDtT,KAAK,WACLb,KAAMuD,EAAMvD,KACZ6U,WAAUtR,EAAM4Q,WAChB3U,UAAWjB,EAAQgX,SACnB,kBAAiBhS,EAAMvD,KACvB,aAAYuD,EAAMvD,KAClBuU,SAAUhR,EAAMgR,aAGlB7U,EAAAA,EAAAA,KAAA,SACEmB,KAAK,WACLb,KAAMuD,EAAMvD,KACZ6U,WAAUtR,EAAM4Q,WAChB3U,UAAWjB,EAAQgX,SACnBhB,SAAUhR,EAAMgR,YAGpB7U,EAAAA,EAAAA,KAAA,KAAGkV,GAAG,gBAAgBpV,UAAW,kBAAkBC,UACjDC,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CAACC,KAAMwD,EAAMsS,aAEzBtS,EAAM8Q,QACL3U,EAAAA,EAAAA,KAAA,KAAGkV,GAAG,aAAapV,UAAS,mBAAAxE,OAAqBuD,EAAQyV,YAAavU,UACpEC,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CAACC,KAAMwD,EAAM8Q,YAKlC,C,qCChDayB,EAAiB,SAACC,GAC3B,IAAMC,GAActP,EAAAA,EAAAA,QAAOqP,IAE3BvH,EAAAA,EAAAA,YAAU,WACR,IAAMyH,EAAWD,EAAYjO,QAE7B,OADAgK,OAAOmE,iBAAiB,eAAgBD,GACjC,WACLlE,OAAOoE,oBAAoB,eAAgBF,EAC7C,CACF,GAAG,CAACD,GACN,E,sBC2BK,SAASI,EAAenY,GAKP,IAADoY,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAJrBC,GAAQxb,EAARwb,SACAC,GAASzb,EAATyb,UACAC,GAAQ1b,EAAR0b,SACAC,GAAa3b,EAAb2b,cAEMrb,GAAUzF,IAChB8N,IAAsCC,EAAAA,EAAAA,YAAmBC,IAAAC,EAAAA,EAAAA,GAAAH,GAAA,GAAlDiT,GAAW/S,GAAA,GAAEgT,GAAchT,GAAA,GAC5BiT,IAAiBnb,EAAAA,EAAAA,IAAYob,EAAAA,IAC7BC,IAAiBrb,EAAAA,EAAAA,IAAYsb,EAAAA,IAC7B1F,IAAU2F,EAAAA,EAAAA,MACRC,GAA2B5F,GAA3B4F,aAAcC,GAAa7F,GAAb6F,SAChB5W,IAAU7E,EAAAA,EAAAA,IAAY8E,EAAAA,IAqB5BoS,GAnBoB,YAClBrV,EAAAA,EAAAA,IAAW,CACTC,MAAM,mBACNC,SAAU,CACRC,iBAAiB,EACjBb,KAAM,wBAERc,KAAM,MACN4M,YAAamM,GACTK,GAAeK,mBACfP,GAAetM,aAAe,WAClCC,UAAWkM,GACPK,GAAevM,UACfqM,GAAerM,WAAa,WAChCrB,QAASuN,GACLK,GAAe5N,QACf0N,GAAe1N,SAAW,YAElC,IAGA,IAAMkO,GAAoB,SAACC,GACzB,IAAAC,EAAwBD,EAAE1Y,OAAlB9B,EAAIya,EAAJza,KAAMkG,EAAKuU,EAALvU,MACI,aAAlBsU,EAAE1Y,OAAOjB,KACLwZ,GAASra,EAAMwa,EAAE1Y,OAAO4Y,SACxBL,GAASra,EAAMkG,EACrB,EAmDA,OACExG,EAAAA,EAAAA,KAACib,EAAAA,IAAYjhB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GAAK8a,IAAO,IAAA/U,UACvBH,EAAAA,EAAAA,MAAA,QACEsV,GAAG,mBACHgG,aAAa,MACbC,YAAU,EACVlB,SAAUS,IAxDiC,SAACrW,GAChD+V,GAAe,CAAC,GACXJ,MACHjZ,EAAAA,EAAAA,IAAW,CACTC,MAAM,kBACNC,SAAU,CACRC,iBAAiB,EACjBb,KAAM,wBAERc,KAAM,MACN4M,YAAamM,GACTK,GAAeK,mBACfP,GAAetM,aAAe,WAClCC,UAAWkM,GACPK,GAAevM,UACfqM,GAAerM,WAAa,WAChCrB,QAASuN,GACLK,GAAe5N,QACf0N,GAAe1N,SAAW,aAEhCsN,IAAYA,GAAS5V,GAEzB,IAEgB,SAAC+W,GACfhB,IAAcpgB,EAAAA,EAAAA,GAAC,CAAC,EAAIohB,IACpB,IAAMC,EAAgB,CAAC,UAAW,QAAS,SAC3C9H,OAAOC,KAAK4H,GAAQE,SAAQ,SAACC,GACvBF,EAAc3I,SAAS6I,KACzBxa,EAAAA,EAAAA,IAAW,CACTC,MAAM,2BAAD1F,OAA6BigB,GAClCta,SAAU,CACRC,iBAAiB,EACjBb,KAAM,wBAERc,KAAM,MACN4M,YAAamM,GACTK,GAAeK,mBACfP,GAAetM,aAAe,WAClCC,UAAWkM,GACPK,GAAevM,UACfqM,GAAerM,WAAa,WAChCrB,QAASuN,GACLK,GAAe5N,QACf0N,GAAe1N,SAAW,YAGpC,GACF,IASM7M,UAAWjB,GAAQ8U,eAAe5T,SAAA,EAElCH,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAACC,WAAS,EAACJ,UAAWjB,GAAQgV,sBAAsB9T,SAAA,EACvDC,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAIC,GAAI,EAAGhC,UAAWjB,GAAQmV,gBAAgBjU,UAC3DC,EAAAA,EAAAA,KAACwU,EAAS,CACRxT,MAA6B,QAAxB2V,EAAEoD,GAAS,qBAAa,IAAApD,OAAA,EAAtBA,EAAwB3V,MAC/BV,MAA4B,QAAtBsW,EAAAmD,GAAS,qBAAa,IAAAnD,OAAA,EAAtBA,EAAwBtW,OAAQ,WACtCmU,WAAkC,QAAxBoC,EAAEkD,GAAS,qBAAa,IAAAlD,GAAU,QAAVC,EAAtBD,EAAwB1B,gBAAQ,IAAA2B,OAAV,EAAtBA,EAAkC1B,QAC9CV,QAA+B,QAAxBqC,EAAEgD,GAAS,qBAAa,IAAAhD,OAAA,EAAtBA,EAAwBrC,QACjCE,UAAiC,QAAxBoC,EAAE+C,GAAS,qBAAa,IAAA/C,OAAA,EAAtBA,EAAwBpC,UACnCD,MAAkB,OAAXwF,SAAW,IAAXA,IAA2B,QAAhBlD,EAAXkD,GAAc,qBAAa,IAAAlD,OAAhB,EAAXA,EAA6B7B,QACpC7R,eAAsC,QAAxB2T,EAAE6C,GAAS,qBAAa,IAAA7C,OAAA,EAAtBA,EAAwBlW,MACxCG,KAAK,OACL0T,SAAUgG,QAGd7a,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAIC,GAAI,EAAGhC,UAAWjB,GAAQmV,gBAAgBjU,UAC3DC,EAAAA,EAAAA,KAACwU,EAAS,CACRxT,MAA4B,QAAvBmW,EAAE4C,GAAS,oBAAY,IAAA5C,OAAA,EAArBA,EAAuBnW,MAC9BV,MAA2B,QAArB8W,EAAA2C,GAAS,oBAAY,IAAA3C,OAAA,EAArBA,EAAuB9W,OAAQ,WACrCmU,WAAiC,QAAvB4C,EAAE0C,GAAS,oBAAY,IAAA1C,GAAU,QAAVC,EAArBD,EAAuBlC,gBAAQ,IAAAmC,OAAV,EAArBA,EAAiClC,QAC7CV,QAA8B,QAAvB6C,EAAEwC,GAAS,oBAAY,IAAAxC,OAAA,EAArBA,EAAuB7C,QAChCE,UAAgC,QAAvB4C,EAAEuC,GAAS,oBAAY,IAAAvC,OAAA,EAArBA,EAAuB5C,UAClCD,MAAkB,OAAXwF,SAAW,IAAXA,IAA0B,QAAf1C,EAAX0C,GAAc,oBAAY,IAAA1C,OAAf,EAAXA,EAA4BrC,QACnC7R,eAAqC,QAAvBmU,EAAEqC,GAAS,oBAAY,IAAArC,OAAA,EAArBA,EAAuB1W,MACvCG,KAAK,OACL0T,SAAUgG,WAIhBjb,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAACC,WAAS,EAACJ,UAAWjB,GAAQgV,sBAAsB9T,SAAA,EACvDC,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAIC,GAAI,EAAGhC,UAAWjB,GAAQmV,gBAAgBjU,UAC3DC,EAAAA,EAAAA,KAACwU,EAAS,CACRxT,MAAqB,QAAhB2W,EAAEoC,GAASyB,aAAK,IAAA7D,OAAA,EAAdA,EAAgB3W,MACvBV,MAAoB,QAAdsX,EAAAmC,GAASyB,aAAK,IAAA5D,OAAA,EAAdA,EAAgBtX,OAAQ,WAC9BmU,WAA0B,QAAhBoD,EAAEkC,GAASyB,aAAK,IAAA3D,GAAU,QAAVC,EAAdD,EAAgB1C,gBAAQ,IAAA2C,OAAV,EAAdA,EAA0B1C,QACtCV,QAAuB,QAAhBqD,EAAEgC,GAASyB,aAAK,IAAAzD,OAAA,EAAdA,EAAgBrD,QACzBE,UAAyB,QAAhBoD,EAAE+B,GAASyB,aAAK,IAAAxD,OAAA,EAAdA,EAAgBpD,UAC3BD,MAAkB,OAAXwF,SAAW,IAAXA,IAAsB,QAAXlC,EAAXkC,GAAqB,aAAC,IAAAlC,OAAX,EAAXA,EAAwB7C,QAC/B7R,eAA8B,QAAhB2U,EAAE6B,GAASyB,aAAK,IAAAtD,OAAA,EAAdA,EAAgBlX,MAChCG,KAAK,QACL0T,SAAUgG,QAGdjb,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CACHC,WAAS,EACT0B,MAAI,EACJC,GAAI,GACJC,GAAI,EACJhC,UAAWjB,GAAQgV,sBAAsB9T,SAAA,EAEzCC,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAIC,GAAI,EAAGhC,UAAWjB,GAAQmV,gBAAgBjU,UAC3DC,EAAAA,EAAAA,KAACwU,EAAS,CACRxT,MAA8B,QAAzBmX,EAAE4B,GAAS,sBAAc,IAAA5B,OAAA,EAAvBA,EAAyBnX,MAChCV,MAA6B,QAAvB8X,EAAA2B,GAAS,sBAAc,IAAA3B,OAAA,EAAvBA,EAAyB9X,OAAQ,WACvCmU,WAAmC,QAAzB4D,EAAE0B,GAAS,sBAAc,IAAA1B,GAAU,QAAVC,EAAvBD,EAAyBlD,gBAAQ,IAAAmD,OAAV,EAAvBA,EAAmClD,QAC/CV,QAAgC,QAAzB6D,EAAEwB,GAAS,sBAAc,IAAAxB,OAAA,EAAvBA,EAAyB7D,QAClCE,UAAkC,QAAzB4D,EAAEuB,GAAS,sBAAc,IAAAvB,OAAA,EAAvBA,EAAyB5D,UACpCD,MAAkB,OAAXwF,SAAW,IAAXA,IAA4B,QAAjB1B,EAAX0B,GAAc,sBAAc,IAAA1B,OAAjB,EAAXA,EAA8BrD,QACrCxO,cAAqB,OAAP7C,SAAO,IAAPA,QAAO,EAAPA,GAAS0X,QAAS,EAAI1X,QAAUI,EAC9CZ,eAAuC,QAAzBmV,EAAEqB,GAAS,sBAAc,IAAArB,OAAA,EAAvBA,EAAyB1X,MACzCG,KAAK,SACL0T,SAAUgG,QAGd7a,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAIC,GAAI,EAAGhC,UAAWjB,GAAQmV,gBAAgBjU,UAC3DC,EAAAA,EAAAA,KAACwU,EAAS,CACRxT,MAAqB,QAAhB2X,EAAEoB,GAASnX,aAAK,IAAA+V,OAAA,EAAdA,EAAgB3X,MACvBV,MAAoB,QAAdsY,EAAAmB,GAASnX,aAAK,IAAAgW,OAAA,EAAdA,EAAgBtY,OAAQ,WAC9BmU,WAA0B,QAAhBoE,EAAEkB,GAASnX,aAAK,IAAAiW,GAAU,QAAVC,EAAdD,EAAgB1D,gBAAQ,IAAA2D,OAAV,EAAdA,EAA0B1D,QACtCV,QAAuB,QAAhBqE,GAAEgB,GAASnX,aAAK,IAAAmW,QAAA,EAAdA,GAAgBrE,QACzBE,UAAyB,QAAhBoE,GAAEe,GAASnX,aAAK,IAAAoW,QAAA,EAAdA,GAAgBpE,UAC3BzT,KAAK,MACLoC,eAA8B,QAAhB0V,GAAEc,GAASnX,aAAK,IAAAqW,QAAA,EAAdA,GAAgBjY,MAChC6T,SAAUgG,cAKlB7a,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAI/B,UAAWjB,GAAQmV,gBAAgBjU,UACpDC,EAAAA,EAAAA,KAACwU,EAAS,CACRxT,MAAwB,QAAnBkY,GAAEa,GAAS2B,gBAAQ,IAAAxC,QAAA,EAAjBA,GAAmBlY,MAC1BV,MAAuB,QAAjB6Y,GAAAY,GAAS2B,gBAAQ,IAAAvC,QAAA,EAAjBA,GAAmB7Y,OAAQ,WACjCmU,WAA6B,QAAnB2E,GAAEW,GAAS2B,gBAAQ,IAAAtC,IAAU,QAAVC,GAAjBD,GAAmBjE,gBAAQ,IAAAkE,QAAV,EAAjBA,GAA6BjE,QACzCV,QAA0B,QAAnB4E,GAAES,GAAS2B,gBAAQ,IAAApC,QAAA,EAAjBA,GAAmB5E,QAC5BE,UAA4B,QAAnB2E,GAAEQ,GAAS2B,gBAAQ,IAAAnC,QAAA,EAAjBA,GAAmB3E,UAC9BrR,eAAiC,QAAnBiW,GAAEO,GAAS2B,gBAAQ,IAAAlC,QAAA,EAAjBA,GAAmBxY,MACnCG,KAAK,OACL0T,SAAUgG,QAGd7a,EAAAA,EAAAA,KAACkW,EAAa,CACZ5V,KAAoB,QAAhBmZ,GAAEM,GAAS4B,aAAK,IAAAlC,QAAA,EAAdA,GAAgBnZ,KACtB6V,UAAwB,QAAduD,GAAAK,GAAS4B,aAAK,IAAAjC,QAAA,EAAdA,GAAgB1Y,QAAS,WACnCyT,WAA0B,QAAhBkF,GAAEI,GAAS4B,aAAK,IAAAhC,IAAU,QAAVC,GAAdD,GAAgBxE,gBAAQ,IAAAyE,QAAV,EAAdA,GAA0BxE,QACtCT,MAAkB,OAAXwF,SAAW,IAAXA,IAAsB,QAAXN,GAAXM,GAAqB,aAAC,IAAAN,QAAX,EAAXA,GAAwBzE,QAC/B7R,eAA8B,QAAhBuW,GAAEC,GAAS4B,aAAK,IAAA7B,QAAA,EAAdA,GAAgBxZ,KAChCuU,SAAUgG,MAEZ7a,EAAAA,EAAAA,KAACgC,EAAAA,EAAU,CACTO,WAAY,CAAErC,UAAWrB,GAAQ+U,cAAegI,KAAM,eACtD3Z,QAASC,EAAAA,EAAegR,IACxB/R,KAAK,SACLoC,eAAe,SAAQxD,SAEtBia,IACCha,EAAAA,EAAAA,KAAA,QAAMF,UAAS,GAAAxE,OAAKuD,GAAQsV,YAE5BnU,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CAACC,KAAM0Z,GAAS8B,oBAMvC,C,sNC5PM1iB,EAASD,EAAAA,EAAWC,OAEbC,GAAYC,EAAAA,EAAAA,GAAW,CAClC+V,OAAK7V,EAAAA,EAAAA,GAAA,GACFG,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCE,UAAW,YAGfgiB,iBAAkB,CAChB,eAAgB,CACd,aAAc,CACZ,WAAY,CACVvf,gBAAiBpD,EAAO6B,MACxBkK,QAAS,KACT1L,QAAS,eACTe,OAAQ,WACRC,WAAY,UACZiB,SAAU,WACVvB,MAAO,YACPgD,IAAK,eAKb6e,oBAAqB,CACnB3d,WAAY,UACZD,cAAe,SACf3C,QAAS,IACTvB,eAAgB,aAChBgC,OAAQ,gCACRK,cAAe,OACfjC,MAAOlB,EAAOyL,UACdgG,OAAQ,UACR,UAAW,CACTrP,WAAY,gBAGhBygB,iBAAkB,CAChB3hB,MAAOlB,EAAOyL,UACd,aAAc,CACZvK,MAAOlB,EAAO6B,MACd4P,OAAQ,YAGZqR,iBAAkB,CAChBhgB,OAAQ,cACR9B,aAAc,UACd,aAAc,CACZ+hB,QAAS,OAGbC,cAAY5iB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACVkC,SAAU,WACVS,SAAU,IACV/B,aAAc,sBACdD,MAAO,OACPqQ,SAAU,UACVhO,gBAAiB,SAChB7C,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxC2Q,SAAU,aAEX7Q,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvC2Q,SAAU,aAEZ,aAAc,CACZ2R,QAAS,OAGbE,gBAAc7iB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACZgR,SAAU,UACVzQ,UAAW,WACXK,aAAc,YACdE,MAAOlB,EAAOuR,UACbhR,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxC2Q,SAAU,aAEX7Q,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvC2Q,SAAU,aAGd8R,wBAAsB9iB,EAAAA,EAAAA,GAAA,CACpBO,UAAW,UACXK,aAAc,YACbT,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCE,UAAW,MAGfwiB,WAAS/iB,EAAAA,EAAAA,GAAA,CACPc,MAAOlB,EAAOyL,UACdpK,WAAY,UACZV,UAAW,aACVJ,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCE,UAAW,e,sDC5FXX,EAASD,EAAAA,EAAWC,OAC1B,SAASojB,EAAgBrhB,GACvB,MAAO,CACLkC,QAAQ,iBACRC,cAAc,IAAD/B,OAAMJ,EAAM,OAE7B,CAEO,IAAMshB,GAAqBnjB,EAAAA,EAAAA,GAAW,CAC3CC,KAAM,CACJ+B,OAAO,mBAADC,OAAqBnC,EAAOwB,cAClCc,SAAU,YAEZghB,aAAc,CACZjjB,QAAS,OACTe,OAAQ,IACRE,WAAY,SACZgB,SAAU,YAEZuX,IAAK,CACHvX,SAAU,WACVyB,IAAK,IACL3C,OAAQ,OACRL,MAAO,OACP,gBAAiB,CACfgiB,QAAS,OAGb7b,MAAI9G,EAAAA,EAAAA,GAAA,CACFgB,OAAQ,WACR0B,OAAQ,wBACPvC,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCW,OAAQ,YAGZmiB,aAAc,CACZ,sBAAoBnjB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CAClBW,MAAO,OACPK,OAAQ,QACPb,EAAAA,EAAMC,YAAYC,GAAG,qBAAuB,CAC3CW,OAAQ,eAETb,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCW,OAAQ,WAETb,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCW,OAAQ,cAETb,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCW,OAAQ,aAIdoiB,6BAA8B,CAC5B,sBAAoBpjB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CAClBW,MAAO,OACPK,OAAQ,cACPb,EAAAA,EAAMC,YAAYC,GAAG,qBAAuB,CAC3CW,OAAQ,eAETb,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCW,OAAQ,eAETb,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCW,OAAQ,eAETb,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCW,OAAQ,gBAKdqiB,kBAAmB,CACjBrgB,gBAAiB,OACjBrC,MAAO,OACPK,OAAQ,OACRkB,SAAU,WACVyB,IAAK,EACLiI,OAAQ,EACR+W,QAAS,EACT7S,WAAY,qBAGd8K,QAAS,CACPhE,KAAM,MACN1U,SAAU,WACVyB,IAAK,MACLhD,MAAO,WACPK,OAAQ,WACR6K,UAAW,wBACX,WAAY,CACVgP,UAAW,mCACXjZ,aAAc,MACdmK,YAAa,6BACbD,UAAU,kBAAD/J,OAAoBnC,EAAOyL,WACpCM,QAAS,KACT3K,OAAQ,WACRL,MAAO,WACPuB,SAAU,WACVuP,UAAW,eAGf6R,WAAY,CACV9I,YAAa,aAEf,wBAAyB,CACvB1R,GAAI,CACF+C,UAAW,qBAKJ0X,GAAuBzjB,EAAAA,EAAAA,GAAW,CAC7CC,KAAM,CACJiR,SAAU,aACVnP,UAAU,qBAADE,OAAuBnC,EAAO4jB,eAEzCC,kBAAmB,CACjBxhB,QAAS,qBAEXyhB,iBAAkB,CAChBzhB,QAAS,UACTiP,cAAe,SACfhR,cAAe,SACf,SAAU,CACRwC,OAAQ,SACRwO,cAAe,cAGnByS,WAAY,CACVhjB,MAAO,QAETqU,KAAM,CACJnS,UAAW,SAEb+gB,0BAAwB5jB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACtB4L,OAAQ,EACR5K,OAAQ,uBACRL,MAAO,uBACNR,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCW,OAAQ,wBACRL,MAAO,wBAERR,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCW,OAAQ,sBACRL,MAAO,uBAET,WAAY,CACVgL,QAAS,oBAEX,aAAW3L,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACT2L,QAAS,KACT3K,OAAQ,UACRkB,SAAU,WACVyB,IAAK,MACLkI,UAAW,mBACXlL,MAAO,QACNR,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCW,OAAQ,WACRL,MAAO,aAERR,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCW,OAAQ,UACRL,MAAO,YAGX,QAAS,CACPK,OAAQ,OACRL,MAAO,SAET,UAAW,CACT,cAAe,CACbgiB,QAAS,MAGb,UAAW,CACT,mCAAiCliB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GAC5BuiB,EAAgB,IAAE,IACrBjf,aAAcnE,EAAO6B,UAI3BoiB,+BAA6B7jB,EAAAA,EAAAA,GAAA,CAC3B8jB,WAAY,UACX3jB,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCyjB,WAAY,YAGhBC,+BAA6B/jB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CAC3B4W,KAAM,uBACLzW,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCuW,KAAM,0BAEPzW,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCuW,KAAM,oBAGVoN,+BAA6BhkB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CAC3B4D,MAAO,uBACNzD,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCuD,MAAO,0BAERzD,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCuD,MAAO,oBAGXqgB,gBAAiB,CACf1hB,WAAY,SACZS,gBAAiB,cACjB/C,QAAS,OACTS,eAAgB,SAChBuB,QAAS,YACTC,SAAU,WACVW,UAAW,SACXlC,MAAO,OACPiL,OAAQ,GAEVsY,iBAAelkB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACbwM,UAAW,aACVrM,EAAAA,EAAMC,YAAYC,GAAG,qBAAuB,CAC3CmM,UAAW,eAEZrM,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCmM,UAAW,cAEZrM,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCmM,UAAW,UAEZrM,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCmM,UAAW,eAGf2X,OAAQ,CACN,uBAAwB,CACtBlkB,QAAS,yBACTuM,UAAW,UACXkQ,OAAQ,qBACRxa,SAAU,WACV,+BAA6BlC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CAC3BgC,WAAYpC,EAAO4jB,aACnBxiB,OAAQ,UACRL,MAAO,WACNR,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCW,OAAQ,YACRL,MAAO,cACR,eACa,OAAK,SACX,YAAU,gBACH,UACf,YAAUX,EAAAA,EAAAA,GAAA,CACRgC,WAAYpC,EAAO6B,MACnBT,OAAQ,WACRL,MAAO,YACNR,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCW,OAAQ,YACRL,MAAO,eAGX,UAAW,CACT,mCAAiCF,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GAC5BuiB,EAAgB,IAAE,IACrBjf,aAAcnE,EAAO6B,YAM/B2iB,gBAAiB,CACftY,UAAU,aAAD/J,OAAenC,EAAOykB,cAC/BhiB,aAAa,aAADN,OAAenC,EAAOykB,cAClCpiB,QAAS,cAEXqiB,eAAgB,CACdriB,QAAS,gBAEXsiB,SAAU,CACR3iB,aAAc,MACdZ,OAAQ,WACRL,MAAO,YAET6jB,UAAW,CACTviB,QAAS,cAEXwiB,UAAW,CACTxkB,QAAS,OACTsC,WAAY,UAEdmiB,QAAS,CACPziB,QAAS,aAEX0iB,OAAQ,CACN1kB,QAAS,QACT,WAAY,CACV+C,gBAAiBpD,EAAO0B,aACxBM,aAAc,MACd+J,QAAS,KACT1L,QAAS,eACTe,OAAQ,WACR8B,YAAa,YACb8hB,cAAe,SACfjkB,MAAO,aAGXwiB,aAAc,CACZ,sBAAoBnjB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CAClBW,MAAO,OACPqQ,SAAU,aACVhQ,OAAQ,aACPb,EAAAA,EAAMC,YAAYC,GAAG,qBAAuB,CAC3CW,OAAQ,eAETb,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCW,OAAQ,cAETb,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCW,OAAQ,UAETb,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCW,OAAQ,kB,WCtTT,SAAS6jB,EAAgB7f,GAKT,IAJrB8f,EAAQ9f,EAAR8f,SACAtL,EAAKxU,EAALwU,MACAuL,EAAS/f,EAAT+f,UACAC,EAAQhgB,EAARggB,SAEMC,EAAmBhC,IAEzB,OACE5c,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAACC,WAAS,EAACJ,UAAW0e,EAAiBllB,KAAKyG,SAAA,EAC/CH,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAI/B,UAAW0e,EAAiBne,KAAKN,SAAA,EACzC,OAARse,QAAQ,IAARA,OAAQ,EAARA,EAAUI,aACT7e,EAAAA,EAAAA,MAAA,KAAAG,SAAA,EACEC,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTuC,QAAQ,OACR7C,UAAU,wBACVO,KAAMge,EAASrQ,aAEjBhO,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTuC,QAAQ,OACR7C,UAAS,GAAAxE,OAAKkjB,EAAiB3B,WAAU,kBACzCxc,KAAMge,EAASI,eAKpBJ,EAAS7O,cACRxP,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTN,UAAU,kBACVO,KAAMge,EAAS7O,aAAe,SAIpC5P,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CACH2B,MAAI,EACJC,GAAI,GACJ/B,UAAW0e,EAAiB/B,aAC5BxiB,eAAe,SAAQ8F,SAAA,EAEvBC,EAAAA,EAAAA,KAAA,OACE0e,IAAK3L,EACL4L,IAAKN,EAASO,QAAU,GACxB9e,UAAS,GAAAxE,OAAKkjB,EAAiBxL,QAE/BsL,IAAcC,IACdve,EAAAA,EAAAA,KAAA,OAAKF,UAAS,GAAAxE,OAAKkjB,EAAiB5B,mBAAoB7c,UACtDC,EAAAA,EAAAA,KAAA,OAAKF,UAAS,GAAAxE,OAAKkjB,EAAiBrK,kBAMhD,CCnDO,SAAS0K,EAAuBtgB,GAKT,IAJ5B8f,EAAQ9f,EAAR8f,SACAtL,EAAKxU,EAALwU,MACAuL,EAAS/f,EAAT+f,UACAC,EAAQhgB,EAARggB,SAEMC,EAAmBhC,IAEzB,OACE5c,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAACC,WAAS,EAACJ,UAAW0e,EAAiBllB,KAAKyG,SAAA,EAC/CH,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CACH2B,MAAI,EACJC,GAAI,GACJ/B,UAAW0e,EAAiB/B,aAC5BxiB,eAAe,SAAQ8F,SAAA,EAEvBC,EAAAA,EAAAA,KAAA,OACE0e,IAAK3L,EACL4L,IAAKN,EAASO,OACd9e,UAAS,GAAAxE,OAAKkjB,EAAiBxL,QAE/BsL,IAAcC,IACdve,EAAAA,EAAAA,KAAA,OAAKF,UAAS,GAAAxE,OAAKkjB,EAAiB5B,mBAAoB7c,UACtDC,EAAAA,EAAAA,KAAA,OAAKF,UAAS,GAAAxE,OAAKkjB,EAAiBrK,iBAI1CvU,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAAC2B,MAAI,EAAC1B,WAAS,EAACC,UAAU,MAAM0B,GAAI,GAAG9B,SAAA,CACzCse,EAAS7O,cACRxP,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAAC1B,WAAS,EAACjG,eAAe,SAAS4H,GAAI,GAAG9B,UAClDC,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTN,UAAU,kBACVO,KAAMge,EAAS7O,aAAe,QAI3B,OAAR6O,QAAQ,IAARA,OAAQ,EAARA,EAAUI,aACTze,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAI6H,MAAO,CAAEzN,OAAQ,+BAAgC8D,UAClEC,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTN,UAAU,gBACVO,KAAI,GAAA/E,OAAa,OAAR+iB,QAAQ,IAARA,OAAQ,EAARA,EAAUrQ,UAAS,KAAA1S,OAAY,OAAR+iB,QAAQ,IAARA,OAAQ,EAARA,EAAUI,oBAOxD,C,sGCzCQ1B,EAAiB7jB,EAAAA,EAAWC,OAA5B4jB,aAEF+B,EAAoB,CACxBC,OAAQ,sBACRC,OAAQ,uBAGJC,EAAoB,CACxBC,WAAW,EACXC,kBAAmB,SACnBC,GAAG,qBACHC,aAAc,SAACC,EAAYxf,GAAc,sBAAAxE,OACvBwE,EAAS,aAAAxE,OAAYgkB,EAAK,eAEvC,SAASC,EAAkBhhB,GAIT,IAADihB,EAAAC,EAAAC,EAAAC,EAAAC,EAHtBvB,EAAQ9f,EAAR8f,SACAC,EAAS/f,EAAT+f,UACAC,EAAQhgB,EAARggB,SAEMsB,EAAqB/C,IAG3B,OAFAgD,EAAAA,EAAWC,IAAI,CAACC,EAAAA,EAAYC,EAAAA,EAAYC,EAAAA,KAGtCtgB,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAACH,UAAW+f,EAAmBvmB,KAAM4G,WAAS,EAACC,UAAU,MAAKJ,SAAA,CAChEue,IAAcC,GAAoB,OAARF,QAAQ,IAARA,GAAAA,EAAU8B,QACnCngB,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAACC,WAAS,EAACJ,UAAW+f,EAAmBpC,gBAAgB1d,UAC5DH,EAAAA,EAAAA,MAACwgB,EAAAA,EAAM,CACLC,cAAe,EACfC,WAAYxB,EACZyB,WAAYtB,EACZuB,gBAAgB,EAChBC,MAAI,EACJC,aAAc,EACd5gB,UAAS,UAAAxE,OAAYukB,EAAmBnC,QAAS3d,SAAA,CAEhDse,EAAS8B,OAAOjW,KAAI,SAACyW,EAAOrB,GAAK,OAChCtf,EAAAA,EAAAA,KAAC4gB,EAAAA,EAAW,CAAA7gB,UACVC,EAAAA,EAAAA,KAAA,OACE2e,IAAKN,EAASI,UACd3e,UAAW+f,EAAmB3C,WAC9BwB,IAAG,GAAApjB,OAAKqlB,EAAK,iBAJCrB,EAMJ,KAEhBtf,EAAAA,EAAAA,KAAA,QACEF,UAAS,sBAAAxE,OAAwBukB,EAAmB1C,yBAAwB,KAAA7hB,OAAIukB,EAAmBvC,+BAAgCvd,UAEnIC,EAAAA,EAAAA,KAACyB,EAAAA,EAAI,CAACN,KAAMO,EAAAA,EAAMmf,UAAWxmB,MAAO0iB,OAEtC/c,EAAAA,EAAAA,KAAA,QACEF,UAAS,sBAAAxE,OAAwBukB,EAAmB1C,yBAAwB,KAAA7hB,OAAIukB,EAAmBtC,+BAAgCxd,UAEnIC,EAAAA,EAAAA,KAACyB,EAAAA,EAAI,CAACN,KAAMO,EAAAA,EAAMof,WAAYzmB,MAAO0iB,OAEvC/c,EAAAA,EAAAA,KAAA,OAAKF,UAAS,4BAIlBE,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CACP9e,QAAQ,cACRnC,UAAW+f,EAAmBnD,gBAGlC9c,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CACHC,WAAS,EACTC,UAAU,MACVL,UAAW+f,EAAmB7C,kBAAkBjd,SAAA,EAEhDH,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CACH2B,MAAI,EACJ1B,WAAS,EACTjG,eAAgB,gBAChB4H,GAAI,GACJ/B,UAAW+f,EAAmBhC,eAAe9d,SAAA,EAE7CC,EAAAA,EAAAA,KAAA,QAAMF,UAAU,wBAAuBC,SAAA,GAAAzE,OAAK+iB,EAASrQ,UAAS,KAAA1S,OAAI+iB,EAASI,aAC1EJ,EAAS9P,OACR3O,EAAAA,EAAAA,MAAA,QACEE,UAAS,yBAAAxE,OAA2BukB,EAAmBtR,MAAOxO,SAAA,EAE9DC,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTuC,QAAQ,IACRtC,KAAI,GAAA/E,OAAK+iB,EAAS9P,KAAO,IAAM,IAAEjT,QAAG0lB,EAAAA,EAAAA,KAC1B,OAAR3C,QAAQ,IAARA,GAAc,QAANmB,EAARnB,EAAU9P,YAAI,IAAAiR,OAAN,EAARA,EAAgBhZ,QAAS,KAC1BlL,OAAgB,QAAhBmkB,EAAGpB,EAAS9P,YAAI,IAAAkR,OAAA,EAAbA,EAAewB,eAGrBjhB,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTuC,QAAQ,IACR7C,UAAU,kBACVO,MAAmB,QAAbqf,EAAArB,EAAS9P,YAAI,IAAAmR,OAAA,EAAbA,EAAewB,UAAW,YAKxClhB,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CACH2B,MAAI,EACJC,GAAI,GACJ3B,WAAS,EACTJ,UAAW+f,EAAmBlC,gBAAgB5d,SAE7Cse,EAASllB,SACO,QADDwmB,EACdtB,EAASllB,cAAM,IAAAwmB,OAAA,EAAfA,EAAiBzV,KAAI,SAAC7P,EAAOilB,GAAK,OAChC1f,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAEH2B,MAAI,EACJC,GAAI,EACJ/B,UAAW+f,EAAmB7B,UAAUje,SAAA,EAExCC,EAAAA,EAAAA,KAAA,OACEF,UAAW+f,EAAmB/B,SAC9BY,IAAU,OAALrkB,QAAK,IAALA,OAAK,EAALA,EAAO0Y,MAAM3B,QAAQC,MAC1BsN,IAAKtkB,EAAM0Y,MAAM5B,mBAEnBnR,EAAAA,EAAAA,KAAA,QACEF,UAAS,mBAAAxE,OAAqBukB,EAAmB9B,WAAYhe,SAE5D1F,EAAMiG,SAbJgf,EAeA,QAGbtf,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAAC9B,UAAW+f,EAAmB5B,QAASpc,GAAI,GAAG9B,SACtC,QADsC6f,EACtDvB,EAASJ,eAAO,IAAA2B,OAAA,EAAhBA,EAAkB1V,KAAI,SAACgU,EAAQoB,GAAK,OACnCtf,EAAAA,EAAAA,KAAA,QACEF,UAAS,0BAAAxE,OAA4BukB,EAAmB3B,QAASne,UAGjEC,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CAACC,KAAM6d,KAFboB,EAGA,OAGTjB,EAAS8C,oBAAsB9C,EAAS+C,gBACxCxhB,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CACH2B,MAAI,EACJ1B,WAAS,EACTJ,UAAW+f,EAAmB5C,iBAC9Bpb,GAAI,GAAG9B,SAAA,CAENse,EAAS+C,eACRphB,EAAAA,EAAAA,KAAA,QAAMF,UAAU,gBAAeC,SAAEse,EAAS+C,eAE3C/C,EAAS8C,qBACRnhB,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTN,UAAU,kBACVO,KAAMge,EAAS8C,6BAQ/B,CC1JO,SAASE,EAAW9iB,GAAuC,IAApC0D,EAAO1D,EAAP0D,QAASoc,EAAQ9f,EAAR8f,SACrCnX,GAAsCC,EAAAA,EAAAA,UAAS,IAAGC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA3Coa,EAAWla,EAAA,GAAEma,EAAcna,EAAA,GAC5Boa,EAAkBnD,EAClBoD,EAAgBpD,EAChBqD,EAAoBD,EAAczO,IAClC2O,EACJH,GAAmBA,EAAgBrB,QAAUqB,EAAgBroB,OAAM,GAAAmC,QAAAsmB,EAAAA,EAAAA,GAE1C,OAAfJ,QAAe,IAAfA,OAAe,EAAfA,EAAiBrB,SAAMyB,EAAAA,EAAAA,GACxBJ,EAAgBroB,OAAO+Q,KACxB,SAAC7P,GAAK,OAAKA,EAAM0Y,MAAM3B,QAAQC,KAAK,MAGxC,GACFwQ,EAAY,GAEhB,OAAQ5f,GACN,IAAK,QAGL,IAAK,mBAGL,IAAK,SAYL,QACE4f,EAAY,CAACH,GACb,MAXF,IAAK,MAGL,IAAK,cAGL,IAAK,YACHG,EAAYF,EAMhB,IAAAG,GAAgCC,EAAAA,EAAAA,GAAcF,GAAtCG,EAASF,EAATE,UAAWC,EAAQH,EAARG,SA4DnB,OA1DAnT,EAAAA,EAAAA,YAAU,WACJkT,IAAcC,GAChBV,EAAeG,EAEnB,GAAG,CAACM,EAAWC,EAAUP,IAEzBzf,EAAUA,GAAoBqK,EAAAA,EAAoB4V,MACpB,CAC5BA,OACEliB,EAAAA,EAAAA,KAACoe,EAAgB,CACfC,SAAUoD,EACV1O,MAAOuO,EACPhD,UAAW0D,EACXzD,SAAU0D,IAGdE,kBACEniB,EAAAA,EAAAA,KAAC6e,EAAuB,CACtBR,SAAUoD,EACV1O,MAAOuO,EACPhD,UAAW0D,EACXzD,SAAU0D,IAGdG,QACEpiB,EAAAA,EAAAA,KAAC6e,EAAuB,CACtBR,SAAUoD,EACV1O,MAAOuO,EACPhD,UAAW0D,EACXzD,SAAU0D,IAGd1V,KACEvM,EAAAA,EAAAA,KAACuf,EAAkB,CACjBlB,SAAUmD,EACVzO,MAAOuO,EACPhD,UAAW0D,EACXzD,SAAU0D,IAGdxT,aACEzO,EAAAA,EAAAA,KAACuf,EAAkB,CACjBlB,SAAUmD,EACVzO,MAAOuO,EACPhD,UAAW0D,EACXzD,SAAU0D,IAGdzV,WACExM,EAAAA,EAAAA,KAACuf,EAAkB,CACjBlB,SAAUmD,EACVzO,MAAOuO,EACPhD,UAAW0D,EACXzD,SAAU0D,KAKahgB,EAC/B,C,4FCjFMogB,EAAoB,SACxBC,EACAC,EACAC,GAEA,IAAMC,EAAS,GAGf,OAFAH,EAAkB,GAAKG,EAAOC,KAAK,GAADpnB,OAAIgnB,EAAe,KAAAhnB,OAAIknB,EAAOG,YAChEJ,EAAe,GAAKE,EAAOC,KAAK,GAADpnB,OAAIinB,EAAY,KAAAjnB,OAAIknB,EAAOI,QACpD,GAANtnB,OAAUmnB,EAAOnR,KAAK,QAAMhW,OAC1BmnB,EAAOhH,OAAS,EAAI+G,EAAOK,oBAAsB,GAErD,EAEMC,EAA6B,SACjCC,EACApW,GAMA,IAMiCqW,EAN3BP,EAIF,CAAC,EAAEQ,GAAAC,EAAAA,EAAAA,GAEgBH,GAAU,IAAjC,IAAAE,EAAAE,MAAAH,EAAAC,EAAAG,KAAAC,MAAmC,CAAC,IACKC,EAD9BC,EAAQP,EAAAxc,MAAAgd,GAAAN,EAAAA,EAAAA,GACKK,EAASE,UAAQ,IAAvC,IAAAD,EAAAL,MAAAG,EAAAE,EAAAJ,KAAAC,MAAyC,CAAC,IAADK,EAA9BC,EAAOL,EAAA9c,MACVod,EAAkC,QAAnBF,EAAGC,EAAQE,gBAAQ,IAAAH,OAAA,EAAhBA,EAAkBpf,MACxC,SAACwf,GAAQ,OAAKA,EAASC,eAAiBpX,CAAO,IAEjD,GAAIiX,EAIF,OAHAnB,EAAOuB,oBAAsBT,EAC7Bd,EAAOwB,iBAAmBN,EAC1BlB,EAAOyB,mBAAqBN,EACrBnB,CAEX,CAAC,OAAA0B,GAAAX,EAAA1I,EAAAqJ,EAAA,SAAAX,EAAAY,GAAA,CACH,CAAC,OAAAD,GAAAlB,EAAAnI,EAAAqJ,EAAA,SAAAlB,EAAAmB,GAAA,CACD,OAAO3B,CACT,EAiDO,SAAS4B,GAAe9lB,GAMT,IAAD+lB,EAAAC,EALnBlgB,EAAI9F,EAAJ8F,KACA+G,EAAa7M,EAAb6M,cACAoZ,EAASjmB,EAATimB,UACAC,EAAclmB,EAAdkmB,eACAC,EAAgBnmB,EAAhBmmB,iBAEMtlB,GAAWC,EAAAA,EAAAA,MACXR,EAAUzF,IACRoU,EAA0BnJ,EAA1BmJ,YAAa+V,EAAalf,EAAbkf,SACbf,EAAWhV,EAAXgV,OACFO,EAAaQ,EACnBrc,GAAgDC,EAAAA,EAAAA,UAAmB,OAAV4b,QAAU,IAAVA,OAAU,EAAVA,EAAa,IAAG3b,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAlEyd,EAAgBvd,EAAA,GAAEwd,EAAmBxd,EAAA,GAC5Cyd,GAA0C1d,EAAAA,EAAAA,YAAqB2d,GAAAzd,EAAAA,EAAAA,GAAAwd,EAAA,GAAxDE,EAAaD,EAAA,GAAEE,EAAgBF,EAAA,GACtCG,GAA8C9d,EAAAA,EAAAA,YAE3C+d,GAAA7d,EAAAA,EAAAA,GAAA4d,EAAA,GAFIrB,EAAesB,EAAA,GAAEC,EAAkBD,EAAA,GAG1CE,GAA8Cje,EAAAA,EAAAA,YAE3Cke,GAAAhe,EAAAA,EAAAA,GAAA+d,EAAA,GAFIE,EAAeD,EAAA,GAAEE,EAAkBF,EAAA,GAGpCG,IAEW,OAAbpa,QAAa,IAAbA,IAAAA,EAAeuB,SACfvB,EAAcnJ,UAAYqK,EAAAA,EAAoBmC,eAC9B,OAAbrD,QAAa,IAAbA,OAAa,EAAbA,EAAeqa,aAElBxjB,EAAuB,OAAbmJ,QAAa,IAAbA,OAAa,EAAbA,EAAenJ,QAGzBA,IAAYqK,EAAAA,EAAoB8V,QAAwB,OAAbhX,QAAa,IAAbA,GAAAA,EAAeuB,UAC5D1K,EAAUqK,EAAAA,EAAoB4V,QAgBhCpT,EAAAA,EAAAA,YAAU,WACR,GAAI1D,GAAiBA,EAAcuB,QAAS,CAC1C,IAAA+Y,EACE5C,EAA2BC,EAAY3X,EAAcuB,SAD/CqX,EAAmB0B,EAAnB1B,oBAAqBC,EAAgByB,EAAhBzB,iBAAkBC,EAAkBwB,EAAlBxB,mBAG/CF,GAAuBY,EAAoBZ,GAC3CC,GAAoBe,EAAiBf,GACrCC,GAAsBiB,EAAmBjB,GACzC9kB,GACEumB,EAAAA,EAAAA,IAAe,CACb5X,aAAgC,OAAnBiW,QAAmB,IAAnBA,OAAmB,EAAnBA,EAAqB4B,kBAAmB,GACrD5X,WAA2B,OAAhBiW,QAAgB,IAAhBA,OAAgB,EAAhBA,EAAkBjW,YAAa,GAC1C6X,SAA2B,OAAlB3B,QAAkB,IAAlBA,OAAkB,EAAlBA,EAAoBH,eAAgB,KAGnD,MAAO,GACL3Y,GACAA,EAAc2C,aACd3C,EAAc4C,UACd,CACA,IAAA8X,EAjHmC,SACvC/C,EACAhV,EACAC,GAEA,IAIiC+X,EAJ3BtD,EAGF,CAAC,EAAEuD,GAAA9C,EAAAA,EAAAA,GACgBH,GAAU,IAAjC,IAAAiD,EAAA7C,MAAA4C,EAAAC,EAAA5C,KAAAC,MAAmC,CAAC,IAAzBE,EAAQwC,EAAAvf,MACXyf,EAA0B,OAAR1C,QAAQ,IAARA,OAAQ,EAARA,EAAUE,SAASnf,MACzC,SAACqf,GAAO,OACNA,EAAQiC,kBAAoB7X,GAC5B4V,EAAQ3V,YAAcA,CAAS,IAGnC,GAAIiY,EAGF,OAFAxD,EAAOuB,oBAAsBT,EAC7Bd,EAAOwB,iBAAmBgC,EACnBxD,CAEX,CAAC,OAAA0B,GAAA6B,EAAAlL,EAAAqJ,EAAA,SAAA6B,EAAA5B,GAAA,CACD,OAAO3B,CACT,CA2FQyD,CACEnD,EACA3X,EAAc2C,YACd3C,EAAc4C,WAJVgW,EAAmB8B,EAAnB9B,oBAAqBC,EAAgB6B,EAAhB7B,iBAO7BD,GAAuBY,EAAoBZ,GAC3CC,GAAoBe,EAAiBf,GACrC7kB,GACEumB,EAAAA,EAAAA,IAAe,CACb5X,aAA0B,OAAbgX,QAAa,IAAbA,OAAa,EAAbA,EAAea,kBAAmB,GAC/C5X,WAAwB,OAAb+W,QAAa,IAAbA,OAAa,EAAbA,EAAe/W,YAAa,GACvC6X,aAAS1hB,IAGf,MAAO,GAAIiH,GAAiBA,EAAc2C,YAAa,CACrD,IAAAoY,EAzG4B,SAChCpD,EACAhV,GAEA,IAIiCqY,EAJ3B3D,EAGF,CAAC,EAAE4D,GAAAnD,EAAAA,EAAAA,GACgBH,GAAU,IAAjC,IAAAsD,EAAAlD,MAAAiD,EAAAC,EAAAjD,KAAAC,MAAmC,CAAC,IAAzBE,EAAQ6C,EAAA5f,MACXyf,EAA0B,OAAR1C,QAAQ,IAARA,OAAQ,EAARA,EAAUE,SAASnf,MACzC,SAACqf,GAAO,OAAKA,EAAQiC,kBAAoB7X,CAAW,IAGtD,GAAIkY,EAGF,OAFAxD,EAAOuB,oBAAsBT,EAC7Bd,EAAOwB,iBAAmBgC,EACnBxD,CAEX,CAAC,OAAA0B,GAAAkC,EAAAvL,EAAAqJ,EAAA,SAAAkC,EAAAjC,GAAA,CACD,OAAO3B,CACT,CAsFQ6D,CAA0BvD,EAAY3X,EAAc2C,aAD9CiW,EAAmBmC,EAAnBnC,oBAAqBC,EAAgBkC,EAAhBlC,iBAG7BD,GAAuBY,EAAoBZ,GAC3CC,GAAoBe,EAAiBf,GACrC7kB,GACEumB,EAAAA,EAAAA,IAAe,CACb5X,aAA0B,OAAbgX,QAAa,IAAbA,OAAa,EAAbA,EAAea,kBAAmB,GAC/C5X,eAAW7J,EACX0hB,aAAS1hB,IAGf,MACE/E,GACEumB,EAAAA,EAAAA,IAAe,CACb5X,iBAAa5J,EACb6J,eAAW7J,EACX0hB,aAAS1hB,IAKjB,GAAG,KAEH2K,EAAAA,EAAAA,YAAU,WACR,IAAAyX,EACEzD,EAA2BC,EAAyB,OAAb3X,QAAa,IAAbA,OAAa,EAAbA,EAAeuB,SADhDqX,EAAmBuC,EAAnBvC,oBAAqBC,EAAgBsC,EAAhBtC,iBAAkBC,EAAkBqC,EAAlBrC,mBAG/CF,GAAuBY,EAAoBZ,GAC3CC,GAAoBe,EAAiBf,GACrCC,GAAsBiB,EAAmBjB,EAE3C,GAAG,CAAC9Y,KAEJ0D,EAAAA,EAAAA,YAAU,WACR,GAAIiW,IAAkBS,EAAgB,CACpC,IAAMgB,EAA4C,CAChD5H,OAAqB,OAAbmG,QAAa,IAAbA,OAAa,EAAbA,EAAe0B,uBACvBzT,IAAkB,OAAb+R,QAAa,IAAbA,OAAa,EAAbA,EAAe2B,oBACpBjI,UAAWsG,EAAca,gBACzB5X,UAAW+W,EAAc/W,WAEvBwY,IAAuBlB,GACzBC,EAAmBiB,IAEJ,OAAbpb,QAAa,IAAbA,OAAa,EAAbA,EAAenJ,WAAYqK,EAAAA,EAAoBmC,aACjD0W,OAAmBhhB,GAErB/E,GACEumB,EAAAA,EAAAA,IAAe,CACb5X,aAA0B,OAAbgX,QAAa,IAAbA,OAAa,EAAbA,EAAea,kBAAmB,GAC/C5X,WAAwB,OAAb+W,QAAa,IAAbA,OAAa,EAAbA,EAAe/W,YAAa,GACvC6X,aAAS1hB,IAGf,CAEF,GAAG,CAAC4gB,KAEJjW,EAAAA,EAAAA,YAAU,WACR,IAAM6X,EAActiB,EAAKoJ,YACzB,GAAImW,EAAiB,CACnB,IA+C+CgD,EAAAC,EAAAC,EAAAC,EAAAC,EA/C3CR,EAAuC,CACzC/H,UAAwB,OAAbsG,QAAa,IAAbA,OAAa,EAAbA,EAAea,gBAC1B5X,UAAwB,OAAb+W,QAAa,IAAbA,OAAa,EAAbA,EAAe/W,WAE5B,GAAK5C,GAAiBnJ,IAAYqK,EAAAA,EAAoB4V,OAO/C,GACLjgB,IAAYqK,EAAAA,EAAoBC,KAChCtK,IAAYqK,EAAAA,EAAoBE,WAChCvK,IAAYqK,EAAAA,EAAoBmC,YAChC,CAAC,IAADwY,EACMC,EAAc7iB,EAAKmJ,YAAYgV,OAAOlU,QAAQzG,cAC9Csf,EACJD,EAAYE,OAAO,GAAGtZ,cAAgBoZ,EAAYG,MAAM,GAC1Db,GAAkBxsB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACbwsB,GAAkB,IACrBrtB,OAAQ,CACNwtB,GAAcW,EAAAA,EAAAA,GAAeX,EAAY1Z,eAAiB,CAAC,EAC3D0Z,GAAcW,EAAAA,EAAAA,GAAeX,EAAYzZ,eAAiB,CAAC,GAE7D+Q,QAAQ,CACK,OAAX0I,QAAW,IAAXA,OAAW,EAAXA,EAAavY,OACF,OAAXuY,QAAW,IAAXA,OAAW,EAAXA,EAAatY,YAAU/S,QAAAsmB,EAAAA,EAAAA,IACR,OAAX+E,QAAW,IAAXA,OAAW,EAAXA,EAAa9C,SAAS3Z,KACxB,SAAC4Z,GAAQ,SAAAxoB,OAAQwoB,EAAQ,KAAAxoB,OAAI6rB,EAAkB,MAC5C,KAEPhH,OAAY,OAAJ9b,QAAI,IAAJA,GAAiB,QAAb4iB,EAAJ5iB,EAAMoJ,mBAAW,IAAAwZ,OAAb,EAAJA,EAAmBM,QAE/B,MAAO,GAAItlB,IAAYqK,EAAAA,EAAoB8V,OAAQ,CAAC,IAADoF,EAAAC,EAAAC,EAC3CC,EAAoB,OAAJtjB,QAAI,IAAJA,GAAiB,QAAbmjB,EAAJnjB,EAAMoJ,mBAAW,IAAA+Z,OAAb,EAAJA,EAAmBI,WACzCpB,GAAkBxsB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACbwsB,GAAkB,IACrB5H,OAAqB,OAAb+I,QAAa,IAAbA,GAAoC,QAAvBF,EAAbE,EAAeE,6BAAqB,IAAAJ,GAApCA,EAAsCjY,YAC7B,OAAbmY,QAAa,IAAbA,OAAa,EAAbA,EAAeE,sBAAsBrY,YACrC,GACJwD,IAAkB,OAAb2U,QAAa,IAAbA,OAAa,EAAbA,EAAeG,iBACpBtY,YAA0B,OAAbmY,QAAa,IAAbA,GAAoC,QAAvBD,EAAbC,EAAeE,6BAAqB,IAAAH,GAApCA,EAAsClY,YAClC,OAAbmY,QAAa,IAAbA,OAAa,EAAbA,EAAeE,sBAAsBrY,YACrC,IAER,OAzCEgX,GAAkBxsB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACbwsB,GAAkB,IACrB5H,OAAuB,OAAfgF,QAAe,IAAfA,OAAe,EAAfA,EAAiBmE,gBACzB/U,IAAoB,OAAf4Q,QAAe,IAAfA,OAAe,EAAfA,EAAiBoE,gBACtBxY,YAAaoU,EAAgBqE,qBAsCjC,GAAIhmB,IAAYqK,EAAAA,EAAoBE,UAClCga,GAAkBxsB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACbwsB,GAAkB,IACrBjY,KAAM,CACJ/H,MAAkB,OAAXmgB,QAAW,IAAXA,GAAsB,QAAXC,EAAXD,EAAana,iBAAS,IAAAoa,OAAX,EAAXA,EAAwBrY,KAC/B0S,WAAY5c,EAAKmJ,YAAYgV,OAAO0F,eACpChH,QAAS7c,EAAKmJ,YAAYgV,OAAOjU,MAEnC6S,aAAyB,OAAXuF,QAAW,IAAXA,GAAsB,QAAXE,EAAXF,EAAana,iBAAS,IAAAqa,GAAQ,QAARC,EAAtBD,EAAwBjoB,cAAM,IAAAkoB,OAAnB,EAAXA,EAAgCxmB,KAC9C6gB,mBAAoBkB,GACP,OAAXsE,QAAW,IAAXA,GAAsB,QAAXI,EAAXJ,EAAana,iBAAS,IAAAua,OAAX,EAAXA,EAAwBzE,kBAAmB,GAChC,OAAXqE,QAAW,IAAXA,GAAsB,QAAXK,EAAXL,EAAana,iBAAS,IAAAwa,OAAX,EAAXA,EAAwBzE,eAAgB,EACxCC,KAIN+C,EAAmBiB,GACnBhC,GAAaA,IACTO,GAAiBnB,GACnBxkB,GACEumB,EAAAA,EAAAA,IAAe,CACb5X,aAA0B,OAAbgX,QAAa,IAAbA,OAAa,EAAbA,EAAea,kBAAmB,GAC/C5X,WAAwB,OAAb+W,QAAa,IAAbA,OAAa,EAAbA,EAAe/W,YAAa,GACvC6X,QAASjC,EAAgBG,cAAgB,KAIjD,CAEF,GAAG,CAACH,IAsDJ,OACEhkB,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAACC,WAAS,EAACC,UAAU,MAAML,UAAU,mBAAkBC,SAAA,EAC1DH,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAIC,GAAI,EAAE/B,SAAA,EACvBC,EAAAA,EAAAA,KAAA,MAAIF,UAAS,GAAAxE,OAAKuD,EAAQuQ,MAAK,kBAAiBrP,SAAEyiB,EAAO5Q,SACvD4T,IACAxlB,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CACHC,WAAS,EACTC,UAAU,MACVL,UAAS,GAAAxE,OAAKuD,EAAQod,iBAAgB,KAAA3gB,OACpCkqB,EAAiB,WAAa,IAC7BzlB,SAEFgjB,EAAW7Y,KAAI,SAACqZ,GAAQ,OACvB3jB,EAAAA,EAAAA,MAAA,OAEEE,UAAWjB,EAAQid,iBAAiB/b,SAAA,EAEpCC,EAAAA,EAAAA,KAAA,QAAMF,UAAS,aACfE,EAAAA,EAAAA,KAACgC,EAAAA,EAAU,CAETtB,QAAS,YAtQG,SAAC6iB,IAC1BiC,GAAkBZ,EAAoBrB,IACvCxiB,EAAAA,EAAAA,IAAW,CACTC,MAAM,YAAD1F,OAAcioB,EAAS4E,cAC5BlnB,SAAU,CACRC,iBAAiB,EACjBb,KAAM,4BAERc,KAAM,WACN4M,aAA0B,OAAbgX,QAAa,IAAbA,OAAa,EAAbA,EAAea,kBAAmB,WAC/C5X,WAAwB,OAAb+W,QAAa,IAAbA,OAAa,EAAbA,EAAe/W,YAAa,YAE3C,CA2PkBoa,CAAoB7E,EACtB,EACAhhB,WAAY,CACVrC,UAAU,mBAAD5E,OACPuD,EAAQkd,oBAAmB,KAAAzgB,OAE3BqpB,EAAiBwD,eAAiB5E,EAAS4E,cAC3C,aAGJE,SACE1D,EAAiBwD,eAAiB5E,EAAS4E,cACtC,EACD,EACLpoB,UAEDC,EAAAA,EAAAA,KAAA,QACEF,UAAS,mBAAAxE,OAAqBuD,EAAQmd,iBAAgB,KAAA1gB,OACpDqpB,EAAiBwD,eAAiB5E,EAAS4E,cAC3C,YACCpoB,SAEFwjB,EAAS4E,gBAxBP5E,EAAS4E,gBA0BH,oBAAA7sB,OA/BYioB,EAAS4E,cAgC9B,OAIZvoB,EAAAA,EAAAA,MAAC0oB,EAAAA,EAAW,CACVxoB,UAAS,GAAAxE,OAAKuD,EAAQsd,aAAY,oBAAA7gB,OAChCkqB,EAAiB,WAAa,IAC7BzlB,SAAA,EAEHC,EAAAA,EAAAA,KAACuoB,EAAAA,EAAQ,CACPhmB,WAAY,CACVrC,UAAU,iBACV+E,YAAa,kBAEf1B,eAAgB,eAChBmD,eAjHkB,SAACF,GAC3B,IAAMwd,EAAsBW,EAAiBlB,SAASnf,MACpD,SAACqf,GAAO,OAAKld,EAAAA,EAAAA,IAAiBkd,EAAQwE,gBAAkB3hB,CAAK,IAE/D,GAAIwd,EAAqB,CAAC,IAADwE,GACvBznB,EAAAA,EAAAA,IAAW,CACTC,MAAM,+BACNC,SAAU,CACRC,iBAAiB,EACjBb,KAAM,YAERc,KAAM,WACN4M,aAAgC,OAAnBiW,QAAmB,IAAnBA,OAAmB,EAAnBA,EAAqB4B,kBAAmB,WACrD5X,WAA8B,OAAnBgW,QAAmB,IAAnBA,OAAmB,EAAnBA,EAAqBhW,YAAa,aAG/C,IAAM5F,EAAG,GAAA9M,OAAyC,QAAzCktB,EAAMxE,EAAoB4B,uBAAe,IAAA4C,OAAA,EAAnCA,EAAqC3gB,cAAa,KAAAvM,OAC/D0oB,EAAoBhW,WAEtB5O,GAAS8P,EAAAA,EAAAA,IAAiB9G,IAE1B4c,EAAiBhB,EACnB,CACF,EA2FUrd,eAAeF,EAAAA,EAAAA,IAA8B,OAAbse,QAAa,IAAbA,OAAa,EAAbA,EAAeoD,cAC/CthB,SAAU2e,EACVvgB,YAAaud,EAAO5Q,MAEpB3L,QAAyB,OAAhB0e,QAAgB,IAAhBA,GAA0B,QAAVL,EAAhBK,EAAkBlB,gBAAQ,IAAAa,OAAV,EAAhBA,EAA4Bpa,KAAI,SAACyZ,GAAO,OAC/Cpd,EAAAA,EAAAA,GAAsBod,EAAQwE,aAAa,MAG9C1D,IACCzkB,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTN,UAAS,mBAAAxE,OAAqBuD,EAAQyd,WACtCjc,KAAMmiB,EAAOiG,wBAKnBzoB,EAAAA,EAAAA,KAAA,MAAIF,UAAS,GAAAxE,OAAKuD,EAAQuQ,MAAK,kBAAiBrP,SAAEyiB,EAAOlU,WAC3C,OAAbyW,QAAa,IAAbA,OAAa,EAAbA,EAAe2D,iBACd1oB,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTuC,QAAQ,IACR7C,UAAS,oBAAAxE,OAAsBuD,EAAQud,gBACvC/b,KAAM0kB,EAAc2D,iBAGxB9oB,EAAAA,EAAAA,MAAC0oB,EAAAA,EAAW,CACVxoB,UAAS,GAAAxE,OAAKuD,EAAQsd,aAAY,sBAAA7gB,OAC/BypB,GAAkBA,EAAclB,WAAY2B,EAEzC,GADA,YAEHzlB,SAAA,EAEHC,EAAAA,EAAAA,KAACuoB,EAAAA,EAAQ,CACPhmB,WAAY,CACVrC,UAAU,mBACV+E,YAAa,kBAEf1B,eAAgB,iBAChBmD,eA9HoB,SAACF,GAC7B,GAAiB,OAAbue,QAAa,IAAbA,GAAAA,EAAelB,SAAU,CAC3B,IAAMK,EAAqBa,EAAclB,SAASvf,MAChD,SAACqkB,GAAG,OAAKliB,EAAAA,EAAAA,IAAiBkiB,EAAIC,eAAiBpiB,CAAK,IAElD0d,KACFnjB,EAAAA,EAAAA,IAAW,CACTC,MAAM,iCACNC,SAAU,CACRC,iBAAiB,EACjBb,KAAM,YAERc,KAAM,WACN4M,aAA0B,OAAbgX,QAAa,IAAbA,OAAa,EAAbA,EAAea,kBAAmB,WAC/C5X,WAAwB,OAAb+W,QAAa,IAAbA,OAAa,EAAbA,EAAe/W,YAAa,WACvCgD,WAAW4B,EAAAA,EAAAA,IAAoBsR,EAAmB0E,aAClDjc,QAASuX,EAAmBH,eAG1B3Y,GACFhM,GAASwP,EAAAA,EAAAA,KAAgB,IAE3BuW,EAAmBjB,GAEvB,CACF,EAsGUvd,eAAeF,EAAAA,EAAAA,IAAgC,OAAfmd,QAAe,IAAfA,OAAe,EAAfA,EAAiBgF,aACjD3jB,YAAaud,EAAOlU,QACpBzH,SACE2e,IAAmBT,IAAkBA,EAAclB,SAErD5d,QAAsB,OAAb8e,QAAa,IAAbA,GAAuB,QAAVR,EAAbQ,EAAelB,gBAAQ,IAAAU,OAAV,EAAbA,EAAyBra,KAAI,SAAC4Z,GAAQ,OAC7Cvd,EAAAA,EAAAA,GAAsBud,EAAS8E,YAAY,MAG9ClE,IACC1kB,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTN,UAAS,mBAAAxE,OAAqBuD,EAAQyd,WACtCjc,KAAMmiB,EAAOqG,4BAMpB9D,GACCO,IACEtlB,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAIC,GAAI,EAAGhC,UAAWjB,EAAQwd,uBAAuBtc,UAClEC,EAAAA,EAAAA,KAACqhB,EAAW,CAACpf,QAASA,EAASoc,SAAUiH,QAKrD,C,0BC5gBA5qB,GAAoCxB,EAAAA,EAAWC,OAAvC2B,GAAYJ,GAAZI,aAAc8J,GAASlK,GAATkK,UACTxL,IAAYC,EAAAA,EAAAA,GAAW,CAClCC,MAAIC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACFuvB,SAAU,EACV7sB,OAAQ,SACRT,QAAS,WACR9B,EAAAA,EAAMC,YAAYC,GAAG,qBAAuB,CAC3C4B,QAAS,EACT+O,SAAU,MACVtO,OAAQ,iBAETvC,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxC2Q,SAAU,QACV/O,QAAS,UACTS,OAAQ,MAETvC,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCM,MAAO,MACPqQ,SAAU,YACV/O,QAAS,oBACTS,OAAQ,WAETvC,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCM,MAAO,QAGX6uB,OAAQ,CACNvvB,QAAS,OACTC,cAAe,SACfgR,cAAe,YACf,MAAO,CACLpQ,MAAOS,KAGXkuB,iBAAezvB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACbY,aAAc,SACdD,MAAO,QACNR,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCE,UAAW,cAEZJ,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCO,aAAc,YAGlB8uB,SAAU,CACR5uB,MAAOuK,IAETskB,QAAS,CACPhvB,MAAO,U,oCCrBLivB,GAAe,SACnB1Z,EACA2Z,GAEA,IAAMC,EAAgB5Z,EAClBlH,SAAS+gB,eAAe7Z,GACxB4C,OACS,OAAbgX,QAAa,IAAbA,GAAAA,EAAeE,SAAS,CAAErsB,IAAK,IAC/BksB,IAAsBI,EAAAA,GAAAA,KACxB,EAqUA,GAvT0B,SAAHjrB,GAWA,IAADkrB,EAVpBre,EAAa7M,EAAb6M,cACA/G,EAAI9F,EAAJ8F,KACAsL,EAASpR,EAAToR,UACAP,EAAK7Q,EAAL6Q,MACAI,EAAWjR,EAAXiR,YACAC,EAAiBlR,EAAjBkR,kBACAC,EAAYnR,EAAZmR,aACA/D,EAAWpN,EAAXoN,YACAzI,EAAgB3E,EAAhB2E,iBACAwmB,EAAanrB,EAAbmrB,cAGM7qB,EAAUzF,KACVgG,GAAWC,EAAAA,EAAAA,MAEjBsI,EAAqCtD,GAAQ,CAAC,EAAtCmJ,EAAW7F,EAAX6F,YAAaC,EAAW9F,EAAX8F,YACrBlE,EAAoCiE,GAAe,CAAC,EAA5CgV,EAAMjZ,EAANiZ,OAAQmH,EAAepgB,EAAfogB,gBAChBpc,EAAyCE,GAAe,CAAC,EAAjDR,EAAaM,EAAbN,cAAeC,EAAaK,EAAbL,cACjB0c,EAA0B,OAAXnc,QAAW,IAAXA,GAAsB,QAAXgc,EAAXhc,EAAajB,iBAAS,IAAAid,OAAX,EAAXA,EAAwB7qB,OAE7CsI,GAAgDC,EAAAA,EAAAA,WAAS,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAxD2iB,EAAgBziB,EAAA,GAAE0iB,EAAmB1iB,EAAA,GAC5Cyd,GAA8C1d,EAAAA,EAAAA,WAAS,GAAM2d,GAAAzd,EAAAA,EAAAA,GAAAwd,EAAA,GAAtDkF,EAAejF,EAAA,GAAEkF,EAAkBlF,EAAA,GAC1CG,GAA4C9d,EAAAA,EAAAA,WAAS,GAAM+d,GAAA7d,EAAAA,EAAAA,GAAA4d,EAAA,GAApDR,EAAcS,EAAA,GAAE+E,EAAiB/E,EAAA,GACxCE,GAAgDje,EAAAA,EAAAA,WAAS,GAAMke,GAAAhe,EAAAA,EAAAA,GAAA+d,EAAA,GAAxDV,EAAgBW,EAAA,GAAE6E,EAAmB7E,EAAA,GAEtC7gB,GAAwBtF,EAAAA,EAAAA,IAAYuF,GAAAA,IACpC4V,GAAiBnb,EAAAA,EAAAA,IAAYob,EAAAA,IAEnC6P,GAA8BC,EAAAA,GAAAA,IAC5B,WACEjB,GAAa1Z,GAAoBE,GAC7B+Z,GAAeA,EAAcze,EAAAA,EAAkBof,QACrD,IACA,WACElB,GAAa1Z,GAAoBE,GAC7B+Z,GAAeA,EAAcze,EAAAA,EAAkB0J,MACrD,IARMqF,EAASmQ,EAATnQ,UAAWsQ,GAAMH,EAANG,OAWbC,GApD4B,WAAO,IAADC,EAGxC,OAIK,QAHHA,EACEjiB,SAASkiB,cAHX,mDAKG,IAAAD,OAAA,EAHHA,EAIGhkB,QAAS,EAEhB,CA0CmCkkB,GAgC3BC,GAAuB,SAACC,GAC5B,IAAIC,EAAe,GACnB,OAAQD,GACN,IAAK,oBACHC,EACgD,UAA9CxQ,EAAepN,cAAcE,aACzBkN,EAAepN,cAAcE,cAChB,OAAbF,QAAa,IAAbA,OAAa,EAAbA,EAAe6d,oBAAqB,GAC1C,MACF,IAAK,qBACHD,EACmD,UAAjDxQ,EAAepN,cAAc8d,gBACzB1Q,EAAepN,cAAc8d,iBAChB,OAAb9d,QAAa,IAAbA,OAAa,EAAbA,EAAeiI,KAAM,GAC3B,MACF,IAAK,oBACH2V,EACExQ,EAAepN,cAAc3M,OAAqB,OAAb2M,QAAa,IAAbA,OAAa,EAAbA,EAAe3M,OAAQ,GAC9D,MACF,IAAK,0BACHuqB,EACyC,IAAvCxQ,EAAepN,cAAc+d,MACzB3Q,EAAepN,cAAc+d,MAAM/c,WACnC,GAGV,OAAO4c,CACT,EAEMI,GAAuB,SAACL,GAC5B,IAAIM,EAAe,GACnB,OAAQN,GACN,IAAK,oBACHM,EACgD,UAA9C7Q,EAAenN,cAAcC,aACzBkN,EAAenN,cAAcC,cAChB,OAAbD,QAAa,IAAbA,OAAa,EAAbA,EAAeie,OAAQ,GAC7B,MACF,IAAK,qBACHD,EACmD,UAAjD7Q,EAAenN,cAAc6d,gBACzB1Q,EAAenN,cAAc6d,iBAChB,OAAb7d,QAAa,IAAbA,OAAa,EAAbA,EAAegI,KAAM,GAC3B,MACF,IAAK,oBACHgW,EACE7Q,EAAenN,cAAc5M,OAAqB,OAAb4M,QAAa,IAAbA,OAAa,EAAbA,EAAe5M,OAAQ,GAGlE,OAAO4qB,CACT,EAsGA,OA1BApc,EAAAA,EAAAA,YAAU,WAENtK,GACa,OAAb4G,QAAa,IAAbA,GAAAA,EAAe4C,WACf5C,EAAc2C,aACd3C,EAAcuB,SAEdmd,GAAoB,EAGxB,GAAG,CAACtlB,KAEJsK,EAAAA,EAAAA,YAAU,YACK,OAAb1D,QAAa,IAAbA,OAAa,EAAbA,EAAehK,YACQ,OAArBoD,QAAqB,IAArBA,OAAqB,EAArBA,EAAuB5D,iBAA8B,OAAbwK,QAAa,IAAbA,OAAa,EAAbA,EAAehK,WACvDhC,GAASqE,EAAAA,GAAAA,OAGTmmB,GACAA,EAAahpB,gBAAsC,OAArB4D,QAAqB,IAArBA,OAAqB,EAArBA,EAAuB5D,eAErDxB,GAASmF,EAAAA,GAAAA,IAAkBqlB,GAG/B,GAAG,KAGDhqB,EAAAA,EAAAA,MAAA,OAAKE,UAAS,GAAAxE,OAAKuD,EAAQvF,KAAI,mBAAkByG,SAAA,EAC7CqP,GAASI,KACT5P,EAAAA,EAAAA,MAAA,OAAKE,UAAWjB,EAAQkqB,OAAOhpB,SAAA,CAC5BqP,IACCpP,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTuC,QAAQ,KACR7C,UAAU,yBACVO,KAAMmiB,EAASA,EAAOpT,MAAQ,KAGjCI,IACCxP,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTuC,QAAQ,IACR7C,UAAU,mCACVO,KAAMmiB,EAASA,EAAOhT,YAAc,KAGvCua,IACC/pB,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTuC,QAAQ,OACR7C,UAAS,mBAAAxE,OAAqBuD,EAAQoqB,SAAQ,eAC9C5oB,MAAY,OAANmiB,QAAM,IAANA,OAAM,EAANA,EAAQ4I,cAAe,SAKrCprB,EAAAA,EAAAA,KAACqrB,EAAAA,EAAI,CACHC,WAAY,EACZC,WAAW,EACXC,WAAW,EACXC,aAAmB,OAANjJ,QAAM,IAANA,OAAM,EAANA,EAAQkJ,gBAAiB,GAAG3rB,UAEzCC,EAAAA,EAAAA,KAAA,OACEF,UAAS,GAAAxE,OAAKkJ,EAAwB,GAAK3F,EAAQmqB,gBAAe,KAAA1tB,OAChEuD,EAAQqqB,SACPnpB,UAEHC,EAAAA,EAAAA,KAAC4D,GAAAA,EAAa,CACZa,eACe,OAAb2G,QAAa,IAAbA,GAAAA,EAAehK,SAAwB,OAAbgK,QAAa,IAAbA,OAAa,EAAbA,EAAehK,cAAW+C,EAEtDjB,iBAAkBA,EAClByM,UAAWA,EACXF,kBAAmBA,EACnBkc,0BAA2B,EAC3BC,iBAAiB,EACjBlnB,YAAY,SAIlB1E,EAAAA,EAAAA,KAACqrB,EAAAA,EAAI,CACHC,WAAY,EACZC,WAAW,EACXC,YAAahnB,EACbinB,aAAmB,OAANjJ,QAAM,IAANA,OAAM,EAANA,EAAQqJ,iBAAkB,GAAG9rB,UAE1CC,EAAAA,EAAAA,KAACqkB,GAAe,CACdI,eAAgBA,EAChBC,iBAAkBA,EAClBF,UAAW,WACTsF,GAAoB,EACtB,EACA1e,cAAeA,EACf/G,KAAMA,OAGVrE,EAAAA,EAAAA,KAACqrB,EAAAA,EAAI,CACHC,WAAY,EACZC,WAAW,EACXC,UAAW3B,EACX4B,aAAmB,OAANjJ,QAAM,IAANA,OAAM,EAANA,EAAQsJ,uBAAwB,GAC7C5K,SAAe,OAANsB,QAAM,IAANA,OAAM,EAANA,EAAQrN,WAAY,GAAGpV,SAE/B4pB,IACC3pB,EAAAA,EAAAA,KAAC0W,EAAAA,EAAe,CACdsD,UAAWA,EACXC,SA/HO,SAAC8R,GAEbvnB,GACA6V,EAAetM,aACfsM,EAAe1N,SAKZhB,GACFA,EAAYogB,GAEd/B,GAAmB,GA9DE,SAAC+B,GACxB,IAAMC,EAAU,IAAIC,GAAAA,EACdC,EACJxc,IAAsB,OAAN8S,QAAM,IAANA,OAAM,EAANA,EAAQ2J,4BAA6B,GACjDC,EAASJ,EAAQK,IAAI,cACrBC,EAAoC,CACxCpe,YAvFKmM,EAAenM,YACjBmM,EAAenM,YAAYqe,QAAO,SACjCC,EACAC,GAEA,GAC6B,aAA3BA,EAAUC,cACS,UAAnBD,EAAUnsB,KACV,CACA,IAAMqsB,EAAiC,CACrCC,MAAMha,EAAAA,EAAAA,IAAoB6Z,EAAUI,QACpCC,MAAOL,EAAUzB,MACjB+B,KAAMN,EAAUO,OAChBC,KAAiC,aAA3BR,EAAUC,aAA8B,IAAM,KAEtDF,EAAS9J,KAAKiK,EAChB,CACA,OAAOH,CACT,GACA,IACA,KAoEFU,mBAAoBd,EACpBxR,mBAAoBP,EAAetM,YACnCof,mBAAmB,GAAD7xB,OAAK+e,EAAerM,UAAS,KAAA1S,OAAI+e,EAAetM,aAClEC,UAAWqM,EAAerM,UAC1BrB,QApE8C,cAAzC0N,EAAe1N,QAAQ9E,cAC1B,KACAwS,EAAe1N,QAmEjBC,kBAAmB+d,GAAqB,qBACxCyC,mBAAoBzC,GAAqB,sBACzC0C,kBAAmB1C,GAAqB,qBACxC2C,wBAAyB3C,GAAqB,2BAC9C7d,kBAAmBme,GAAqB,qBACxCsC,mBAAoBtC,GAAqB,sBACzCuC,kBAAmBvC,GAAqB,qBACxCwC,kBACuC,IAArCpT,EAAeoT,kBACXpT,EAAeoT,kBAAkBxf,WACjC,GACN7M,UAA+B,OAArBoD,QAAqB,IAArBA,OAAqB,EAArBA,EAAuB5D,eAAgB,GACjD8sB,iBAAsC,OAArBlpB,QAAqB,IAArBA,OAAqB,EAArBA,EAAuBlE,OAAQ,GAChDoO,WAAwB,OAAbtD,QAAa,IAAbA,OAAa,EAAbA,EAAesD,YAAa,GACvCif,QAAUviB,EAA0CgX,QAAU,KAC9D7W,OAAQ2gB,EACRvsB,QAASosB,EAAS,eAClBrc,aAAcwc,EACd0B,SAAU,gBACVC,SAAU,CACRC,aAAc,GACdpe,aAAcwc,GAEhB6B,kBAAkB,EAClBC,SAAU,CACRC,2BAA4B1D,GAC5B2D,UAAWnC,EAAS,cACpBoC,SAAUpC,EAAS,aACnBvQ,MAAOuQ,EAASvQ,MAChBzX,QAASgoB,EAAS,eAClBnpB,MAAOmpB,EAASnpB,MAChB8Y,SAAUqQ,EAASrQ,SACnBC,MAAO,UAGX2O,GAAOgC,EACT,CAeI8B,CAAiBrC,KAPjB/B,GAAmB,GACnBb,GAAa1Z,GAAoBE,IAQ9B0K,EAAe1N,SAIlBsd,GAAkB,GAClBC,GAAoB,KAJpBD,GAAkB,GAClBC,GAAoB,GAKxB,EA0GUnQ,SAAU4P,EACVzP,eAAe,QAM3B,EC/SA,GApD+B,SAAH3b,GAWL,IAVrB6M,EAAa7M,EAAb6M,cACA/G,EAAI9F,EAAJ8F,KACAsL,EAASpR,EAAToR,UACAP,EAAK7Q,EAAL6Q,MACAI,EAAWjR,EAAXiR,YACAC,EAAiBlR,EAAjBkR,kBACAC,EAAYnR,EAAZmR,aACAjE,EAA0BlN,EAA1BkN,2BACAE,EAAWpN,EAAXoN,YACAzI,EAAgB3E,EAAhB2E,iBAIAqG,GADwBlF,GAAQ,CAAC,GAAzBmJ,aACgC,CAAC,EAAjCgV,EAAMjZ,EAANiZ,OAAQlP,EAAI/J,EAAJ+J,KAEhBpM,GAAoCC,EAAAA,EAAAA,UAAS8D,EAAAA,EAAkBojB,SAAQjnB,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAhEonB,EAAUlnB,EAAA,GAAEsiB,EAAatiB,EAAA,GAEhC,MAAmB,YAAfknB,GAEAtuB,EAAAA,EAAAA,KAACqT,EAAAA,EAAY,CACXC,KAAMA,EACNlE,MAAa,OAANoT,QAAM,IAANA,OAAM,EAANA,EAAQ+L,yBACf/e,YAAmB,OAANgT,QAAM,IAANA,OAAM,EAANA,EAAQgM,+BACrB/iB,2BAA4BA,IAGR,UAAf6iB,GAEPtuB,EAAAA,EAAAA,KAACqT,EAAAA,EAAY,CACXjE,MAAa,OAANoT,QAAM,IAANA,OAAM,EAANA,EAAQiM,uBACfjf,YAAmB,OAANgT,QAAM,IAANA,OAAM,EAANA,EAAQkM,gCAKvB1uB,EAAAA,EAAAA,KAAC2uB,GAAiB,CAChBvjB,cAAeA,EACf/G,KAAMA,EACNsL,UAAWA,EACXP,MAAOA,EACPI,YAAaA,EACbC,kBAAmBA,EACnBC,aAAcA,EACd/D,YAAaA,EACbzI,iBAAkBA,EAClBwmB,cAAeA,GAIvB,C,mHCxDatwB,GAAYC,E,SAAAA,GAAW,CAClCC,MAAIC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACFC,QAAS,OACT4Z,SAAU,WACV0V,SAAU,EACV7sB,OAAQ,SACRT,QAAS,WACR9B,EAAAA,EAAMC,YAAYC,GAAG,qBAAuB,CAC3C4B,QAAS,EACT+O,SAAU,MACVtO,OAAQ,iBAETvC,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxC2Q,SAAU,QACV/O,QAAS,UACTS,OAAQ,MAETvC,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCM,MAAO,MACPqQ,SAAU,YACV/O,QAAS,oBACTS,OAAQ,WAETvC,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCM,MAAO,QAGX00B,oBAAqB,CACnBp1B,QAAS,OACTC,cAAe,MACfU,aAAc,WAEhB4uB,QAAMxvB,EAAAA,EAAAA,GAAA,CACJW,MAAO,uBACPC,aAAc,YACbT,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BM,MAAO,MACPC,aAAc,cAGlB00B,aAAWt1B,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACTW,MAAO,WACPK,OAAQ,OACRJ,aAAc,aACbT,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BW,OAAQ,YAETb,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BW,OAAQ,YAETb,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BW,OAAQ,SAGZu0B,kBAAmB,CACjB50B,MAAO,OACPK,OAAQ,OACRJ,aAAc,YAEhB40B,4BAA6B,CAAC,EAC9BC,eAAaz1B,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACXW,MAAO,OACPsB,QAAS,YACThC,QAAS,OACTC,cAAe,SACfqC,WAAY,UACXpC,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BM,MAAO,MACPsB,QAAS,aAEV9B,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BM,MAAO,MACPgC,SAAU,eAGd+yB,gBAAc11B,EAAAA,EAAAA,GAAA,CACZC,QAAS,OACT4Z,SAAU,WACVlZ,MAAO,QACNR,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BJ,QAAS,OACTC,cAAe,MACfsa,YAAa,WACbD,aAAc,OACd7Z,eAAgB,gBAChB8B,SAAU,WAGdmzB,MAAI31B,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACFW,MAAO,OACPK,OAAQ,UACRJ,aAAc,aACbT,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BO,aAAc,cAEfT,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCW,OAAQ,WAEV,aAAWhB,EAAAA,EAAAA,GAAA,GACRG,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5B2Q,SAAU,YACVrQ,MAAO,WAIbi1B,SAAU,CACRj1B,MAAO,OACPK,OAAQ,UACRJ,aAAc,WAEhBi1B,QAAM71B,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACJW,MAAO,OACPK,OAAQ,WACRJ,aAAc,aACbT,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BO,aAAc,YAEfT,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCW,OAAQ,WAGZ80B,YAAU91B,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACRW,MAAO,QACPC,aAAc,aACbT,EAAAA,EAAMC,YAAYC,GAAG,qBAAuB,CAC3CM,MAAO,SAERR,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BJ,QAAS,SAGb81B,UAAW,CACTp1B,MAAO,MACPK,OAAQ,YACRa,UACE,0GAEJm0B,gBAAiB,CACfn0B,UAAW,mDAEbo0B,mBAAoB,CAClBj1B,OAAQ,WACRL,MAAO,QAETu1B,YAAUl2B,EAAAA,EAAAA,GAAA,CACRgB,OAAQ,aACRJ,aAAc,YACdD,MAAO,QACNR,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BW,OAAQ,aAGZm1B,YAAUn2B,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACRC,QAAS,QACRE,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BJ,QAAS,QACTe,OAAQ,OACRL,MAAO,wBACPM,WAAY,WACZsuB,SAAU,EACV6G,UAAW,IAEZj2B,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BM,MAAO,oBACPM,WAAY,SAGhBo1B,cAAe,CACbr1B,OAAQ,SACRL,MAAO,YAET21B,YAAa,CACX31B,MAAO,MACP+B,OAAQ,YACRsO,SAAU,YAEZulB,SAAU,CACRv1B,OAAQ,OACRJ,aAAc,WACdD,MAAO,OACPqQ,SAAU,YAEZwlB,mBAAiBx2B,EAAAA,EAAAA,GAAA,GACdG,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BE,UAAW,YAGfk2B,YAAa,CACX91B,MAAO,OACPJ,UAAW,UACXK,aAAc,WACd,qBAAmBZ,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACjBgB,OAAQ,aACPb,EAAAA,EAAMC,YAAYC,GAAG,qBAAuB,CAC3CW,OAAQ,eAETb,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BE,UAAW,IACXS,OAAQ,YAETb,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCW,OAAQ,cAETb,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCW,OAAQ,YAGZ,sBAAoBhB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CAClBgR,SAAU,aACVhQ,OAAQ,aACPb,EAAAA,EAAMC,YAAYC,GAAG,qBAAuB,CAC3CW,OAAQ,eAETb,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BE,UAAW,IACXS,OAAQ,aAETb,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCW,OAAQ,cAETb,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCW,OAAQ,cAId01B,sBAAoB12B,EAAAA,EAAAA,GAAA,GACjBG,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5Bma,YAAa,aAGjBmc,UAAW,CACTh2B,MAAO,MACPK,OAAQ,WAEV41B,UAAW,CACT51B,OAAQ,SACRJ,aAAc,WACdD,MAAO,QAETk2B,eAAa72B,EAAAA,EAAAA,GAAA,GACVG,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BE,UAAW,YAGfu2B,eAAgB,CACdtc,YAAa,WAEfuc,yBAAuB/2B,EAAAA,EAAAA,GAAA,CACrBY,aAAc,WACbT,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5Bma,YAAa,YAGjBwc,eAAgB,CACdh2B,OAAQ,UACRL,MAAO,QAETs2B,cAAYj3B,EAAAA,EAAAA,GAAA,CACVgB,OAAQ,WACRL,MAAO,QACNR,EAAAA,EAAMC,YAAYC,GAAG,MAAQ,CAC5BY,WAAY,UACZN,MAAO,YAGXgG,UAAW,CACT1G,QAAS,OACT4Z,SAAU,WACVpI,UAAW,aACX9Q,MAAO,U,qDCtEX,EA3L8B,SAAHqE,GAIiB,IAH1C6M,EAAa7M,EAAb6M,cACAgE,EAAK7Q,EAAL6Q,MACAI,EAAWjR,EAAXiR,YAEM3Q,EAAUzF,IACVM,GAAQqF,EAAAA,EAAAA,KACR0xB,GAA6BC,EAAAA,EAAAA,GACjCh3B,EAAMC,YAAYC,GAAG,qBACrB,CAAE+2B,OAAO,IAELC,GAA0BF,EAAAA,EAAAA,GAAch3B,EAAMC,YAAYC,GAAG,MAAO,CACxE+2B,OAAO,IAEHnL,KACJpa,GACAA,EAAc4C,WACd5C,EAAc2C,aACd3C,EAAcuB,SAEVkkB,GACS,OAAbzlB,QAAa,IAAbA,OAAa,EAAbA,EAAenJ,UAAWqK,EAAAA,EAAoB4V,MAChD,OACEtiB,EAAAA,EAAAA,MAAA,OAAKE,UAAWjB,EAAQvF,KAAKyG,SAAA,EACzBqP,GAASI,KACT5P,EAAAA,EAAAA,MAAA,OAAKE,UAAWjB,EAAQkqB,OAAOhpB,SAAA,EAC7BC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,cAAcnC,UAAWjB,EAAQgwB,eAClDjN,EAAAA,EAAAA,GACIkP,MACDF,EAA0B,EAAIH,EAA6B,EAAI,IAEjEvmB,KAAI,SAAC1D,EAAkB8Y,GAAa,OACpCtf,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CACP9e,QAAQ,cAERnC,UAAWjB,EAAQiwB,mBADdxP,EAEL,QAIR1f,EAAAA,EAAAA,MAAA,OAAKE,UAAWjB,EAAQqB,UAAUH,SAAA,EAChCC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,cAAcnC,UAAS,GAAAxE,OAAKuD,EAAQqwB,KAAI,eAC1DtvB,EAAAA,EAAAA,MAAA,OAAKE,UAAWjB,EAAQowB,eAAelvB,SAAA,EACrCH,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAACH,UAAWjB,EAAQmwB,cAAcjvB,SAAA,EACrCC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CACP9e,QAAQ,cACRnC,UAAS,GAAAxE,OAAKuD,EAAQswB,SAAQ,eAEhCnvB,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CACP9e,QAAQ,cACRnC,UAAS,GAAAxE,OAAKuD,EAAQuwB,OAAM,eAE9BxvB,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAACC,WAAS,EAACJ,UAAWjB,EAAQwwB,WAAWtvB,SAAA,EAC5CC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CACP9e,QAAQ,cACRnC,UAAS,GAAAxE,OAAKuD,EAAQywB,UAAS,KAAAh0B,OAAIuD,EAAQ0wB,oBAE7CvvB,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,cAAcnC,UAAWjB,EAAQywB,gBAErD1vB,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CACHC,WAAS,EACTC,UAAU,MACVL,UAAWjB,EAAQ+vB,oBAAoB7uB,SAAA,EAEvCC,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAG9B,UAChBC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CACP9e,QAAQ,cACRnC,UAAWjB,EAAQ4wB,gBAGvBzvB,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAG9B,UAChBC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CACP9e,QAAQ,cACRnC,UAAWjB,EAAQ4wB,gBAGvBzvB,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAG9B,UAChBC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CACP9e,QAAQ,cACRnC,UAAWjB,EAAQ4wB,gBAGvBzvB,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAG9B,UAChBC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CACP9e,QAAQ,cACRnC,UAAWjB,EAAQ2wB,8BAK3BxvB,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,cAAcnC,UAAWjB,EAAQ6wB,oBAGvD9vB,EAAAA,EAAAA,MAAA,OAAKE,UAAWjB,EAAQqB,UAAUH,SAAA,EAChCC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,cAAcnC,UAAS,GAAAxE,OAAKuD,EAAQqwB,KAAI,eAC1DtvB,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CACHC,WAAS,EACTC,UAAU,MACVL,UAAWjB,EAAQoxB,qBAAqBlwB,SAAA,EAExCH,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAIC,GAAI,EAAGhC,UAAWjB,EAAQkxB,kBAAkBhwB,SAAA,EAC7DC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,OAAOnC,UAAWjB,EAAQ+wB,iBAC1CpK,IAAkBxlB,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAACjhB,UAAWjB,EAAQgxB,eACjD7vB,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,cAAcnC,UAAWjB,EAAQixB,YACnD9vB,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,OAAOnC,UAAWjB,EAAQ+wB,iBAC5C5vB,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,cAAcnC,UAAWjB,EAAQixB,eAErD9vB,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAIC,GAAI,EAAE/B,UACvBC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CACP9e,QAAQ,cACRnC,UAAS,GAAAxE,OAAKuD,EAAQmxB,YAAW,KAAA10B,OAAIu1B,cAK7CjxB,EAAAA,EAAAA,MAAA,OAAKE,UAAWjB,EAAQqB,UAAUH,SAAA,EAChCC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,cAAcnC,UAAS,GAAAxE,OAAKuD,EAAQqwB,SACpD0B,IACA5wB,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAACC,WAAS,EAACC,UAAU,MAAKJ,UAC5B6hB,EAAAA,EAAAA,GAAIkP,MAAM,IAAI5mB,KAAI,SAAC1D,EAAkB8Y,GACpC,OACE1f,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAG9B,SAAA,EAChBC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,OAAOnC,UAAWjB,EAAQqxB,aAC5ClwB,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CACP9e,QAAQ,cACRnC,UAAWjB,EAAQsxB,cAJC7Q,EAQ5B,MAGHsR,IACChxB,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAACC,WAAS,EAACC,UAAU,MAAML,UAAWjB,EAAQuxB,cAAcrwB,SAAA,EAC/DH,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAACC,WAAS,EAACC,UAAU,MAAKJ,SAAA,EAC7BH,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,EAAG/B,UAAWjB,EAAQwxB,eAAetwB,SAAA,EAClDC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,OAAOnC,UAAWjB,EAAQqxB,aAC5ClwB,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,cAAcnC,UAAWjB,EAAQsxB,gBAErDvwB,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,EAAG/B,UAAWjB,EAAQwxB,eAAetwB,SAAA,EAClDC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,OAAOnC,UAAWjB,EAAQqxB,aAC5ClwB,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,cAAcnC,UAAWjB,EAAQsxB,mBAGvDvwB,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAACC,WAAS,EAACC,UAAU,MAAKJ,SAAA,EAC7BH,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,EAAG/B,UAAWjB,EAAQwxB,eAAetwB,SAAA,EAClDC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,OAAOnC,UAAWjB,EAAQqxB,aAC5ClwB,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,cAAcnC,UAAWjB,EAAQsxB,gBAErDvwB,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,EAAG/B,UAAWjB,EAAQwxB,eAAetwB,SAAA,EAClDC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,OAAOnC,UAAWjB,EAAQqxB,aAC5ClwB,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,cAAcnC,UAAWjB,EAAQsxB,gBAErDvwB,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,EAAG/B,UAAWjB,EAAQwxB,eAAetwB,SAAA,EAClDC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,OAAOnC,UAAWjB,EAAQqxB,aAC5ClwB,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,cAAcnC,UAAWjB,EAAQsxB,mBAGvDnwB,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CAACC,WAAS,EAACC,UAAU,MAAKJ,UAC7BH,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAAC2B,MAAI,EAACC,GAAI,GAAI/B,UAAWjB,EAAQwxB,eAAetwB,SAAA,EACnDC,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,OAAOnC,UAAWjB,EAAQqxB,aAC5ClwB,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,cAAcnC,UAAWjB,EAAQsxB,qBAK3DnwB,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CACHC,WAAS,EACTC,UAAU,MACVL,UAAWjB,EAAQyxB,wBAAwBvwB,UAE1C6hB,EAAAA,EAAAA,GAAIkP,MAAM,IAAI5mB,KAAI,SAAC1D,EAAkB8Y,GACpC,OACEtf,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CACP9e,QAAQ,OAERnC,UAAWjB,EAAQ0xB,gBADdjR,EAIX,OAEFtf,EAAAA,EAAAA,KAAC+gB,EAAAA,EAAQ,CAAC9e,QAAQ,cAAcnC,UAAWjB,EAAQ2xB,oBAI3D,C,sGCnMMr3B,E,SAASD,EAAWC,OAEbC,GAAYC,EAAAA,EAAAA,GAAW,CAClCC,MAAIC,EAAAA,EAAAA,GAAA,CACF,cAAe,SACfC,QAAS,OACT,iBAAkB,MAClBW,aAAc,YACdsB,SAAU,WACVvB,MAAO,QACNR,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxC,gBAAiB,IAGrB0xB,WAAY,CACVjxB,MAAOlB,EAAO6B,MACdxB,QAAS,QACT,YAAa,OACb6P,WAAY,iBACZhN,YAAa,UAEf00B,UAAW,CACT,gBAAgB,mBAADz1B,OAAqBnC,EAAO4jB,cAC3C1iB,MAAOlB,EAAO6B,MACdxB,QAAS,QACTw3B,KAAM,EACN/0B,OAAQ,IACRG,UAAW,QACX+B,cAAe,IACf,sBAAuB,MACvB,sBAAuB,gBACvB,6BAA8B,QAEhC8yB,aAAc,CACZ52B,MAAOlB,EAAOwB,cAEhBu2B,kBAAgB33B,EAAAA,EAAAA,GAAA,GACbG,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxCo3B,KAAM,OACN,YAAa,YACb92B,MAAO,UAGXi3B,aAAW53B,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACTc,MAAOlB,EAAOyL,UACduL,KAAM,EACN1U,SAAU,WACVyB,IAAK,YACLkI,UAAW,oBAEV1L,EAAAA,EAAMC,YAAYC,GAAG,qBAAuB,CAC3CuW,KAAM,OACNhT,MAAO,EACPD,IAAK,cAENxD,EAAAA,EAAMC,YAAYC,GAAG,iBAAmB,CACvCsD,IAAK,QAGTk0B,aAAW73B,EAAAA,EAAAA,GAAA,GACRG,EAAAA,EAAMC,YAAYC,GAAG,kBAAoB,CACxC,eAAgB,e,4CCpDf,SAASyxB,EAAI9sB,GAOI,IANtBitB,EAASjtB,EAATitB,UACAF,EAAU/sB,EAAV+sB,WACAC,EAAShtB,EAATgtB,UACAE,EAAWltB,EAAXktB,YACA1rB,EAAQxB,EAARwB,SACAmhB,EAAO3iB,EAAP2iB,QAEMriB,EAAUzF,IAEV0F,EAAmC,WAD3BC,EAAAA,EAAAA,KACa3E,UACrBi3B,EAAoBxyB,EAAQoyB,aAC5BK,EAAwBzyB,EAAQqyB,iBACtC,OACEtxB,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CACHC,WAAS,EACTJ,UAAS,QAAAxE,QAAWkwB,GAAa,eACjCrrB,UAAU,MAAKJ,SAAA,EAEfH,EAAAA,EAAAA,MAACK,EAAAA,GAAI,CAACH,UAAS,GAAAxE,OAAKuD,EAAQvF,MAAQ4G,WAAS,EAACC,UAAU,MAAKJ,SAAA,CAC1DurB,IACCtrB,EAAAA,EAAAA,KAAA,QACEF,UAAS,GAAAxE,OAAKuD,EAAQysB,WAAU,iBAAAhwB,QAC7BkwB,GAAa6F,GACbtxB,SAEFurB,KAGLtrB,EAAAA,EAAAA,KAACI,EAAAA,EAAU,CACTuC,QAAQ,KACR7C,UAAS,GAAAxE,OAAKuD,EAAQkyB,UAAS,KAAAz1B,OAC7BiwB,GAAa+F,EAAqB,KAAAh2B,QAC/BkwB,GAAa6F,EAAiB,KAAA/1B,OACjCwD,GAAgBysB,EAAY,gBAAkB,iBAEhDlrB,KAAMorB,IAGPvK,IACClhB,EAAAA,EAAAA,KAAA,QACEF,UAAS,GAAAxE,OAAKuD,EAAQsyB,YAAW,iCAAgCpxB,SAEhEmhB,OAINnhB,IACCC,EAAAA,EAAAA,KAACC,EAAAA,GAAI,CACHH,UAAS,GAAAxE,OAAKuD,EAAQuyB,YAAW,mBACjClxB,WAAS,EACTC,UAAU,MAAKJ,SAEdA,MAKX,C,wBCpEO,SAASunB,EAAejtB,GAC7B,MAAO,CACL8S,aAAc9S,EAAMywB,mBAAqBzwB,EAAM8wB,KAC/CA,KAAM9wB,EAAM8wB,KACZJ,gBAAiB1wB,EAAM6a,GACvB5U,KAAMjG,EAAMiG,KACZusB,OAAQxyB,EAAMwyB,OACd7B,MAAO3wB,EAAMk3B,WAAaC,SAASn3B,EAAMk3B,WAAY,IAAM,EAC3Dxe,MAAO1Y,EAAM0Y,MAEjB,C,uFCRO,IAAM/D,EAAiB,SAACyiB,GAC7B,IAAMnf,EAAMD,OAAOC,UAAOnO,EACtBmO,GAAOA,EAAIof,kBACbpf,EAAIof,iBAAiBC,aACnB,WAAO,GACP,CAAC,GACD,EACAF,EAGN,C,wBCfO,SAASG,EAAcC,GAC5B,IACMC,EAAgBvpB,SAASwpB,uBACH,cAGxBD,EAAcrW,SAChBqW,EAAc,GAAGpoB,MAAML,WAAa,gBACpCyoB,EAAc,GAAGpoB,MAAMtE,UAAYysB,EAAgB,oBAAsB,GAE7E,CAEO,SAASrI,IACd,IAAMlwB,EAAOiP,SAAS+gB,eAAe,QAErChwB,IAASA,EAAKoQ,MAAM3D,UAAY,IAClC,CAEO,SAASisB,IACd,IAAM14B,EAAOiP,SAAS+gB,eAAe,QAErChwB,IAASA,EAAKoQ,MAAM3D,UAAY,GAClC,C,kKCbagc,EAAgB,SAAC3Q,GAC5B,IAAAlK,GAAkCC,EAAAA,EAAAA,WAAS,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA1C8a,EAAS5a,EAAA,GAAE6qB,EAAY7qB,EAAA,GAC9Byd,GAAgC1d,EAAAA,EAAAA,WAAS,GAAM2d,GAAAzd,EAAAA,EAAAA,GAAAwd,EAAA,GAAxC5C,EAAQ6C,EAAA,GAAEoN,EAAWpN,EAAA,GAC5BG,GAA4D9d,EAAAA,EAAAA,WAAS,GAAM+d,GAAA7d,EAAAA,EAAAA,GAAA4d,EAAA,GAApEkN,EAAsBjN,EAAA,GAAEkN,EAAyBlN,EAAA,GAClDmN,GAAmBrrB,EAAAA,EAAAA,QAAO,GAChCoe,GAAgDje,EAAAA,EAAAA,UAAmB,IAAGke,GAAAhe,EAAAA,EAAAA,GAAA+d,EAAA,GAA/DkN,EAAgBjN,EAAA,GAAEkN,EAAmBlN,EAAA,GAqD5C,OAnDAvW,EAAAA,EAAAA,YAAU,WACR,GAAIsC,GAAWA,EAAQqK,OAAS,EAAG,CACjC,IAAM+W,EAAc,WAClBN,GAAY,EACd,EACMO,EAAa,SAACvqB,GAElB,GADAmqB,EAAiBhqB,SAAW,EACxBgqB,EAAiBhqB,WAAmB,OAAP+I,QAAO,IAAPA,OAAO,EAAPA,EAASqK,QAAQ,CAChD,IAAMiX,EAAOxqB,EAAMyqB,cAAcC,WAAWlU,IAAImU,UAChDZ,GAAa,GACb,IAAIa,EAAUR,GACiB,IAA3BQ,EAAQpgB,SAASggB,IACnBI,EAAQpQ,KAAKgQ,GAEfH,EAAoBO,EACtB,CACF,EAEMjR,EAAgC,GAClCkR,GAAwB,EAsB5B,OArBAV,EAAiBhqB,QAAU,EAC3B+I,EAAQkK,SAAQ,SAACoD,GACf,IAAK4T,EAAiB5f,SAASgM,GAAM,CACnCqU,GAAe,EACfX,GAA0B,GAC1BH,GAAa,GACbC,GAAY,GAEZ,IAAMnf,EAAQ,IAAIigB,MAClBjgB,EAAM2L,IAAMA,EAEZ3L,EAAMkgB,QAAUT,EAChBzf,EAAMmgB,OAAST,EACf5Q,EAAUa,KAAK3P,EACjB,CACF,IAEIggB,GACFd,GAAa,GAGR,WACLpQ,EAAUvG,SAAQ,SAACvI,GACjBA,EAAM0D,oBAAoB,QAAS+b,GACnCzf,EAAM0D,oBAAoB,OAAQgc,EACpC,GACF,CACF,CAEF,GAAG,CAACrhB,IAEG,CAAE4Q,UAAAA,EAAWC,SAAAA,EAAUkQ,uBAAAA,EAChC,C,gHC5DO,SAAS9kB,EAAe8lB,GAC7B,OAAOC,EAAAA,EAAAA,UACLD,GAAQE,EAAAA,EAAAA,IAAAC,EAAAA,EAAAA,KAAAC,MACR,SAAAC,IAAA,IAAAC,EAAA,OAAAH,EAAAA,EAAAA,KAAAI,MAAA,SAAAC,GAAA,cAAAA,EAAA3qB,KAAA2qB,EAAAC,MAAA,cAAAD,EAAAC,KAAA,EAEmBC,IAAAA,IAAUV,GAAU,KAAD,EAcjC,OAdHM,EAAQE,EAAAG,MAECzvB,KAAKkf,SAAWkQ,EAASpvB,KAAKkf,SAASrZ,KAAI,SAAC6pB,GAWnD,OAVAA,EAAItQ,SAASnI,SAAQ,SAACqI,GAAa,IAADD,EAC1BsQ,EAA2B,CAC/BjQ,aAAc,YACd6E,YAAa,YACbX,mBAAoB,GACpBD,gBAAiBrE,EAAQ+C,oBACzBqB,gBAAiBpE,EAAQ8C,wBAEX,QAAhB/C,EAAAC,EAAQE,gBAAQ,IAAAH,GAAhBA,EAAkBhB,KAAKsR,EACzB,IACOD,CACT,IAAGJ,EAAAM,OAAA,SACIR,EAASpvB,MAAI,wBAAAsvB,EAAAO,OAAA,GAAAV,EAAA,KAEtB,CACEW,UAAWC,KAGjB,C,gHC/BahG,EAAgB,eAAA7vB,GAAA80B,EAAAA,EAAAA,IAAAC,EAAAA,EAAAA,KAAAC,MAAG,SAAAC,EAAOnvB,GAAS,IAAAgwB,EAAAC,EAAAb,EAAA,OAAAH,EAAAA,EAAAA,KAAAI,MAAA,SAAAC,GAAA,cAAAA,EAAA3qB,KAAA2qB,EAAAC,MAAA,OACa,OAArDS,EAAoBhiB,OAAOkiB,KAAKC,KAAKC,UAAUpwB,IAAMsvB,EAAAC,KAAA,EAC1BC,IAAAA,KAC/B,iCAAiC,IAADv4B,OAC5B+4B,EAAiB,KACrB,CACEK,QAAS,CACP,eAAgB,qCAGpB,KAAD,EARW,OAQXJ,EAAAX,EAAAG,KARaL,EAAQa,EAAdjwB,KAAIsvB,EAAAM,OAAA,SASLR,EAASpvB,MAAI,wBAAAsvB,EAAAO,OAAA,GAAAV,EAAA,KACrB,gBAZ4BmB,GAAA,OAAAp2B,EAAAq2B,MAAA,KAAAC,UAAA,KActB,SAASzK,EAAoB0K,EAAqBC,GACvD,OAAOC,EAAAA,EAAAA,aAAY5G,EAAkB,CACnC0G,UAAW,WACTA,GACF,EACAC,QAAS,WACPA,GACF,GAEJ,C,uDC+IO,IAAKzoB,EAAmB,SAAnBA,GAAmB,OAAnBA,EAAmB,cAAnBA,EAAmB,oCAAnBA,EAAmB,gBAAnBA,EAAmB,UAAnBA,EAAmB,sBAAnBA,EAAmB,0BAAnBA,CAAmB,K","sources":["components/DealerLocator/DealerInfo/DealerInfo.styles.ts","components/DealerLocator/DealerInfo/DealerInfoCard/DealerInfoCard.styles.ts","components/DealerLocator/DealerInfo/DealerInfoCard/DealerInfoCard.tsx","components/DealerLocator/DealerInfo/DealerInfo.tsx","components/DealerLocator/DealerLocator.tsx","components/Global/Dropdown/Dropdown.styles.ts","components/Global/Dropdown/Dropdown.tsx","components/Modal/RequestAQuoteModal/RequestAQuoteModal.styles.ts","components/Modal/RequestAQuoteModal/RequestAQuoteModal.tsx","components/Modal/SavedConfigModal/SavedConfigModal.styles.tsx","components/Modal/SavedConfigModal/SavedConfigModal.tsx","components/RequestAQuote/Confirmation/Confirmation.styles.ts","components/RequestAQuote/Confirmation/Confirmation.tsx","components/RequestAQuote/InformationForm/InformationForm.styles.tsx","components/Global/TextField/TextField.styles.tsx","components/Global/TextField/TextField.tsx","components/Global/CheckboxField/CheckboxField.styles.tsx","components/Global/CheckboxField/CheckboxField.tsx","hooks/useBeforeLeave.ts","components/RequestAQuote/InformationForm/InformationForm.tsx","components/RequestAQuote/VehicleSelector/VehicleSelector.styles.ts","components/RequestAQuote/VehicleCard/VehicleCard.style.ts","components/RequestAQuote/VehicleCard/VehicleCardBasic/VehicleCardBasic.tsx","components/RequestAQuote/VehicleCard/VehicleCardBasicCaption/VehicleCardBasicCaption.tsx","components/RequestAQuote/VehicleCard/VehicleCardComplex/VehicleCardComplex.tsx","components/RequestAQuote/VehicleCard/VehicleCard.tsx","components/RequestAQuote/VehicleSelector/VehicleSelector.tsx","components/RequestAQuote/RequestAQuoteForm/RequestAQuoteForm.styles.ts","components/RequestAQuote/RequestAQuoteForm/RequestAQuoteForm.tsx","components/RequestAQuote/RequestAQuoteContainer/RequestAQuoteContainer.tsx","components/RequestAQuote/RequestAQuoteSkeleton/RequestAQuoteSkeleton.styles.ts","components/RequestAQuote/RequestAQuoteSkeleton/RequestAQuoteSkeleton.tsx","components/RequestAQuote/Step/Step.styles.ts","components/RequestAQuote/Step/Step.tsx","helpers/Color.ts","helpers/DisplayZipgate.ts","helpers/Layout.ts","hooks/useLoadImages.ts","hooks/useLoadRAQData.ts","hooks/usePostQuoteRequest.ts","interfaces/requestAQuote.ts"],"sourcesContent":["import { theme } from 'theme/App.theme';\r\nimport makeStyles from '@mui/styles/makeStyles';\r\nimport { appPalette } from 'theme/App.palette';\r\n\r\nconst { honda_blue } = appPalette.colors;\r\n\r\nexport const useStyles = makeStyles({\r\n root: {\r\n display: 'flex',\r\n flexDirection: 'row-reverse',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n flexDirection: 'row',\r\n },\r\n },\r\n noChangeDealer: {\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n flexDirection: 'row',\r\n marginTop: '2.1875rem',\r\n },\r\n },\r\n dealerTextButtonContainer: {\r\n justifyContent: 'space-between',\r\n width: 'auto',\r\n marginBottom: '1.5625rem',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n marginBottom: '0',\r\n marginTop: '1.5625rem',\r\n },\r\n ...(theme.themeName === 'honda' && {\r\n color: honda_blue,\r\n }),\r\n },\r\n dealerCTASvg: {\r\n height: '0.75rem !important',\r\n width: '0.5rem !important',\r\n marginLeft: '0.3125rem',\r\n paddingTop: '0.0625rem',\r\n },\r\n});\r\n","import makeStyles from '@mui/styles/makeStyles';\r\nimport { appPalette } from 'theme/App.palette';\r\nimport { appFonts } from 'theme/App.fonts';\r\nimport { theme } from 'theme/App.theme';\r\n\r\nconst {\r\n light_grey_2,\r\n off_white,\r\n light_grey_6,\r\n light_grey_4,\r\n white,\r\n black,\r\n honda_red,\r\n} = appPalette.colors;\r\nfunction focusableStyles(offset: number) {\r\n return {\r\n outline: `0.125rem solid`,\r\n outlineOffset: `.${offset}rem`,\r\n };\r\n}\r\n\r\nexport const useStyles = makeStyles({\r\n root: {\r\n borderRadius: '0',\r\n boxShadow: 'none',\r\n border: `0.0625rem solid ${light_grey_2}`,\r\n background: '#ffff',\r\n marginBottom: '0.9375rem',\r\n padding: '0.9375rem 1.25rem',\r\n position: 'relative',\r\n width: '100%',\r\n ...(theme.themeName === 'honda' && {\r\n borderRadius: '0.25rem',\r\n '& .is-preferred svg path': {\r\n fill: honda_red,\r\n },\r\n }),\r\n },\r\n noBorder: {\r\n border: 'none',\r\n borderBottom: `0.125rem solid ${off_white}`,\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n border: `0.0625rem solid ${light_grey_2}`,\r\n },\r\n },\r\n dealerHeader: {\r\n alignItems: 'center',\r\n padding: '0',\r\n flexWrap: 'nowrap',\r\n },\r\n dealerIndex: {\r\n background: light_grey_6,\r\n borderRadius: '50%',\r\n color: white,\r\n height: '2.1875rem',\r\n margin: '0',\r\n minWidth: 'unset',\r\n width: '2.1875rem',\r\n },\r\n dealerTitle: {\r\n textAlign: 'start',\r\n margin: '0 0.3125rem',\r\n marginRight: '1.875rem',\r\n marginBottom: '0.625rem',\r\n textTransform: 'none',\r\n '&:hover': {\r\n backgroundColor: white,\r\n },\r\n [theme.breakpoints.up('viewportXLarge')]: {\r\n marginLeft: '0.75rem',\r\n },\r\n },\r\n dealerAddress: {\r\n borderBottom: 'none',\r\n '&:hover': {\r\n textDecoration: 'underline !important',\r\n },\r\n },\r\n dealerDistanceMiles: {\r\n color: light_grey_4,\r\n },\r\n directionIcon: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n marginRight: '0.625rem',\r\n '& a': {\r\n borderBottom: 'none',\r\n },\r\n },\r\n directionContainer: {\r\n padding: '0.3125rem 0',\r\n [theme.breakpoints.up('viewportXLarge')]: {\r\n padding: '0.625rem',\r\n },\r\n },\r\n telephone: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n justifyContent: 'flex-start',\r\n },\r\n },\r\n directionLink: {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n borderBottom: 'none',\r\n width: '90%',\r\n '& .cta-label': {\r\n textAlign: 'left',\r\n borderBottom: 0,\r\n },\r\n },\r\n telephoneLink: {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n textDecoration: 'none',\r\n borderBottom: 'none',\r\n '& .cta-label': {\r\n display: 'flex',\r\n textAlign: 'left',\r\n borderBottom: 0,\r\n },\r\n },\r\n telephoneText: {\r\n display: 'none',\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n display: 'flex',\r\n marginLeft: '0.625rem',\r\n },\r\n '&:hover': {\r\n textDecoration: 'underline !important',\r\n },\r\n },\r\n preferredButton: {\r\n position: 'absolute',\r\n top: '-0.0625rem',\r\n padding: '0',\r\n right: '0.625rem',\r\n height: '2.625rem',\r\n width: '2.625rem',\r\n '& svg': {\r\n height: '2.625rem',\r\n width: '2.625rem',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n right: '1.25rem',\r\n },\r\n '&:focus': {\r\n 'body:not(.acr-focus-disabled) &': {\r\n ...focusableStyles(2),\r\n outlineColor: black,\r\n borderRadius: 0,\r\n },\r\n },\r\n },\r\n preferredButtonNoBorder: {\r\n top: '0',\r\n },\r\n dealerCTAs: {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n flexWrap: 'nowrap',\r\n padding: 0,\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n flexWrap: 'wrap',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n flexWrap: 'noWrap',\r\n },\r\n },\r\n dealerCTAContainer: {\r\n justifyContent: 'space-between',\r\n minWidth: '49%',\r\n width: 'auto',\r\n '& a': {\r\n padding: '0.875rem 0.9375rem 0.625rem',\r\n },\r\n },\r\n dealerTextButtonContainer: {\r\n justifyContent: 'space-between',\r\n minWidth: '49%',\r\n width: 'auto',\r\n '& a': {\r\n padding: '0.3125rem 0rem 0.3125rem 0.625rem',\r\n },\r\n },\r\n dealerCTAText: {\r\n whiteSpace: 'pre',\r\n },\r\n dealerCTALink: {\r\n display: 'inline',\r\n textDecoration: 'none',\r\n textTransform: 'uppercase',\r\n whiteSpace: 'nowrap',\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n fontFamily: appFonts.AvenirNextDemi.fontFamily,\r\n fontSize: '0.875rem',\r\n letterSpacing: 'normal',\r\n lineHeight: '1.25rem',\r\n borderBottom: '0',\r\n color: 'inherit',\r\n },\r\n dealerCTAButton: {\r\n minWidth: 0,\r\n width: 'auto',\r\n '& div': {\r\n padding: '0.875rem 0.9375rem 0.625rem',\r\n },\r\n },\r\n dealerCTASvg: {\r\n height: '0.75rem !important',\r\n width: '0.5rem !important',\r\n marginLeft: '0.3125rem',\r\n paddingTop: '0.0625rem',\r\n },\r\n});\r\n","import React from 'react';\r\nimport { Card, Grid, IconButton, useTheme } from '@mui/material';\r\nimport { Dealer } from 'interfaces/dealerLocator';\r\nimport { useStyles } from './DealerInfoCard.styles';\r\nimport { Icon, Icons } from 'components/Global/Icon/Icon';\r\nimport { appPalette } from 'theme/App.palette';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport {\r\n preferredDealer,\r\n setPreferredDealerId,\r\n removePreferredDealerId,\r\n} from 'redux/slices/dealerSlice';\r\nimport TextRender from 'components/Global/TextRender/TextRender';\r\nimport { trackEvent } from 'helpers/Analytics';\r\nimport {\r\n LinkButton,\r\n LinkButtonType,\r\n} from 'components/Global/LinkButton/LinkButton';\r\n\r\nexport interface IDealerInfoCard {\r\n dealer: Dealer;\r\n}\r\n\r\nexport function DealerInfoCard({ dealer }: IDealerInfoCard): JSX.Element {\r\n const classes = useStyles();\r\n const theme = useTheme();\r\n const isHondaTheme = theme.themeName === 'honda';\r\n const { light_grey_2, iconMainColor } = appPalette.colors;\r\n const currentPreferredDealer = useSelector(preferredDealer);\r\n const dispatch = useDispatch(); // redux dispatch\r\n\r\n const handlePreferredDealerId = () => {\r\n let actionLabel = 'results:deselect preferred dealer';\r\n if (dealer.dealerNumber === currentPreferredDealer) {\r\n dispatch(removePreferredDealerId());\r\n } else {\r\n actionLabel = 'results:select preferred dealer';\r\n dispatch(setPreferredDealerId(dealer.dealerNumber as string));\r\n }\r\n\r\n trackEvent({\r\n label: actionLabel,\r\n category: {\r\n includePageName: true,\r\n text: 'results',\r\n },\r\n type: 'selector',\r\n dealer: {\r\n dealerId: dealer.dealerNumber,\r\n dealerZipcode: dealer.zipCode,\r\n dealerName: dealer.name,\r\n dealerAddress: `${dealer.address as string}, ${dealer.city}, ${\r\n dealer.state\r\n } ${dealer.zipCode}`,\r\n },\r\n });\r\n };\r\n\r\n const handleDealerDirectionClick = () => {\r\n trackEvent({\r\n label: `results:${dealer.name} directions`,\r\n category: {\r\n includePageName: true,\r\n text: 'results',\r\n },\r\n type: 'link',\r\n dealer: {\r\n dealerId: dealer.dealerNumber,\r\n dealerZipcode: dealer.zipCode,\r\n dealerName: dealer.name,\r\n dealerAddress: `${dealer.address as string}, ${dealer.city}, ${\r\n dealer.state\r\n } ${dealer.zipCode}`,\r\n },\r\n });\r\n };\r\n\r\n const handleDealerPhoneClick = () => {\r\n trackEvent({\r\n label: `results:call ${dealer.name}`,\r\n category: {\r\n includePageName: true,\r\n text: 'results',\r\n },\r\n type: 'link',\r\n dealer: {\r\n dealerId: dealer.dealerNumber,\r\n dealerZipcode: dealer.zipCode,\r\n dealerName: dealer.name,\r\n dealerAddress: `${dealer.address as string}, ${dealer.city}, ${\r\n dealer.state\r\n } ${dealer.zipCode}`,\r\n dealerPhone: dealer.phone,\r\n },\r\n });\r\n };\r\n\r\n const getDealerBingDirection = dealer\r\n ? `http://bing.com/maps/default.aspx?rtp=~adr.${dealer.address?.replace(\r\n ' ',\r\n '%20'\r\n )}%20${dealer.city?.replace(' ', '%20')},%20${dealer.state?.replace(\r\n ' ',\r\n '%20'\r\n )}%20${dealer.zipCode?.replace(' ', '%20')}`\r\n : '';\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n handlePreferredDealerId()}\r\n className={`${classes.preferredButton} ${\r\n currentPreferredDealer === dealer.dealerNumber ? 'is-preferred' : ''\r\n } preferred-button`}\r\n aria-label={`Select ${dealer.name} as preferred dealer`}\r\n size=\"large\"\r\n >\r\n \r\n \r\n \r\n \r\n {\r\n handleDealerDirectionClick();\r\n }}\r\n classNames={{ container: classes.directionLink }}\r\n ariaLabel={`Go to the ${dealer.name} address`}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n {' '}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n handleDealerPhoneClick();\r\n }}\r\n >\r\n \r\n \r\n \r\n

\r\n \r\n
\r\n
\r\n \r\n
\r\n );\r\n}\r\n","import React from 'react';\r\nimport { useStyles } from './DealerInfo.styles';\r\nimport { Grid, useTheme } from '@mui/material';\r\nimport {\r\n LinkButton,\r\n LinkButtonType,\r\n} from 'components/Global/LinkButton/LinkButton';\r\nimport { Icon, Icons } from 'components/Global/Icon/Icon';\r\nimport { appPalette } from 'theme/App.palette';\r\nimport { useDispatch } from 'react-redux';\r\nimport { removeSelectedDealer } from 'redux/slices/dealerSlice';\r\nimport { DealerInfoCard } from 'components/DealerLocator/DealerInfo/DealerInfoCard/DealerInfoCard';\r\nimport TextRender from 'components/Global/TextRender/TextRender';\r\nimport { Dealer } from 'interfaces/dealerLocator';\r\n\r\n// Constants\r\nconst dealerLockKeyName = 'dealerLockID';\r\nconst trueString = 'true';\r\n\r\nexport interface IDealerInfo {\r\n dealer?: Dealer;\r\n hideChangeDealer?: boolean;\r\n}\r\n\r\nexport function DealerInfo({\r\n dealer,\r\n hideChangeDealer,\r\n}: IDealerInfo): JSX.Element {\r\n const classes = useStyles();\r\n const { iconMainColor } = appPalette.colors;\r\n const theme = useTheme();\r\n const isHondaThemed = theme.themeName === 'honda';\r\n const dispatch = useDispatch(); // redux dispatch\r\n const dealerLockID = sessionStorage.getItem(dealerLockKeyName);\r\n\r\n if (dealer) {\r\n return (\r\n \r\n \r\n {!hideChangeDealer && dealerLockID !== trueString && (\r\n {\r\n dispatch(removeSelectedDealer());\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n return <>;\r\n}\r\n","import React from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { selectedDealer, setSelectedDealer } from 'redux/slices/dealerSlice';\r\nimport { DealerLocatorContainer } from 'components/DealerLocator/DealerLocatorContainer/DealerLocatorContainer';\r\nimport { DealerInfo } from 'components/DealerLocator/DealerInfo/DealerInfo';\r\nimport { Dealer, IDealerLocatorContainer } from 'interfaces/dealerLocator';\r\nimport { selectZipcode } from 'redux/slices/zipcodeSlice';\r\nimport { useDealerLocatorDealers } from 'hooks/useDealerLocatorData';\r\n\r\nexport function DealerLocator(props: IDealerLocatorContainer): JSX.Element {\r\n const dealerLockID = sessionStorage.getItem('dealerLockID');\r\n const dealerID = sessionStorage.getItem('dealerID');\r\n const dispatch = useDispatch(); // redux dispatch\r\n const zipcode = useSelector(selectZipcode);\r\n const dealersFetch = useDealerLocatorDealers(zipcode, undefined);\r\n\r\n if (dealerLockID && dealerID) {\r\n const dealerList = dealersFetch?.data;\r\n const dealer = dealerList?.find(\r\n (dealer: Dealer) => dealer.dealerNumber === dealerID\r\n );\r\n\r\n if (dealer) {\r\n dispatch(setSelectedDealer(dealer));\r\n }\r\n }\r\n\r\n const currentSelectedDealer = useSelector(selectedDealer);\r\n if (currentSelectedDealer && props.isEmbedded) {\r\n return (\r\n \r\n );\r\n } else {\r\n return ;\r\n }\r\n}\r\n","import makeStyles from '@mui/styles/makeStyles';\r\nimport { appPalette } from 'theme/App.palette';\r\n\r\nconst { acura_red, black, mid_grey_2, black_o01, light_grey_7 } =\r\n appPalette.colors;\r\n\r\nexport const useStyles = makeStyles({\r\n hidden: {\r\n display: 'none',\r\n },\r\n container: {\r\n position: 'relative',\r\n border: `0.0625rem solid ${mid_grey_2}`,\r\n borderRadius: '0.25rem',\r\n height: '2.875rem',\r\n },\r\n placeholder: {\r\n width: '100%',\r\n height: '100%',\r\n padding: '0 1.25rem',\r\n color: 'black',\r\n textTransform: 'none',\r\n justifyContent: 'flex-start',\r\n '&:after': {\r\n top: 'calc(50% - 0.1875rem)',\r\n right: 0,\r\n marginRight: '1.25rem',\r\n width: '0.8125rem',\r\n height: '0.8125rem',\r\n content: '\"\"',\r\n display: 'block',\r\n zIndex: '2',\r\n position: 'absolute',\r\n transform: 'translateY(-50%) rotate(135deg)',\r\n borderTop: `0.1875rem solid ${acura_red}`,\r\n borderRight: `0.1875rem solid ${acura_red}`,\r\n pointerEvents: 'none',\r\n },\r\n '&.select-open': {\r\n '&:after': {\r\n transform: 'rotate(315deg)',\r\n },\r\n },\r\n '&.Mui-focusVisible': {\r\n 'body:not(.acr-focus-disabled) &': {\r\n outline: `0.125rem solid`,\r\n outlineOffset: '0.1875rem',\r\n outlineColor: black,\r\n },\r\n },\r\n '&:hover': {\r\n backgroundColor: 'transparent',\r\n },\r\n },\r\n popper: {\r\n width: 'calc(100% + 0.125rem)',\r\n zIndex: 11,\r\n },\r\n menu_container: {\r\n width: '100%',\r\n padding: 0,\r\n zIndex: 2,\r\n border: `0.0625rem solid ${mid_grey_2}`,\r\n boxShadow: '0 0.125rem 1.875rem 0 rgb(0 0 0 / 10%)',\r\n borderTop: 0,\r\n overflowY: 'scroll',\r\n maxHeight: '20rem',\r\n '&::-webkit-scrollbar': {\r\n width: '0.3em',\r\n },\r\n '&::-webkit-scrollbar-track': {\r\n boxShadow: 'inset 0 0 0.375rem transparent',\r\n webkitBoxShadow: 'inset 0 0 0.375rem transparent',\r\n },\r\n '&::-webkit-scrollbar-thumb': {\r\n backgroundColor: black_o01,\r\n outline: `0.0625rem solid ${light_grey_7}`,\r\n },\r\n '&.hide-input': {\r\n borderTop: `0.0625rem solid ${mid_grey_2}`,\r\n },\r\n },\r\n menu_item: {\r\n position: 'relative',\r\n padding: '0.625rem',\r\n wordWrap: 'break-word',\r\n whiteSpace: 'normal',\r\n minHeight: 'unset',\r\n '&.Mui-focusVisible': {\r\n 'body:not(.acr-focus-disabled) &': {\r\n outline: `0.125rem solid`,\r\n outlineOffset: '-0.125rem',\r\n outlineColor: black,\r\n },\r\n },\r\n '&.Mui-selected, &.Mui-selected:hover': {\r\n backgroundColor: 'white',\r\n },\r\n },\r\n});\r\n","import {\r\n Button,\r\n ClickAwayListener,\r\n Grow,\r\n MenuItem,\r\n MenuList,\r\n Paper,\r\n Popper,\r\n} from '@mui/material';\r\nimport { createIdFromText } from 'helpers/FormatText';\r\nimport React, { useMemo, useRef, useState } from 'react';\r\nimport TextRender from '../TextRender/TextRender';\r\nimport { useStyles } from './Dropdown.styles';\r\n\r\ninterface IDropdown {\r\n id?: string;\r\n dataAutomation?: string;\r\n disabled?: boolean;\r\n changeFunction: (selected: any) => void;\r\n selectedValue?: string | undefined;\r\n defaultValue?: string;\r\n placeholder?: string;\r\n options?: IDropdownOption[];\r\n classNames?: {\r\n container?: string;\r\n placeholder?: string;\r\n options?: string;\r\n };\r\n hideInputOnExpand?: boolean;\r\n}\r\n\r\nconst overInputModifiers = [\r\n {\r\n name: 'offset',\r\n options: {\r\n offset: [0, -42],\r\n },\r\n },\r\n {\r\n name: 'flip',\r\n enabled: false,\r\n },\r\n {\r\n name: 'preventOverflow',\r\n enabled: true,\r\n options: {\r\n altAxis: true,\r\n altBoundary: true,\r\n tether: true,\r\n rootBoundary: 'viewport',\r\n padding: 10,\r\n },\r\n },\r\n];\r\n\r\nexport interface IDropdownOption {\r\n label: string;\r\n value: any;\r\n}\r\n// Convert string[] to IDropdownOption[]\r\nexport const createDropdownItemObj = (value: string) => ({\r\n label: value,\r\n value: createIdFromText(value),\r\n});\r\n\r\nconst Dropdown = ({\r\n dataAutomation,\r\n changeFunction,\r\n selectedValue,\r\n defaultValue,\r\n options,\r\n disabled,\r\n placeholder,\r\n classNames,\r\n hideInputOnExpand,\r\n}: IDropdown): JSX.Element => {\r\n const classes = useStyles();\r\n\r\n const containerRef = useRef(null);\r\n const buttonRef = useRef(null);\r\n const [isOpen, setIsOpen] = useState(false);\r\n\r\n const modifiers = hideInputOnExpand ? overInputModifiers : undefined;\r\n\r\n const selectedValueProcessed = useMemo(\r\n () =>\r\n options?.find(({ value }) => {\r\n const lowerValue = value?.toLowerCase() || '';\r\n const lowerSelected = selectedValue?.toLowerCase() || '';\r\n const lowerDefault = defaultValue?.toLowerCase() || '';\r\n return lowerValue === lowerSelected || lowerValue === lowerDefault;\r\n }),\r\n [options, selectedValue, defaultValue]\r\n );\r\n\r\n const toggleDropdown = () => {\r\n setIsOpen((prev) => !prev);\r\n };\r\n\r\n const closeDropdown = () => {\r\n if (isOpen) {\r\n setIsOpen(false);\r\n }\r\n };\r\n\r\n const handleListKeyDown = (event: React.KeyboardEvent) => {\r\n if (event.key === 'Escape') {\r\n setIsOpen(false);\r\n buttonRef.current?.focus();\r\n document.body.classList.remove('acr-focus-disabled');\r\n }\r\n };\r\n\r\n const handleListItemKeyDown = (event: React.KeyboardEvent) => {\r\n if (event.key === 'Tab' || event.key === 'Enter') {\r\n event.preventDefault();\r\n setIsOpen(false);\r\n buttonRef.current?.focus();\r\n document.body.classList.remove('acr-focus-disabled');\r\n }\r\n };\r\n\r\n const handleOptionSelection = (value: string) => {\r\n changeFunction(value);\r\n setIsOpen(false);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n {options && (\r\n \r\n {({ TransitionProps, placement }) => (\r\n \r\n \r\n \r\n \r\n {options.map((option: IDropdownOption) => (\r\n handleOptionSelection(option.value)}\r\n >\r\n \r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default Dropdown;\r\n","import { theme } from 'theme/App.theme';\r\nimport makeStyles from '@mui/styles/makeStyles';\r\nimport { appPalette } from 'theme/App.palette';\r\ntype Props = {\r\n viewHeight: string;\r\n};\r\n\r\nconst colors = appPalette.colors;\r\nfunction styleScroll() {\r\n return {\r\n '&::-webkit-scrollbar': {\r\n width: '0.375rem',\r\n },\r\n '&::-webkit-scrollbar-track': {\r\n backgroundColor: colors.light_grey_2,\r\n },\r\n '&::-webkit-scrollbar-thumb': {\r\n backgroundColor: colors.mid_grey,\r\n },\r\n };\r\n}\r\n\r\nexport const useStyles = makeStyles({\r\n paper: {\r\n maxHeight: (props: Props) => props.viewHeight,\r\n width: '100vw',\r\n overflow: 'scroll',\r\n position: 'relative',\r\n backgroundColor: 'white',\r\n border: '0',\r\n outline: 'none',\r\n padding: '1rem 2rem 0 2rem',\r\n [theme.breakpoints.up('viewportMobileMid')]: {\r\n margin: '0 auto',\r\n maxWidth: '87.5rem',\r\n maxHeight: '90.625rem',\r\n },\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n padding: '1rem 2rem 2.5rem 2rem',\r\n backgroundColor: 'white',\r\n border: '0',\r\n },\r\n },\r\n modal_data: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n marginTop: '0',\r\n height: 'auto',\r\n maxHeight: (props: Props) => `calc(${props.viewHeight} - 3rem)`,\r\n paddingBottom: '2rem',\r\n ...styleScroll(),\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n height: 'auto',\r\n maxHeight: 'calc(20rem - 6.25rem)',\r\n paddingBottom: '0',\r\n },\r\n },\r\n copy_button: {\r\n '& svg': {\r\n margin: 'auto 0 auto 0.5rem',\r\n height: '0.75rem',\r\n width: 'auto',\r\n },\r\n padding: 0,\r\n backgroundColor: 'transparent',\r\n border: 'none',\r\n display: 'flex',\r\n textTransform: 'uppercase',\r\n '&:hover': {\r\n cursor: 'pointer',\r\n },\r\n },\r\n copy: {\r\n '& svg': {\r\n margin: 'auto 0 auto 0.5rem',\r\n height: '0.75rem',\r\n width: 'auto',\r\n },\r\n backgroundColor: 'transparent',\r\n border: 'none',\r\n display: 'flex',\r\n textTransform: 'uppercase',\r\n },\r\n button_group: {\r\n marginTop: '2.5rem',\r\n display: 'flex',\r\n },\r\n confirmation_button: {\r\n width: '9.375rem',\r\n height: '2.5rem',\r\n textTransform: 'uppercase',\r\n boxSizing: 'border-box',\r\n '&:first-child': {\r\n backgroundColor: 'transparent',\r\n border: '0.0625rem black solid',\r\n marginRight: '0.5rem',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n marginRight: '1rem',\r\n },\r\n },\r\n '&:last-child': {\r\n backgroundColor: colors.acura_red,\r\n border: 'none',\r\n color: colors.white,\r\n marginLeft: '0.5rem',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n marginLeft: '1rem',\r\n },\r\n },\r\n '&:hover': {\r\n cursor: 'pointer',\r\n },\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n width: '12rem',\r\n },\r\n },\r\n});\r\n","import React, { useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { use100vh } from 'react-div-100vh';\r\nimport { selectZipcode } from 'redux/slices/zipcodeSlice';\r\nimport { pageLoad } from 'helpers/Analytics';\r\nimport { displayZipgate } from 'helpers/DisplayZipgate';\r\nimport {\r\n IRAQConfiguration,\r\n IFormData,\r\n IRequestAQuoteData,\r\n VehicleSelectorType,\r\n IRAQConfigurationBAP,\r\n IRAQConfigurationInventory,\r\n IADXEnhancedData,\r\n} from 'interfaces/requestAQuote';\r\nimport { IPageLoadData } from 'interfaces/analytics';\r\nimport ModalContainer from 'components/Modal/ModalContainer/ModalContainer';\r\nimport { useStyles } from './RequestAQuoteModal.styles';\r\nimport {\r\n getCurrentConfig,\r\n setConfigStatus,\r\n setCurrentConfig,\r\n} from 'redux/slices/savedConfigSlice';\r\nimport { generateParameters } from 'helpers/Url';\r\nimport { useLoadRAQData } from 'hooks/useLoadRAQData';\r\nimport { ISavedConfigModalContent } from 'interfaces/modal';\r\nimport RequestAQuoteContainer from 'components/RequestAQuote/RequestAQuoteContainer/RequestAQuoteContainer';\r\nimport RequestAQuoteSkeleton from 'components/RequestAQuote/RequestAQuoteSkeleton/RequestAQuoteSkeleton';\r\nimport SavedConfigModal from '../SavedConfigModal/SavedConfigModal';\r\n\r\nexport enum FormStatusOptions {\r\n initial = 'inital',\r\n success = 'success',\r\n error = 'error',\r\n}\r\n\r\nexport interface IRequestAQuote {\r\n configuration?: IRAQConfiguration;\r\n data?: IRequestAQuoteData;\r\n isInModal?: boolean;\r\n title?: string;\r\n description?: string;\r\n scrollContainerId?: string;\r\n shoppingTool?: string;\r\n hideChangeDealer?: boolean;\r\n pageLoadConfig?: IPageLoadData;\r\n confirmationPageLoadConfig?: IPageLoadData;\r\n setFormData?: (formData: IFormData) => void;\r\n setFormStatus?: (formStatus: FormStatusOptions) => void;\r\n}\r\n\r\nexport interface IADXEnhanced {\r\n configuration?: IRAQConfiguration;\r\n data?: IADXEnhancedData;\r\n isInModal?: boolean;\r\n title?: string;\r\n description?: string;\r\n scrollContainerId?: string;\r\n shoppingTool?: string;\r\n hideChangeDealer?: boolean;\r\n pageLoadConfig?: IPageLoadData;\r\n confirmationPageLoadConfig?: IPageLoadData;\r\n setFormData?: (formData: IFormData) => void;\r\n setFormStatus?: (formStatus: FormStatusOptions) => void;\r\n}\r\n\r\nexport interface IRequestAQuoteModalProps {\r\n closeFunction: () => void;\r\n isOpen: boolean;\r\n configuration?: IRAQConfiguration;\r\n raqTitle?: string;\r\n raqDescription?: string;\r\n source?: string;\r\n hideChangeDealer?: boolean;\r\n pageLoadConfig?: IPageLoadData;\r\n confirmationPageLoadConfig?: IPageLoadData;\r\n zipcodeTest?: string; //Use for testing\r\n setFormData?: (formData: IFormData) => void;\r\n}\r\n\r\nexport function RequestAQuoteModal({\r\n closeFunction,\r\n isOpen,\r\n configuration,\r\n raqTitle,\r\n raqDescription,\r\n source,\r\n hideChangeDealer,\r\n pageLoadConfig,\r\n confirmationPageLoadConfig,\r\n zipcodeTest,\r\n setFormData,\r\n}: IRequestAQuoteModalProps): JSX.Element {\r\n const viewHeightValue = use100vh();\r\n const viewHeightStyle = viewHeightValue\r\n ? `${viewHeightValue / 16}rem`\r\n : '100%';\r\n const classes = useStyles({ viewHeight: viewHeightStyle });\r\n const requestAQuoteModalTitle = 'request a quote';\r\n const modalId = 'raq-modal';\r\n const zipcode = useSelector(selectZipcode);\r\n\r\n const dispatch = useDispatch();\r\n const { currentValue, configStatus } = useSelector(getCurrentConfig);\r\n const isSavedConfigModalOpen = !!currentValue && configStatus === undefined;\r\n const isConfigFromSaved =\r\n !!currentValue &&\r\n configStatus &&\r\n configuration?.variant !== VehicleSelectorType.bap &&\r\n configuration?.variant !== VehicleSelectorType.inventory;\r\n const raqEndpoint = `/platform/api/v1/request-a-quote`;\r\n let raqEndpointParams = '';\r\n if (isConfigFromSaved) {\r\n raqEndpointParams = generateParameters({\r\n modelId: currentValue?.modelId,\r\n exteriorColorCode: currentValue?.exterior,\r\n interiorColorCode: currentValue?.interior,\r\n fullTaxonomy: 'true',\r\n zipCode: zipcode,\r\n });\r\n } else if (configuration && configuration.modelId) {\r\n const { modelId, exteriorColor, interiorColor } =\r\n configuration as IRAQConfigurationBAP;\r\n const { dealerId } = configuration as IRAQConfigurationInventory;\r\n raqEndpointParams = generateParameters({\r\n modelId,\r\n fullTaxonomy: 'true',\r\n exteriorColorCode: exteriorColor?.internalCode,\r\n interiorColorCode: interiorColor?.internalCode,\r\n dealerId,\r\n zipCode: zipcode,\r\n });\r\n }\r\n\r\n const { status, data } = useLoadRAQData(`${raqEndpoint}${raqEndpointParams}`);\r\n\r\n const { pageContent, vehicleData } = data || {};\r\n const { modals } = pageContent || {};\r\n const { raqModalSavedConfig } = modals || {};\r\n const savedConfigContent = raqModalSavedConfig as ISavedConfigModalContent;\r\n\r\n const finalConfiguration =\r\n isConfigFromSaved && vehicleData\r\n ? {\r\n modelId: vehicleData.modelId.toUpperCase(),\r\n modelSeries: vehicleData.modelSeries.toUpperCase(),\r\n modelYear: vehicleData.modelYear.toString(),\r\n exteriorColor: vehicleData.exteriorColor,\r\n interiorColor: vehicleData.interiorColor,\r\n accessories: currentValue?.accessories,\r\n powertrain: vehicleData.engine,\r\n drivetrain: vehicleData.drivetrain,\r\n package: '',\r\n msrp: currentValue?.totalPrice,\r\n variant: VehicleSelectorType.savedConfig,\r\n vinNumber: configuration?.vinNumber,\r\n }\r\n : configuration;\r\n\r\n const handleSavedConfigContinue = () => {\r\n dispatch(setConfigStatus(true));\r\n };\r\n\r\n const handleSavedConfigCancel = () => {\r\n dispatch(setConfigStatus(false));\r\n };\r\n\r\n useEffect(() => {\r\n if (pageLoadConfig) {\r\n pageLoad(pageLoadConfig);\r\n }\r\n !zipcode && displayZipgate(true);\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, []);\r\n useEffect(() => {\r\n const { modelSeries, modelYear } = configuration || {};\r\n if (modelSeries && modelYear) {\r\n const key = `${modelSeries.toLowerCase()}-${modelYear}`;\r\n dispatch(setCurrentConfig(key));\r\n\r\n if (source === 'payest') {\r\n handleSavedConfigCancel();\r\n }\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, []);\r\n\r\n const requestAQuoteLoader = () => {\r\n switch (status) {\r\n case 'error':\r\n return {status};\r\n case 'success':\r\n return (\r\n <>\r\n \r\n \r\n \r\n );\r\n default:\r\n return (\r\n \r\n );\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n {(zipcodeTest !== undefined || zipcode) && (\r\n \r\n {requestAQuoteLoader()}\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { theme } from 'theme/App.theme';\r\nimport makeStyles from '@mui/styles/makeStyles';\r\nimport { appPalette } from 'theme/App.palette';\r\n\r\nconst { white } = appPalette.colors;\r\nexport const useStyles = makeStyles({\r\n paper: {\r\n position: 'relative',\r\n backgroundColor: white,\r\n width: 'auto',\r\n height: 'auto',\r\n border: '0',\r\n top: '50%',\r\n left: '0%',\r\n transform: `translate(0%, -50%)`,\r\n outline: 'none',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n minHeight: '12.75rem',\r\n width: '36.625rem',\r\n height: 'auto',\r\n backgroundColor: white,\r\n border: '0',\r\n top: '50%',\r\n left: '50%',\r\n transform: `translate(-50%, -50%)`,\r\n },\r\n },\r\n content: {\r\n padding: '2.625rem 2rem 2.5rem',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n textAlign: 'center',\r\n },\r\n content_title: {\r\n marginBottom: '1.875rem',\r\n },\r\n content_desc: {\r\n marginBottom: '1.25rem',\r\n },\r\n content_img_container: {\r\n width: '100%',\r\n maxWidth: '24.25rem',\r\n aspectRatio: '18/9',\r\n },\r\n content_img: {\r\n top: '0',\r\n left: '50%',\r\n transform: 'translateX(-50%)',\r\n },\r\n content_caption: {\r\n marginBottom: '2.5rem',\r\n },\r\n content_actions: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n justifyContent: 'center',\r\n [theme.breakpoints.up('viewportMobileMid')]: {\r\n flexDirection: 'row',\r\n },\r\n },\r\n content_cta: {\r\n padding: '0.8125rem 1.25rem',\r\n width: '14.5625rem',\r\n marginBottom: '0.4375rem',\r\n\r\n [theme.breakpoints.up('viewportMobileMid')]: {\r\n marginRight: '1.75rem',\r\n marginBottom: 0,\r\n },\r\n '&:last-child': {\r\n marginRight: 0,\r\n },\r\n },\r\n});\r\n","import React, { useCallback, useEffect, useMemo } from 'react';\r\nimport ModalContainer from 'components/Modal/ModalContainer/ModalContainer';\r\nimport { Picture } from 'components/Global/Picture/Picture';\r\nimport TextRender from 'components/Global/TextRender/TextRender';\r\nimport { ISavedConfigModalContent } from 'interfaces/modal';\r\nimport { useStyles } from './SavedConfigModal.styles';\r\nimport { Image } from 'interfaces/image';\r\nimport {\r\n LinkButton,\r\n LinkButtonType,\r\n} from 'components/Global/LinkButton/LinkButton';\r\nimport { pageLoad, trackEvent } from 'helpers/Analytics';\r\nimport { useSelector } from 'react-redux';\r\nimport { getPageLoadSavedConfig } from 'redux/slices/savedConfigSlice';\r\nimport { cleanHTMLFromString } from 'helpers/FormatText';\r\nimport { IPageLoadData } from 'interfaces/analytics';\r\n\r\nexport interface ISavedConfigModal {\r\n referrerPage: string;\r\n cancelFunction: () => void;\r\n continueFunction: () => void;\r\n data?: ISavedConfigModalContent;\r\n isOpen: boolean;\r\n closePageLoadTracking?: IPageLoadData;\r\n}\r\n\r\nconst SavedConfigModal = ({\r\n referrerPage,\r\n cancelFunction,\r\n continueFunction,\r\n data,\r\n isOpen,\r\n closePageLoadTracking,\r\n}: ISavedConfigModal): JSX.Element => {\r\n const classes = useStyles();\r\n const pageLoadObj = useSelector(getPageLoadSavedConfig);\r\n const { title, content, yesButton, noButton } = data || {};\r\n const {\r\n modelId,\r\n modelSeries,\r\n modelTrim,\r\n modelYear,\r\n accessories,\r\n buildAndPrice,\r\n } = pageLoadObj;\r\n const { exteriorColor } = buildAndPrice;\r\n\r\n const imagePath = `/platform/api/v4/images/Exterior/03?config=M:${modelId}$EC:${exteriorColor}$IC:INT$BI:false$O:${accessories.join(\r\n ','\r\n )}:$PL:allangles&width=512&filetype=png&background=transparent&modelSeries=${modelSeries}&modelYear=${modelYear}`;\r\n const carPicture: Image = {\r\n alternativeText: 'Your saved car',\r\n sources: {\r\n small: imagePath,\r\n },\r\n };\r\n\r\n const getModelSeriesPreposition = (model: string) => {\r\n const isVowel = /[aeiou]/i.test(model.toLowerCase()[0]);\r\n return isVowel ? `an ${model}` : `a ${model}`;\r\n };\r\n\r\n const clickTrackingObject = useMemo(() => {\r\n return {\r\n modelSeries: modelSeries || '',\r\n modelYear: modelYear || '',\r\n label: '',\r\n category: {\r\n includePage: true,\r\n text: 'saved build selection',\r\n },\r\n };\r\n }, [modelSeries, modelYear]);\r\n\r\n const replaceTokens = useCallback(\r\n (text: string, withPrep: boolean) => {\r\n return text\r\n .replace('[modelId]', modelId)\r\n .replace(\r\n '[modelSeries]',\r\n withPrep ? getModelSeriesPreposition(modelSeries) : modelSeries\r\n )\r\n .replace('[modelYear]', modelYear)\r\n .replace('[exteriorCode]', exteriorColor)\r\n .replace('[package]', modelTrim);\r\n },\r\n [modelId, modelSeries, modelYear, exteriorColor, modelTrim]\r\n );\r\n\r\n const parsedTitle = title ? replaceTokens(title, false) : '';\r\n const parsedContent = content ? replaceTokens(content, true) : '';\r\n\r\n const handleCloseModal = () => {\r\n trackEvent({\r\n ...clickTrackingObject,\r\n label: 'close',\r\n type: 'cta',\r\n });\r\n cancelFunction();\r\n };\r\n\r\n useEffect(() => {\r\n const isTriggeredPageLoad =\r\n window.Acr?.dataLayer?.Page?.page_name?.includes(\r\n 'shopping tool consistency modal'\r\n );\r\n if (isOpen) {\r\n pageLoad({\r\n ...pageLoadObj,\r\n subSection: referrerPage,\r\n modelTrim: cleanHTMLFromString(modelTrim),\r\n pageName: `${referrerPage}:shopping tool consistency modal`,\r\n });\r\n } else if (isTriggeredPageLoad && closePageLoadTracking) {\r\n pageLoad(closePageLoadTracking);\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [isOpen]);\r\n\r\n return (\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n );\r\n};\r\n\r\nexport default SavedConfigModal;\r\n","import makeStyles from '@mui/styles/makeStyles';\r\nimport { appPalette } from 'theme/App.palette';\r\n\r\nconst colors = appPalette.colors;\r\n\r\nexport const useStyles = makeStyles({\r\n root: {\r\n padding: '0.9375rem',\r\n },\r\n title: {\r\n margin: '0.625rem 0',\r\n textAlign: 'center',\r\n width: '100%',\r\n textTransform: 'none',\r\n },\r\n description: {\r\n color: colors.light_grey_6,\r\n textAlign: 'center',\r\n width: '100%',\r\n },\r\n ctaContainer: {\r\n display: 'flex',\r\n flexFlow: 'row wrap',\r\n justifyContent: 'center',\r\n marginTop: '3.125rem',\r\n '& a': {\r\n borderBottom: `0.0625rem solid ${colors.light_grey_2}`,\r\n margin: '1.25rem',\r\n },\r\n width: '100%',\r\n },\r\n});\r\n","import React, { useEffect } from 'react';\r\nimport { useStyles } from './Confirmation.styles';\r\nimport TextRender from 'components/Global/TextRender/TextRender';\r\nimport { pageLoad } from 'helpers/Analytics';\r\nimport { IPageLoadData } from 'interfaces/analytics';\r\nimport { ICta } from 'interfaces/cta';\r\n\r\nexport interface IConfirmation {\r\n title: string;\r\n description: string;\r\n confirmationPageLoadConfig?: IPageLoadData;\r\n ctas?: {\r\n [key: string]: ICta;\r\n };\r\n}\r\n\r\nexport function Confirmation({\r\n title,\r\n description,\r\n ctas,\r\n confirmationPageLoadConfig,\r\n}: IConfirmation): JSX.Element {\r\n const classes = useStyles();\r\n useEffect(() => {\r\n if (confirmationPageLoadConfig) {\r\n pageLoad(confirmationPageLoadConfig);\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, []);\r\n\r\n return (\r\n
\r\n

\r\n {title}\r\n

\r\n\r\n \r\n\r\n {ctas && (\r\n
\r\n {Object.keys(ctas).map((key) => {\r\n return (\r\n \r\n {ctas[key].label}\r\n \r\n );\r\n })}\r\n
\r\n )}\r\n
\r\n );\r\n}\r\n","import { theme } from 'theme/App.theme';\r\nimport makeStyles from '@mui/styles/makeStyles';\r\nimport { appPalette } from 'theme/App.palette';\r\n\r\nconst colors = appPalette.colors;\r\n\r\nexport const useStyles = makeStyles({\r\n form_container: {\r\n width: '100%',\r\n marginTop: '1.25rem',\r\n '& .chkbox-field': {\r\n marginBottom: '2rem',\r\n '&:last-of-type': {\r\n marginBottom: '3.25rem',\r\n },\r\n },\r\n },\r\n submit_button: {\r\n width: '100%',\r\n height: '3.25rem',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n width: '12.5rem',\r\n },\r\n },\r\n input_group_container: {\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n '& > div:first-child': {\r\n paddingRight: '0.75rem',\r\n '& p': {\r\n marginRight: '0.75rem',\r\n },\r\n },\r\n '& > div:last-child': {\r\n paddingLeft: '0.75rem',\r\n },\r\n },\r\n },\r\n input_container: {\r\n marginBottom: '2rem',\r\n },\r\n input: {\r\n width: '100%',\r\n height: '3.125rem',\r\n backgroundColor: colors.off_white,\r\n border: 'solid 0.0625rem',\r\n borderColor: colors.mid_grey_2,\r\n padding: '0.875rem 1.125rem',\r\n },\r\n spinner: {\r\n background: 'transparent',\r\n position: 'relative',\r\n display: 'inline-block',\r\n zIndex: 2,\r\n height: '2.25rem',\r\n width: '2.25rem',\r\n '&:before': {\r\n animation: '$slide-spin .75s linear infinite',\r\n borderRadius: '50%',\r\n borderRight: '0.125rem solid transparent',\r\n borderTop: `0.125rem solid ${colors.white}`,\r\n content: \"''\",\r\n height: '1.5625rem',\r\n width: '1.5625rem',\r\n position: 'absolute',\r\n boxSizing: 'border-box',\r\n left: '0.375rem',\r\n top: '0.3125rem',\r\n },\r\n },\r\n '@keyframes slide-spin': {\r\n to: {\r\n transform: 'rotate(360deg)',\r\n },\r\n },\r\n});\r\n","import makeStyles from '@mui/styles/makeStyles';\r\nimport { appPalette } from 'theme/App.palette';\r\n\r\nconst colors = appPalette.colors;\r\n\r\nexport const useStyles = makeStyles({\r\n container: {\r\n position: 'relative',\r\n width: '100%',\r\n '& .acr-paragraph-9': {\r\n margin: 0,\r\n },\r\n '& .acr-paragraph-8': {\r\n lineHeight: '1.25rem',\r\n },\r\n },\r\n required_tag: {\r\n color: colors.acura_red,\r\n },\r\n error_text: {\r\n color: colors.acura_red,\r\n position: 'absolute',\r\n width: '100%',\r\n marginTop: '0.3125rem',\r\n },\r\n input: {\r\n boxSizing: 'border-box',\r\n position: 'relative',\r\n width: '100%',\r\n height: '3.125rem',\r\n backgroundColor: colors.off_white,\r\n border: 'solid 0.0625rem',\r\n borderColor: colors.mid_grey_2,\r\n padding: '0.875rem 1.125rem',\r\n zIndex: 1,\r\n fontSize: 'initial',\r\n '&:focus': {\r\n outline: `0.125rem solid ${colors.dark_grey_1}`,\r\n outlineOffset: '-0.0625rem',\r\n },\r\n },\r\n});\r\n","import TextRender from 'components/Global/TextRender/TextRender';\r\nimport { IPatternError } from 'interfaces/requestAQuote';\r\nimport React, { ChangeEvent } from 'react';\r\nimport { useFormContext } from 'react-hook-form';\r\nimport { useStyles } from './TextField.styles';\r\n\r\nexport interface ITextFieldProps {\r\n label: string;\r\n name: string;\r\n dataAutomation?: string;\r\n isRequired?: string;\r\n pattern?: IPatternError | null;\r\n error?: string;\r\n maxLength?: number;\r\n defaultValue?: string;\r\n type?: string;\r\n onChange?: (e: ChangeEvent) => void;\r\n}\r\n\r\nexport function TextField({\r\n label,\r\n name,\r\n dataAutomation,\r\n isRequired,\r\n pattern,\r\n error,\r\n maxLength,\r\n defaultValue,\r\n type,\r\n onChange,\r\n}: ITextFieldProps): JSX.Element {\r\n const classes = useStyles();\r\n const methods = useFormContext();\r\n const { register } = methods ? methods : { register: undefined };\r\n const zipcodeRegex = /^\\d{5}$/;\r\n const newPattern =\r\n pattern?.value && pattern.value === '[zipcode]'\r\n ? zipcodeRegex\r\n : pattern?.value;\r\n\r\n return (\r\n
\r\n \r\n {register ? (\r\n \r\n ) : (\r\n \r\n )}\r\n\r\n {error && (\r\n

\r\n \r\n

\r\n )}\r\n
\r\n );\r\n}\r\n","import makeStyles from '@mui/styles/makeStyles';\r\nimport React from 'react';\r\nimport { renderToStaticMarkup } from 'react-dom/server';\r\nimport { appPalette } from 'theme/App.palette';\r\n\r\nconst colors = appPalette.colors;\r\nconst svgString = encodeURIComponent(\r\n renderToStaticMarkup(\r\n \r\n \r\n \r\n )\r\n);\r\n\r\nexport const useStyles = makeStyles({\r\n checkbox_container: {\r\n width: '100%',\r\n minHeight: '1.75rem',\r\n height: 'auto',\r\n position: 'relative',\r\n display: 'flex',\r\n '& .acr-paragraph-8': {\r\n '& a': {\r\n borderBottom: '0.0625rem solid #cdcdcd',\r\n padding: '0.125rem',\r\n '&:hover': {\r\n color: 'inherit',\r\n },\r\n '&:focus': {\r\n color: 'inherit',\r\n border: 0,\r\n boxShadow: 'inset 0 0 0 0.125rem #1e2123',\r\n outline: 0,\r\n },\r\n transition: '.2s',\r\n },\r\n },\r\n '& input[type=\"checkbox\"]': {\r\n display: 'block',\r\n margin: '0 1.0625rem 0 0 !important',\r\n '&:focus': {\r\n outline: `0.125rem solid ${colors.dark_grey_1}`,\r\n outlineOffset: '-0.0625rem',\r\n },\r\n },\r\n },\r\n checkbox: {\r\n boxSizing: 'border-box',\r\n position: 'relative',\r\n minWidth: '1.75rem',\r\n height: '1.75rem',\r\n appearance: 'initial',\r\n WebkitAppearance: 'initial',\r\n border: '0.0625rem solid',\r\n borderColor: colors.mid_grey_2,\r\n backgroundColor: colors.off_white,\r\n width: 'auto',\r\n '&:checked::after': {\r\n content: \"''\",\r\n backgroundImage: `url(\"data:image/svg+xml,${svgString}\")`,\r\n height: '1.25rem',\r\n left: '0.25rem',\r\n position: 'absolute',\r\n top: '0.25rem',\r\n width: '1.25rem',\r\n },\r\n '&:hover': {\r\n cursor: 'pointer',\r\n },\r\n },\r\n error_text: {\r\n color: colors.acura_red,\r\n position: 'absolute',\r\n width: '100%',\r\n left: '2.8125rem',\r\n bottom: '-1.5625rem',\r\n },\r\n});\r\n","import TextRender from 'components/Global/TextRender/TextRender';\r\nimport React, { ChangeEvent } from 'react';\r\nimport { useFormContext } from 'react-hook-form';\r\nimport { useStyles } from './CheckboxField.styles';\r\n\r\ninterface Props {\r\n infoText: string;\r\n name: string;\r\n isRequired?: string;\r\n error?: string;\r\n dataAutomation?: string;\r\n\r\n onChange?: (e: ChangeEvent) => void;\r\n}\r\n\r\nexport function CheckboxField(props: Props): JSX.Element {\r\n const classes = useStyles();\r\n const methods = useFormContext();\r\n const { register } = methods ? methods : { register: undefined };\r\n\r\n return (\r\n \r\n {register ? (\r\n \r\n ) : (\r\n \r\n )}\r\n

\r\n \r\n

\r\n {props.error && (\r\n

\r\n \r\n

\r\n )}\r\n \r\n );\r\n}\r\n","import { useEffect, useRef } from \"react\";\r\n\r\n/**\r\n * @description: This custom hook receives a function as a parameter and runs it when the user leaves the page\r\n *\r\n * @param _function: Function\r\n */\r\nexport const useBeforeLeave = (_function: any) => {\r\n const callbackRef = useRef(_function);\r\n \r\n useEffect(() => {\r\n const onUnload = callbackRef.current;\r\n window.addEventListener('beforeunload', onUnload);\r\n return () => {\r\n window.removeEventListener('beforeunload', onUnload);\r\n };\r\n }, [callbackRef]);\r\n };","import React, { ChangeEvent, useState } from 'react';\r\nimport { useStyles } from './InformationForm.styles';\r\nimport { Grid } from '@mui/material';\r\nimport { TextField } from '../../Global/TextField/TextField';\r\nimport {\r\n FieldValues,\r\n FormProvider,\r\n SubmitHandler,\r\n useForm,\r\n} from 'react-hook-form';\r\nimport {\r\n LinkButton,\r\n LinkButtonType,\r\n} from 'components/Global/LinkButton/LinkButton';\r\nimport { CheckboxField } from '../../Global/CheckboxField/CheckboxField';\r\nimport TextRender from 'components/Global/TextRender/TextRender';\r\nimport { IFormData, IInformationForm } from 'interfaces/requestAQuote';\r\nimport { trackEvent } from 'helpers/Analytics';\r\nimport { useSelector } from 'react-redux';\r\nimport { getRAQData } from 'redux/slices/vehicleSlice';\r\nimport { useBeforeLeave } from 'hooks/useBeforeLeave';\r\nimport { selectZipcode } from 'redux/slices/zipcodeSlice';\r\nimport { getADXData } from 'redux/slices/adxSlice';\r\n\r\ninterface Props {\r\n stepData: IInformationForm;\r\n onSubmit?: Function;\r\n isLoading: boolean;\r\n isAdxEnhanced: boolean;\r\n}\r\n\r\ninterface IErrors {\r\n 'first-name'?: IErrorField;\r\n 'last-name'?: IErrorField;\r\n email?: IErrorField;\r\n 'raq-zipcode'?: IErrorField;\r\n terms?: IErrorField;\r\n}\r\n\r\ninterface IErrorField {\r\n type: string;\r\n message: string;\r\n ref: HTMLInputElement;\r\n}\r\nexport function InformationForm({\r\n stepData,\r\n isLoading,\r\n onSubmit,\r\n isAdxEnhanced,\r\n}: Props): JSX.Element {\r\n const classes = useStyles();\r\n const [shownErrors, setShownErrors] = useState();\r\n const raqVehicleData = useSelector(getRAQData);\r\n const adxVehicleData = useSelector(getADXData);\r\n const methods = useForm();\r\n const { handleSubmit, setValue } = methods;\r\n const zipcode = useSelector(selectZipcode);\r\n\r\n const onUserLeave = () => {\r\n trackEvent({\r\n label: `form:raq abandon`,\r\n category: {\r\n includePageName: true,\r\n text: 'request a quote form',\r\n },\r\n type: 'cta',\r\n modelSeries: isAdxEnhanced\r\n ? adxVehicleData.vehicleModelSeries\r\n : raqVehicleData.modelSeries || 'no model',\r\n modelYear: isAdxEnhanced\r\n ? adxVehicleData.modelYear\r\n : raqVehicleData.modelYear || 'no model',\r\n modelId: isAdxEnhanced\r\n ? adxVehicleData.modelId\r\n : raqVehicleData.modelId || 'no model',\r\n });\r\n };\r\n useBeforeLeave(onUserLeave);\r\n\r\n const handleInputChange = (e: ChangeEvent) => {\r\n const { name, value } = e.target;\r\n e.target.type === 'checkbox'\r\n ? setValue(name, e.target.checked)\r\n : setValue(name, value);\r\n };\r\n const onSubmitForm: SubmitHandler = (data) => {\r\n setShownErrors({});\r\n if (!isLoading) {\r\n trackEvent({\r\n label: `form:raq submit`,\r\n category: {\r\n includePageName: true,\r\n text: 'request a quote form',\r\n },\r\n type: 'cta',\r\n modelSeries: isAdxEnhanced\r\n ? adxVehicleData.vehicleModelSeries\r\n : raqVehicleData.modelSeries || 'no model',\r\n modelYear: isAdxEnhanced\r\n ? adxVehicleData.modelYear\r\n : raqVehicleData.modelYear || 'no model',\r\n modelId: isAdxEnhanced\r\n ? adxVehicleData.modelId\r\n : raqVehicleData.modelId || 'no model',\r\n });\r\n onSubmit && onSubmit(data as IFormData);\r\n }\r\n };\r\n\r\n const onError = (errors: IErrors) => {\r\n setShownErrors({ ...errors });\r\n const trackedErrors = ['zipcode', 'email', 'phone'];\r\n Object.keys(errors).forEach((errorField: string) => {\r\n if (trackedErrors.includes(errorField)) {\r\n trackEvent({\r\n label: `form:raq submit invalid ${errorField}`,\r\n category: {\r\n includePageName: true,\r\n text: 'request a quote form',\r\n },\r\n type: 'cta',\r\n modelSeries: isAdxEnhanced\r\n ? adxVehicleData.vehicleModelSeries\r\n : raqVehicleData.modelSeries || 'no model',\r\n modelYear: isAdxEnhanced\r\n ? adxVehicleData.modelYear\r\n : raqVehicleData.modelYear || 'no model',\r\n modelId: isAdxEnhanced\r\n ? adxVehicleData.modelId\r\n : raqVehicleData.modelId || 'no model',\r\n });\r\n }\r\n });\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 0 ? zipcode : undefined}\r\n dataAutomation={stepData['raq-zipcode']?.label}\r\n type=\"number\"\r\n onChange={handleInputChange}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {isLoading ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n}\r\n","import { theme } from 'theme/App.theme';\r\nimport makeStyles from '@mui/styles/makeStyles';\r\nimport { appPalette } from 'theme/App.palette';\r\n\r\nconst colors = appPalette.colors;\r\n\r\nexport const useStyles = makeStyles({\r\n title: {\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n marginTop: '1.25rem',\r\n },\r\n },\r\n tab_vehicle_year: {\r\n '&:last-child': {\r\n '&>.divider': {\r\n '&:before': {\r\n backgroundColor: colors.black,\r\n content: \"''\",\r\n display: 'inline-block',\r\n height: '0.875rem',\r\n marginLeft: '0.75rem',\r\n position: 'relative',\r\n width: '0.0625rem',\r\n top: '0.125rem',\r\n },\r\n },\r\n },\r\n },\r\n select_vehicle_year: {\r\n lineHeight: '1.25rem',\r\n letterSpacing: 'normal',\r\n padding: '0',\r\n justifyContent: 'flex-start',\r\n margin: '0.3125rem 0 0.3125rem 0.75rem',\r\n textTransform: 'none',\r\n color: colors.acura_red,\r\n cursor: 'pointer',\r\n '&:hover': {\r\n background: 'transparent',\r\n },\r\n },\r\n vehicle_year_tab: {\r\n color: colors.acura_red,\r\n '&.selected': {\r\n color: colors.black,\r\n cursor: 'default',\r\n },\r\n },\r\n button_container: {\r\n margin: '0.3125rem 0',\r\n marginBottom: '1.25rem',\r\n '&.disabled': {\r\n opacity: '.5',\r\n },\r\n },\r\n form_control: {\r\n position: 'relative',\r\n minWidth: 120,\r\n marginBottom: '1.875rem !important',\r\n width: '100%',\r\n maxWidth: '22.5rem',\r\n backgroundColor: 'white',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n maxWidth: '18.75rem',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n maxWidth: '21.25rem',\r\n },\r\n '&.disabled': {\r\n opacity: '.5',\r\n },\r\n },\r\n supply_message: {\r\n maxWidth: '22.5rem',\r\n marginTop: '0.625rem',\r\n marginBottom: '1.0625rem',\r\n color: colors.mid_grey,\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n maxWidth: '18.75rem',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n maxWidth: '21.25rem',\r\n },\r\n },\r\n vehicle_card_container: {\r\n marginTop: '1.25rem',\r\n marginBottom: '3.875rem',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n marginTop: '0',\r\n },\r\n },\r\n error_tag: {\r\n color: colors.acura_red,\r\n marginLeft: '1.25rem',\r\n marginTop: '0.3125rem',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n marginTop: '0.625rem',\r\n },\r\n },\r\n});\r\n","import makeStyles from '@mui/styles/makeStyles';\r\nimport { appPalette } from 'theme/App.palette';\r\nimport { theme } from 'theme/App.theme';\r\n\r\nconst colors = appPalette.colors;\r\nfunction focusableStyles(offset: number) {\r\n return {\r\n outline: `0.125rem solid`,\r\n outlineOffset: `.${offset}rem`,\r\n };\r\n}\r\n\r\nexport const useBasicCardStyles = makeStyles({\r\n root: {\r\n border: `0.0625rem solid ${colors.light_grey_2}`,\r\n position: 'relative',\r\n },\r\n imgContainer: {\r\n display: 'flex',\r\n height: '0',\r\n paddingTop: '43.32%',\r\n position: 'relative',\r\n },\r\n img: {\r\n position: 'absolute',\r\n top: '0',\r\n height: '100%',\r\n width: 'auto',\r\n '&.default-img': {\r\n opacity: '.5',\r\n },\r\n },\r\n text: {\r\n height: '3.625rem',\r\n margin: '1.125rem 0.9375rem 0',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n height: '3.75rem',\r\n },\r\n },\r\n cardSkeleton: {\r\n '&.MuiSkeleton-root': {\r\n width: '100%',\r\n height: '9rem',\r\n [theme.breakpoints.up('viewportMobileMid')]: {\r\n height: '10.3125rem',\r\n },\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n height: '9.5rem',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n height: '12.875rem',\r\n },\r\n [theme.breakpoints.up('viewportXLarge')]: {\r\n height: '16.5rem',\r\n },\r\n },\r\n },\r\n basicCardWithCaptionSkeleton: {\r\n '&.MuiSkeleton-root': {\r\n width: '100%',\r\n height: '12.0625rem',\r\n [theme.breakpoints.up('viewportMobileMid')]: {\r\n height: '13.9375rem',\r\n },\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n height: '12.6875rem',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n height: '17.3125rem',\r\n },\r\n [theme.breakpoints.up('viewportXLarge')]: {\r\n height: '21.4375rem',\r\n },\r\n },\r\n },\r\n\r\n spinner_container: {\r\n backgroundColor: '#fff',\r\n width: '100%',\r\n height: '100%',\r\n position: 'absolute',\r\n top: 0,\r\n zIndex: 2,\r\n opacity: 1,\r\n transition: 'opacity 0.5s ease',\r\n },\r\n\r\n spinner: {\r\n left: '50%',\r\n position: 'absolute',\r\n top: '50%',\r\n width: '4.375rem',\r\n height: '4.375rem',\r\n transform: 'translate(-50%, -50%)',\r\n '&:before': {\r\n animation: '$slide-spin .75s linear infinite',\r\n borderRadius: '50%',\r\n borderRight: '0.125rem solid transparent',\r\n borderTop: `0.125rem solid ${colors.acura_red}`,\r\n content: \"''\",\r\n height: '4.375rem',\r\n width: '4.375rem',\r\n position: 'absolute',\r\n boxSizing: 'border-box',\r\n },\r\n },\r\n modal_name: {\r\n paddingLeft: '0.3125rem',\r\n },\r\n '@keyframes slide-spin': {\r\n to: {\r\n transform: 'rotate(360deg)',\r\n },\r\n },\r\n});\r\n\r\nexport const useComplexCardStyles = makeStyles({\r\n root: {\r\n maxWidth: '28.4375rem',\r\n boxShadow: `0 0.125rem 0.5rem ${colors.light_grey_1}`,\r\n },\r\n cardInfoContainer: {\r\n padding: '0.8125rem 1.25rem',\r\n },\r\n captionContainer: {\r\n padding: '1.25rem',\r\n paddingBottom: '2.5rem',\r\n flexDirection: 'column',\r\n '& span': {\r\n margin: '0 auto',\r\n paddingBottom: '0.3125rem',\r\n },\r\n },\r\n swiper_img: {\r\n width: '100%',\r\n },\r\n msrp: {\r\n textAlign: 'right',\r\n },\r\n swiper_navigation_button: {\r\n zIndex: 2,\r\n height: '1.3125rem !important',\r\n width: '0.625rem !important',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n height: '2.15625rem !important',\r\n width: '1.025rem !important',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n height: '2.625rem !important',\r\n width: '1.25rem !important',\r\n },\r\n '&::after': {\r\n content: 'none !important',\r\n },\r\n '&::before': {\r\n content: '\"\"',\r\n height: '3.75rem',\r\n position: 'absolute',\r\n top: '50%',\r\n transform: 'translateY(-50%)',\r\n width: '5rem',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n height: '3.125rem',\r\n width: '4.375rem',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n height: '6.25rem',\r\n width: '7.5rem',\r\n },\r\n },\r\n '& svg': {\r\n height: '100%',\r\n width: '100%',\r\n },\r\n '&:hover': {\r\n '& ~ .shadow': {\r\n opacity: 0.4,\r\n },\r\n },\r\n '&:focus': {\r\n 'body:not(.acr-focus-disabled) &': {\r\n ...focusableStyles(2),\r\n outlineColor: colors.black,\r\n },\r\n },\r\n },\r\n swiper_navigation_full_toggle: {\r\n visibility: 'hidden',\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n visibility: 'visible',\r\n },\r\n },\r\n swiper_navigation_button_prev: {\r\n left: '0.375rem !important',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n left: '0.63125rem !important',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n left: '1rem !important',\r\n },\r\n },\r\n swiper_navigation_button_next: {\r\n right: '0.375rem !important',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n right: '0.63125rem !important',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n right: '1rem !important',\r\n },\r\n },\r\n swiper_controls: {\r\n alignItems: 'center',\r\n backgroundColor: 'transparent',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n padding: '0.625rem ',\r\n position: 'relative',\r\n textAlign: 'center',\r\n width: '100%',\r\n zIndex: 1,\r\n },\r\n swiperContainer: {\r\n minHeight: '12.125rem',\r\n [theme.breakpoints.up('viewportMobileMid')]: {\r\n minHeight: '17.1875rem',\r\n },\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n minHeight: '14.875rem',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n minHeight: '17rem',\r\n },\r\n [theme.breakpoints.up('viewportXLarge')]: {\r\n minHeight: '17.1875rem',\r\n },\r\n },\r\n swiper: {\r\n '& .swiper-pagination': {\r\n display: 'inline-flex !important',\r\n minHeight: '1.25rem',\r\n bottom: '1.25rem !important',\r\n position: 'relative',\r\n '& .swiper-pagination-bullet': {\r\n background: colors.light_grey_1,\r\n height: '0.25rem',\r\n width: '0.25rem',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n height: '0.4375rem',\r\n width: '0.4375rem',\r\n },\r\n borderRadius: '50%',\r\n margin: 'auto 8px',\r\n verticalAlign: 'middle',\r\n '&.active': {\r\n background: colors.black,\r\n height: '0.375rem',\r\n width: '0.375rem',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n height: '0.6875rem',\r\n width: '0.6875rem',\r\n },\r\n },\r\n '&:focus': {\r\n 'body:not(.acr-focus-disabled) &': {\r\n ...focusableStyles(2),\r\n outlineColor: colors.black,\r\n },\r\n },\r\n },\r\n },\r\n },\r\n colorsContainer: {\r\n borderTop: `1px solid ${colors.light_grey_3}`,\r\n borderBottom: `1px solid ${colors.light_grey_3}`,\r\n padding: '0.625rem 0',\r\n },\r\n modelContainer: {\r\n padding: ' 0.3125rem 0',\r\n },\r\n colorImg: {\r\n borderRadius: '50%',\r\n height: '1.875rem',\r\n width: '1.875rem',\r\n },\r\n colorText: {\r\n padding: '0 0.625rem',\r\n },\r\n colorItem: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n },\r\n bullets: {\r\n padding: '1.25rem 0',\r\n },\r\n bullet: {\r\n display: 'block',\r\n '&:before': {\r\n backgroundColor: colors.light_grey_6,\r\n borderRadius: '50%',\r\n content: \"''\",\r\n display: 'inline-block',\r\n height: '0.375rem',\r\n marginRight: '0.3125rem',\r\n verticalAlign: 'middle',\r\n width: '0.375rem',\r\n },\r\n },\r\n cardSkeleton: {\r\n '&.MuiSkeleton-root': {\r\n width: '100%',\r\n maxWidth: '28.4375rem',\r\n height: '12.125rem',\r\n [theme.breakpoints.up('viewportMobileMid')]: {\r\n height: '17.1875rem',\r\n },\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n height: '14.875rem',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n height: '17rem',\r\n },\r\n [theme.breakpoints.up('viewportXLarge')]: {\r\n height: '17.1875rem',\r\n },\r\n },\r\n },\r\n});\r\n","import { Grid } from '@mui/material';\r\nimport TextRender from 'components/Global/TextRender/TextRender';\r\nimport { ICardInformationBasic } from 'interfaces/requestAQuote';\r\nimport React from 'react';\r\nimport { useBasicCardStyles } from '../VehicleCard.style';\r\n\r\nexport interface IVehicleCardBasic {\r\n cardInfo: ICardInformationBasic;\r\n image: string;\r\n imgLoaded: boolean;\r\n imgError: boolean;\r\n}\r\nexport function VehicleCardBasic({\r\n cardInfo,\r\n image,\r\n imgLoaded,\r\n imgError,\r\n}: IVehicleCardBasic) {\r\n const basicCardClasses = useBasicCardStyles();\r\n\r\n return (\r\n \r\n \r\n {cardInfo?.modelName && (\r\n

\r\n \r\n \r\n

\r\n )}\r\n\r\n {cardInfo.description && (\r\n \r\n )}\r\n
\r\n \r\n \r\n {!imgLoaded && !imgError && (\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n \r\n );\r\n}\r\n","import { Grid } from '@mui/material';\r\nimport TextRender from 'components/Global/TextRender/TextRender';\r\nimport { ICardInformationBasic } from 'interfaces/requestAQuote';\r\nimport React from 'react';\r\nimport { useBasicCardStyles } from '../VehicleCard.style';\r\n\r\nexport interface IVehicleCardBasicCaption {\r\n cardInfo: ICardInformationBasic;\r\n image: string;\r\n imgLoaded: boolean;\r\n imgError: boolean;\r\n}\r\n\r\nexport function VehicleCardBasicCaption({\r\n cardInfo,\r\n image,\r\n imgLoaded,\r\n imgError,\r\n}: IVehicleCardBasicCaption) {\r\n const basicCardClasses = useBasicCardStyles();\r\n\r\n return (\r\n \r\n \r\n \r\n {!imgLoaded && !imgError && (\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n \r\n {cardInfo.description && (\r\n \r\n \r\n \r\n )}\r\n {cardInfo?.modelName && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n","import { Grid } from '@mui/material';\r\nimport { useComplexCardStyles } from '../VehicleCard.style';\r\nimport TextRender from 'components/Global/TextRender/TextRender';\r\nimport { ICardInformationComplex } from 'interfaces/requestAQuote';\r\nimport SwiperCore, { A11y, Navigation, Pagination } from 'swiper';\r\nimport { Swiper, SwiperSlide } from 'swiper/react';\r\nimport { Icon, Icons } from 'components/Global/Icon/Icon';\r\nimport React from 'react';\r\nimport { Skeleton } from '@mui/material';\r\nimport { convertCostValue } from 'helpers/Prices';\r\nimport { appPalette } from 'theme/App.palette';\r\n\r\nexport interface IVehicleCardComplex {\r\n cardInfo: ICardInformationComplex;\r\n image?: string;\r\n imgLoaded: boolean;\r\n imgError: boolean;\r\n}\r\n\r\nconst { light_grey_1 } = appPalette.colors;\r\n\r\nconst swipperNavigation = {\r\n nextEl: '.swiper-button-next',\r\n prevEl: '.swiper-button-prev',\r\n};\r\n\r\nconst swipperPagination = {\r\n clickable: true,\r\n bulletActiveClass: 'active',\r\n el: `.swiper-pagination`,\r\n renderBullet: (index: any, className: any) =>\r\n ``,\r\n};\r\nexport function VehicleCardComplex({\r\n cardInfo,\r\n imgLoaded,\r\n imgError,\r\n}: IVehicleCardComplex) {\r\n const complexCardClasses = useComplexCardStyles();\r\n SwiperCore.use([Navigation, Pagination, A11y]);\r\n\r\n return (\r\n \r\n {imgLoaded && !imgError && cardInfo?.images ? (\r\n \r\n \r\n {cardInfo.images.map((photo, index) => (\r\n \r\n \r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n {`${cardInfo.modelYear} ${cardInfo.modelName}`}\r\n {cardInfo.msrp && (\r\n \r\n \r\n\r\n \r\n \r\n )}\r\n \r\n \r\n {cardInfo.colors &&\r\n cardInfo.colors?.map((color, index) => (\r\n \r\n \r\n \r\n {color.name}\r\n \r\n \r\n ))}\r\n \r\n \r\n {cardInfo.bullets?.map((bullet, index) => (\r\n \r\n \r\n \r\n ))}\r\n \r\n {(cardInfo.captionDescription || cardInfo.captionTitle) && (\r\n \r\n {cardInfo.captionTitle && (\r\n {cardInfo.captionTitle}\r\n )}\r\n {cardInfo.captionDescription && (\r\n \r\n )}\r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n","import React, { useState, useEffect } from 'react';\r\nimport {\r\n VehicleSelectorType,\r\n ICardInformation,\r\n ICardInformationBasic,\r\n ICardInformationComplex,\r\n} from 'interfaces/requestAQuote';\r\nimport { useLoadImages } from 'hooks/useLoadImages';\r\n\r\nimport 'swiper/swiper-bundle.css';\r\nimport { VehicleCardBasic } from './VehicleCardBasic/VehicleCardBasic';\r\nimport { VehicleCardBasicCaption } from './VehicleCardBasicCaption/VehicleCardBasicCaption';\r\nimport { VehicleCardComplex } from './VehicleCardComplex/VehicleCardComplex';\r\n\r\nexport interface IVehicleCard {\r\n variant?: VehicleSelectorType;\r\n cardInfo?: ICardInformation;\r\n}\r\nexport function VehicleCard({ variant, cardInfo }: IVehicleCard) {\r\n const [actualImage, setActualImage] = useState('');\r\n const cardInfoComplex = cardInfo as ICardInformationComplex;\r\n const cardInfoBasic = cardInfo as ICardInformationBasic;\r\n const defaultBasicImage = cardInfoBasic.img;\r\n const defaultComplexImage =\r\n cardInfoComplex && cardInfoComplex.images && cardInfoComplex.colors\r\n ? [\r\n ...(cardInfoComplex?.images as string[]),\r\n ...cardInfoComplex.colors.map(\r\n (color) => color.image.sources.small as unknown as string\r\n ),\r\n ]\r\n : [];\r\n let imageList = [];\r\n\r\n switch (variant) {\r\n case 'basic':\r\n imageList = [defaultBasicImage];\r\n break;\r\n case 'paymentEstimator':\r\n imageList = [defaultBasicImage];\r\n break;\r\n case 'offers':\r\n imageList = [defaultBasicImage];\r\n break;\r\n case 'bap':\r\n imageList = defaultComplexImage;\r\n break;\r\n case 'savedConfig':\r\n imageList = defaultComplexImage;\r\n break;\r\n case 'inventory':\r\n imageList = defaultComplexImage;\r\n break;\r\n default:\r\n imageList = [defaultBasicImage];\r\n break;\r\n }\r\n const { hasLoaded, hasError } = useLoadImages(imageList);\r\n\r\n useEffect(() => {\r\n if (hasLoaded && !hasError) {\r\n setActualImage(defaultBasicImage);\r\n }\r\n }, [hasLoaded, hasError, defaultBasicImage]);\r\n\r\n variant = variant ? variant : VehicleSelectorType.basic;\r\n const vehicleCardDictionary = {\r\n basic: (\r\n \r\n ),\r\n paymentEstimator: (\r\n \r\n ),\r\n offers: (\r\n \r\n ),\r\n bap: (\r\n \r\n ),\r\n savedConfig: (\r\n \r\n ),\r\n inventory: (\r\n \r\n ),\r\n };\r\n\r\n return vehicleCardDictionary[variant];\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\nimport {\r\n IPackage,\r\n ITaxonomy,\r\n ICardInformation,\r\n VehicleSelectorType,\r\n ICardInformationBasic,\r\n ICardInformationComplex,\r\n IRequestAQuoteData,\r\n IRAQConfiguration,\r\n} from 'interfaces/requestAQuote';\r\nimport { useStyles } from './VehicleSelector.styles';\r\nimport { FormControl, Grid } from '@mui/material';\r\nimport { VehicleCard } from 'components/RequestAQuote/VehicleCard/VehicleCard';\r\nimport { trackEvent } from 'helpers/Analytics';\r\nimport { useDispatch } from 'react-redux';\r\nimport { setVehicleData } from 'redux/slices/vehicleSlice';\r\nimport TextRender from 'components/Global/TextRender/TextRender';\r\nimport { parseColorData } from 'helpers/Color';\r\nimport { LinkButton } from 'components/Global/LinkButton/LinkButton';\r\nimport {\r\n setConfigStatus,\r\n setCurrentConfig,\r\n} from 'redux/slices/savedConfigSlice';\r\nimport Dropdown, {\r\n createDropdownItemObj,\r\n} from 'components/Global/Dropdown/Dropdown';\r\nimport { createIdFromText, cleanHTMLFromString } from 'helpers/FormatText';\r\n\r\nexport interface IVehicleSelector {\r\n data: IRequestAQuoteData;\r\n configuration?: IRAQConfiguration;\r\n onEnabled?: Function;\r\n showModelError: boolean;\r\n showPackageError: boolean;\r\n}\r\n\r\nconst getTransitLotText = (\r\n numberInTransit: number,\r\n numberOnSite: number,\r\n labels: { [key: string]: string }\r\n) => {\r\n const result = [];\r\n numberInTransit > 0 && result.push(`${numberInTransit} ${labels.inTransit}`);\r\n numberOnSite > 0 && result.push(`${numberOnSite} ${labels.onLot}`);\r\n return `${result.join(' / ')}${\r\n result.length > 0 ? labels.inventoryDisclaimer : ''\r\n }`;\r\n};\r\n\r\nconst findSelectedItemsByModelId = (\r\n taxonomies: ITaxonomy[],\r\n modelId?: string\r\n): {\r\n newSelectedTaxonomy?: ITaxonomy;\r\n newSelectedModel?: ITaxonomy;\r\n newSelectedPackage?: IPackage;\r\n} => {\r\n const result: {\r\n newSelectedTaxonomy?: ITaxonomy;\r\n newSelectedModel?: ITaxonomy;\r\n newSelectedPackage?: IPackage;\r\n } = {};\r\n\r\n for (const taxonomy of taxonomies) {\r\n for (const vehicle of taxonomy.vehicles) {\r\n const selectedPackage = vehicle.packages?.find(\r\n (_package) => _package.vehicleModel === modelId\r\n );\r\n if (selectedPackage) {\r\n result.newSelectedTaxonomy = taxonomy;\r\n result.newSelectedModel = vehicle;\r\n result.newSelectedPackage = selectedPackage;\r\n return result;\r\n }\r\n }\r\n }\r\n return result;\r\n};\r\n\r\nconst findSelectedItemsByYearAndSeries = (\r\n taxonomies: ITaxonomy[],\r\n modelSeries: string,\r\n modelYear: string\r\n): { newSelectedTaxonomy?: ITaxonomy; newSelectedModel?: ITaxonomy } => {\r\n const result: {\r\n newSelectedTaxonomy?: ITaxonomy;\r\n newSelectedModel?: ITaxonomy;\r\n } = {};\r\n for (const taxonomy of taxonomies) {\r\n const selectedVehicle = taxonomy?.vehicles.find(\r\n (vehicle) =>\r\n vehicle.taxonomyVehicle === modelSeries &&\r\n vehicle.modelYear === modelYear\r\n );\r\n\r\n if (selectedVehicle) {\r\n result.newSelectedTaxonomy = taxonomy;\r\n result.newSelectedModel = selectedVehicle;\r\n return result;\r\n }\r\n }\r\n return result;\r\n};\r\n\r\nconst findSelectedItemsBySeries = (\r\n taxonomies: ITaxonomy[],\r\n modelSeries: string\r\n): { newSelectedTaxonomy?: ITaxonomy; newSelectedModel?: ITaxonomy } => {\r\n const result: {\r\n newSelectedTaxonomy?: ITaxonomy;\r\n newSelectedModel?: ITaxonomy;\r\n } = {};\r\n for (const taxonomy of taxonomies) {\r\n const selectedVehicle = taxonomy?.vehicles.find(\r\n (vehicle) => vehicle.taxonomyVehicle === modelSeries\r\n );\r\n\r\n if (selectedVehicle) {\r\n result.newSelectedTaxonomy = taxonomy;\r\n result.newSelectedModel = selectedVehicle;\r\n return result;\r\n }\r\n }\r\n return result;\r\n};\r\n\r\nexport function VehicleSelector({\r\n data,\r\n configuration,\r\n onEnabled,\r\n showModelError,\r\n showPackageError,\r\n}: IVehicleSelector) {\r\n const dispatch = useDispatch();\r\n const classes = useStyles();\r\n const { pageContent, taxonomy } = data;\r\n const { labels } = pageContent;\r\n const taxonomies = taxonomy as ITaxonomy[];\r\n const [selectedTaxonomy, setSelectedTaxonomy] = useState(taxonomies?.[0]);\r\n const [selectedModel, setSelectedModel] = useState();\r\n const [selectedPackage, setSelectedPackage] = useState<\r\n IPackage | undefined\r\n >();\r\n const [vehicleCardInfo, setVehicleCardInfo] = useState<\r\n ICardInformation | undefined\r\n >();\r\n const isFormDisabled =\r\n !!(\r\n configuration?.modelId &&\r\n configuration.variant !== VehicleSelectorType.savedConfig\r\n ) || configuration?.disableForm;\r\n\r\n let variant = configuration?.variant;\r\n\r\n // adding this condition for those offers which don't apply for an specific model (special programs)\r\n if (variant === VehicleSelectorType.offers && !configuration?.modelId) {\r\n variant = VehicleSelectorType.basic;\r\n }\r\n\r\n const handleTaxonomyClick = (taxonomy: ITaxonomy) => {\r\n !isFormDisabled && setSelectedTaxonomy(taxonomy);\r\n trackEvent({\r\n label: `selector:${taxonomy.taxonomyName}`,\r\n category: {\r\n includePageName: true,\r\n text: 'request a quote selector',\r\n },\r\n type: 'selector',\r\n modelSeries: selectedModel?.taxonomyVehicle || 'no model',\r\n modelYear: selectedModel?.modelYear || 'no model',\r\n });\r\n };\r\n useEffect(() => {\r\n if (configuration && configuration.modelId) {\r\n const { newSelectedTaxonomy, newSelectedModel, newSelectedPackage } =\r\n findSelectedItemsByModelId(taxonomies, configuration.modelId);\r\n\r\n newSelectedTaxonomy && setSelectedTaxonomy(newSelectedTaxonomy);\r\n newSelectedModel && setSelectedModel(newSelectedModel);\r\n newSelectedPackage && setSelectedPackage(newSelectedPackage);\r\n dispatch(\r\n setVehicleData({\r\n modelSeries: newSelectedTaxonomy?.taxonomyVehicle || '',\r\n modelYear: newSelectedModel?.modelYear || '',\r\n modelID: newSelectedPackage?.vehicleModel || '',\r\n })\r\n );\r\n } else if (\r\n configuration &&\r\n configuration.modelSeries &&\r\n configuration.modelYear\r\n ) {\r\n const { newSelectedTaxonomy, newSelectedModel } =\r\n findSelectedItemsByYearAndSeries(\r\n taxonomies,\r\n configuration.modelSeries,\r\n configuration.modelYear\r\n );\r\n\r\n newSelectedTaxonomy && setSelectedTaxonomy(newSelectedTaxonomy);\r\n newSelectedModel && setSelectedModel(newSelectedModel);\r\n dispatch(\r\n setVehicleData({\r\n modelSeries: selectedModel?.taxonomyVehicle || '',\r\n modelYear: selectedModel?.modelYear || '',\r\n modelID: undefined,\r\n })\r\n );\r\n } else if (configuration && configuration.modelSeries) {\r\n const { newSelectedTaxonomy, newSelectedModel } =\r\n findSelectedItemsBySeries(taxonomies, configuration.modelSeries);\r\n\r\n newSelectedTaxonomy && setSelectedTaxonomy(newSelectedTaxonomy);\r\n newSelectedModel && setSelectedModel(newSelectedModel);\r\n dispatch(\r\n setVehicleData({\r\n modelSeries: selectedModel?.taxonomyVehicle || '',\r\n modelYear: undefined,\r\n modelID: undefined,\r\n })\r\n );\r\n } else {\r\n dispatch(\r\n setVehicleData({\r\n modelSeries: undefined,\r\n modelYear: undefined,\r\n modelID: undefined,\r\n })\r\n );\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, []);\r\n\r\n useEffect(() => {\r\n const { newSelectedTaxonomy, newSelectedModel, newSelectedPackage } =\r\n findSelectedItemsByModelId(taxonomies, configuration?.modelId);\r\n\r\n newSelectedTaxonomy && setSelectedTaxonomy(newSelectedTaxonomy);\r\n newSelectedModel && setSelectedModel(newSelectedModel);\r\n newSelectedPackage && setSelectedPackage(newSelectedPackage);\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [configuration]);\r\n\r\n useEffect(() => {\r\n if (selectedModel && !isFormDisabled) {\r\n const newVehicleCardInfo: ICardInformationBasic = {\r\n imgAlt: selectedModel?.defaultVehicleImageAlt,\r\n img: selectedModel?.defaultVehicleImage,\r\n modelName: selectedModel.taxonomyVehicle as string,\r\n modelYear: selectedModel.modelYear as string,\r\n };\r\n if (newVehicleCardInfo !== vehicleCardInfo) {\r\n setVehicleCardInfo(newVehicleCardInfo);\r\n }\r\n if (configuration?.variant !== VehicleSelectorType.savedConfig) {\r\n setSelectedPackage(undefined);\r\n }\r\n dispatch(\r\n setVehicleData({\r\n modelSeries: selectedModel?.taxonomyVehicle || '',\r\n modelYear: selectedModel?.modelYear || '',\r\n modelID: undefined,\r\n })\r\n );\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [selectedModel]);\r\n\r\n useEffect(() => {\r\n const vehicleInfo = data.vehicleData;\r\n if (selectedPackage) {\r\n let newVehicleCardInfo: ICardInformation = {\r\n modelName: selectedModel?.taxonomyVehicle as string,\r\n modelYear: selectedModel?.modelYear as string,\r\n };\r\n if (!configuration || variant === VehicleSelectorType.basic) {\r\n newVehicleCardInfo = {\r\n ...newVehicleCardInfo,\r\n imgAlt: selectedPackage?.packageImageAlt,\r\n img: selectedPackage?.packageImageUrl,\r\n description: selectedPackage.packageDescription,\r\n } as ICardInformationBasic;\r\n } else if (\r\n variant === VehicleSelectorType.bap ||\r\n variant === VehicleSelectorType.inventory ||\r\n variant === VehicleSelectorType.savedConfig\r\n ) {\r\n const packageWord = data.pageContent.labels.package.toLowerCase();\r\n const packageCapitalized =\r\n packageWord.charAt(0).toUpperCase() + packageWord.slice(1);\r\n newVehicleCardInfo = {\r\n ...newVehicleCardInfo,\r\n colors: [\r\n vehicleInfo ? parseColorData(vehicleInfo.exteriorColor) : {},\r\n vehicleInfo ? parseColorData(vehicleInfo.interiorColor) : {},\r\n ],\r\n bullets: [\r\n vehicleInfo?.engine,\r\n vehicleInfo?.drivetrain,\r\n ...(vehicleInfo?.packages.map(\r\n (_package) => `${_package} ${packageCapitalized}`\r\n ) || []),\r\n ],\r\n images: data?.vehicleData?.photos,\r\n } as ICardInformationComplex;\r\n } else if (variant === VehicleSelectorType.offers) {\r\n const offerCardInfo = data?.vehicleData?.offersInfo;\r\n newVehicleCardInfo = {\r\n ...newVehicleCardInfo,\r\n imgAlt: offerCardInfo?.vehicleCardDisclaimer?.description\r\n ? offerCardInfo?.vehicleCardDisclaimer.description\r\n : '',\r\n img: offerCardInfo?.vehicleCardImage,\r\n description: offerCardInfo?.vehicleCardDisclaimer?.description\r\n ? offerCardInfo?.vehicleCardDisclaimer.description\r\n : '',\r\n } as ICardInformationBasic;\r\n }\r\n if (variant === VehicleSelectorType.inventory) {\r\n newVehicleCardInfo = {\r\n ...newVehicleCardInfo,\r\n msrp: {\r\n value: vehicleInfo?.inventory?.msrp,\r\n disclaimer: data.pageContent.labels.msrpDisclaimer,\r\n caption: data.pageContent.labels.msrp,\r\n },\r\n captionTitle: vehicleInfo?.inventory?.dealer?.name,\r\n captionDescription: getTransitLotText(\r\n vehicleInfo?.inventory?.numberInTransit || 0,\r\n vehicleInfo?.inventory?.numberOnSite || 0,\r\n labels\r\n ),\r\n } as ICardInformationComplex;\r\n }\r\n setVehicleCardInfo(newVehicleCardInfo);\r\n onEnabled && onEnabled();\r\n if (selectedModel && selectedPackage) {\r\n dispatch(\r\n setVehicleData({\r\n modelSeries: selectedModel?.taxonomyVehicle || '',\r\n modelYear: selectedModel?.modelYear || '',\r\n modelID: selectedPackage.vehicleModel || '',\r\n })\r\n );\r\n }\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [selectedPackage]);\r\n\r\n const onModelSelectChange = (value: string) => {\r\n const newSelectedTaxonomy = selectedTaxonomy.vehicles.find(\r\n (vehicle) => createIdFromText(vehicle.taxonomyName) === value\r\n );\r\n if (newSelectedTaxonomy) {\r\n trackEvent({\r\n label: `selector:toggle filter model`,\r\n category: {\r\n includePageName: true,\r\n text: 'selector',\r\n },\r\n type: 'selector',\r\n modelSeries: newSelectedTaxonomy?.taxonomyVehicle || 'no model',\r\n modelYear: newSelectedTaxonomy?.modelYear || 'no model',\r\n });\r\n\r\n const key = `${newSelectedTaxonomy.taxonomyVehicle?.toLowerCase()}-${\r\n newSelectedTaxonomy.modelYear\r\n }`;\r\n dispatch(setCurrentConfig(key));\r\n\r\n setSelectedModel(newSelectedTaxonomy);\r\n }\r\n };\r\n\r\n const onPackageSelectChange = (value: string) => {\r\n if (selectedModel?.packages) {\r\n const newSelectedPackage = selectedModel.packages.find(\r\n (pkg) => createIdFromText(pkg.packageName) === value\r\n );\r\n if (newSelectedPackage) {\r\n trackEvent({\r\n label: `selector:toggle filter package`,\r\n category: {\r\n includePageName: true,\r\n text: 'selector',\r\n },\r\n type: 'selector',\r\n modelSeries: selectedModel?.taxonomyVehicle || 'no model',\r\n modelYear: selectedModel?.modelYear || 'no model',\r\n modelTrim: cleanHTMLFromString(newSelectedPackage.packageName),\r\n modelId: newSelectedPackage.vehicleModel,\r\n });\r\n\r\n if (configuration) {\r\n dispatch(setConfigStatus(false));\r\n }\r\n setSelectedPackage(newSelectedPackage);\r\n }\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n

{labels.model}

\r\n {!isFormDisabled && (\r\n \r\n {taxonomies.map((taxonomy) => (\r\n \r\n \r\n {\r\n handleTaxonomyClick(taxonomy);\r\n }}\r\n classNames={{\r\n container: `acr-paragraph-8 ${\r\n classes.select_vehicle_year\r\n } ${\r\n selectedTaxonomy.taxonomyName === taxonomy.taxonomyName &&\r\n 'selected'\r\n }`,\r\n }}\r\n tabIndex={\r\n selectedTaxonomy.taxonomyName === taxonomy.taxonomyName\r\n ? -1\r\n : 0\r\n }\r\n >\r\n \r\n {taxonomy.taxonomyName}\r\n \r\n \r\n
\r\n ))}\r\n
\r\n )}\r\n \r\n \r\n createDropdownItemObj(vehicle.taxonomyName)\r\n )}\r\n />\r\n {showModelError && (\r\n \r\n )}\r\n \r\n\r\n

{labels.package}

\r\n {selectedModel?.supplyMessage && (\r\n \r\n )}\r\n \r\n \r\n createDropdownItemObj(_package.packageName)\r\n )}\r\n />\r\n {showPackageError && (\r\n \r\n )}\r\n \r\n
\r\n\r\n {selectedModel && // Displaying the Vehicle Card(grid) if a vehicle is selected\r\n vehicleCardInfo && ( // Validating that VehicleCardInfo is not undefined\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n","import makeStyles from '@mui/styles/makeStyles';\r\nimport { appPalette } from 'theme/App.palette';\r\nimport { theme } from 'theme/App.theme';\r\n\r\nconst { light_grey_4, acura_red } = appPalette.colors;\r\nexport const useStyles = makeStyles({\r\n root: {\r\n flexGrow: 1,\r\n margin: '0 auto',\r\n padding: '1.25rem',\r\n [theme.breakpoints.up('viewportMobileMid')]: {\r\n padding: 0,\r\n maxWidth: '70%',\r\n margin: '1.25rem auto',\r\n },\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n maxWidth: 'unset',\r\n padding: '1.25rem',\r\n margin: '0',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n width: '95%',\r\n maxWidth: '78.125rem',\r\n padding: '2.8125rem 1.25rem',\r\n margin: '0 auto',\r\n },\r\n [theme.breakpoints.up('viewportXLarge')]: {\r\n width: '90%',\r\n },\r\n },\r\n header: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n paddingBottom: '3.4375rem',\r\n '& p': {\r\n color: light_grey_4,\r\n },\r\n },\r\n dealerContainer: {\r\n marginBottom: '2.5rem',\r\n width: '100%',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n marginTop: '2.1875rem',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n marginBottom: '3.75rem',\r\n },\r\n },\r\n errorTag: {\r\n color: acura_red,\r\n },\r\n wrapper: {\r\n width: '100%',\r\n },\r\n});\r\n","import React, { useState, useEffect } from 'react';\r\nimport { Step } from 'components/RequestAQuote/Step/Step';\r\nimport { InformationForm } from 'components/RequestAQuote/InformationForm/InformationForm';\r\nimport { VehicleSelector } from 'components/RequestAQuote/VehicleSelector/VehicleSelector';\r\nimport { DealerLocator } from 'components/DealerLocator/DealerLocator';\r\nimport {\r\n IBAPAccessory,\r\n IFormData,\r\n IQuoteRequest,\r\n IRAQConfigurationOffers,\r\n IRequestAQuoteData,\r\n} from 'interfaces/requestAQuote';\r\nimport {\r\n removeSelectedDealer,\r\n selectedDealer,\r\n setSelectedDealer,\r\n} from 'redux/slices/dealerSlice';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { useStyles } from './RequestAQuoteForm.styles';\r\nimport TextRender from 'components/Global/TextRender/TextRender';\r\nimport { getRAQData } from 'redux/slices/vehicleSlice';\r\nimport { usePostQuoteRequest } from 'hooks/usePostQuoteRequest';\r\nimport { removeMinHeight } from 'helpers/Layout';\r\nimport { cleanHTMLFromString } from 'helpers/FormatText';\r\nimport Cookies from 'universal-cookie';\r\nimport { IReduxAccessory } from 'interfaces/vehicle';\r\nimport {\r\n FormStatusOptions,\r\n IRequestAQuote,\r\n} from '../../Modal/RequestAQuoteModal/RequestAQuoteModal';\r\n\r\nconst raqScrollTop = (\r\n scrollContainerId: string | undefined,\r\n isMinHeightRemoval: boolean\r\n) => {\r\n const scrollElement = scrollContainerId\r\n ? document.getElementById(scrollContainerId)\r\n : window;\r\n scrollElement?.scrollTo({ top: 0 });\r\n isMinHeightRemoval && removeMinHeight();\r\n};\r\n\r\nconst getRequestVerificationToken = () => {\r\n const requestVerificationTokenSelector =\r\n 'input[name=\"__RequestVerificationToken\"]';\r\n return (\r\n (\r\n document.querySelector(\r\n requestVerificationTokenSelector\r\n ) as HTMLInputElement\r\n )?.value || ''\r\n );\r\n};\r\n\r\nconst RequestAQuoteForm = ({\r\n configuration,\r\n data,\r\n isInModal,\r\n title,\r\n description,\r\n scrollContainerId,\r\n shoppingTool,\r\n setFormData,\r\n hideChangeDealer,\r\n setFormStatus,\r\n}: IRequestAQuote) => {\r\n // Hooks\r\n const classes = useStyles();\r\n const dispatch = useDispatch();\r\n // Data\r\n const { pageContent, vehicleData } = data || {};\r\n const { labels, informationForm } = pageContent || {};\r\n const { exteriorColor, interiorColor } = vehicleData || {};\r\n const customDealer = vehicleData?.inventory?.dealer;\r\n // States\r\n const [stepThreeEnabled, setStepThreeEnabled] = useState(false);\r\n const [showGlobalError, setShowGlobalError] = useState(false);\r\n const [showModelError, setShowModelError] = useState(false);\r\n const [showPackageError, setShowPackageError] = useState(false);\r\n // Selectors\r\n const currentSelectedDealer = useSelector(selectedDealer);\r\n const raqVehicleData = useSelector(getRAQData);\r\n\r\n const { isLoading, mutate } = usePostQuoteRequest(\r\n () => {\r\n raqScrollTop(scrollContainerId, !isInModal);\r\n if (setFormStatus) setFormStatus(FormStatusOptions.success);\r\n },\r\n () => {\r\n raqScrollTop(scrollContainerId, !isInModal);\r\n if (setFormStatus) setFormStatus(FormStatusOptions.error);\r\n }\r\n );\r\n\r\n const requestVerificationToken = getRequestVerificationToken();\r\n\r\n const getAccessories = () => {\r\n return raqVehicleData.accessories\r\n ? (raqVehicleData.accessories.reduce(function (\r\n filtered: IBAPAccessory[],\r\n accessory: IReduxAccessory\r\n ) {\r\n if (\r\n accessory.categoryName !== 'Packages' &&\r\n accessory.name !== 'empty'\r\n ) {\r\n const mappedAccessory: IBAPAccessory = {\r\n Name: cleanHTMLFromString(accessory.enName),\r\n Price: accessory.price,\r\n Code: accessory.opCode,\r\n Type: accessory.categoryName === 'Exterior' ? 'E' : 'I',\r\n };\r\n filtered.push(mappedAccessory);\r\n }\r\n return filtered;\r\n },\r\n []) as IBAPAccessory[])\r\n : null;\r\n };\r\n\r\n const getModelId = () => {\r\n return raqVehicleData.modelId.toLowerCase() === 'undecided'\r\n ? null\r\n : raqVehicleData.modelId;\r\n };\r\n\r\n const getExteriorColorProp = (prop: string): string => {\r\n let exteriorData = '';\r\n switch (prop) {\r\n case 'exteriorColorCode':\r\n exteriorData =\r\n raqVehicleData.exteriorColor.internalCode !== 'empty'\r\n ? raqVehicleData.exteriorColor.internalCode\r\n : exteriorColor?.manufacturingCode || '';\r\n break;\r\n case 'exteriorColorIdent':\r\n exteriorData =\r\n raqVehicleData.exteriorColor.colorIdentifier !== 'empty'\r\n ? raqVehicleData.exteriorColor.colorIdentifier\r\n : exteriorColor?.id || '';\r\n break;\r\n case 'exteriorColorName':\r\n exteriorData =\r\n raqVehicleData.exteriorColor.name || exteriorColor?.name || '';\r\n break;\r\n case 'exteriorColorPriceDelta':\r\n exteriorData =\r\n raqVehicleData.exteriorColor.price !== 0\r\n ? raqVehicleData.exteriorColor.price.toString()\r\n : '';\r\n break;\r\n }\r\n return exteriorData;\r\n };\r\n\r\n const getInteriorColorProp = (prop: string): string => {\r\n let interiorData = '';\r\n switch (prop) {\r\n case 'interiorColorCode':\r\n interiorData =\r\n raqVehicleData.interiorColor.internalCode !== 'empty'\r\n ? raqVehicleData.interiorColor.internalCode\r\n : interiorColor?.code || '';\r\n break;\r\n case 'interiorColorIdent':\r\n interiorData =\r\n raqVehicleData.interiorColor.colorIdentifier !== 'empty'\r\n ? raqVehicleData.interiorColor.colorIdentifier\r\n : interiorColor?.id || '';\r\n break;\r\n case 'interiorColorName':\r\n interiorData =\r\n raqVehicleData.interiorColor.name || interiorColor?.name || '';\r\n break;\r\n }\r\n return interiorData;\r\n };\r\n\r\n const sendQuoteRequest = (formData: IFormData) => {\r\n const cookies = new Cookies();\r\n const shoppingToolSource =\r\n shoppingTool || labels?.defaultShoppingToolSource || '';\r\n const cookie = cookies.get('_td_global');\r\n const quoteRequestObject: IQuoteRequest = {\r\n accessories: getAccessories(),\r\n adobeTransactionId: cookie,\r\n vehicleModelSeries: raqVehicleData.modelSeries,\r\n modelMarketingName: `${raqVehicleData.modelYear} ${raqVehicleData.modelSeries}`,\r\n modelYear: raqVehicleData.modelYear,\r\n modelId: getModelId(),\r\n exteriorColorCode: getExteriorColorProp('exteriorColorCode'),\r\n exteriorColorIdent: getExteriorColorProp('exteriorColorIdent'),\r\n exteriorColorName: getExteriorColorProp('exteriorColorName'),\r\n exteriorColorPriceDelta: getExteriorColorProp('exteriorColorPriceDelta'),\r\n interiorColorCode: getInteriorColorProp('interiorColorCode'),\r\n interiorColorIdent: getInteriorColorProp('interiorColorIdent'),\r\n interiorColorName: getInteriorColorProp('interiorColorName'),\r\n totalAsConfigured:\r\n raqVehicleData.totalAsConfigured !== 0\r\n ? raqVehicleData.totalAsConfigured.toString()\r\n : '',\r\n dealerId: currentSelectedDealer?.dealerNumber || '',\r\n localDealerName: currentSelectedDealer?.name || '',\r\n vinNumber: configuration?.vinNumber || '',\r\n offerId: (configuration as IRAQConfigurationOffers).offers || null,\r\n source: shoppingToolSource,\r\n zipCode: formData['raq-zipcode'],\r\n shoppingTool: shoppingToolSource,\r\n provider: 'Acura Website',\r\n tracking: {\r\n campaingName: '',\r\n shoppingTool: shoppingToolSource,\r\n },\r\n addressScrubbing: false,\r\n userInfo: {\r\n __RequestVerificationToken: requestVerificationToken,\r\n firstName: formData['first-name'],\r\n lastName: formData['last-name'],\r\n email: formData.email,\r\n zipcode: formData['raq-zipcode'],\r\n phone: formData.phone,\r\n comments: formData.comments,\r\n terms: 'terms',\r\n },\r\n };\r\n mutate(quoteRequestObject);\r\n };\r\n\r\n const onSubmit = (formData: IFormData) => {\r\n if (\r\n !currentSelectedDealer ||\r\n !raqVehicleData.modelSeries ||\r\n !raqVehicleData.modelId\r\n ) {\r\n setShowGlobalError(true);\r\n raqScrollTop(scrollContainerId, !isInModal);\r\n } else {\r\n if (setFormData) {\r\n setFormData(formData);\r\n }\r\n setShowGlobalError(false);\r\n sendQuoteRequest(formData);\r\n }\r\n if (!raqVehicleData.modelId) {\r\n setShowModelError(true);\r\n setShowPackageError(true);\r\n } else {\r\n setShowModelError(false);\r\n setShowPackageError(false);\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (\r\n currentSelectedDealer &&\r\n configuration?.modelYear &&\r\n configuration.modelSeries &&\r\n configuration.modelId\r\n ) {\r\n setStepThreeEnabled(true);\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [currentSelectedDealer]);\r\n\r\n useEffect(() => {\r\n configuration?.dealerId &&\r\n currentSelectedDealer?.dealerNumber !== configuration?.dealerId &&\r\n dispatch(removeSelectedDealer());\r\n\r\n if (\r\n customDealer &&\r\n customDealer.dealerNumber !== currentSelectedDealer?.dealerNumber\r\n ) {\r\n dispatch(setSelectedDealer(customDealer));\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, []);\r\n\r\n return (\r\n
\r\n {(title || description) && (\r\n
\r\n {title && (\r\n \r\n )}\r\n {description && (\r\n \r\n )}\r\n {showGlobalError && (\r\n \r\n )}\r\n
\r\n )}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n {\r\n setStepThreeEnabled(true);\r\n }}\r\n configuration={configuration}\r\n data={data as IRequestAQuoteData}\r\n />\r\n \r\n \r\n {informationForm && (\r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default RequestAQuoteForm;\r\n","import React, { useState } from 'react';\r\nimport {\r\n FormStatusOptions,\r\n IRequestAQuote,\r\n} from '../../Modal/RequestAQuoteModal/RequestAQuoteModal';\r\nimport { Confirmation } from 'components/RequestAQuote/Confirmation/Confirmation';\r\nimport RequestAQuoteForm from '../RequestAQuoteForm/RequestAQuoteForm';\r\n\r\nconst RequestAQuoteContainer = ({\r\n configuration,\r\n data,\r\n isInModal,\r\n title,\r\n description,\r\n scrollContainerId,\r\n shoppingTool,\r\n confirmationPageLoadConfig,\r\n setFormData,\r\n hideChangeDealer,\r\n}: IRequestAQuote) => {\r\n // Data\r\n const { pageContent } = data || {};\r\n const { labels, ctas } = pageContent || {};\r\n // States\r\n const [formStatus, setFormStatus] = useState(FormStatusOptions.initial);\r\n\r\n if (formStatus === 'success') {\r\n return (\r\n \r\n );\r\n } else if (formStatus === 'error') {\r\n return (\r\n \r\n );\r\n } else {\r\n return (\r\n \r\n );\r\n }\r\n};\r\n\r\nexport default RequestAQuoteContainer;\r\n","import { theme } from 'theme/App.theme';\r\nimport makeStyles from '@mui/styles/makeStyles';\r\nexport const useStyles = makeStyles({\r\n root: {\r\n display: 'flex',\r\n flexFlow: 'row wrap',\r\n flexGrow: 1,\r\n margin: '0 auto',\r\n padding: '1.25rem',\r\n [theme.breakpoints.up('viewportMobileMid')]: {\r\n padding: 0,\r\n maxWidth: '70%',\r\n margin: '1.25rem auto',\r\n },\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n maxWidth: 'unset',\r\n padding: '1.25rem',\r\n margin: '0',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n width: '95%',\r\n maxWidth: '78.125rem',\r\n padding: '2.8125rem 1.25rem',\r\n margin: '0 auto',\r\n },\r\n [theme.breakpoints.up('viewportXLarge')]: {\r\n width: '90%',\r\n },\r\n },\r\n dealerInfoContainer: {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n marginBottom: '3.75rem',\r\n },\r\n header: {\r\n width: 'calc(100vw - 2.5rem)',\r\n marginBottom: '3.125rem',\r\n [theme.breakpoints.up('lg')]: {\r\n width: '40%',\r\n marginBottom: '3.4375rem',\r\n },\r\n },\r\n headerTitle: {\r\n width: '21.25rem',\r\n height: '2rem',\r\n marginBottom: '0.3125rem',\r\n [theme.breakpoints.up('md')]: {\r\n height: '2.25rem',\r\n },\r\n [theme.breakpoints.up('lg')]: {\r\n height: '2.75rem',\r\n },\r\n [theme.breakpoints.up('xl')]: {\r\n height: '3rem',\r\n },\r\n },\r\n headerDescription: {\r\n width: '100%',\r\n height: '1rem',\r\n marginBottom: '0.625rem',\r\n },\r\n vehicleInformationContainer: {},\r\n stepContainer: {\r\n width: '100%',\r\n padding: '0 1.25rem',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n [theme.breakpoints.up('md')]: {\r\n width: '50%',\r\n padding: '0 0.5rem',\r\n },\r\n [theme.breakpoints.up('lg')]: {\r\n width: '42%',\r\n minWidth: '28.4375rem',\r\n },\r\n },\r\n step1Container: {\r\n display: 'flex',\r\n flexFlow: 'row wrap',\r\n width: '100%',\r\n [theme.breakpoints.up('md')]: {\r\n display: 'flex',\r\n flexDirection: 'row',\r\n paddingLeft: '2.625rem',\r\n paddingRight: '1rem',\r\n justifyContent: 'space-between',\r\n flexWrap: 'nowrap',\r\n },\r\n },\r\n step: {\r\n width: '100%',\r\n height: '1.75rem',\r\n marginBottom: '0.9375rem',\r\n [theme.breakpoints.up('md')]: {\r\n marginBottom: '2.1875rem',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n height: '2.5rem',\r\n },\r\n '&.partial': {\r\n [theme.breakpoints.up('md')]: {\r\n maxWidth: '26.875rem',\r\n width: '46.1%',\r\n },\r\n },\r\n },\r\n zipInput: {\r\n width: '100%',\r\n height: '2.25rem',\r\n marginBottom: '2.25rem',\r\n },\r\n filter: {\r\n width: '100%',\r\n height: '2.875rem',\r\n marginBottom: '0.9375rem',\r\n [theme.breakpoints.up('md')]: {\r\n marginBottom: '1.25rem',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n height: '2.5rem',\r\n },\r\n },\r\n dealerTabs: {\r\n width: '20rem',\r\n marginBottom: '0.9375rem',\r\n [theme.breakpoints.up('viewportMobileMid')]: {\r\n width: '100%',\r\n },\r\n [theme.breakpoints.up('md')]: {\r\n display: 'none',\r\n },\r\n },\r\n dealerTab: {\r\n width: '50%',\r\n height: '3.5625rem',\r\n boxShadow:\r\n '0px 2px 4px -1px rgb(0 0 0 / 20%), 0px 4px 5px 0px rgb(0 0 0 / 14%), 0px 1px 10px 0px rgb(0 0 0 / 12%)',\r\n },\r\n dealerTabActive: {\r\n boxShadow: '0 0.1875rem 0.625rem 0.0625rem rgb(0 0 0 / 21%)',\r\n },\r\n changeDealerButton: {\r\n height: '2.875rem',\r\n width: '100%',\r\n },\r\n dealerCard: {\r\n height: '13.4375rem',\r\n marginBottom: '0.9375rem',\r\n width: '100%',\r\n [theme.breakpoints.up('md')]: {\r\n height: '14.75rem',\r\n },\r\n },\r\n dealersMap: {\r\n display: 'none',\r\n [theme.breakpoints.up('lg')]: {\r\n display: 'block',\r\n height: '100%',\r\n width: 'calc(100% - 1.375rem)',\r\n marginLeft: '1.375rem',\r\n flexGrow: 1,\r\n flexBasis: 0,\r\n },\r\n [theme.breakpoints.up('xl')]: {\r\n width: 'calc(100% - 2rem)',\r\n marginLeft: '2rem',\r\n },\r\n },\r\n dropdownTitle: {\r\n height: '1.5rem',\r\n width: '3.125rem',\r\n },\r\n taxonomyTab: {\r\n width: '80%',\r\n margin: '1.25rem 0',\r\n maxWidth: '23.75rem',\r\n },\r\n dropdown: {\r\n height: '3rem',\r\n marginBottom: '1.875rem',\r\n width: '100%',\r\n maxWidth: '18.75rem',\r\n },\r\n dropdownContainer: {\r\n [theme.breakpoints.up('md')]: {\r\n marginTop: '1.25rem',\r\n },\r\n },\r\n vehicleCard: {\r\n width: '100%',\r\n marginTop: '1.25rem',\r\n marginBottom: '3.875rem',\r\n '&.basic, &.offers': {\r\n height: '13.875rem',\r\n [theme.breakpoints.up('viewportMobileMid')]: {\r\n height: '15.1875rem',\r\n },\r\n [theme.breakpoints.up('md')]: {\r\n marginTop: '0',\r\n height: '14.5rem',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n height: '17.875rem',\r\n },\r\n [theme.breakpoints.up('viewportXLarge')]: {\r\n height: '21.5rem',\r\n },\r\n },\r\n '&.bap, &.inventory': {\r\n maxWidth: '28.4375rem',\r\n height: '28.125rem',\r\n [theme.breakpoints.up('viewportMobileMid')]: {\r\n height: '27.8125rem',\r\n },\r\n [theme.breakpoints.up('md')]: {\r\n marginTop: '0',\r\n height: '28.75rem',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n height: '30.625rem',\r\n },\r\n [theme.breakpoints.up('viewportXLarge')]: {\r\n height: '31.25rem',\r\n },\r\n },\r\n },\r\n vehicleDataContainer: {\r\n [theme.breakpoints.up('md')]: {\r\n paddingLeft: '1.625rem',\r\n },\r\n },\r\n formLabel: {\r\n width: '15%',\r\n height: '1.25rem',\r\n },\r\n formInput: {\r\n height: '2.5rem',\r\n marginBottom: '1.875rem',\r\n width: '100%',\r\n },\r\n formContainer: {\r\n [theme.breakpoints.up('md')]: {\r\n marginTop: '1.25rem',\r\n },\r\n },\r\n inputContainer: {\r\n paddingLeft: '1.25rem',\r\n },\r\n disclaimerTextContainer: {\r\n marginBottom: '3.25rem',\r\n [theme.breakpoints.up('md')]: {\r\n paddingLeft: '1.25rem',\r\n },\r\n },\r\n disclaimerText: {\r\n height: '1.25rem',\r\n width: '100%',\r\n },\r\n submitButton: {\r\n height: '3.125rem',\r\n width: '100%',\r\n [theme.breakpoints.up('md')]: {\r\n marginLeft: '1.25rem',\r\n width: '12.5rem',\r\n },\r\n },\r\n container: {\r\n display: 'flex',\r\n flexFlow: 'row wrap',\r\n boxSizing: 'border-box',\r\n width: '100%',\r\n },\r\n});\r\n","import React from 'react';\r\nimport Skeleton from '@mui/material/Skeleton';\r\nimport { useStyles } from './RequestAQuoteSkeleton.styles';\r\nimport { Grid, useMediaQuery, useTheme } from '@mui/material';\r\nimport {\r\n IRAQConfiguration,\r\n VehicleSelectorType,\r\n} from 'interfaces/requestAQuote';\r\n\r\ninterface IRequestAQuoteSkeleton {\r\n configuration?: IRAQConfiguration;\r\n title?: string;\r\n description?: string;\r\n}\r\nconst RequestAQuoteSkeleton = ({\r\n configuration,\r\n title,\r\n description,\r\n}: IRequestAQuoteSkeleton): JSX.Element => {\r\n const classes = useStyles();\r\n const theme = useTheme();\r\n const matchesMobileMidBreakpoint = useMediaQuery(\r\n theme.breakpoints.up('viewportMobileMid'),\r\n { noSsr: true }\r\n );\r\n const matchesMediumBreakpoint = useMediaQuery(theme.breakpoints.up('md'), {\r\n noSsr: true,\r\n });\r\n const isFormDisabled = !!(\r\n configuration &&\r\n configuration.modelYear &&\r\n configuration.modelSeries &&\r\n configuration.modelId\r\n );\r\n const vehicleSelectorType =\r\n configuration?.variant || VehicleSelectorType.basic;\r\n return (\r\n
\r\n {(title || description) && (\r\n
\r\n \r\n {[\r\n ...Array(\r\n matchesMediumBreakpoint ? 1 : matchesMobileMidBreakpoint ? 2 : 3\r\n ),\r\n ].map((value: undefined, index: number) => (\r\n \r\n ))}\r\n
\r\n )}\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {!isFormDisabled && }\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {!matchesMediumBreakpoint && ( //mobile view\r\n \r\n {[...Array(6)].map((value: undefined, index: number) => {\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n )}\r\n {matchesMediumBreakpoint && ( //desktop view\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n {[...Array(3)].map((value: undefined, index: number) => {\r\n return (\r\n \r\n );\r\n })}\r\n \r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default RequestAQuoteSkeleton;\r\n","import { theme } from 'theme/App.theme';\r\nimport makeStyles from '@mui/styles/makeStyles';\r\nimport { appPalette } from 'theme/App.palette';\r\n\r\nconst colors = appPalette.colors;\r\n\r\nexport const useStyles = makeStyles({\r\n root: {\r\n 'align-items': 'center',\r\n display: 'flex',\r\n 'flex-direction': 'row',\r\n marginBottom: '0.9375rem',\r\n position: 'relative',\r\n width: '100%',\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n 'margin-bottom': 0,\r\n },\r\n },\r\n stepNumber: {\r\n color: colors.black,\r\n display: 'block',\r\n 'min-width': '1rem',\r\n transition: 'color .5s ease',\r\n marginRight: '0.5rem',\r\n },\r\n stepTitle: {\r\n 'border-bottom': `0.0625rem solid ${colors.light_grey_1}`,\r\n color: colors.black,\r\n display: 'block',\r\n flex: 1,\r\n margin: '0',\r\n textAlign: 'unset',\r\n letterSpacing: '0',\r\n 'transition-duration': '.5s',\r\n 'transition-property': 'border, color',\r\n 'transition-timing-function': 'ease',\r\n },\r\n stepDisabled: {\r\n color: colors.light_grey_2,\r\n },\r\n stepTitlePartial: {\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n flex: 'none',\r\n 'max-width': '26.875rem',\r\n width: '46.1%',\r\n },\r\n },\r\n stepCaption: {\r\n color: colors.acura_red,\r\n left: 0,\r\n position: 'absolute',\r\n top: '2.8125rem',\r\n transform: 'translateY(-50%)',\r\n\r\n [theme.breakpoints.up('viewportMobileMid')]: {\r\n left: 'auto',\r\n right: 0,\r\n top: '0.9375rem',\r\n },\r\n [theme.breakpoints.up('viewportLarge')]: {\r\n top: '50%',\r\n },\r\n },\r\n stepContent: {\r\n [theme.breakpoints.up('viewportMedium')]: {\r\n 'padding-left': '1.625rem',\r\n },\r\n },\r\n});\r\n","import React from 'react';\r\nimport { useStyles } from './Step.styles';\r\nimport { Grid, useTheme } from '@mui/material';\r\nimport TextRender from 'components/Global/TextRender/TextRender';\r\n\r\nexport interface IStep {\r\n stepNumber?: number;\r\n isEnabled: boolean;\r\n sectionName: string;\r\n caption?: string;\r\n isPartial?: boolean;\r\n children?: JSX.Element;\r\n}\r\nexport function Step({\r\n isEnabled,\r\n stepNumber,\r\n isPartial,\r\n sectionName,\r\n children,\r\n caption,\r\n}: IStep): JSX.Element {\r\n const classes = useStyles();\r\n const theme = useTheme();\r\n const isHondaTheme = theme.themeName === 'honda';\r\n const stepDisabledClass = classes.stepDisabled;\r\n const stepTitlePartialClass = classes.stepTitlePartial;\r\n return (\r\n \r\n \r\n {stepNumber && (\r\n \r\n {stepNumber}\r\n \r\n )}\r\n \r\n\r\n {caption && (\r\n \r\n {caption}\r\n \r\n )}\r\n \r\n {children && (\r\n \r\n {children}\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { IColor } from 'interfaces/package';\r\nimport { IReduxColor } from 'interfaces/vehicle';\r\n\r\nexport function parseColorData(color: IColor) {\r\n return {\r\n internalCode: color.manufacturingCode || color.code,\r\n code: color.code,\r\n colorIdentifier: color.id,\r\n name: color.name,\r\n enName: color.enName,\r\n price: color.deltaPrice ? parseInt(color.deltaPrice, 10) : 0,\r\n image: color.image,\r\n } as IReduxColor;\r\n}\r\n","/**\r\n * @description: This custom hook calls the Zipgate component and updates\r\n * the zipcode in Redux to update the state once the zipcode is entered.\r\n */\r\n\r\nexport const displayZipgate = (hideCloseButton?: boolean) => {\r\n const Acr = window.Acr || undefined;\r\n if (Acr && Acr.zipgateComponent) {\r\n Acr.zipgateComponent.openZipgate(\r\n () => {},\r\n {},\r\n false,\r\n hideCloseButton\r\n );\r\n }\r\n}\r\n","export function hideGlobalNav(isFullContent: boolean): void {\r\n const isHonda = process.env.REACT_APP_THEME === 'honda';\r\n const navBarElement = document.getElementsByClassName(\r\n isHonda ? 'm_globalNav' : 'js-acr-nav'\r\n ) as HTMLCollectionOf;\r\n\r\n if (navBarElement.length) {\r\n navBarElement[0].style.transition = 'transform .5s';\r\n navBarElement[0].style.transform = isFullContent ? 'translateY(-100%)' : '';\r\n }\r\n}\r\n\r\nexport function removeMinHeight() {\r\n const root = document.getElementById('root');\r\n\r\n root && (root.style.minHeight = '0');\r\n}\r\n\r\nexport function resetMinHeight() {\r\n const root = document.getElementById('root');\r\n\r\n root && (root.style.minHeight = '');\r\n}\r\n","import { useState, useEffect, useRef } from \"react\";\r\n\r\n\r\n/**\r\n * @description: This custom hook receives a list of sources to be loaded and returns\r\n * an object with three state values: hasLoaded:boolean, hasError:boolean and hastStatedInitialFetch:boolean.\r\n *\r\n * @param sources: string[] | undefined\r\n */\r\nexport const useLoadImages = (sources?: string[] | undefined) => {\r\n const [hasLoaded, setHasLoaded] = useState(false);\r\n const [hasError, setHasError] = useState(false);\r\n const [hasStartedInitialFetch, setHasStartedInitialFetch] = useState(false);\r\n const loadedImageCount = useRef(0);\r\n const [cachedImagesList, setCachedImagesList] = useState([]);\r\n\r\n useEffect(() => {\r\n if (sources && sources.length > 0) {\r\n const handleError = () => {\r\n setHasError(true);\r\n };\r\n const handleLoad = (event: any) => {\r\n loadedImageCount.current += 1;\r\n if (loadedImageCount.current === sources?.length) {\r\n const path = event.currentTarget.attributes.src.nodeValue;\r\n setHasLoaded(true);\r\n let newList = cachedImagesList;\r\n if (newList.includes(path) === false) {\r\n newList.push(path);\r\n }\r\n setCachedImagesList(newList);\r\n }\r\n };\r\n\r\n const imageList: HTMLImageElement[] = [];\r\n let isLoadedFlag: Boolean = true;\r\n loadedImageCount.current = 0;\r\n sources.forEach((src) => {\r\n if (!cachedImagesList.includes(src)) {\r\n isLoadedFlag = false;\r\n setHasStartedInitialFetch(true);\r\n setHasLoaded(false);\r\n setHasError(false);\r\n\r\n const image = new Image();\r\n image.src = src;\r\n\r\n image.onerror = handleError;\r\n image.onload = handleLoad;\r\n imageList.push(image);\r\n }\r\n });\r\n\r\n if (isLoadedFlag) {\r\n setHasLoaded(true);\r\n }\r\n\r\n return () => {\r\n imageList.forEach((image) => {\r\n image.removeEventListener(\"error\", handleError);\r\n image.removeEventListener(\"load\", handleLoad);\r\n })\r\n };\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [sources]);\r\n\r\n return { hasLoaded, hasError, hasStartedInitialFetch };\r\n};","import { useQuery } from 'react-query';\r\nimport axios from 'axios';\r\nimport {\r\n IPackage,\r\n IRequestAQuoteData,\r\n ITaxonomy,\r\n} from 'interfaces/requestAQuote';\r\n\r\nexport function useLoadRAQData(queryKey: string) {\r\n return useQuery(\r\n queryKey,\r\n async () => {\r\n let response;\r\n response = await axios.get(queryKey);\r\n\r\n response.data.taxonomy = response.data.taxonomy.map((tax: ITaxonomy) => {\r\n tax.vehicles.forEach((vehicle) => {\r\n const undecidedValue: IPackage = {\r\n vehicleModel: 'Undecided',\r\n packageName: 'Undecided',\r\n packageDescription: '',\r\n packageImageUrl: vehicle.defaultVehicleImage,\r\n packageImageAlt: vehicle.defaultVehicleImageAlt,\r\n };\r\n vehicle.packages?.push(undecidedValue);\r\n });\r\n return tax;\r\n });\r\n return response.data as IRequestAQuoteData;\r\n },\r\n {\r\n staleTime: Infinity, //adding staleTime to avoid re fetching the endpoint each time the user refocus the page.\r\n }\r\n );\r\n}\r\n","import { useMutation } from 'react-query';\r\nimport axios from 'axios';\r\n\r\nexport const sendQuoteRequest = async (data: any) => {\r\n const base64EncodedData = window.btoa(JSON.stringify(data));\r\n const { data: response } = await axios.post(\r\n '/platform/api/v1/quoterequests',\r\n `\"${base64EncodedData}\"`,\r\n {\r\n headers: {\r\n 'Content-Type': 'application/json; charset=utf-8',\r\n },\r\n }\r\n );\r\n return response.data;\r\n};\r\n\r\nexport function usePostQuoteRequest(onSuccess: Function, onError: Function) {\r\n return useMutation(sendQuoteRequest, {\r\n onSuccess: () => {\r\n onSuccess();\r\n },\r\n onError: () => {\r\n onError();\r\n },\r\n });\r\n}\r\n","import { ICta } from './cta';\r\nimport { Dealer } from './dealerLocator';\r\nimport { Image } from './image';\r\nimport { IBaseModal } from './modal';\r\nimport { IColor } from './package';\r\nimport { IReduxColor } from './vehicle';\r\n\r\nexport interface IRAQColor extends IColor {\r\n accentName?: string;\r\n accentImage?: Image;\r\n fabricImage?: Image;\r\n}\r\n\r\nexport interface IRequestAQuoteData {\r\n pageContent: {\r\n labels: {\r\n [key: string]: string;\r\n };\r\n ctas?: {\r\n [key: string]: ICta;\r\n };\r\n featureToggles: {\r\n [key: string]: boolean;\r\n };\r\n modals: {\r\n [key: string]: IBaseModal;\r\n };\r\n informationForm: IInformationForm;\r\n };\r\n taxonomy: ITaxonomy[];\r\n vehicleData?: IRequestAQuoteVehicle;\r\n}\r\n\r\nexport interface IADXEnhancedData {\r\n labels: {\r\n [key: string]: string;\r\n };\r\n ctas?: {\r\n [key: string]: ICta;\r\n };\r\n informationForm: IInformationForm;\r\n transactionType: string;\r\n}\r\n\r\nexport interface IRequestAQuoteVehicle {\r\n inventory?: IInventoryInfo;\r\n photos?: string[];\r\n offersInfo: IOfferCardInfo;\r\n modelId: string;\r\n modelYear: number;\r\n modelSeries: string;\r\n modelMarketingName: string;\r\n drivetrain: string;\r\n engine: string;\r\n packages: string[];\r\n exteriorColor: IRAQColor;\r\n interiorColor: IRAQColor;\r\n}\r\n\r\nexport interface IOfferCardInfo {\r\n vehicleCardImage: string;\r\n vehicleCardDisclaimer: {\r\n id: string;\r\n title: string;\r\n description: string;\r\n };\r\n}\r\nexport interface IInventoryInfo {\r\n dealer: Dealer | null;\r\n msrp: string | null;\r\n numberOnSite: number;\r\n numberInTransit: number;\r\n}\r\nexport interface IRAQConfiguration {\r\n modelSeries?: string;\r\n modelYear?: string;\r\n modelId?: string;\r\n dealerId?: string;\r\n hideDealerChange?: boolean;\r\n variant: VehicleSelectorType;\r\n disableForm?: boolean;\r\n vinNumber?: string;\r\n}\r\n\r\nexport interface IRAQConfigurationBAP extends IRAQConfiguration {\r\n modelId?: string;\r\n exteriorColor?: IReduxColor;\r\n interiorColor?: IReduxColor;\r\n powertrain?: string;\r\n package?: string;\r\n variant: VehicleSelectorType.bap | VehicleSelectorType.savedConfig;\r\n}\r\n\r\nexport interface IRAQConfigurationOffers extends IRAQConfiguration {\r\n modelId: string;\r\n offers: string[];\r\n variant: VehicleSelectorType.offers;\r\n}\r\nexport interface IRAQConfigurationPE extends IRAQConfiguration {\r\n modelId: string;\r\n dealerId?: string;\r\n offers?: string[];\r\n variant: VehicleSelectorType.offers | VehicleSelectorType.basic;\r\n}\r\nexport interface IRAQConfigurationInventory extends IRAQConfiguration {\r\n modelId: string;\r\n dealerId: string;\r\n exteriorColor: {\r\n code: string;\r\n };\r\n interiorColor: {\r\n code: string;\r\n };\r\n variant: VehicleSelectorType.inventory;\r\n}\r\n\r\nexport interface IInformationForm {\r\n 'first-name': IInputField;\r\n 'last-name': IInputField;\r\n email: IInputField;\r\n 'raq-zipcode': IInputField;\r\n phone: IInputField;\r\n comments: IInputField;\r\n terms: IInputField;\r\n submitText: string;\r\n}\r\n\r\nexport interface IInputField {\r\n name: string;\r\n label: string;\r\n required?: IRequiredError | null;\r\n pattern: IPatternError | null;\r\n maxLength: number;\r\n}\r\n\r\nexport interface IRequiredError {\r\n value: boolean;\r\n message: string;\r\n}\r\n\r\nexport interface IPatternError {\r\n value: string;\r\n message: string;\r\n}\r\nexport interface IVehicleTaxonomy {\r\n Results: ITaxonomy[];\r\n}\r\n\r\nexport interface ITaxonomy {\r\n sitecoreId: string;\r\n taxonomyName: string;\r\n taxonomyVehicle: string | null;\r\n modelYear: string | null;\r\n defaultVehicleImage: string;\r\n defaultVehicleImageAlt: string;\r\n packages: IPackage[] | null;\r\n vehicles: ITaxonomy[];\r\n isCurrentModels: boolean;\r\n supplyMessage: string;\r\n}\r\n\r\nexport interface IPackage {\r\n vehicleModel: string;\r\n packageName: string;\r\n packageDescription: string;\r\n packageImageUrl: string;\r\n packageImageAlt: string;\r\n}\r\n\r\nexport enum VehicleSelectorType {\r\n basic = 'basic',\r\n paymentEstimator = 'paymentEstimator',\r\n offers = 'offers',\r\n bap = 'bap',\r\n inventory = 'inventory',\r\n savedConfig = 'savedConfig',\r\n}\r\n\r\nexport interface ICardInformation {\r\n modelName: string;\r\n modelYear: string;\r\n msrp?: {\r\n value: number | string;\r\n disclaimer?: string;\r\n caption: string;\r\n };\r\n}\r\n\r\nexport interface ICardInformationBasic extends ICardInformation {\r\n imgAlt?: string;\r\n img: string;\r\n description?: string;\r\n}\r\n\r\nexport interface ICardInformationComplex extends ICardInformation {\r\n bullets?: string[];\r\n images?: string[];\r\n colors: IReduxColor[];\r\n captionTitle?: string;\r\n captionDescription?: string;\r\n}\r\n\r\nexport interface IQuoteRequest {\r\n accessories?: IBAPAccessory[] | null;\r\n adobeTransactionId?: string;\r\n vehicleModelSeries: string;\r\n modelYear: string;\r\n modelId: string | null;\r\n exteriorColorCode: string;\r\n exteriorColorIdent: string;\r\n exteriorColorName: string;\r\n exteriorColorPriceDelta: string;\r\n interiorColorCode: string;\r\n interiorColorIdent: string;\r\n interiorColorName: string;\r\n modelMarketingName: string;\r\n totalAsConfigured: string;\r\n dealerId: string;\r\n localDealerName: string;\r\n vinNumber: string | null;\r\n offerId?: string[] | null;\r\n source: string;\r\n zipCode: string;\r\n shoppingTool: string;\r\n provider: string;\r\n tracking: {\r\n campaingName: string;\r\n shoppingTool: string;\r\n };\r\n addressScrubbing: boolean;\r\n userInfo: {\r\n __RequestVerificationToken: string;\r\n firstName: string;\r\n lastName: string;\r\n email: string;\r\n zipcode: string;\r\n phone?: string;\r\n comments?: string;\r\n terms: string;\r\n };\r\n}\r\n\r\nexport interface IFormData {\r\n comments?: string;\r\n email: string;\r\n 'first-name': string;\r\n 'last-name': string;\r\n phone?: string;\r\n terms: boolean;\r\n 'raq-zipcode': string;\r\n}\r\n\r\nexport interface IBAPAccessory {\r\n Name: string;\r\n Price: number;\r\n Code: string;\r\n Type: 'E' | 'I';\r\n}\r\n"],"names":["honda_blue","appPalette","colors","useStyles","makeStyles","root","_defineProperty","display","flexDirection","theme","breakpoints","up","noChangeDealer","marginTop","dealerTextButtonContainer","_objectSpread","justifyContent","width","marginBottom","themeName","color","dealerCTASvg","height","marginLeft","paddingTop","_appPalette$colors","light_grey_2","off_white","light_grey_6","light_grey_4","white","black","honda_red","offset","borderRadius","boxShadow","border","concat","background","padding","position","fill","noBorder","borderBottom","dealerHeader","alignItems","flexWrap","dealerIndex","margin","minWidth","dealerTitle","textAlign","marginRight","textTransform","backgroundColor","dealerAddress","textDecoration","dealerDistanceMiles","directionIcon","directionContainer","telephone","directionLink","telephoneLink","telephoneText","preferredButton","top","right","outline","outlineOffset","outlineColor","preferredButtonNoBorder","dealerCTAs","dealerCTAContainer","dealerCTAText","whiteSpace","dealerCTALink","overflow","textOverflow","fontFamily","appFonts","AvenirNextDemi","fontSize","letterSpacing","lineHeight","dealerCTAButton","DealerInfoCard","_ref","_dealer$address","_dealer$city","_dealer$state","_dealer$zipCode","dealer","classes","isHondaTheme","useTheme","iconMainColor","currentPreferredDealer","useSelector","preferredDealer","dispatch","useDispatch","getDealerBingDirection","address","replace","city","state","zipCode","_jsxs","Card","className","children","_jsx","Grid","container","direction","TextRender","text","name","component","IconButton","disableRipple","onClick","actionLabel","dealerNumber","removePreferredDealerId","setPreferredDealerId","trackEvent","label","category","includePageName","type","dealerId","dealerZipcode","dealerName","handlePreferredDealerId","size","Icon","Icons","preferredDealerSelected","item","xs","md","lg","LinkButton","variant","LinkButtonType","simple","target","to","isExternal","classNames","ariaLabel","filledDirections","directions","tagName","phone","dealerPhone","filledTelephone","dealerLockKeyName","trueString","DealerInfo","hideChangeDealer","isHondaThemed","dealerLockID","sessionStorage","getItem","dataAutomation","trackEventData","removeSelectedDealer","arrow","_Fragment","DealerLocator","props","dealerID","zipcode","selectZipcode","dealersFetch","useDealerLocatorDealers","undefined","dealerList","data","find","setSelectedDealer","currentSelectedDealer","selectedDealer","isEmbedded","DealerLocatorContainer","acura_red","mid_grey_2","black_o01","light_grey_7","hidden","placeholder","content","zIndex","transform","borderTop","borderRight","pointerEvents","popper","menu_container","overflowY","maxHeight","webkitBoxShadow","menu_item","wordWrap","minHeight","overInputModifiers","options","enabled","altAxis","altBoundary","tether","rootBoundary","createDropdownItemObj","value","createIdFromText","changeFunction","selectedValue","defaultValue","disabled","hideInputOnExpand","containerRef","useRef","buttonRef","_useState","useState","_useState2","_slicedToArray","isOpen","setIsOpen","modifiers","selectedValueProcessed","useMemo","_ref2","lowerValue","toLowerCase","lowerSelected","lowerDefault","closeDropdown","handleListKeyDown","event","_buttonRef$current","key","current","focus","document","body","classList","remove","handleListItemKeyDown","_buttonRef$current2","preventDefault","ref","Button","prev","Popper","open","anchorEl","placement","transition","disablePortal","_ref3","TransitionProps","Grow","style","transformOrigin","Paper","ClickAwayListener","onClickAway","MenuList","autoFocusItem","onKeyDown","map","option","MenuItem","paper","viewHeight","maxWidth","modal_data","paddingBottom","mid_grey","copy_button","cursor","copy","button_group","confirmation_button","boxSizing","FormStatusOptions","RequestAQuoteModal","closeFunction","configuration","raqTitle","raqDescription","source","pageLoadConfig","confirmationPageLoadConfig","zipcodeTest","setFormData","viewHeightValue","use100vh","viewHeightStyle","modalId","_useSelector","getCurrentConfig","currentValue","configStatus","isSavedConfigModalOpen","isConfigFromSaved","VehicleSelectorType","bap","inventory","raqEndpointParams","generateParameters","modelId","exteriorColorCode","exterior","interiorColorCode","interior","fullTaxonomy","exteriorColor","interiorColor","internalCode","_useLoadRAQData","useLoadRAQData","status","_ref4","pageContent","vehicleData","savedConfigContent","modals","raqModalSavedConfig","finalConfiguration","toUpperCase","modelSeries","modelYear","toString","accessories","powertrain","engine","drivetrain","package","msrp","totalPrice","savedConfig","vinNumber","handleSavedConfigContinue","setConfigStatus","handleSavedConfigCancel","useEffect","pageLoad","displayZipgate","_ref7","setCurrentConfig","ModalContainer","title","displayTitle","noTracking","RequestAQuoteContainer","description","scrollContainerId","shoppingTool","isInModal","SavedConfigModal","referrerPage","cancelFunction","continueFunction","closePageLoadTracking","RequestAQuoteSkeleton","requestAQuoteLoader","left","content_title","content_desc","content_img_container","aspectRatio","content_img","content_caption","content_actions","content_cta","pageLoadObj","getPageLoadSavedConfig","yesButton","noButton","modelTrim","buildAndPrice","carPicture","alternativeText","sources","small","join","clickTrackingObject","includePage","replaceTokens","useCallback","withPrep","model","test","parsedTitle","parsedContent","_window$Acr","_window$Acr$dataLayer","_window$Acr$dataLayer2","_window$Acr$dataLayer3","isTriggeredPageLoad","window","Acr","dataLayer","Page","page_name","includes","subSection","cleanHTMLFromString","pageName","Picture","image","img","redOutlined","red","ctaContainer","flexFlow","Confirmation","ctas","Object","keys","href","url","form_container","submit_button","input_group_container","paddingRight","paddingLeft","input_container","input","borderColor","spinner","animation","required_tag","error_text","dark_grey_1","TextField","isRequired","pattern","error","maxLength","onChange","methods","useFormContext","register","newPattern","id","required","message","RegExp","svgString","encodeURIComponent","renderToStaticMarkup","xmlns","viewBox","points","checkbox_container","checkbox","appearance","WebkitAppearance","backgroundImage","bottom","CheckboxField","infoText","useBeforeLeave","_function","callbackRef","onUnload","addEventListener","removeEventListener","InformationForm","_stepData$firstName","_stepData$firstName2","_stepData$firstName3","_stepData$firstName3$","_stepData$firstName4","_stepData$firstName5","_shownErrors$firstNa","_stepData$firstName6","_stepData$lastName","_stepData$lastName2","_stepData$lastName3","_stepData$lastName3$r","_stepData$lastName4","_stepData$lastName5","_shownErrors$lastNam","_stepData$lastName6","_stepData$email","_stepData$email2","_stepData$email3","_stepData$email3$requ","_stepData$email4","_stepData$email5","_shownErrors$email","_stepData$email6","_stepData$raqZipcode","_stepData$raqZipcode2","_stepData$raqZipcode3","_stepData$raqZipcode4","_stepData$raqZipcode5","_stepData$raqZipcode6","_shownErrors$raqZipc","_stepData$raqZipcode7","_stepData$phone","_stepData$phone2","_stepData$phone3","_stepData$phone3$requ","_stepData$phone4","_stepData$phone5","_stepData$phone6","_stepData$comments","_stepData$comments2","_stepData$comments3","_stepData$comments3$r","_stepData$comments4","_stepData$comments5","_stepData$comments6","_stepData$terms","_stepData$terms2","_stepData$terms3","_stepData$terms3$requ","_shownErrors$terms","_stepData$terms4","stepData","isLoading","onSubmit","isAdxEnhanced","shownErrors","setShownErrors","raqVehicleData","getRAQData","adxVehicleData","getADXData","useForm","handleSubmit","setValue","vehicleModelSeries","handleInputChange","e","_e$target","checked","FormProvider","autoComplete","noValidate","errors","trackedErrors","forEach","errorField","email","length","comments","terms","link","submitText","tab_vehicle_year","select_vehicle_year","vehicle_year_tab","button_container","opacity","form_control","supply_message","vehicle_card_container","error_tag","focusableStyles","useBasicCardStyles","imgContainer","cardSkeleton","basicCardWithCaptionSkeleton","spinner_container","modal_name","useComplexCardStyles","light_grey_1","cardInfoContainer","captionContainer","swiper_img","swiper_navigation_button","swiper_navigation_full_toggle","visibility","swiper_navigation_button_prev","swiper_navigation_button_next","swiper_controls","swiperContainer","swiper","colorsContainer","light_grey_3","modelContainer","colorImg","colorText","colorItem","bullets","bullet","verticalAlign","VehicleCardBasic","cardInfo","imgLoaded","imgError","basicCardClasses","modelName","src","alt","imgAlt","VehicleCardBasicCaption","swipperNavigation","nextEl","prevEl","swipperPagination","clickable","bulletActiveClass","el","renderBullet","index","VehicleCardComplex","_cardInfo$msrp","_cardInfo$msrp2","_cardInfo$msrp3","_cardInfo$colors","_cardInfo$bullets","complexCardClasses","SwiperCore","use","Navigation","Pagination","A11y","images","Swiper","slidesPerView","navigation","pagination","resizeObserver","loop","initialSlide","photo","SwiperSlide","arrowLeft","arrowRight","Skeleton","convertCostValue","disclaimer","caption","captionDescription","captionTitle","VehicleCard","actualImage","setActualImage","cardInfoComplex","cardInfoBasic","defaultBasicImage","defaultComplexImage","_toConsumableArray","imageList","_useLoadImages","useLoadImages","hasLoaded","hasError","basic","paymentEstimator","offers","getTransitLotText","numberInTransit","numberOnSite","labels","result","push","inTransit","onLot","inventoryDisclaimer","findSelectedItemsByModelId","taxonomies","_step","_iterator","_createForOfIteratorHelper","s","n","done","_step2","taxonomy","_iterator2","vehicles","_vehicle$packages","vehicle","selectedPackage","packages","_package","vehicleModel","newSelectedTaxonomy","newSelectedModel","newSelectedPackage","err","f","VehicleSelector","_selectedTaxonomy$veh","_selectedModel$packag","onEnabled","showModelError","showPackageError","selectedTaxonomy","setSelectedTaxonomy","_useState3","_useState4","selectedModel","setSelectedModel","_useState5","_useState6","setSelectedPackage","_useState7","_useState8","vehicleCardInfo","setVehicleCardInfo","isFormDisabled","disableForm","_findSelectedItemsByM","setVehicleData","taxonomyVehicle","modelID","_findSelectedItemsByY","_step3","_iterator3","selectedVehicle","findSelectedItemsByYearAndSeries","_findSelectedItemsByS","_step4","_iterator4","findSelectedItemsBySeries","_findSelectedItemsByM2","newVehicleCardInfo","defaultVehicleImageAlt","defaultVehicleImage","vehicleInfo","_vehicleInfo$inventor","_vehicleInfo$inventor2","_vehicleInfo$inventor3","_vehicleInfo$inventor4","_vehicleInfo$inventor5","_data$vehicleData","packageWord","packageCapitalized","charAt","slice","parseColorData","photos","_data$vehicleData2","_offerCardInfo$vehicl","_offerCardInfo$vehicl2","offerCardInfo","offersInfo","vehicleCardDisclaimer","vehicleCardImage","packageImageAlt","packageImageUrl","packageDescription","msrpDisclaimer","taxonomyName","handleTaxonomyClick","tabIndex","FormControl","Dropdown","_newSelectedTaxonomy$","missingModelError","supplyMessage","pkg","packageName","missingPackageError","flexGrow","header","dealerContainer","errorTag","wrapper","raqScrollTop","isMinHeightRemoval","scrollElement","getElementById","scrollTo","removeMinHeight","_vehicleData$inventor","setFormStatus","informationForm","customDealer","stepThreeEnabled","setStepThreeEnabled","showGlobalError","setShowGlobalError","setShowModelError","setShowPackageError","_usePostQuoteRequest","usePostQuoteRequest","success","mutate","requestVerificationToken","_document$querySelect","querySelector","getRequestVerificationToken","getExteriorColorProp","prop","exteriorData","manufacturingCode","colorIdentifier","price","getInteriorColorProp","interiorData","code","globalError","Step","stepNumber","isPartial","isEnabled","sectionName","selectADealer","customDealerShowMoreDelta","showLocationBar","selectAVehicle","enterYourInformation","formData","cookies","Cookies","shoppingToolSource","defaultShoppingToolSource","cookie","get","quoteRequestObject","reduce","filtered","accessory","categoryName","mappedAccessory","Name","enName","Price","Code","opCode","Type","adobeTransactionId","modelMarketingName","exteriorColorIdent","exteriorColorName","exteriorColorPriceDelta","interiorColorIdent","interiorColorName","totalAsConfigured","localDealerName","offerId","provider","tracking","campaingName","addressScrubbing","userInfo","__RequestVerificationToken","firstName","lastName","sendQuoteRequest","initial","formStatus","confirmationSuccessTitle","confirmationSuccessDescription","confirmationErrorTitle","confirmationErrorDescription","RequestAQuoteForm","dealerInfoContainer","headerTitle","headerDescription","vehicleInformationContainer","stepContainer","step1Container","step","zipInput","filter","dealerTabs","dealerTab","dealerTabActive","changeDealerButton","dealerCard","dealersMap","flexBasis","dropdownTitle","taxonomyTab","dropdown","dropdownContainer","vehicleCard","vehicleDataContainer","formLabel","formInput","formContainer","inputContainer","disclaimerTextContainer","disclaimerText","submitButton","matchesMobileMidBreakpoint","useMediaQuery","noSsr","matchesMediumBreakpoint","vehicleSelectorType","Array","stepTitle","flex","stepDisabled","stepTitlePartial","stepCaption","stepContent","stepDisabledClass","stepTitlePartialClass","deltaPrice","parseInt","hideCloseButton","zipgateComponent","openZipgate","hideGlobalNav","isFullContent","navBarElement","getElementsByClassName","resetMinHeight","setHasLoaded","setHasError","hasStartedInitialFetch","setHasStartedInitialFetch","loadedImageCount","cachedImagesList","setCachedImagesList","handleError","handleLoad","path","currentTarget","attributes","nodeValue","newList","isLoadedFlag","Image","onerror","onload","queryKey","useQuery","_asyncToGenerator","_regeneratorRuntime","mark","_callee","response","wrap","_context","next","axios","sent","tax","undecidedValue","abrupt","stop","staleTime","Infinity","base64EncodedData","_yield$axios$post","btoa","JSON","stringify","headers","_x","apply","arguments","onSuccess","onError","useMutation"],"sourceRoot":""}