{"version":3,"file":"static/chunks/4611.45d4c6cf770de13a.js","mappings":"0kBAAAA,EAAe,CAAC,sZAAyG,0BCAzHC,EAAe,CAAC,uGCAhBC,EAAe,CAAC,iVAAoH,0BCApIC,EAAe,CAAC,kaAAiH,oCC4BjIC,EA1BmB,OAAC,CAAEC,OAAAA,CAAM,CAAE,CAAAC,EAC5B,MACE,GAAAC,EAAAC,IAAA,EAACC,MAAAA,CAAIC,UAAU,kCACb,GAAAH,EAAAI,GAAA,EAACC,KAAAA,CAAGF,UAAU,kCACZ,GAAAH,EAAAI,GAAA,EAACE,IAAIA,CACHC,aAAYT,EAAOU,KAAK,CACxBC,KAAMX,EAAOY,IAAI,CACjBP,UAAU,8CAETL,EAAOU,KAAK,KAGjB,GAAAR,EAAAI,GAAA,EAACO,KAAAA,UACEb,CAAAA,MAAAA,EAAAA,KAAAA,EAAAA,EAAQc,UAAU,GACjBC,OAAOC,OAAO,CAAChB,EAAOc,UAAU,EAAEG,GAAG,CAAC,OAAC,CAACC,EAAKC,EAAK,CAAAlB,QAChD,GAAAC,EAAAI,GAAA,EAACc,KAAAA,CAAaf,UAAU,kCACtB,GAAAH,EAAAI,GAAA,EAACE,IAAIA,CAACC,aAAYU,EAAMR,KAAMQ,WAC3BD,KAFIA,SASrB,ECPA,IAAMG,EAAaC,IAAQ,IAAMC,EAAAC,CAAA,OAAAC,IAAA,CAAAF,EAAAG,IAAA,CAAAH,EAAA,OAA0C,wCACzEI,IAAK,KAyJP,IAAAC,EAtJe,OAAC,CAAE5B,OAAAA,CAAM,CAAE,CAAAC,EACxB,MACE,GAAAC,EAAAI,GAAA,EAACN,SAAAA,CAAOK,UAAU,8CAChB,GAAAH,EAAAC,IAAA,EAACC,MAAAA,CAAIC,UAAU,sBACb,GAAAH,EAAAC,IAAA,EAACC,MAAAA,WACC,GAAAF,EAAAC,IAAA,EAACC,MAAAA,CAAIC,UAAU,oGACZU,OAAOC,OAAO,CAAChB,GAAQiB,GAAG,CAAC,CAAAhB,EAAsB4B,QAArB,CAACC,EAAW9B,EAAO,CAAAC,QAC9C,GAAAC,EAAAI,GAAA,EAACF,MAAAA,CAECC,UAAW,GAEV0B,MAAA,CADCF,IAAAA,EAAc,4CAA8C,aAG9D,GAAA3B,EAAAI,GAAA,EAAC0B,EAAUA,CAAChC,OAAQA,KALf8B,KAQT,GAAA5B,EAAAC,IAAA,EAACC,MAAAA,CAAIC,UAAU,iGACb,GAAAH,EAAAC,IAAA,EAACC,MAAAA,CAAIC,UAAU,mCACb,GAAAH,EAAAI,GAAA,EAAC2B,IAAAA,CAAE5B,UAAU,qBAAa6B,EAAAA,CAAMA,CAACC,wBAAwB,GACzD,GAAAjC,EAAAC,IAAA,EAACC,MAAAA,CAAIC,UAAU,4EACZU,OAAOC,OAAO,CAACoB,EAAAA,EAAYA,EAAEnB,GAAG,CAAC,QAKxBoB,KALyB,CAACC,EAAMD,EAAO,CAAApC,QAC/C,GAAAC,EAAAI,GAAA,EAACE,IAAIA,CAEHC,aAAY6B,EACZC,OAAO,SACP5B,KAAM0B,OAAAA,CAAAA,EAAAA,MAAAA,EAAAA,KAAAA,EAAAA,EAAQG,GAAG,GAAXH,KAAAA,IAAAA,EAAAA,EAAe,YAErB,GAAAnC,EAAAI,GAAA,EAACmC,EAAAA,CAAIA,CAAAA,CACHpC,UAAU,UACVqC,MAAM,QACNC,OAAQ,GACRC,KAAMN,EACNO,MAAO,MAVJP,EAYD,GAER,GAAApC,EAAAI,GAAA,EAACE,IAAIA,CACHG,KAAK,8DACL4B,OAAO,kBAEP,GAAArC,EAAAI,GAAA,EAACwC,IAAKA,CACJC,IAAKC,EACLH,MAAO,GACPF,OAAQ,GACRM,IAAI,6BAKZ,GAAA/C,EAAAI,GAAA,EAACF,MAAAA,CAAIC,UAAU,2BACb,GAAAH,EAAAI,GAAA,EAACF,MAAAA,CAAIC,UAAU,wCACb,GAAAH,EAAAI,GAAA,EAACe,EAAAA,CAAAA,aAKT,GAAAnB,EAAAI,GAAA,EAACF,MAAAA,CAAIC,UAAU,2BACb,GAAAH,EAAAI,GAAA,EAACF,MAAAA,CAAIC,UAAU,4BACb,GAAAH,EAAAI,GAAA,EAACe,EAAAA,CAAAA,UAIP,GAAAnB,EAAAI,GAAA,EAACF,MAAAA,CAAIC,UAAU,iDACf,GAAAH,EAAAI,GAAA,EAACF,MAAAA,UACC,GAAAF,EAAAI,GAAA,EAACwC,IAAKA,CACJzC,UAAU,kCACV0C,IAAKG,EACLD,IAAI,sBACJN,OAAQ,GACRE,MAAO,IACPM,YAAW,OAGf,GAAAjD,EAAAI,GAAA,EAACF,MAAAA,UACE8B,EAAAA,CAAMA,CAACkB,cAAc,CAACC,KAAK,CAAC,MAAMpC,GAAG,CAAC,CAACqC,EAAMzB,IAC5C,GAAA3B,EAAAI,GAAA,EAAC2B,IAAAA,CAAc5B,UAAW,GAA6B0B,MAAA,CAA1BF,IAAAA,EAAc,OAAS,aACjDyB,GADKzB,MAKZ,GAAA3B,EAAAI,GAAA,EAACF,MAAAA,CAAIC,UAAU,iDACf,GAAAH,EAAAC,IAAA,EAACC,MAAAA,CAAIC,UAAU,mDACb,GAAAH,EAAAC,IAAA,EAACC,MAAAA,CAAIC,UAAU,+FACb,GAAAH,EAAAI,GAAA,EAACE,IAAIA,CACHC,aAAYyB,EAAAA,CAAMA,CAACqB,uBAAuB,CAC1ClD,UAAU,yCACVM,KAAM6C,EAAAA,EAAmBA,UAExBtB,EAAAA,CAAMA,CAACqB,uBAAuB,GAEjC,GAAArD,EAAAI,GAAA,EAACE,IAAIA,CACHC,aAAYyB,EAAAA,CAAMA,CAACuB,iBAAiB,CACpCpD,UAAU,6BACVM,KAAM+C,EAAAA,EAAaA,UAElBxB,EAAAA,CAAMA,CAACuB,iBAAiB,GAE3B,GAAAvD,EAAAI,GAAA,EAAC2B,IAAAA,CAAE5B,UAAU,2BACV,GACC6B,MAAAA,CADEA,EAAAA,CAAMA,CAACyB,4BAA4B,CAAC,KAEpCC,MAAAA,CADF1B,EAAAA,CAAMA,CAAC2B,wBAAwB,CAChC,KAAsB3B,MAAAA,CAAnB0B,CAAAA,EAAAA,EAAAA,EAAAA,IAAgB,KAAwC7B,MAAA,CAArCG,EAAAA,CAAMA,CAAC4B,6BAA6B,OAG/D,GAAA5D,EAAAI,GAAA,EAAC2B,IAAAA,CAAE5B,UAAU,2BACV,GACC6B,MAAAA,CADEA,EAAAA,CAAMA,CAACyB,4BAA4B,CAAC,KAEpCC,MAAAA,CADF1B,EAAAA,CAAMA,CAAC2B,wBAAwB,CAChC,KAAsB3B,MAAAA,CAAnB0B,CAAAA,EAAAA,EAAAA,EAAAA,IAAgB,KAAwC7B,MAAA,CAArCG,EAAAA,CAAMA,CAAC4B,6BAA6B,IAE7D,GAAA5D,EAAAC,IAAA,EAACC,MAAAA,WACC,GAAAF,EAAAI,GAAA,EAACE,IAAIA,CACHC,aAAW,eACXE,KAAK,iCACL4B,OAAO,kBAEP,GAAArC,EAAAC,IAAA,EAACC,MAAAA,CAAIC,UAAU,uCACb,GAAAH,EAAAI,GAAA,EAACwC,IAAKA,CACJzC,UAAU,eACV0C,IAAKgB,EACLd,IAAI,OACJN,OAAQ,GACRE,MAAO,KAET,GAAA3C,EAAAI,GAAA,EAACwC,IAAKA,CACJzC,UAAU,gCACV0C,IAAKiB,EACLf,IAAI,oBACJN,OAAQ,GACRE,MAAO,WAIb,GAAA3C,EAAAC,IAAA,EAAC8B,IAAAA,CAAE5B,UAAU,sBACV6B,EAAAA,CAAMA,CAAC+B,iBAAiB,CAAE,IAC3B,GAAA/D,EAAAI,GAAA,EAACE,IAAIA,CACHG,KAAMuD,EAAAA,EAAkBA,CACxBzD,aAAYyB,EAAAA,CAAMA,CAACiC,uBAAuB,UAEzCjC,EAAAA,CAAMA,CAACiC,uBAAuB,SAIrC,GAAAjE,EAAAI,GAAA,EAAC2B,IAAAA,CAAE5B,UAAU,oEACV6B,EAAAA,CAAMA,CAACkC,gBAAgB,UAMpC,oDChHAC,EAnDuB,QAOnBC,KAPoB,CAAEC,aAAAA,CAAY,CAAEpD,KAAAA,CAAI,CAAEyB,KAAAA,CAAI,CAAE4B,QAAAA,CAAO,CAAE,CAAAvE,EACrDwE,EAASC,CAAAA,EAAAA,EAAAA,SAAAA,IAKTC,EACJ,QAAAL,CAAAA,EAAA,GAAuCvC,MAAA,CAApC6C,CAJH,yBAA0B,SAC5B,CAGY,CAAChC,EAAK,EAAIA,EAAKiC,WAAW,GAAG,cAAvCP,KAAA,IAAAA,EAAA,OAAAA,EAAkDQ,OAAO,CAAC,KAAM,MAAO,GAEzEC,CAAAA,EAAAA,EAAAA,SAAAA,EAAU,KAEU,UAAhB,OAAO5D,GACPA,GACA,CAACA,EAAK6D,QAAQ,CAAC,2BAEfP,EAAOQ,QAAQ,CAAC9D,EAEpB,EAAG,EAAE,EACL,IAAM+D,EACJ,iBAAO/D,GAAqBA,GAAQA,EAAK6D,QAAQ,CAAC,0BAC9C,CAAEG,IAAK,SAAU,EACjB,CAAC,EACP,MACE,GAAAjF,EAAAI,GAAA,EAAAJ,EAAAkF,QAAA,WACG,iBAAOjE,EACN,GAAAjB,EAAAI,GAAA,EAACF,MAAAA,CAAIoE,QAAS,IAAMD,EAAa,aAC/B,GAAArE,EAAAI,GAAA,EAAC+E,EAAcA,CAACC,KAAMnE,EAAMyB,KAAMA,EAAM2C,QAAO,OAGjD,GAAArF,EAAAC,IAAA,EAACK,IAAIA,CAEHC,aAAYmC,EACZvC,UAAU,8IACVM,KAAMQ,EACNqD,QAAS,IAAMD,EAAa,IAC3B,GAAGW,CAAS,WAEb,GAAAhF,EAAAI,GAAA,EAACmC,EAAAA,CAAIA,CAAAA,CACHC,MAAO,eACPrC,UAAU,oBACVsC,OAAQ,OACRC,KAAM+B,EACN9B,MAAO,SAERD,IAdIA,IAmBf,EC2FA4C,EA3IuB,QAiFGlB,EArEFmB,KAZA,CAAEH,KAAAA,CAAI,CAAE1C,KAAAA,CAAI,CAAE2C,QAAAA,EAAU,EAAK,CAAE,CAAAtF,EAC/CwE,EAASC,CAAAA,EAAAA,EAAAA,SAAAA,IACT,CAACgB,EAAWnB,EAAa,CAAGoB,CAAAA,EAAAA,EAAAA,QAAAA,EAAS,IACrC,CAACC,EAAeC,EAAiB,CAAGF,CAAAA,EAAAA,EAAAA,QAAAA,EAAS,MAC7CG,EAAkB,oBAAyB/D,MAAA,CAALa,GAQtCmD,EAAgBN,OAAAA,CAAAA,EAAAA,CANL,CACf,cAAe,SACf,eAAgB,SAChB,cAAe,QACjB,EAE8B,CAAC7C,EAAK,GAAd6C,KAAAA,IAAAA,EAAAA,EAAkB7C,EAIxCmC,CAAAA,EAAAA,EAAAA,SAAAA,EAAU,KACR,IAAMiB,EAAuBC,SAASC,cAAc,CAACJ,GACjDE,GACFH,EAAiBG,EAErB,EAAG,CAACF,EAAgB,EAGpBK,CAAAA,EAAAA,EAAAA,CAAAA,EAAY,SAAUT,EAAW,IAAMnB,EAAa,KAIpD,IAAM6B,EAAgBC,CAAAA,EAAAA,EAAAA,WAAAA,EACpB,QACmBC,EAAbZ,GAAaY,CAAAA,MAAAA,EAAAA,KAAAA,EAAAA,OAAAA,CAAAA,EAAAA,EAAOC,aAAa,GAApBD,KAAAA,IAAAA,EAAAA,KAAAA,EAAAA,EAAsBE,OAAO,IAAK,KACjDjC,EAAa,GAEjB,EACA,CAACmB,EAAU,EAWPe,EAAgB,IAChB7F,IACF6D,EAAOiC,IAAI,CAAC9F,GACZ2D,EAAa,IAEjB,EAEA,MACE,GAAArE,EAAAI,GAAA,EAACF,MAAAA,CACCuG,GAAIb,EACJc,aAlB4B,KAC9BrC,EAAa,GACf,EAiBIsC,aAf4B,KAC9BtC,EAAa,GACf,EAcIlE,UAAU,0BAETuF,GACC,GAAA1F,EAAAI,GAAA,EAACwG,EAAAA,OAAOA,CAAAA,CACNC,OAAQ,GACRC,eAAgB,IAAMzC,EAAa,IACnCqB,cAAeA,EACfqB,eAAgB,CAAEpE,MAAO0C,EAAU,QAAU,EAAG,EAChD2B,UAAW,CAAC3B,EAAU,QAAU,SAAS,CACzC4B,MAAM,QACNC,QACE,GAAAlH,EAAAC,IAAA,EAACC,MAAAA,CACCC,UAAW,uFAEV0B,MAAA,CADCwD,EAAU,uCAAyC,cAErD8B,OAAQjB,EACRkB,MAAO,CAAEC,QAAS7B,EAAY,QAAU,MAAO,YAE9C,CAACH,GACA,GAAArF,EAAAC,IAAA,EAACC,MAAAA,CAAIC,UAAU,uDACb,GAAAH,EAAAI,GAAA,EAACmC,EAAAA,CAAIA,CAAAA,CACHC,MAAO,eACPrC,UAAU,iBACVsC,OAAQ,OACRC,KAAM,QAAA0B,CAAAA,EAAA,MAAWvC,MAAA,CAALa,EAAAA,GAAN0B,KAAA,IAAAA,EAAA,OAAAA,EAAcQ,OAAO,CAAC,KAAM,MAAO,GACzCjC,MAAO,SAET,GAAA3C,EAAAI,GAAA,EAAC2B,IAAAA,CAAE5B,UAAU,4EACViF,iBAAAA,EAAKkC,SAAS,CACX,gBACAlC,EAAKkC,SAAS,MAIxB,GAAAtH,EAAAI,GAAA,EAACF,MAAAA,CAAIC,UAAU,wDACZiF,CAAAA,MAAAA,EAAAA,KAAAA,EAAAA,EAAMmC,WAAW,GAChB1G,OAAOC,OAAO,CAACsE,EAAKmC,WAAW,EAAExG,GAAG,CAAC,OAAC,CAACC,EAAKC,EAAK,CAAAlB,QAC/C,GAAAC,EAAAI,GAAA,EAACoH,EAAcA,CAEbvG,KAAMA,EACNyB,KAAM1B,EACNqE,QAAS,GACThB,aAAcA,GAJTrD,mBAWjB,GAAAhB,EAAAC,IAAA,EAACwH,SAAAA,CAEClH,aAAYsF,EACZvB,QAAS,IAAMiC,EAAcnB,MAAAA,EAAAA,KAAAA,EAAAA,EAAM1E,IAAI,EACvCP,UAAW,qGAKTqF,MAAAA,CAJAH,EACI,GAA4FxD,MAAA,CAAzF,CAACuD,MAAAA,EAAAA,KAAAA,EAAAA,EAAMsC,MAAM,EAA4B,6CAAzB,uBAAsE,KAAyF7F,MAAA,CAAtF,CAACuD,MAAAA,EAAAA,KAAAA,EAAAA,EAAMuC,MAAM,EAA4B,6CAAzB,uBAAsE,iDAClL,8CACL,KAMA9F,MAAA,CALC2D,EACI,EAEE,2BADA,sCAEF,cAGLH,GAAWD,CAAAA,MAAAA,EAAAA,KAAAA,EAAAA,EAAMsC,MAAM,GACtB,GAAA1H,EAAAI,GAAA,EAACmC,EAAAA,CAAIA,CAAAA,CACHpC,UAAU,oBACVqC,MAAO,eACPC,OAAQ,OACRC,KAAM,GAAiDb,MAAA,CAA9CgE,EAAclB,WAAW,GAAGC,OAAO,CAAC,KAAM,IAAI,YACvDjC,MAAO,SAGVkD,IAxBIA,MA8BjB,EClFA+B,EA3De,OAAC,CAAEC,eAAAA,CAAc,CAAEC,eAAAA,CAAc,CAAE,CAAA/H,EAC1CwE,EAASC,CAAAA,EAAAA,EAAAA,SAAAA,IACT,CAACuD,EAAYC,EAAc,CAAGvC,CAAAA,EAAAA,EAAAA,QAAAA,EAAS,IAoBvCwC,EAAW9B,CAAAA,EAAAA,EAAAA,WAAAA,EAAY,KACvB2B,GACFA,IAEF,IAAMI,EAAmBC,mBAAmBJ,GAC5CC,EAAc,IACdzD,EAAOiC,IAAI,CAAC,gBAAiC3E,MAAA,CAAjBqG,GAC9B,EAAG,CAACJ,EAAgBvD,EAAQwD,EAAW,EAMvC,MACE,GAAA/H,EAAAI,GAAA,EAACF,MAAAA,CAAIC,UALoB0H,EACvB,+BACA,oEAIA,GAAA7H,EAAAC,IAAA,EAACC,MAAAA,CAAIC,UAAU,sDACb,GAAAH,EAAAI,GAAA,EAACgI,QAAAA,CACCjI,UAAU,qIACViC,KAAK,OACLiG,UAAS,GACTC,SAzBR,SAAkBlC,CAAK,MACPA,EAAd4B,EAAc5B,MAAAA,EAAAA,KAAAA,EAAAA,OAAAA,CAAAA,EAAAA,EAAO/D,MAAM,GAAb+D,KAAAA,IAAAA,EAAAA,KAAAA,EAAAA,EAAemC,KAAK,CACpC,EAwBQC,QAtCR,SAAiBpC,CAAK,EACpB,GAAIA,CAAAA,MAAAA,EAAAA,KAAAA,EAAAA,EAAOpF,GAAG,IAAK,QAAS,KAMqBoF,CAL/CA,OAAAA,GAAAA,EAAOqC,cAAc,GACjBX,GACFA,IAEFE,EAAc,IACdzD,EAAOiC,IAAI,CAAC,gBAAyD3E,MAAA,CAAzCsG,mBAAmB/B,MAAAA,EAAAA,KAAAA,EAAAA,OAAAA,CAAAA,EAAAA,EAAO/D,MAAM,GAAb+D,KAAAA,IAAAA,EAAAA,KAAAA,EAAAA,EAAemC,KAAK,GACrE,CACF,EA8BQG,YAAa1G,EAAAA,CAAMA,CAAC2G,iBAAiB,CACrCJ,MAAOR,IAET,GAAA/H,EAAAI,GAAA,EAACqH,SAAAA,CACClH,aAAYyB,EAAAA,CAAMA,CAAC4G,YAAY,CAC/BzI,UAAU,qGACVmE,QAAS2D,WAERjG,EAAAA,CAAMA,CAAC4G,YAAY,OAK9B,ECcAC,EAhEmB,OAAC,CAAEC,MAAAA,CAAK,CAAE,CAAA/I,EACrB,CAACgJ,EAAiBC,EAAmB,CAAGvD,CAAAA,EAAAA,EAAAA,QAAAA,EAAS,IACjDwD,EACJ,wIAEF,MACE,GAAAjJ,EAAAI,GAAA,EAAC8I,MAAAA,CACC/I,UAAW,sEAEX,GAAAH,EAAAC,IAAA,EAACC,MAAAA,CAAIC,UAAU,mFACb,GAAAH,EAAAC,IAAA,EAACK,IAAIA,CAACC,aAAW,eAAeE,KAAK,cACnC,GAAAT,EAAAI,GAAA,EAACwC,IAAKA,CACJC,IAAKG,EACLD,IAAI,oBACJvC,MAAM,eACNiC,OAAQ,GACR0G,QAAQ,QACRC,SAAQ,GACRzG,MAAO,IACPxC,UAAU,cAEZ,GAAAH,EAAAI,GAAA,EAACwC,IAAKA,CACJC,IAAKG,EACLD,IAAI,oBACJvC,MAAM,eACNiC,OAAQ,GACRE,MAAO,IACPwG,QAAQ,QACRC,SAAQ,GACRjJ,UAAU,iDAGd,GAAAH,EAAAC,IAAA,EAACC,MAAAA,CAAIC,UAAU,mCACZ2I,GACCjI,OAAOC,OAAO,CAACgI,GAAO/H,GAAG,CAAC,OAAC,CAACsI,EAASjE,EAAK,CAAArF,QACxC,GAAAC,EAAAI,GAAA,EAAC+E,EAAcA,CAAeC,KAAMA,EAAM1C,KAAM2G,GAA3BA,KAEzB,GAAArJ,EAAAI,GAAA,EAACE,IAAIA,CAACH,UAAW8I,EAAexI,KAAM6I,EAAAA,EAAUA,CAAEjH,OAAO,kBACtDL,EAAAA,CAAMA,CAACuH,UAAU,GAEpB,GAAAvJ,EAAAC,IAAA,EAACC,MAAAA,WACC,GAAAF,EAAAI,GAAA,EAACqH,SAAAA,CACClH,aAAYyB,EAAAA,CAAMA,CAACwH,iBAAiB,CACpClF,QAAS,IAAM0E,EAAmB,GAAW,CAACT,GAC9CpI,UAAW8I,WAEX,GAAAjJ,EAAAI,GAAA,EAACmC,EAAAA,CAAIA,CAAAA,CACHG,KAAK,SACLvC,UAAU,yBACVqC,MAAM,eACNC,OAAQ,GACRE,MAAO,OAGVoG,GACC,GAAA/I,EAAAI,GAAA,EAACqJ,EAAMA,CAAC3B,eAAgB,IAAMkB,EAAmB,gBAO/D,ECpEA,SAAAU,EAAAjH,CAAA,EAEA,uBAAAA,GACAA,MAAAA,CAAA,CAAAA,EAAAkH,MAAA,KACAC,SARAC,CAAA,EACA,IAAAC,EAAAC,WAAAF,GACA,OAAAG,MAAAF,IAAAG,SAAAH,EACA,EAKArH,EAAAyH,SAAA,GAAAzH,EAAAkH,MAAA,IACA,CACA,SAAAQ,EAAAC,CAAA,CAAA3H,CAAA,CAAA4H,CAAA,EAGA,IAAA5H,GACA,CAAA4H,GACAD,CAAAA,MAAAA,EAAA,OAAAA,EAAAhD,KAAA,GACA,CAAAgD,MAAAA,EAAA,OAAAA,EAAAE,QAAA,CAAAX,MAAA,KACAS,CAAAA,EAAAhD,KAAA,CAAAC,OAAA,QAEA,CAQA,IAAAkD,EAAA,CACAC,UAAA,gBACAC,YAAA,oBACAC,cAAA,sBACAC,sBAAA,gCACAC,sBAAA,gCACAC,0BAAA,oCACAC,OAAA,aACAC,iBAAA,0BACAC,iBAAA,0BACAC,qBAAA,6BACA,EACA,SAAAC,EAAAC,CAAA,CAAA1I,CAAA,EACA,OACA0I,EAAAL,MAAA,CACArI,IAAAA,GAAA0I,EAAAJ,gBAAA,CACA,iBAAAtI,GAAAA,EAAA,EACA0I,EAAAF,oBAAA,CACA,KACAxI,SAAAA,GAAA0I,EAAAH,gBAAA,CACA,CACAI,MAAA,IAAAC,GACAC,IAAA,KACA,CAEA,IAAAC,EAAA,CACA,iBACA,wBACA,yBACA,WACA,YACA,mBACA,aACA,QACA,WACA,SACA,SACA,uBACA,yBACA,QACA,qBACA,CACAC,EAAsBC,EAAAC,UAAgB,EAAAC,EAAAC,KAGtC,IAAYC,eAAAA,EAAA,GAAAV,sBAAAA,EAAA,EAAkD,CAAAW,uBAAAA,EAAA,GAAAxB,SAAAA,CAAA,CAAAnK,UAAAA,EAAA,GAAA4L,iBAAAA,CAAA,CAAAC,MAAAC,EAAA,EAAA5B,mBAAAA,EAAA,GAAA6B,SAAAC,EAAA,IAAAC,OAAAA,EAAA,OAAA3J,OAAAA,CAAA,CAAA4J,qBAAAA,CAAA,CAAAC,uBAAAA,CAAA,CAAAlF,MAAAA,CAAA,CAAAmF,WAAAA,CAAA,EAAyPZ,EACvTa,EAAA3L,OAAA4L,MAAA,IAAqCd,GACrCJ,EAAAmB,OAAA,KACA,OAAAF,CAAA,CAAAG,EAAA,GAGA,IAAAC,EAAuB,GAAAnB,EAAAoB,MAAA,EAAMpK,GAC7BqK,EAA2B,GAAArB,EAAAoB,MAAA,EAAM,MACjCE,EAAsC,GAAAtB,EAAAoB,MAAA,IACtCG,EAAsB,GAAAvB,EAAAoB,MAAA,IACtBI,EAAyB,GAAAxB,EAAAoB,MAAA,EAAMhM,OAAA4L,MAAA,CAAA5L,OAAA4L,MAAA,IAA+BlC,GAAAY,IAC9D+B,EAAA,oBAAAC,OACAC,EAAiC,GAAA3B,EAAAoB,MAAA,EAAMK,EAAAA,KAAAC,OAAAE,UAAA,EACvCF,OAAAE,UAAA,6BAAAC,OAAA,EAEAtB,EAAAoB,EAAAG,OAAA,GAAAtB,EACAC,EAAAkB,EAAAG,OAAA,GAAApB,EACAqB,EAAA/K,EACAgL,EAAA,SACA,kBAAAhL,GAEA+K,EAAA/K,EAAA,IAAAA,EACAgL,EAAA,UAEA/D,EAAA8D,KAEAA,EAAA/K,OAAAA,EAAA,EAAAA,EACAgL,EAAA,UAEA,IAAAC,EAAAC,EAAA,CAA8C,GAAAlC,EAAAhG,QAAA,EAAQ+H,GACtD,CAAAI,EAAAC,EAAA,CAAoC,GAAApC,EAAAhG,QAAA,EAAQgI,GAC5C,CAAAK,EAAAC,EAAA,CAAgD,GAAAtC,EAAAhG,QAAA,EAAQ,IACxD,CAAAuI,EAAAC,EAAA,CAAoE,GAAAxC,EAAAhG,QAAA,EAAQyF,EAAA+B,EAAAM,OAAA,CAAA9K,IAExE,GAAAgJ,EAAA5G,SAAA,EAAS,KAEbsF,EAAA2C,EAAAS,OAAA,CAAAG,EAAArD,EAGA,EAAK,IAED,GAAAoB,EAAA5G,SAAA,EAAS,KACb,GAAApC,IAAAmK,EAAAW,OAAA,EAAAT,EAAAS,OAAA,MA9FAnD,MAsGA8D,EACAC,EAvGA/D,EA+FA0C,EAAAS,OAAA,CA5FA,IA4FAX,EAAAW,OAAA,EA5FAnD,CAAAA,MAAAA,EAAA,OAAAA,EAAAhD,KAAA,GACAgD,CAAAA,EAAAhD,KAAA,CAAAC,OAAA,KA6FAyF,EAAAS,OAAA,CAAAnG,KAAA,CAAAwG,QAAA,UACA,IAAAQ,EAAAtB,EAAAS,OAAA,CAAAc,YAAA,CACAvB,EAAAS,OAAA,CAAAnG,KAAA,CAAAwG,QAAA,IAEA,IAAAU,EAAApC,EAAAF,EAGAuC,EAAA,SAEAC,EAAA5B,SAAAA,EAAAW,OAAA,CACA,iBAAA9K,EAGA0L,EADAD,EAAAzL,EAAA,IAAAA,EAGAiH,EAAAjH,GAGA0L,EADAD,EAAAzL,OAAAA,EAAA,EAAAA,GAMAyL,EAAAE,EACAD,EAAA,OACAI,EAAAE,KAAAA,GAEAD,IAEAL,EAAAD,EAGAA,EAAAE,GAGA,IAAAM,EAAA,CACAzB,EAAAM,OAAA,CAAA/C,SAAA,CACA,CAAAoC,SAAAA,EAAAW,OAAA,EAAA9K,EAAAmK,EAAAW,OAAA,GACAN,EAAAM,OAAA,CAAA9C,WAAA,CACA,CAAAhI,SAAAA,GAAAA,EAAAmK,EAAAW,OAAA,GACAN,EAAAM,OAAA,CAAA7C,aAAA,CACAyD,IAAAA,GAAAlB,EAAAM,OAAA,CAAA5C,qBAAA,CACAwD,SAAAA,GACAlB,EAAAM,OAAA,CAAA3C,qBAAA,CACA,iBAAAuD,GAAAA,EAAA,EACAlB,EAAAM,OAAA,CAAA1C,yBAAA,CACA,KACA,CACAO,MAAA,IAAAC,GACAC,IAAA,MAEAqD,EAAAzD,EAAA+B,EAAAM,OAAA,CAAAY,GAIAR,EAAAO,GACAL,EAAA,UACAE,EAAA,CAAAS,GACAP,EAAAS,GAEAE,aAAA5B,EAAAO,OAAA,EACAqB,aAAA7B,EAAAQ,OAAA,EACAiB,GAKAxB,EAAAO,OAAA,CAAAsB,WAAA,KACAlB,EAAAQ,GACAN,EAAAU,GACAR,EALA,IAOAzB,MAAAA,GAAAA,EAAA6B,EACA,EAAiB,IAEjBpB,EAAAQ,OAAA,CAAAsB,WAAA,KACAd,EAAA,IACAE,EAAAU,GAGAxE,EAAA2C,EAAAS,OAAA,CAAAY,EAAA9D,GAEAgC,MAAAA,GAAAA,EAAA8B,EACA,EAAiBG,KAIjBhC,MAAAA,GAAAA,EAAA4B,GAEAlB,EAAAO,OAAA,CAAAsB,WAAA,KACAlB,EAAAQ,GACAN,EAAAU,GACAR,EAAA,IACAE,EAAAU,GAIA,SAAAlM,GAEA0H,EAAA2C,EAAAS,OAAA,CAAAW,EAAA7D,GAGAgC,MAAAA,GAAAA,EAAA6B,EACA,EAAiBI,GAEjB,CAEA,OADA1B,EAAAW,OAAA,CAAA9K,EACA,KACAmM,aAAA5B,EAAAO,OAAA,EACAqB,aAAA7B,EAAAQ,OAAA,CACA,CAGA,EAAK,CAAA9K,EAAA,EAEL,IAAAqM,EAAAjO,OAAA4L,MAAA,CAAA5L,OAAA4L,MAAA,IAAyDrF,GAAA,CAAY3E,OAAAiL,EAAAE,SAAAA,GAAAxG,CAAAA,MAAAA,EAAA,OAAAA,EAAAwG,QAAA,IACrEE,GAAAhC,IACAgD,EAAAC,UAAA,WAA8C7C,EAAS,KAAKE,EAAA,CAAQ,EAAEJ,EAAM,IAE5E5E,CAAAA,MAAAA,EAAA,OAAAA,EAAA2H,UAAA,GACAD,CAAAA,EAAAC,UAAA,IAA2C3H,EAAA2H,UAAA,CAAiB,IAAID,EAAAC,UAAA,CAA0B,GAG1FD,EAAAE,gBAAA,CAAAF,EAAAC,UAAA,EAEA,IAAAE,EAAA,GACApD,IACAoD,EAAAF,UAAA,YAA6C7C,EAAS,KAAKE,EAAA,CAAQ,EAAEJ,EAAM,IAE3EiD,EAAAD,gBAAA,CAAAC,EAAAF,UAAA,CACA,IAAArB,GACAuB,CAAAA,EAAAC,OAAA,KAKA,IAAAC,EAAAC,KADA,IAAA5C,CAAA,gBAEAA,CAAA,gBACA/J,IAAAA,EACA,OAAYgJ,EAAA4D,aAAmB,OAAAxO,OAAA4L,MAAA,IAAwBD,EAAA,CAAc,cAAA2C,EAAAhP,UAAA,GAAyC6N,EAAA,CAA0B,EAAE7N,EAAU,EAAAiH,MAAA0H,EAAAlD,IAAAA,CAAA,GAC5IH,EAAA4D,aAAmB,QAAUlP,UAAA4L,EAAA3E,MAAA6H,EAAArD,IAAA,IACrCkB,EAAAS,OAAA,CAAA+B,EACA/C,GACAA,CAAAA,EAAAgB,OAAA,CAAA+B,CAAA,CAEA,GAAehF,GACf,iBCvQO,SAASiF,IACd,GAAM,CAACC,EAAcC,EAAgB,CAAGhK,CAAAA,EAAAA,EAAAA,QAAAA,EAAS,GAC3C,CAACiK,EAAcC,EAAgB,CAAGlK,CAAAA,EAAAA,EAAAA,QAAAA,EAAS,MAC3C,CAACmK,EAAcC,EAAgB,CAAGpK,CAAAA,EAAAA,EAAAA,QAAAA,EAAS,MAC3C,CAACsD,EAAiBC,EAAmB,CAAGvD,CAAAA,EAAAA,EAAAA,QAAAA,EAAS,IAGvDZ,CAAAA,EAAAA,EAAAA,SAAAA,EAAU,KAEJiL,OADwBC,UAAU,CAAG,KACrBL,GAAgB,CAACF,GACnCC,EAAgBtC,OAAO6C,OAAO,EAC9BjK,SAASkK,eAAe,CAACC,YAAY,CAAC,QAAU,kBAChDnK,SAASoK,IAAI,CAACD,YAAY,CAAC,QAAU,sBAErCnK,SAASkK,eAAe,CAACC,YAAY,CAAC,QAAS,IAC/CnK,SAASoK,IAAI,CAACD,YAAY,CAAC,QAAS,IACpC/C,OAAOiD,QAAQ,CAAC,EAAGZ,GACnBC,EAAgB,GAEpB,EAAG,CAACC,EAAcF,EAAa,EAsB/B,IAAMa,EAAiBlK,CAAAA,EAAAA,EAAAA,WAAAA,EACrB,IACMmK,IAAWZ,EACbC,EAAgB,MAEhBA,EAAgBW,GAElBT,EAAgB,MAChB7G,EAAmB,GACrB,EACA,CAAC0G,EAAa,EAEhB,MAAO,CACLE,aAAAA,EACAF,aAAAA,EACA3G,gBAAAA,EACAwH,cAnCF,WACEV,EAAgB,MAChB7G,EAAmB,GAAW,CAACT,EACjC,EAiCEiI,mBA9BF,WACEb,EAAgB,MAChBE,EAAgB,MAChB7G,EAAmB,GACrB,EA2BEyH,mBAxBF,SAA4BC,CAAM,EAChCb,EAAgBa,GAChB1H,EAAmB,GACrB,EAsBEqH,eAAAA,CACF,CACF,eChBAM,EAzCsB,OAAC,CAAE1P,KAAAA,CAAI,CAAEyB,KAAAA,CAAI,CAAEkO,2BAAAA,CAA0B,CAAE,CAAA7Q,EAIzD0E,EAAW,GAAyD5C,MAAA,CAAtD6C,CAFlB,yBAA0B,SAC5B,CAC2B,CAAChC,EAAK,EAAIA,EAAKkC,OAAO,CAAC,KAAM,IAAID,WAAW,GAAG,YACpE,CAAE8L,mBAAAA,CAAkB,CAAEb,aAAAA,CAAY,CAAE,CAAGL,IAC7C,MACE,GAAAvP,EAAAI,GAAA,EAAAJ,EAAAkF,QAAA,WACG,iBAAOjE,EACN,GAAAjB,EAAAI,GAAA,EAACF,MAAAA,CAAIC,UAAU,iBACb,GAAAH,EAAAI,GAAA,EAACyQ,EAAaA,CACZC,mBAAoBlB,EACpBxK,KAAMnE,EAAKsG,WAAW,CACtBG,OAAQzG,MAAAA,EAAAA,KAAAA,EAAAA,EAAMyG,MAAM,CACpBhF,KAAMA,EACN+N,mBAAoBA,EACpBD,mBAAoBI,MAIxB,GAAA5Q,EAAAC,IAAA,EAACK,IAAIA,CAEHC,aAAYmC,EACZvC,UAAU,gHACVM,KAAMQ,MAAAA,EAAAA,EAAQ,GACdqD,QAASsM,YAET,GAAA5Q,EAAAI,GAAA,EAACmC,EAAAA,CAAIA,CAAAA,CACHpC,UAAU,oBACVqC,MAAO,eACPC,OAAQ,OACRC,KAAM+B,EACN9B,MAAO,SAERD,IAbIA,IAkBf,EC0CAqO,EAjFsB,QA4DN3M,EArCQmB,KAvBD,CACrBuL,mBAAAA,CAAkB,CAClB1L,KAAAA,CAAI,CACJsC,OAAAA,CAAM,CACNhF,KAAAA,CAAI,CACJ+N,mBAAAA,CAAkB,CAClBD,mBAAAA,CAAkB,CACnB,CAAAzQ,EAEOiR,EAAW7K,CAAAA,EAAAA,EAAAA,WAAAA,EAAY,KACvB2K,IAAuBpO,EACzB+N,EAAmB,MAEnBA,EAAmB/N,EAEvB,EAAG,CAACoO,EAAoBpO,EAAM+N,EAAmB,EAQ3C5K,EAAgBN,OAAAA,CAAAA,EAAAA,CANL,CACf,cAAe,SACf,eAAgB,SAChB,cAAe,QACjB,EAE8B,CAAC7C,EAAK,GAAd6C,KAAAA,IAAAA,EAAAA,EAAkB7C,EAIlCuO,EAAa9K,CAAAA,EAAAA,EAAAA,WAAAA,EACjB,IACqB2K,IAAuBpO,GAGvC,EAAO2D,aAAa,EAAID,MAAAA,EAAMC,aAAa,CAACC,OAAO,EAEpDmK,EAAmB,KAEvB,EACA,CAACK,EAAoBpO,EAAM+N,EAAmB,EAG1CS,EAAaJ,IAAuBpO,EAK1C,MACE,GAAA1C,EAAAC,IAAA,EAACC,MAAAA,WACC,GAAAF,EAAAC,IAAA,EAACwH,SAAAA,CACClH,aAAYsF,EACZvB,QAAS0M,EACT7Q,UAAW,GACTuH,MAAAA,CAVmBwJ,EACvB,qKACA,kJAOmC,KAEhCrP,MAAA,CADC6F,EAAS,iCAAmC,cAG9C,GAAA1H,EAAAI,GAAA,EAACmC,EAAAA,CAAIA,CAAAA,CACHpC,UAAW,GAA0C0B,MAAA,CAAvC,EAAmB,oBAAT,OAA6B,eACrDY,OAAQiF,EAAS,OAAS,OAC1BlF,MAAM,QACN2O,OAAO,UACPC,QAAQ,QACR1O,KAAM,QAAA0B,CAAAA,EAAA,MAAoBvC,MAAA,CAAdgE,EAAAA,GAANzB,KAAA,IAAAA,EAAA,OAAAA,EAAuBQ,OAAO,CAAC,KAAM,MAAO,GAClDjC,MAAO,SAERkD,KAEH,GAAA7F,EAAAI,GAAA,EHkMSoL,EGlMKA,CAACU,SAAU,IAAKzJ,OAAQyO,EAAa,OAAS,WAC1D,GAAAlR,EAAAI,GAAA,EAACF,MAAAA,CAAIC,UAAU,gBAAgBgH,OAAQ8J,WACpCpQ,OAAOC,OAAO,CAACsE,GAAQ,CAAC,GAAGrE,GAAG,CAAC,OAAC,CAACC,EAAKC,EAAK,CAAAlB,QAC1C,GAAAC,EAAAI,GAAA,EAACiR,EAAaA,CAEZpQ,KAAMA,EACNyB,KAAM1B,EACN4P,2BAA4BJ,GAHvBxP,WAUnB,ECvEA,MACQ,OA+JR,IAAAsQ,EA3JkB,OAAC,CAAExI,MAAAA,CAAK,CAAE,CAAA/I,EACpB,CACJ2P,aAAAA,CAAY,CACZE,aAAAA,CAAY,CACZ7G,gBAAAA,CAAe,CACfwH,cAAAA,CAAa,CACbE,mBAAAA,CAAkB,CAClBD,mBAAAA,CAAkB,CAClBH,eAAAA,CAAc,CACf,CAAGd,IACEgC,EACJ,+IAEIC,EAAcC,CAAAA,EAAAA,EAAAA,CAAAA,IAGpB,MACE,GAAAzR,EAAAC,IAAA,EAACiJ,MAAAA,CACC/I,UAAW,8DAEV0B,MAAA,CADC6N,MAAuC,OAAS,cAGlD,GAAA1P,EAAAC,IAAA,EAACC,MAAAA,CAAIC,UAAU,mEACb,GAAAH,EAAAI,GAAA,EAACE,IAAIA,CAACC,aAAW,eAAeE,KAAK,IAAI6D,QAASkM,WAChD,GAAAxQ,EAAAI,GAAA,EAACwC,IAAKA,CACJC,IAAKG,EACLD,IAAI,oBACJvC,MAAM,eACNiC,OAAQ,GACRE,MAAO,QAGX,GAAA3C,EAAAC,IAAA,EAACwH,SAAAA,CACClH,aAAYyB,EAAAA,CAAMA,CAAC0P,aAAa,CAChCvR,UAAW,gIAEV0B,MAAA,CADC6N,MAAuC,kBAAoB,IAE7DpL,QAAS,IAAM+L,eAEf,GAAArQ,EAAAI,GAAA,EAACmC,EAAAA,CAAIA,CAAAA,CACHG,KACEgN,MACI,iBACA,gBAENlN,MAAM,eACNC,OAAQ,GACRE,MAAO,GACPxC,UAAU,gBAEX6B,EAAAA,CAAMA,CAAC0P,aAAa,OAGzB,GAAA1R,EAAAC,IAAA,EJiMSuL,EIjMKA,CACZrL,UAAU,gDACV+L,SAAU,IACVzJ,OAAQiN,EAAe,OAAS,YAE/BA,OACC,GAAA1P,EAAAC,IAAA,EAACC,MAAAA,CAAIC,UAAU,wEACZ2I,GACCjI,OAAOC,OAAO,CAACgI,GAAO/H,GAAG,CAAC,OAAC,CAACsI,EAASjE,EAAK,CAAArF,QACxC,GAAAC,EAAAI,GAAA,EAACyQ,EAAaA,CAEZC,mBAAoBlB,EACpBxK,KAAMA,EAAKmC,WAAW,CACtB7E,KAAM2G,EACNoH,mBAAoBA,EACpBD,mBAAoBA,GALfnH,KAQX,GAAArJ,EAAAC,IAAA,EAACK,IAAIA,CACHH,UAAW,GAAqB0B,MAAA,CAAlB0P,GACd9Q,KAAM6I,EAAAA,EAAUA,CAChBjH,OAAO,mBAEP,GAAArC,EAAAI,GAAA,EAACmC,EAAAA,CAAIA,CAAAA,CACHpC,UAAU,kBACVsC,OAAQ,GACRC,KAAK,QACLF,MAAM,eACNG,MAAO,KAERX,EAAAA,CAAMA,CAACuH,UAAU,IAEpB,GAAAvJ,EAAAC,IAAA,EAACwH,SAAAA,CACClH,aAAYyB,EAAAA,CAAMA,CAACwH,iBAAiB,CACpClF,QAASiM,EACTpQ,UAAWoR,YAEX,GAAAvR,EAAAI,GAAA,EAACmC,EAAAA,CAAIA,CAAAA,CACHpC,UAAU,kBACVsC,OAAQ,GACRC,KAAK,SACLF,MAAM,eACNG,MAAO,KAERX,EAAAA,CAAMA,CAACwH,iBAAiB,IAE1BT,GACC,GAAA/I,EAAAI,GAAA,EAACqJ,EAAMA,CAAC5B,eAAc,GAACC,eAAgB0I,IAEzC,GAAAxQ,EAAAC,IAAA,EAACC,MAAAA,CAAIC,UAAU,qCACb,GAAAH,EAAAI,GAAA,EAAC2B,IAAAA,CAAE5B,UAAU,sBAAc6B,EAAAA,CAAMA,CAAC2P,kBAAkB,GACpD,GAAA3R,EAAAC,IAAA,EAACC,MAAAA,CACCC,UAAW,eAAmD0B,MAAA,CAApC+P,GA3FR,IA2FmB,oBAAsB,cAE1D/Q,OAAOC,OAAO,CAACoB,EAAAA,EAAYA,EAAEnB,GAAG,CAAC,OAAC,CAACqB,EAAMD,EAAO,CAAApC,QAC/C,GAAAC,EAAAI,GAAA,EAACE,IAAIA,CAEHC,aAAY6B,EACZjC,UAAU,OACVM,KAAM0B,EAAOG,GAAG,CAChBD,OAAO,kBAEP,GAAArC,EAAAI,GAAA,EAACmC,EAAAA,CAAIA,CAAAA,CACHpC,UAAW,gBAAyD0B,MAAA,CAAzCO,cAAAA,EAAuB,aAAe,IACjEI,MAAOL,EAAOK,KAAK,CACnBC,OAAQ,GACRC,KAAMN,EACNO,MAAO,MAXJP,KAeRvB,OAAOC,OAAO,CAAC+Q,EAAAA,CAAaA,EAAE9Q,GAAG,CAAC,OAAC,CAACqB,EAAMD,EAAO,CAAApC,QAChD,GAAAC,EAAAI,GAAA,EAACE,IAAIA,CAEHC,aAAY6B,EACZjC,UAAU,OACVkC,OAAO,SACP5B,KAAM0B,EAAOG,GAAG,UAEhB,GAAAtC,EAAAI,GAAA,EAACmC,EAAAA,CAAIA,CAAAA,CACHpC,UAAU,eACVqC,MAAOL,EAAOK,KAAK,CACnBC,OAAQ,GACRC,KAAMN,EACNO,MAAO,MAXJP,cAmBhBsN,UAAAA,GACC,GAAA1P,EAAAI,GAAA,EAACF,MAAAA,CAAIC,UAAU,qDACb,GAAAH,EAAAI,GAAA,EAAC0R,EAAAA,CAAcA,CAAAA,CAACC,aAAcvB,WAM1C,EC9JAwB,EAVY,OAAC,CAAEC,OAAAA,CAAM,CAAEnJ,MAAAA,CAAK,CAAE,CAAA/I,EACtBmS,EAAWC,CAAAA,EAAAA,EAAAA,CAAAA,EAAoBF,EAAQnJ,MAAAA,EAAAA,EAAS,CAAC,GACvD,MACE,GAAA9I,EAAAC,IAAA,EAAAD,EAAAkF,QAAA,YACE,GAAAlF,EAAAI,GAAA,EAACgS,EAAUA,CAACtJ,MAAOoJ,IACnB,GAAAlS,EAAAI,GAAA,EAACiS,EAASA,CAACvJ,MAAOoJ,MAGxB,uCCGAI,EAZwB,OAAC,CAAEhI,SAAAA,CAAQ,CAAE2H,OAAAA,CAAM,CAAEnJ,MAAAA,CAAK,CAAEhJ,OAAAA,CAAM,CAAE,CAAAC,EAC1D,MACE,GAAAC,EAAAI,GAAA,EAAAJ,EAAAkF,QAAA,WACE,GAAAlF,EAAAC,IAAA,EAACsS,OAAAA,CAAKpS,UAAW,GAAwBqS,MAAAA,CAArBC,IAAAA,QAAiB,CAAC,KAAwB5Q,MAAA,CAArB2Q,IAAAA,QAAoB,YAC3D,GAAAxS,EAAAI,GAAA,EAACsS,EAAGA,CAACT,OAAQA,EAAQnJ,MAAOA,IAC3BwB,EACD,GAAAtK,EAAAI,GAAA,EAACuS,EAAMA,CAAC7S,OAAQA,QAIxB,oBCbA8S,EAAAC,OAAA,EAAkB,OAAS,gEAAiE,8ECA5FD,EAAAC,OAAA,EAAkB,OAAS,sEAAuE","sources":["webpack://_N_E/./public/18+-logo.png","webpack://_N_E/./public/betting-news-logo.svg","webpack://_N_E/./public/gamble-aware-main.png","webpack://_N_E/./public/googlenews-white.png","webpack://_N_E/./components/footer/components/FooterList.js","webpack://_N_E/./components/footer/Footer.js","webpack://_N_E/./components/nav/components/DesktopNavItem.js","webpack://_N_E/./components/nav/components/DesktopNavMenu.js","webpack://_N_E/./components/nav/components/Search.js","webpack://_N_E/./components/nav/components/DesktopNav.js","webpack://_N_E/./node_modules/react-animate-height/dist/esm/index.js","webpack://_N_E/./hooks/useMobileMenu.js","webpack://_N_E/./components/nav/components/MobileNavItem.js","webpack://_N_E/./components/nav/components/MobileNavMenu.js","webpack://_N_E/./components/nav/components/MobileNav.js","webpack://_N_E/./components/nav/Nav.js","webpack://_N_E/./components/layouts/NavFooterLayout.js","webpack://_N_E/./node_modules/next/font/local/target.css","webpack://_N_E/./node_modules/next/font/local/target.css?671c"],"sourcesContent":["export default {\"src\":\"/_next/static/media/18+-logo.cc01f973.png\",\"height\":720,\"width\":785,\"blurDataURL\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAHCAMAAAACh/xsAAAAM1BMVEX+/v/+/v7+/v/+/v7+/v/+/v7////+//9MaXH+/v/+/v7+///+/v7+///+///+/v7+//9u7iLYAAAAEXRSTlOceVsoOXKDHABsRgGuDu3MBEmKy+UAAAAJcEhZcwAACxMAAAsTAQCanBgAAAA3SURBVHicJctJEoAgDADBCdkBxf+/1rK8d1OGN6NIsuoJpb3HXpqEBbcdwefsfZn+ZklShnzrBStVAVsXMcZPAAAAAElFTkSuQmCC\",\"blurWidth\":8,\"blurHeight\":7};","export default {\"src\":\"/_next/static/media/betting-news-logo.cfee4ea3.svg\",\"height\":46,\"width\":236,\"blurWidth\":0,\"blurHeight\":0};","export default {\"src\":\"/_next/static/media/gamble-aware-main.9542c036.png\",\"height\":1273,\"width\":4165,\"blurDataURL\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAACCAMAAABSSm3fAAAAG1BMVEUDAQD0ahydRBECAQAAAAD0ahwAAADvZxvvaByRs9AMAAAACXRSTlMkIywsNjUOCQcPX/1LAAAACXBIWXMAAC4jAAAuIwF4pT92AAAAGklEQVR4nGNgY2BgZmJk5GBgY2FmYWJlZQcAAb0AOpp1bAEAAAAASUVORK5CYII=\",\"blurWidth\":8,\"blurHeight\":2};","export default {\"src\":\"/_next/static/media/googlenews-white.45234d42.png\",\"height\":800,\"width\":800,\"blurDataURL\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAMAAADz0U65AAAAM1BMVEX////////////////////////////////////////////////////////////////+/v6KzoOnAAAAEXRSTlMCddmxIdDfUkf+nPI0uWK9qpoKwYMAAAAJcEhZcwAACxMAAAsTAQCanBgAAAA6SURBVHicBcGHAcAgDMAwB7IZ5f9rK4FG7lAgx/gsQKb7sCO8snKrSR55ff2iJt3iG61Va5VCRkYkPzfdAakNd9YgAAAAAElFTkSuQmCC\",\"blurWidth\":8,\"blurHeight\":8};","import Link from \"next/link\";\n\nconst FooterList = ({ footer }) => {\n  return (\n    <div className=\"text-xs text-grey-200\">\n      <h4 className=\"mb-4 whitespace-normal\">\n        <Link\n          aria-label={footer.title}\n          href={footer.path}\n          className=\"font-bold underline decoration-red\"\n        >\n          {footer.title}\n        </Link>\n      </h4>\n      <ul>\n        {footer?.childItems &&\n          Object.entries(footer.childItems).map(([key, item]) => (\n            <li key={key} className=\"mb-4 whitespace-normal\">\n              <Link aria-label={item} href={item}>\n                {key}\n              </Link>\n            </li>\n          ))}\n      </ul>\n    </div>\n  );\n};\n\nexport default FooterList;\n","import dynamic from \"next/dynamic\";\nimport Image from \"next/image\";\nimport Link from \"next/link\";\n\nimport Icon from \"@/components/icon/Icon\";\nimport {\n  ABOUT_US_PATH,\n  PRIVACY_POLICY_PATH,\n  RESPONSIBLE_GAMING,\n  SOCIAL_LINKS,\n} from \"@/config/constants\";\nimport labels from \"@/config/labels\";\nimport Logo18 from \"@/public/18+-logo.png\";\nimport BNLogo from \"@/public/betting-news-logo.svg\";\nimport GambleAware from \"@/public/gamble-aware-main.png\";\nimport GoogleIcon from \"@/public/googlenews-white.png\";\nimport { getFooterYear } from \"@/utilities/dates\";\n\nimport FooterList from \"./components/FooterList\";\nconst Newsletter = dynamic(() => import(\"../sidebar/components/Newsletter\"), {\n  ssr: false,\n});\n\nconst Footer = ({ footer }) => {\n  return (\n    <footer className=\"w-full bg-blue py-13 text-grey-200\">\n      <div className=\"container\">\n        <div>\n          <div className=\"sm:grid-rows-auto grid grid-cols-2 gap-x-3 gap-y-3 sm:gap-x-2 sm:gap-y-4 xl:grid-cols-6\">\n            {Object.entries(footer).map(([footerKey, footer], index) => (\n              <div\n                key={footerKey}\n                className={`${\n                  index === 6 ? \"row-start-5 sm:col-start-3 sm:row-start-2\" : \"\"\n                }`}\n              >\n                <FooterList footer={footer} />\n              </div>\n            ))}\n            <div className=\"col-span-2 flex flex-col flex-wrap justify-between text-sm lg:col-span-3 lg:flex-row\">\n              <div className=\"mb-4 h-auto xl:w-[45%]\">\n                <p className=\"font-bold\">{labels.footerFollowSocialPrefix}</p>\n                <div className=\"mt-4 flex cursor-pointer flex-row flex-wrap gap-4 sm:col-span-2\">\n                  {Object.entries(SOCIAL_LINKS).map(([type, social]) => (\n                    <Link\n                      key={type}\n                      aria-label={type}\n                      target=\"_blank\"\n                      href={social?.url ?? \"\"}\n                    >\n                      <Icon\n                        className=\"h-8 w-8\"\n                        color=\"white\"\n                        height={32}\n                        name={type}\n                        width={32}\n                      />\n                    </Link>\n                  ))}\n                  <Link\n                    href=\"https://news.google.com/publications/CAAqBwgKMPXmpAswuPG8Aw\"\n                    target=\"_blank\"\n                  >\n                    <Image\n                      src={GoogleIcon}\n                      width={32}\n                      height={32}\n                      alt=\"Google News icon\"\n                    />\n                  </Link>\n                </div>\n              </div>\n              <div className=\"hidden lg:block\">\n                <div className=\"relative right-4 lg:bottom-5\">\n                  <Newsletter />\n                </div>\n              </div>\n            </div>\n          </div>\n          <div className=\"block lg:hidden\">\n            <div className=\"relative right-4\">\n              <Newsletter />\n            </div>\n          </div>\n        </div>\n        <div className=\"my-6 w-full border-t border-white/50 xl:my-6\" />\n        <div>\n          <Image\n            className=\"mt-4 h-[35px] w-[180px] sm:mt-0\"\n            src={BNLogo}\n            alt=\"Sports-Betting-News\"\n            height={35}\n            width={180}\n            unoptimized\n          />\n        </div>\n        <div>\n          {labels.footerLogoText.split(\"\\n\").map((line, index) => (\n            <p key={index} className={`${index === 1 ? \"py-4\" : \"\"}`}>\n              {line}\n            </p>\n          ))}\n        </div>\n        <div className=\"my-6 w-full border-t border-white/50 xl:my-6\" />\n        <div className=\"-mx-4 flex flex-col gap-5 px-5 text-xs\">\n          <div className=\"grid grid-cols-3 items-center justify-items-start  xl:mb-6 xl:justify-items-center\">\n            <Link\n              aria-label={labels.footerPrivacyPolicyLink}\n              className=\"self-center capitalize hover:underline\"\n              href={PRIVACY_POLICY_PATH}\n            >\n              {labels.footerPrivacyPolicyLink}\n            </Link>\n            <Link\n              aria-label={labels.footerAboutUsLink}\n              className=\"capitalize hover:underline\"\n              href={ABOUT_US_PATH}\n            >\n              {labels.footerAboutUsLink}\n            </Link>\n            <p className=\"hidden xl:block\">\n              {`${labels.footerCopyrightDesktopPrefix} ${\n                labels.footerCopyrightStartYear\n              } ${getFooterYear()} ${labels.footerCopyrightDesktopPostfix}`}\n            </p>\n          </div>\n          <p className=\"block xl:hidden\">\n            {`${labels.footerCopyrightDesktopPrefix} ${\n              labels.footerCopyrightStartYear\n            } ${getFooterYear()} ${labels.footerCopyrightDesktopPostfix}`}\n          </p>\n          <div>\n            <Link\n              aria-label=\"Gamble Aware\"\n              href=\"https://www.begambleaware.org/\"\n              target=\"_blank\"\n            >\n              <div className=\"flex flex-row items-center\">\n                <Image\n                  className=\"mt-4 sm:mt-0\"\n                  src={Logo18}\n                  alt=\"18 +\"\n                  height={20}\n                  width={20}\n                />\n                <Image\n                  className=\"relative right-2 mt-4 sm:mt-0\"\n                  src={GambleAware}\n                  alt=\"Gamble Aware logo\"\n                  height={50}\n                  width={150}\n                />\n              </div>\n            </Link>\n            <p className=\"font-body\">\n              {labels.footerGambleAware}{\" \"}\n              <Link\n                href={RESPONSIBLE_GAMING}\n                aria-label={labels.footerResponsibleGaming}\n              >\n                {labels.footerResponsibleGaming}\n              </Link>\n            </p>\n          </div>\n          <p className=\"mb-4 text-start font-body leading-normal xl:text-justify\">\n            {labels.footerDisclaimer}\n          </p>\n        </div>\n      </div>\n    </footer>\n  );\n};\n\nexport default Footer;\n","import Link from \"next/link\";\nimport { useRouter } from \"next/router\";\nimport { useEffect } from \"react\";\n\nimport Icon from \"@/components/icon/Icon\";\n\nimport DesktopNavMenu from \"./DesktopNavMenu\";\n\nconst DesktopNavItem = ({ setIsHovered, item, name, onClick }) => {\n  const router = useRouter();\n  const nameMap = {\n    \"English Premier League\": \"premier\",\n  };\n\n  const iconName =\n    `${nameMap[name] || name.toLowerCase()}Category`?.replace(/ /g, \"\") || \"\";\n\n  useEffect(() => {\n    if (\n      typeof item !== \"object\" &&\n      item &&\n      !item.includes(\"horses.bettingnews.com\")\n    ) {\n      router.prefetch(item);\n    }\n  }, []);\n  const horsesRel =\n    typeof item !== \"object\" && item && item.includes(\"horses.bettingnews.com\")\n      ? { rel: \"preload\" }\n      : {};\n  return (\n    <>\n      {typeof item === \"object\" ? (\n        <div onClick={() => setIsHovered(false)}>\n          <DesktopNavMenu menu={item} name={name} isChild />\n        </div>\n      ) : (\n        <Link\n          key={name}\n          aria-label={name}\n          className=\"flex gap-2 whitespace-nowrap px-5 py-2 font-heading font-normal text-nav-blue hover:bg-blue hover:text-white focus:bg-blue focus:text-white\"\n          href={item}\n          onClick={() => setIsHovered(false)}\n          {...horsesRel}\n        >\n          <Icon\n            color={\"currentColor\"}\n            className=\"h-[20px] w-[25px]\"\n            height={\"20px\"}\n            name={iconName}\n            width={\"25px\"}\n          />\n          {name}\n        </Link>\n      )}\n    </>\n  );\n};\n\nexport default DesktopNavItem;\n","import { useRouter } from \"next/router\";\nimport { useCallback, useEffect, useState } from \"react\";\nimport { Popover } from \"react-tiny-popover\";\n\nimport Icon from \"@/components/icon/Icon\";\nimport { useKeyPress } from \"@/hooks/useKeyPress\";\n\nimport DesktopNavItem from \"./DesktopNavItem\";\n\nconst DesktopNavMenu = ({ menu, name, isChild = false }) => {\n  const router = useRouter();\n  const [isHovered, setIsHovered] = useState(false); // Hover state for this popover\n  const [parentElement, setParentElement] = useState(null);\n  const popoverParentId = `desktop-nav-menu-${name}`;\n\n  const namesMap = {\n    \"Soccer Odds\": \"Soccer\",\n    \"Soccer Picks\": \"Soccer\",\n    \"Soccer News\": \"Soccer\",\n  };\n\n  const formattedName = namesMap[name] ?? name;\n\n  // useEffect only runs client side, ensuring the document\n  // exists before getting the popover parent element\n  useEffect(() => {\n    const popoverParentElement = document.getElementById(popoverParentId);\n    if (popoverParentElement) {\n      setParentElement(popoverParentElement);\n    }\n  }, [popoverParentId]);\n\n  // If popover is open, close on escape\n  useKeyPress(\"Escape\", isHovered, () => setIsHovered(false));\n\n  // If the event that triggered onBlur is not a link, we can\n  // assume that the popover has lost focus and should be closed\n  const onPopoverBlur = useCallback(\n    (event) => {\n      if (isHovered && event?.relatedTarget?.tagName !== \"A\") {\n        setIsHovered(false);\n      }\n    },\n    [isHovered]\n  );\n\n  const handlePopoverMouseEnter = () => {\n    setIsHovered(true);\n  };\n\n  const handlePopoverMouseLeave = () => {\n    setIsHovered(false);\n  };\n\n  const handleOnClick = (path) => {\n    if (path) {\n      router.push(path);\n      setIsHovered(false);\n    }\n  };\n\n  return (\n    <div\n      id={popoverParentId}\n      onMouseEnter={handlePopoverMouseEnter}\n      onMouseLeave={handlePopoverMouseLeave}\n      className=\"popover-parent\"\n    >\n      {parentElement && (\n        <Popover\n          isOpen={true}\n          onClickOutside={() => setIsHovered(false)}\n          parentElement={parentElement}\n          containerStyle={{ width: isChild ? \"284px\" : \"\" }}\n          positions={[isChild ? \"right\" : \"bottom\"]}\n          align=\"start\"\n          content={\n            <div\n              className={`z-[2] grid w-full min-w-[10rem] grid-cols-1 border border-border-blue bg-white py-2 ${\n                isChild ? \"relative bottom-2 w-max rounded-r-lg\" : \"rounded-lg\"\n              }`}\n              onBlur={onPopoverBlur}\n              style={{ display: isHovered ? \"block\" : \"none\" }}\n            >\n              {!isChild && (\n                <div className=\"flex flex-row items-center px-4 pb-4 pt-2 \">\n                  <Icon\n                    color={\"currentColor\"}\n                    className=\"mr-2 text-blue\"\n                    height={\"20px\"}\n                    name={`nav${name}`?.replace(/ /g, \"\") || \"\"}\n                    width={\"20px\"}\n                  />\n                  <p className=\"font-heading text-xs font-bold uppercase tracking-wide text-dark\">\n                    {menu.menuTitle === \"Horse Racing\"\n                      ? \"Today's Picks\"\n                      : menu.menuTitle}\n                  </p>\n                </div>\n              )}\n              <div className=\"grid grid-cols-1 divide-y divide-border-grey\">\n                {menu?.menuOptions &&\n                  Object.entries(menu.menuOptions).map(([key, item]) => (\n                    <DesktopNavItem\n                      key={key}\n                      item={item}\n                      name={key}\n                      isChild={true}\n                      setIsHovered={setIsHovered}\n                    />\n                  ))}\n              </div>\n            </div>\n          }\n        >\n          <button\n            key={formattedName}\n            aria-label={formattedName}\n            onClick={() => handleOnClick(menu?.path)}\n            className={`relative flex items-center whitespace-nowrap px-3 py-2 text-[0.925rem] tracking-wide xl:text-base ${\n              isChild\n                ? `${!menu?.league ? \"text-black text-left\" : \"flex gap-2 px-5 font-heading text-nav-blue\"} ${!menu?.parent ? \"text-black text-left\" : \"flex gap-2 px-5 font-heading text-nav-blue\"} nav-bar-caret-child flex w-full items-center`\n                : \"nav-bar-caret mx-2 font-semibold text-white\"\n            } ${\n              isHovered\n                ? !isChild\n                  ? \"nav-bar-caret-open text-[#ffffffbf]\"\n                  : \"nav-bar-caret-open-child\"\n                : \"\"\n            }`}\n          >\n            {isChild && menu?.league && (\n              <Icon\n                className=\"h-[20px] w-[25px]\"\n                color={\"currentColor\"}\n                height={\"20px\"}\n                name={`${formattedName.toLowerCase().replace(/ /g, \"\")}Category`}\n                width={\"20px\"}\n              />\n            )}\n            {formattedName}\n          </button>\n        </Popover>\n      )}\n    </div>\n  );\n};\n\nexport default DesktopNavMenu;\n","import { useRouter } from \"next/router\";\nimport { useCallback, useState } from \"react\";\n\nimport labels from \"@/config/labels\";\n\nconst Search = ({ isMobileDrawer, onSubmitSearch }) => {\n  const router = useRouter();\n  const [searchTerm, setSearchTerm] = useState(\"\");\n\n  // Submit search and then clear search term on enter\n  function onKeyUp(event) {\n    if (event?.key === \"Enter\") {\n      event?.preventDefault();\n      if (onSubmitSearch) {\n        onSubmitSearch();\n      }\n      setSearchTerm(\"\");\n      router.push(`/search?term=${encodeURIComponent(event?.target?.value)}`);\n    }\n  }\n\n  // Store search term on input change\n  function onChange(event) {\n    setSearchTerm(event?.target?.value);\n  }\n\n  // Submit search and then clear search term\n  const onSubmit = useCallback(() => {\n    if (onSubmitSearch) {\n      onSubmitSearch();\n    }\n    const encodedSearmTerm = encodeURIComponent(searchTerm);\n    setSearchTerm(\"\");\n    router.push(`/search?term=${encodedSearmTerm}`);\n  }, [onSubmitSearch, router, searchTerm]);\n\n  const containerClassName = isMobileDrawer\n    ? \"block p-4 bg-link-blue -mx-4\"\n    : \"absolute left-0 top-[72px] w-full p-4 bg-link-blue z-[2]\";\n\n  return (\n    <div className={containerClassName}>\n      <div className=\"flex flex-row items-center justify-center\">\n        <input\n          className=\"max h-[44px] w-full min-w-[200px] max-w-[500px] rounded-lg border border-grey-200 bg-off-white px-4 py-[5px] font-normal text-dark\"\n          type=\"text\"\n          autoFocus\n          onChange={onChange}\n          onKeyUp={onKeyUp}\n          placeholder={labels.searchPlaceholder}\n          value={searchTerm}\n        />\n        <button\n          aria-label={labels.searchButton}\n          className=\"ml-2 rounded-full bg-blue px-5 py-3 font-heading text-sm font-normal text-white hover:bg-dark-blue\"\n          onClick={onSubmit}\n        >\n          {labels.searchButton}\n        </button>\n      </div>\n    </div>\n  );\n};\n\nexport default Search;\n","import Image from \"next/image\";\nimport Link from \"next/link\";\nimport { useState } from \"react\";\n\nimport Icon from \"@/components/icon/Icon\";\nimport { STORE_PATH } from \"@/config/constants\";\nimport labels from \"@/config/labels\";\nimport BNLogo from \"@/public/betting-news-logo.svg\";\n\nimport DesktopNavMenu from \"./DesktopNavMenu\";\nimport Search from \"./Search\";\n\nconst DesktopNav = ({ menus }) => {\n  const [isSearchVisible, setIsSearchVisible] = useState(false);\n  const linkClassName =\n    \"flex flex-row items-center py-2 px-4 text-[0.925rem] xl:text-base text-white font-semibold whitespace-nowrap tracking-wide capitalize\";\n\n  return (\n    <nav\n      className={\"sticky top-0 z-20 hidden w-full bg-blue px-4 py-0 xl:block\"}\n    >\n      <div className=\"container flex h-[88px] flex-row items-center px-0 xl:max-w-screen-2xl\">\n        <Link aria-label=\"Betting News\" href=\"/\">\n          <Image\n            src={BNLogo}\n            alt=\"Betting News Logo\"\n            title=\"Betting News\"\n            height={38}\n            loading=\"eager\"\n            priority\n            width={168}\n            className=\"xl:hidden\"\n          />\n          <Image\n            src={BNLogo}\n            alt=\"Betting News Logo\"\n            title=\"Betting News\"\n            height={38}\n            width={200}\n            loading=\"eager\"\n            priority\n            className=\"hidden h-[36px] w-[180px] xl:inline-block\"\n          />\n        </Link>\n        <div className=\"mt-3 flex flex-row p-2\">\n          {menus &&\n            Object.entries(menus).map(([menuKey, menu]) => (\n              <DesktopNavMenu key={menuKey} menu={menu} name={menuKey} />\n            ))}\n          <Link className={linkClassName} href={STORE_PATH} target=\"_blank\">\n            {labels.storeLabel}\n          </Link>\n          <div>\n            <button\n              aria-label={labels.navBarSearchTitle}\n              onClick={() => setIsSearchVisible((value) => !value)}\n              className={linkClassName}\n            >\n              <Icon\n                name=\"search\"\n                className=\"ml-0 mt-1 -scale-x-100\"\n                color=\"currentColor\"\n                height={20}\n                width={20}\n              />\n            </button>\n            {isSearchVisible && (\n              <Search onSubmitSearch={() => setIsSearchVisible(false)} />\n            )}\n          </div>\n        </div>\n      </div>\n    </nav>\n  );\n};\n\nexport default DesktopNav;\n","import React, { useEffect, useRef, useState } from 'react';\n// ------------------ Helpers\nfunction isNumber(n) {\n    const number = parseFloat(n);\n    return !isNaN(number) && isFinite(number);\n}\nfunction isPercentage(height) {\n    // Percentage height\n    return (typeof height === 'string' &&\n        height[height.length - 1] === '%' &&\n        isNumber(height.substring(0, height.length - 1)));\n}\nfunction hideContent(element, height, disableDisplayNone) {\n    // Check for element?.style is added cause this would fail in tests (react-test-renderer)\n    // Read more here: https://github.com/Stanko/react-animate-height/issues/17\n    if (height === 0 &&\n        !disableDisplayNone &&\n        (element === null || element === void 0 ? void 0 : element.style) &&\n        (element === null || element === void 0 ? void 0 : element.children.length) > 0) {\n        element.style.display = 'none';\n    }\n}\nfunction showContent(element, height) {\n    // Check for element?.style is added cause this would fail in tests (react-test-renderer)\n    // Read more here: https://github.com/Stanko/react-animate-height/issues/17\n    if (height === 0 && (element === null || element === void 0 ? void 0 : element.style)) {\n        element.style.display = '';\n    }\n}\nconst ANIMATION_STATE_CLASSES = {\n    animating: 'rah-animating',\n    animatingUp: 'rah-animating--up',\n    animatingDown: 'rah-animating--down',\n    animatingToHeightZero: 'rah-animating--to-height-zero',\n    animatingToHeightAuto: 'rah-animating--to-height-auto',\n    animatingToHeightSpecific: 'rah-animating--to-height-specific',\n    static: 'rah-static',\n    staticHeightZero: 'rah-static--height-zero',\n    staticHeightAuto: 'rah-static--height-auto',\n    staticHeightSpecific: 'rah-static--height-specific',\n};\nfunction getStaticStateClasses(animationStateClasses, height) {\n    return [\n        animationStateClasses.static,\n        height === 0 && animationStateClasses.staticHeightZero,\n        typeof height === 'number' && height > 0\n            ? animationStateClasses.staticHeightSpecific\n            : null,\n        height === 'auto' && animationStateClasses.staticHeightAuto,\n    ]\n        .filter((v) => v)\n        .join(' ');\n}\n// ------------------ Component\nconst propsToOmitFromDiv = [\n    'animateOpacity',\n    'animationStateClasses',\n    'applyInlineTransitions',\n    'children',\n    'className',\n    'contentClassName',\n    'contentRef',\n    'delay',\n    'duration',\n    'easing',\n    'height',\n    'onHeightAnimationEnd',\n    'onHeightAnimationStart',\n    'style',\n    'disableDisplayNone',\n];\nconst AnimateHeight = React.forwardRef((componentProps, ref) => {\n    // const AnimateHeight = forwardRef((componentProps: AnimateHeightProps, ref) => {\n    // const AnimateHeight: React.FC<AnimateHeightProps> = (componentProps) => {\n    const { animateOpacity = false, animationStateClasses = {}, applyInlineTransitions = true, children, className = '', contentClassName, delay: userDelay = 0, disableDisplayNone = false, duration: userDuration = 500, easing = 'ease', height, onHeightAnimationEnd, onHeightAnimationStart, style, contentRef, } = componentProps;\n    const divProps = Object.assign({}, componentProps);\n    propsToOmitFromDiv.forEach((propKey) => {\n        delete divProps[propKey];\n    });\n    // ------------------ Initialization\n    const prevHeight = useRef(height);\n    const contentElement = useRef(null);\n    const animationClassesTimeoutID = useRef();\n    const timeoutID = useRef();\n    const stateClasses = useRef(Object.assign(Object.assign({}, ANIMATION_STATE_CLASSES), animationStateClasses));\n    const isBrowser = typeof window !== 'undefined';\n    const prefersReducedMotion = useRef(isBrowser && window.matchMedia\n        ? window.matchMedia('(prefers-reduced-motion)').matches\n        : false);\n    const delay = prefersReducedMotion.current ? 0 : userDelay;\n    const duration = prefersReducedMotion.current ? 0 : userDuration;\n    let initHeight = height;\n    let initOverflow = 'visible';\n    if (typeof height === 'number') {\n        // Reset negative height to 0\n        initHeight = height < 0 ? 0 : height;\n        initOverflow = 'hidden';\n    }\n    else if (isPercentage(initHeight)) {\n        // If value is string \"0%\" make sure we convert it to number 0\n        initHeight = height === '0%' ? 0 : height;\n        initOverflow = 'hidden';\n    }\n    const [currentHeight, setCurrentHeight] = useState(initHeight);\n    const [overflow, setOverflow] = useState(initOverflow);\n    const [useTransitions, setUseTransitions] = useState(false);\n    const [animationStateClassNames, setAnimationStateClassNames] = useState(getStaticStateClasses(stateClasses.current, height));\n    // ------------------ Did mount\n    useEffect(() => {\n        // Hide content if height is 0 (to prevent tabbing into it)\n        hideContent(contentElement.current, currentHeight, disableDisplayNone);\n        // This should be explicitly run only on mount\n        // eslint-disable-next-line react-hooks/exhaustive-deps\n    }, []);\n    // ------------------ Height update\n    useEffect(() => {\n        if (height !== prevHeight.current && contentElement.current) {\n            showContent(contentElement.current, prevHeight.current);\n            // Cache content height\n            contentElement.current.style.overflow = 'hidden';\n            const contentHeight = contentElement.current.offsetHeight;\n            contentElement.current.style.overflow = '';\n            // set total animation time\n            const totalDuration = duration + delay;\n            let newHeight;\n            let timeoutHeight;\n            let timeoutOverflow = 'hidden';\n            let timeoutUseTransitions;\n            const isCurrentHeightAuto = prevHeight.current === 'auto';\n            if (typeof height === 'number') {\n                // Reset negative height to 0\n                newHeight = height < 0 ? 0 : height;\n                timeoutHeight = newHeight;\n            }\n            else if (isPercentage(height)) {\n                // If value is string \"0%\" make sure we convert it to number 0\n                newHeight = height === '0%' ? 0 : height;\n                timeoutHeight = newHeight;\n            }\n            else {\n                // If not, animate to content height\n                // and then reset to auto\n                newHeight = contentHeight; // TODO solve contentHeight = 0\n                timeoutHeight = 'auto';\n                timeoutOverflow = undefined;\n            }\n            if (isCurrentHeightAuto) {\n                // This is the height to be animated to\n                timeoutHeight = newHeight;\n                // If previous height was 'auto'\n                // set starting height explicitly to be able to use transition\n                newHeight = contentHeight;\n            }\n            // Animation classes\n            const newAnimationStateClassNames = [\n                stateClasses.current.animating,\n                (prevHeight.current === 'auto' || height < prevHeight.current) &&\n                    stateClasses.current.animatingUp,\n                (height === 'auto' || height > prevHeight.current) &&\n                    stateClasses.current.animatingDown,\n                timeoutHeight === 0 && stateClasses.current.animatingToHeightZero,\n                timeoutHeight === 'auto' &&\n                    stateClasses.current.animatingToHeightAuto,\n                typeof timeoutHeight === 'number' && timeoutHeight > 0\n                    ? stateClasses.current.animatingToHeightSpecific\n                    : null,\n            ]\n                .filter((v) => v)\n                .join(' ');\n            // Animation classes to be put after animation is complete\n            const timeoutAnimationStateClasses = getStaticStateClasses(stateClasses.current, timeoutHeight);\n            // Set starting height and animating classes\n            // When animating from 'auto' we first need to set fixed height\n            // that change should be animated\n            setCurrentHeight(newHeight);\n            setOverflow('hidden');\n            setUseTransitions(!isCurrentHeightAuto);\n            setAnimationStateClassNames(newAnimationStateClassNames);\n            // Clear timeouts\n            clearTimeout(timeoutID.current);\n            clearTimeout(animationClassesTimeoutID.current);\n            if (isCurrentHeightAuto) {\n                // When animating from 'auto' we use a short timeout to start animation\n                // after setting fixed height above\n                timeoutUseTransitions = true;\n                // Short timeout to allow rendering of the initial animation state first\n                timeoutID.current = setTimeout(() => {\n                    setCurrentHeight(timeoutHeight);\n                    setOverflow(timeoutOverflow);\n                    setUseTransitions(timeoutUseTransitions);\n                    // ANIMATION STARTS, run a callback if it exists\n                    onHeightAnimationStart === null || onHeightAnimationStart === void 0 ? void 0 : onHeightAnimationStart(timeoutHeight);\n                }, 50);\n                // Set static classes and remove transitions when animation ends\n                animationClassesTimeoutID.current = setTimeout(() => {\n                    setUseTransitions(false);\n                    setAnimationStateClassNames(timeoutAnimationStateClasses);\n                    // ANIMATION ENDS\n                    // Hide content if height is 0 (to prevent tabbing into it)\n                    hideContent(contentElement.current, timeoutHeight, disableDisplayNone);\n                    // Run a callback if it exists\n                    onHeightAnimationEnd === null || onHeightAnimationEnd === void 0 ? void 0 : onHeightAnimationEnd(timeoutHeight);\n                }, totalDuration);\n            }\n            else {\n                // ANIMATION STARTS, run a callback if it exists\n                onHeightAnimationStart === null || onHeightAnimationStart === void 0 ? void 0 : onHeightAnimationStart(newHeight);\n                // Set end height, classes and remove transitions when animation is complete\n                timeoutID.current = setTimeout(() => {\n                    setCurrentHeight(timeoutHeight);\n                    setOverflow(timeoutOverflow);\n                    setUseTransitions(false);\n                    setAnimationStateClassNames(timeoutAnimationStateClasses);\n                    // ANIMATION ENDS\n                    // If height is auto, don't hide the content\n                    // (case when element is empty, therefore height is 0)\n                    if (height !== 'auto') {\n                        // Hide content if height is 0 (to prevent tabbing into it)\n                        hideContent(contentElement.current, newHeight, disableDisplayNone); // TODO solve newHeight = 0\n                    }\n                    // Run a callback if it exists\n                    onHeightAnimationEnd === null || onHeightAnimationEnd === void 0 ? void 0 : onHeightAnimationEnd(newHeight);\n                }, totalDuration);\n            }\n        }\n        prevHeight.current = height;\n        return () => {\n            clearTimeout(timeoutID.current);\n            clearTimeout(animationClassesTimeoutID.current);\n        };\n        // This should be explicitly run only on height change\n        // eslint-disable-next-line react-hooks/exhaustive-deps\n    }, [height]);\n    // ------------------ Render\n    const componentStyle = Object.assign(Object.assign({}, style), { height: currentHeight, overflow: overflow || (style === null || style === void 0 ? void 0 : style.overflow) });\n    if (useTransitions && applyInlineTransitions) {\n        componentStyle.transition = `height ${duration}ms ${easing} ${delay}ms`;\n        // Include transition passed through styles\n        if (style === null || style === void 0 ? void 0 : style.transition) {\n            componentStyle.transition = `${style.transition}, ${componentStyle.transition}`;\n        }\n        // Add webkit vendor prefix still used by opera, blackberry...\n        componentStyle.WebkitTransition = componentStyle.transition;\n    }\n    const contentStyle = {};\n    if (animateOpacity) {\n        contentStyle.transition = `opacity ${duration}ms ${easing} ${delay}ms`;\n        // Add webkit vendor prefix still used by opera, blackberry...\n        contentStyle.WebkitTransition = contentStyle.transition;\n        if (currentHeight === 0) {\n            contentStyle.opacity = 0;\n        }\n    }\n    // Check if user passed aria-hidden prop\n    const hasAriaHiddenProp = typeof divProps['aria-hidden'] !== 'undefined';\n    const ariaHidden = hasAriaHiddenProp\n        ? divProps['aria-hidden']\n        : height === 0;\n    return (React.createElement(\"div\", Object.assign({}, divProps, { \"aria-hidden\": ariaHidden, className: `${animationStateClassNames} ${className}`, style: componentStyle, ref: ref }),\n        React.createElement(\"div\", { className: contentClassName, style: contentStyle, ref: (el) => {\n                contentElement.current = el;\n                if (contentRef) {\n                    contentRef.current = el;\n                }\n            } }, children)));\n});\nexport default AnimateHeight;\n","import { useCallback, useEffect, useState } from \"react\";\n\nexport function useMobileMenu() {\n  const [windowOffset, setWindowOffset] = useState(0);\n  const [activeDrawer, setActiveDrawer] = useState(null);\n  const [expandedMenu, setExpandedMenu] = useState(null);\n  const [isSearchVisible, setIsSearchVisible] = useState(false);\n\n  // Fix to prevent background scrolling and bottom nav overlap on iOS\n  useEffect(() => {\n    const isMobileView = window.innerWidth < 992;\n    if (isMobileView && activeDrawer && !windowOffset) {\n      setWindowOffset(window.scrollY);\n      document.documentElement.setAttribute(\"style\", `height: 100vh;`);\n      document.body.setAttribute(\"style\", `position: fixed;`);\n    } else {\n      document.documentElement.setAttribute(\"style\", \"\");\n      document.body.setAttribute(\"style\", \"\");\n      window.scrollTo(0, windowOffset);\n      setWindowOffset(0);\n    }\n  }, [activeDrawer, windowOffset]);\n\n  // Expand search option and collapse other menu options\n  function onClickSearch() {\n    setExpandedMenu(null);\n    setIsSearchVisible((value) => !value);\n  }\n\n  // Collapse / clear all choices on page option click\n  function onSelectMenuOption() {\n    setActiveDrawer(null);\n    setExpandedMenu(null);\n    setIsSearchVisible(false);\n  }\n\n  // Expand menu option\n  function onExpandMenuOption(option) {\n    setExpandedMenu(option);\n    setIsSearchVisible(false);\n  }\n\n  // Expand or collapse mobile menus and clear any selections\n  const onToggleDrawer = useCallback(\n    (drawer) => {\n      if (drawer === activeDrawer) {\n        setActiveDrawer(null);\n      } else {\n        setActiveDrawer(drawer);\n      }\n      setExpandedMenu(null);\n      setIsSearchVisible(false);\n    },\n    [activeDrawer]\n  );\n  return {\n    expandedMenu,\n    activeDrawer,\n    isSearchVisible,\n    onClickSearch,\n    onSelectMenuOption,\n    onExpandMenuOption,\n    onToggleDrawer,\n  };\n}\n","import Link from \"next/link\";\n\nimport Icon from \"@/components/icon/Icon\";\nimport { useMobileMenu } from \"@/hooks/useMobileMenu\";\n\nimport MobileNavMenu from \"./MobileNavMenu\";\n\nconst MobileNavItem = ({ item, name, onSelectedParentMenuOption }) => {\n  const nameMap = {\n    \"English Premier League\": \"premier\",\n  };\n  const iconName = `${nameMap[name] || name.replace(/ /g, \"\").toLowerCase()}Category`;\n  const { onExpandMenuOption, expandedMenu } = useMobileMenu();\n  return (\n    <>\n      {typeof item === \"object\" ? (\n        <div className=\"ml-10\">\n          <MobileNavMenu\n            expandedMenuOption={expandedMenu}\n            menu={item.menuOptions}\n            league={item?.league}\n            name={name}\n            onExpandMenuOption={onExpandMenuOption}\n            onSelectMenuOption={onSelectedParentMenuOption}\n          />\n        </div>\n      ) : (\n        <Link\n          key={name}\n          aria-label={name}\n          className=\"flex gap-2 py-1.5 pl-10 font-heading text-white hover:bg-white hover:text-dark focus:bg-white focus:text-dark\"\n          href={item ?? \"\"}\n          onClick={onSelectedParentMenuOption}\n        >\n          <Icon\n            className=\"h-[20px] w-[25px]\"\n            color={\"currentColor\"}\n            height={\"20px\"}\n            name={iconName}\n            width={\"25px\"}\n          />\n          {name}\n        </Link>\n      )}\n    </>\n  );\n};\n\nexport default MobileNavItem;\n","import { useCallback } from \"react\";\nimport AnimateHeight from \"react-animate-height\";\n\nimport Icon from \"@/components/icon/Icon\";\n\nimport MobileNavItem from \"./MobileNavItem\";\n\nconst MobileNavMenu = ({\n  expandedMenuOption,\n  menu,\n  league,\n  name,\n  onExpandMenuOption,\n  onSelectMenuOption,\n}) => {\n  // Expand / collapse menu option\n  const onExpand = useCallback(() => {\n    if (expandedMenuOption === name) {\n      onExpandMenuOption(null);\n    } else {\n      onExpandMenuOption(name);\n    }\n  }, [expandedMenuOption, name, onExpandMenuOption]);\n\n  const namesMap = {\n    \"Soccer Odds\": \"Soccer\",\n    \"Soccer Picks\": \"Soccer\",\n    \"Soccer News\": \"Soccer\",\n  };\n\n  const formattedName = namesMap[name] ?? name;\n\n  // If the event that triggered onBlur is not a link, we can\n  // assume that the popover has lost focus and should be closed\n  const onMenuBlur = useCallback(\n    (event) => {\n      const isExpanded = expandedMenuOption === name;\n      if (\n        isExpanded &&\n        (!event.relatedTarget || event.relatedTarget.tagName !== \"A\")\n      ) {\n        onExpandMenuOption(null);\n      }\n    },\n    [expandedMenuOption, name, onExpandMenuOption]\n  );\n\n  const isExpanded = expandedMenuOption === name;\n  const navButtonClassname = isExpanded\n    ? \"relative w-full flex flex-row py-2 items-center text-white text-left font-semibold whitespace-nowrap tracking-wide leading-[28px] nav-bar-caret nav-bar-caret-open\"\n    : \"relative w-full flex flex-row py-2 items-center text-white text-left font-semibold whitespace-nowrap tracking-wide leading-[28px] nav-bar-caret\";\n\n  return (\n    <div>\n      <button\n        aria-label={formattedName}\n        onClick={onExpand}\n        className={`${navButtonClassname} ${\n          league ? \"gap-2 font-heading font-normal\" : \"\"\n        }`}\n      >\n        <Icon\n          className={`${!league ? \"mr-5\" : \"h-[20px] w-[25px]\"} text-white`}\n          height={league ? \"20px\" : \"16px\"}\n          color=\"white\"\n          stroke=\"#061235\"\n          svgfill=\"black\"\n          name={`nav${formattedName}`?.replace(/ /g, \"\") || \"\"}\n          width={\"20px\"}\n        />\n        {formattedName}\n      </button>\n      <AnimateHeight duration={250} height={isExpanded ? \"auto\" : 0}>\n        <div className=\"flex flex-col\" onBlur={onMenuBlur}>\n          {Object.entries(menu || {}).map(([key, item]) => (\n            <MobileNavItem\n              key={key}\n              item={item}\n              name={key}\n              onSelectedParentMenuOption={onSelectMenuOption}\n            />\n          ))}\n        </div>\n      </AnimateHeight>\n    </div>\n  );\n};\n\nexport default MobileNavMenu;\n","import Image from \"next/image\";\nimport Link from \"next/link\";\nimport AnimateHeight from \"react-animate-height\";\n\nimport ConsensusPicks from \"@/components/consensusPicks/ConsensusPicks\";\nimport Icon from \"@/components/icon/Icon\";\nimport { SOCIAL_GOOGLE, SOCIAL_LINKS, STORE_PATH } from \"@/config/constants\";\nimport labels from \"@/config/labels\";\nimport { useMobileMenu } from \"@/hooks/useMobileMenu\";\nimport useScreenWidth from \"@/hooks/useScreenWidth\";\nimport BNLogo from \"@/public/betting-news-logo.svg\";\n\nimport MobileNavMenu from \"./MobileNavMenu\";\nimport Search from \"./Search\";\n\nconst MOBILE_DRAWERS = {\n  MENU: \"menu\",\n  PICKS: \"picks\",\n};\n\nconst MobileNav = ({ menus }) => {\n  const {\n    activeDrawer,\n    expandedMenu,\n    isSearchVisible,\n    onClickSearch,\n    onExpandMenuOption,\n    onSelectMenuOption,\n    onToggleDrawer,\n  } = useMobileMenu();\n  const linkMenuClassName =\n    \"relative w-full flex flex-row py-2 items-center text-white text-left font-semibold whitespace-nowrap tracking-wide leading-[28px] capitalize\";\n\n  const screenWidth = useScreenWidth();\n  const isMobile = screenWidth <= 590;\n\n  return (\n    <nav\n      className={`sticky top-0 z-20 block w-full bg-blue px-4 py-2 xl:hidden ${\n        activeDrawer === MOBILE_DRAWERS.MENU ? \"pr-0\" : \"\"\n      }`}\n    >\n      <div className=\"flex w-full flex-row items-center justify-between px-0\">\n        <Link aria-label=\"Betting News\" href=\"/\" onClick={onSelectMenuOption}>\n          <Image\n            src={BNLogo}\n            alt=\"Betting News Logo\"\n            title=\"Betting News\"\n            height={38}\n            width={168}\n          />\n        </Link>\n        <button\n          aria-label={labels.mobileNavMenu}\n          className={`nav-bar-menu-toggle -my-2 -ml-6 flex h-[56px] flex-col items-center justify-center font-heading text-xs uppercase text-white ${\n            activeDrawer === MOBILE_DRAWERS.MENU ? \"active w-[90px]\" : \"\"\n          }`}\n          onClick={() => onToggleDrawer(MOBILE_DRAWERS.MENU)}\n        >\n          <Icon\n            name={\n              activeDrawer === MOBILE_DRAWERS.MENU\n                ? \"mobileNavClose\"\n                : \"mobileNavMenu\"\n            }\n            color=\"currentColor\"\n            height={28}\n            width={25}\n            className=\"text-[28px]\"\n          />\n          {labels.mobileNavMenu}\n        </button>\n      </div>\n      <AnimateHeight\n        className=\"absolute left-0 top-[56px] w-screen xl:hidden\"\n        duration={500}\n        height={activeDrawer ? \"auto\" : 0}\n      >\n        {activeDrawer === MOBILE_DRAWERS.MENU && (\n          <div className=\"nav-bar-mobile-menu w-full overflow-y-auto bg-dark-blue p-4\">\n            {menus &&\n              Object.entries(menus).map(([menuKey, menu]) => (\n                <MobileNavMenu\n                  key={menuKey}\n                  expandedMenuOption={expandedMenu}\n                  menu={menu.menuOptions}\n                  name={menuKey}\n                  onExpandMenuOption={onExpandMenuOption}\n                  onSelectMenuOption={onSelectMenuOption}\n                />\n              ))}\n            <Link\n              className={`${linkMenuClassName}`}\n              href={STORE_PATH}\n              target=\"_blank\"\n            >\n              <Icon\n                className=\"mr-5 text-white\"\n                height={16}\n                name=\"store\"\n                color=\"currentColor\"\n                width={20}\n              />\n              {labels.storeLabel}\n            </Link>\n            <button\n              aria-label={labels.navBarSearchTitle}\n              onClick={onClickSearch}\n              className={linkMenuClassName}\n            >\n              <Icon\n                className=\"mr-5 text-white\"\n                height={16}\n                name=\"search\"\n                color=\"currentColor\"\n                width={20}\n              />\n              {labels.navBarSearchTitle}\n            </button>\n            {isSearchVisible && (\n              <Search isMobileDrawer onSubmitSearch={onSelectMenuOption} />\n            )}\n            <div className=\"ml-10 flex flex-row py-2\">\n              <p className=\"text-white\">{labels.footerSocialPrefix}</p>\n              <div\n                className={`flex gap-4  ${isMobile ? \" grid grid-cols-4\" : \"\"}`}\n              >\n                {Object.entries(SOCIAL_LINKS).map(([type, social]) => (\n                  <Link\n                    key={type}\n                    aria-label={type}\n                    className=\"ml-2\"\n                    href={social.url}\n                    target=\"_blank\"\n                  >\n                    <Icon\n                      className={`h-[26px] w-8 ${type === \"instagram\" ? \"insta-icon\" : \"\"}`}\n                      color={social.color}\n                      height={32}\n                      name={type}\n                      width={26}\n                    />\n                  </Link>\n                ))}\n                {Object.entries(SOCIAL_GOOGLE).map(([type, social]) => (\n                  <Link\n                    key={type}\n                    aria-label={type}\n                    className=\"ml-2\"\n                    target=\"_blank\"\n                    href={social.url}\n                  >\n                    <Icon\n                      className=\"h-[26px] w-8\"\n                      color={social.color}\n                      height={32}\n                      name={type}\n                      width={26}\n                    />\n                  </Link>\n                ))}\n              </div>\n            </div>\n          </div>\n        )}\n        {activeDrawer === MOBILE_DRAWERS.PICKS && (\n          <div className=\"nav-bar-mobile-menu w-full bg-site-bg p-4\">\n            <ConsensusPicks onSelectGame={onSelectMenuOption} />\n          </div>\n        )}\n      </AnimateHeight>\n    </nav>\n  );\n};\n\nexport default MobileNav;\n","import { addHorseTracksToNav } from \"@/utilities/horseTracks\";\n\nimport DesktopNav from \"./components/DesktopNav\";\nimport MobileNav from \"./components/MobileNav\";\n\nconst Nav = ({ horses, menus }) => {\n  const navMenus = addHorseTracksToNav(horses, menus ?? {});\n  return (\n    <>\n      <DesktopNav menus={navMenus} />\n      <MobileNav menus={navMenus} />\n    </>\n  );\n};\n\nexport default Nav;\n","import Footer from \"@/components/footer/Footer\";\nimport Nav from \"@/components/nav/Nav\";\nimport { bodyFont, headingFont } from \"@/utilities/fonts\";\n\nconst NavFooterLayout = ({ children, horses, menus, footer }) => {\n  return (\n    <>\n      <main className={`${bodyFont.variable} ${headingFont.variable}`}>\n        <Nav horses={horses} menus={menus} />\n        {children}\n        <Footer footer={footer} />\n      </main>\n    </>\n  );\n};\n\nexport default NavFooterLayout;\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"style\":{\"fontFamily\":\"'__bodyFont_d37cc8', '__bodyFont_Fallback_d37cc8'\"},\"className\":\"__className_d37cc8\",\"variable\":\"__variable_d37cc8\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"style\":{\"fontFamily\":\"'__headingFont_f627cb', '__headingFont_Fallback_f627cb'\"},\"className\":\"__className_f627cb\",\"variable\":\"__variable_f627cb\"};"],"names":["_18_logo","betting_news_logo","gamble_aware_main","googlenews_white","components_FooterList","footer","param","jsx_runtime","jsxs","div","className","jsx","h4","Link","aria-label","title","href","path","ul","childItems","Object","entries","map","key","item","li","Newsletter","dynamic","__webpack_require__","e","then","bind","ssr","footer_Footer","index","footerKey","concat","FooterList","p","labels","footerFollowSocialPrefix","SOCIAL_LINKS","social","type","target","url","Icon","color","height","name","width","Image","src","GoogleIcon","alt","BNLogo","unoptimized","footerLogoText","split","line","footerPrivacyPolicyLink","PRIVACY_POLICY_PATH","footerAboutUsLink","ABOUT_US_PATH","footerCopyrightDesktopPrefix","getFooterYear","footerCopyrightStartYear","footerCopyrightDesktopPostfix","Logo18","GambleAware","footerGambleAware","RESPONSIBLE_GAMING","footerResponsibleGaming","footerDisclaimer","components_DesktopNavItem","_this","setIsHovered","onClick","router","useRouter","iconName","nameMap","toLowerCase","replace","useEffect","includes","prefetch","horsesRel","rel","Fragment","DesktopNavMenu","menu","isChild","components_DesktopNavMenu","namesMap","isHovered","useState","parentElement","setParentElement","popoverParentId","formattedName","popoverParentElement","document","getElementById","useKeyPress","onPopoverBlur","useCallback","event","relatedTarget","tagName","handleOnClick","push","id","onMouseEnter","onMouseLeave","Popover","isOpen","onClickOutside","containerStyle","positions","align","content","onBlur","style","display","menuTitle","menuOptions","DesktopNavItem","button","league","parent","components_Search","isMobileDrawer","onSubmitSearch","searchTerm","setSearchTerm","onSubmit","encodedSearmTerm","encodeURIComponent","input","autoFocus","onChange","value","onKeyUp","preventDefault","placeholder","searchPlaceholder","searchButton","components_DesktopNav","menus","isSearchVisible","setIsSearchVisible","linkClassName","nav","loading","priority","menuKey","STORE_PATH","storeLabel","navBarSearchTitle","Search","isPercentage","length","isNumber","n","number","parseFloat","isNaN","isFinite","substring","hideContent","element","disableDisplayNone","children","ANIMATION_STATE_CLASSES","animating","animatingUp","animatingDown","animatingToHeightZero","animatingToHeightAuto","animatingToHeightSpecific","static","staticHeightZero","staticHeightAuto","staticHeightSpecific","getStaticStateClasses","animationStateClasses","filter","v","join","propsToOmitFromDiv","AnimateHeight","react","forwardRef","componentProps","ref","animateOpacity","applyInlineTransitions","contentClassName","delay","userDelay","duration","userDuration","easing","onHeightAnimationEnd","onHeightAnimationStart","contentRef","divProps","assign","forEach","propKey","prevHeight","useRef","contentElement","animationClassesTimeoutID","timeoutID","stateClasses","isBrowser","window","prefersReducedMotion","matchMedia","matches","current","initHeight","initOverflow","currentHeight","setCurrentHeight","overflow","setOverflow","useTransitions","setUseTransitions","animationStateClassNames","setAnimationStateClassNames","newHeight","timeoutHeight","contentHeight","offsetHeight","totalDuration","timeoutOverflow","isCurrentHeightAuto","undefined","newAnimationStateClassNames","timeoutAnimationStateClasses","clearTimeout","setTimeout","componentStyle","transition","WebkitTransition","contentStyle","opacity","ariaHidden","hasAriaHiddenProp","createElement","el","useMobileMenu","windowOffset","setWindowOffset","activeDrawer","setActiveDrawer","expandedMenu","setExpandedMenu","isMobileView","innerWidth","scrollY","documentElement","setAttribute","body","scrollTo","onToggleDrawer","drawer","onClickSearch","onSelectMenuOption","onExpandMenuOption","option","components_MobileNavItem","onSelectedParentMenuOption","MobileNavMenu","expandedMenuOption","components_MobileNavMenu","onExpand","onMenuBlur","isExpanded","stroke","svgfill","MobileNavItem","components_MobileNav","linkMenuClassName","screenWidth","useScreenWidth","mobileNavMenu","footerSocialPrefix","isMobile","SOCIAL_GOOGLE","ConsensusPicks","onSelectGame","nav_Nav","horses","navMenus","addHorseTracksToNav","DesktopNav","MobileNav","layouts_NavFooterLayout","main","headingFont","bodyFont","Nav","Footer","module","exports"],"sourceRoot":""}