{"version":3,"file":"js/app-b1660e8f6db712c4f9a5.js","mappings":"gvCAQA,MAAMA,EAA6B,CACjCC,wBAAwB,EACxBC,YAAY,GAoBd,MAjB4CC,CAACC,EAAQJ,EAAcK,KACjE,OAAQA,EAAOC,MACb,KAAKC,EAAAA,GACH,OAAAC,EAAAA,EAAA,GACKJ,GAAK,IACRH,uBAAwBI,EAAOI,UAEnC,KAAKC,EAAAA,GACH,OAAAF,EAAAA,EAAA,GACKJ,GAAK,IACRF,WAAYG,EAAOI,UAEvB,QACE,OAAOL,EACX,E,sgCCUF,MAAMJ,EAA6B,CACjCW,uBAAuB,EACvBC,aAAc,KACdC,kBAAkB,EAClBC,UAAW,GACXC,yBAA0B,CAAC,EAC3BC,YAAY,EACZC,mBAAmB,EACnBC,qBAAsB,GACtBC,qBAAsB,GACtBC,uBAAuB,EACvBC,eAAgB,GAChBC,iBAAiB,EACjBC,SAAU,GACVC,yBAAyB,GAoH3B,MAjH8CC,CAACrB,EAAQJ,EAAcK,KACnE,OAAQA,EAAOC,MACb,KAAKoB,EAAAA,GACH,OAAAlB,EAAAA,EAAA,GACKJ,GAAK,IACRO,uBAAuB,IAE3B,KAAKgB,EAAAA,GACH,OAAAnB,EAAAA,EAAA,GACKJ,GAAK,IACRQ,aAAcP,EAAOI,QACrBE,uBAAuB,IAE3B,KAAKiB,EAAAA,GACH,OAAApB,EAAAA,EAAA,GACKJ,GAAK,IACRa,mBAAmB,IAEvB,KAAKY,EAAAA,GACH,OAAArB,EAAAA,EAAA,GACKJ,GAAK,IACRY,WAAYX,EAAOI,QACnBQ,mBAAmB,IAEvB,KAAKa,EAAAA,GACH,OAAAtB,EAAAA,EAAA,GACKJ,GAAK,IACRS,kBAAkB,IAEtB,KAAKkB,EAAAA,GACH,OAAAvB,EAAAA,EAAA,GACKJ,GAAK,IACRU,UAAWT,EAAOI,QAAQuB,KAAKC,IAC7BA,EAAEC,kBAAmB,EACdD,KAETpB,kBAAkB,IAEtB,KAAKsB,EAAAA,GACH,OAAA3B,EAAAA,EAAA,GACKJ,GAAK,IACRW,yBAA0BV,EAAOI,UAErC,KAAK2B,EAAAA,GACH,OAAA5B,EAAAA,EAAA,GACKJ,GAAK,IACRgB,uBAAuB,IAE3B,KAAKiB,EAAAA,GACH,OAAA7B,EAAAA,EAAA,GACKJ,GAAK,IACRiB,eAAgBhB,EAAOI,QACvBW,uBAAuB,IAE3B,KAAKkB,EAAAA,GACH,OAAA9B,EAAAA,EAAA,GACKJ,GAAK,IACRkB,iBAAiB,IAErB,KAAKiB,EAAAA,GACH,OAAA/B,EAAAA,EAAA,GACKJ,GAAK,IACRkB,iBAAiB,EACjBC,SAAUlB,EAAOI,UAErB,KAAK+B,EAAAA,GACH,OAAAhC,EAAAA,EAAA,GACKJ,GAAK,IACRoB,wBAAyBnB,EAAOI,UAEpC,KAAKgC,EAAAA,GACH,OAAAjC,EAAAA,EAAA,GACKJ,GAAK,IACRU,UAAWV,EAAMU,UAAUkB,KAAKC,IAC9B,GAAIA,EAAES,IAAMrC,EAAOI,QAAQkC,WAAY,CACrCV,EAAEW,MAAO,EAET,MAAMC,EAAUZ,GAAGY,SAAW,GAExBC,EACJzC,EAAOI,QAAQsC,aAAaC,WAAa,IAAM3C,EAAOI,QAAQsC,aAAaE,UAS7E,OAPqE,IAAjEJ,EAAQK,QAAQC,GAASA,EAAKC,KAAK,OAASN,IAAUO,QACxDpB,GAAGY,QAAQS,KAAK,CACdjD,EAAOI,QAAQsC,aAAaC,WAC5B3C,EAAOI,QAAQsC,aAAaE,YAIzBhB,CACT,CACA,OAAOA,CAAC,MAGd,KAAKsB,EAAAA,GACH,OAAA/C,EAAAA,EAAA,GACKJ,GAAK,IACRU,UAAWV,EAAMU,UAAUkB,KAAKC,GAC1BA,EAAEuB,OAASnD,EAAOI,QAAQ+C,MAC5BC,OAAOC,OAAOzB,EAACzB,EAAAA,EAAA,GACVH,EAAOI,QAAQkD,WAAS,IAC3BzB,kBAAkB,KAEbD,GAEFA,MAGb,QACE,OAAO7B,EACX,E,ugCCtIF,MAAMJ,EAAe,CACnB4D,mBAAmB,EACnBC,QAAS,CAAC,EACVC,WAAY,GACZC,oBAAqB,CAAC,EACtBC,4BAA6B,CAAC,EAC9BC,2BAA2B,EAC3BC,qBAAsB,GACtBC,kBAAmB,CAAC,EACpBC,WAAY,GACZC,UAAW,GACXC,YAAa,GACbC,yBAA0B,GAC1BC,oBAAqB,CAAC,EACtBC,eAAgB,CAAC,EACjBC,WAAY,CAAC,EACbC,uBAAuB,EACvBC,mBAAmB,EACnBC,qBAAqB,EACrBC,aAAc,GACdC,sBAAuB,CAAC,EACxBC,wBAAyB,IAsL3B,MAnLuBC,CAAC7E,EAAQJ,EAAcK,KAC5C,OAAQA,EAAOC,MACb,KAAK4E,EAAAA,GACH,OAAA1E,EAAAA,EAAA,GACKJ,GAAK,IACRwD,kBAAmBvD,EAAOI,UAE9B,KAAK0E,EAAAA,GACH,MAAMC,EAAahF,EAAMyD,QAAQxD,EAAOI,QAAQ4E,aAAe,GAE/D,OADAD,EAAW9B,KAAKjD,EAAOI,QAAQ6E,aAC/B9E,EAAAA,EAAA,GACKJ,GAAK,IACRyD,QAAOrD,EAAAA,EAAA,GACFJ,EAAMyD,SAAO,IAChB,CAACxD,EAAOI,QAAQ4E,YAAaE,MAAMC,KAAK,IAAIC,IAAIL,QAGtD,KAAKM,EAAAA,GACH,OAAAlF,EAAAA,EAAA,GACKJ,GAAK,IACRyD,QAAOrD,EAAAA,EAAA,GACFJ,EAAMyD,SAAO,IAChB,CAACxD,EAAOI,QAAQ4E,YAAajF,EAAMyD,QAAQxD,EAAOI,QAAQ4E,YAAYnC,QACnEyC,GAAMA,IAAMtF,EAAOI,QAAQ6E,kBAIpC,KAAKM,EAAAA,GACH,OAAApF,EAAAA,EAAA,GACKJ,GAAK,IACRuE,sBAAuBtE,EAAOI,UAElC,KAAKoF,EAAAA,GACH,OAAArF,EAAAA,EAAA,GACKJ,GAAK,IACR0D,WAAYzD,EAAOI,UAEvB,KAAKqF,EAAAA,GACH,OAAAtF,EAAAA,EAAA,GACKJ,GAAK,IACR8D,qBAAsB7D,EAAOI,UAEjC,KAAKsF,EAAAA,GACH,OAAAvF,EAAAA,EAAA,GACKJ,GAAK,IACR6D,2BAA2B,IAE/B,KAAK+B,EAAAA,GACH,OAAAxF,EAAAA,EAAA,GACKJ,GAAK,IACR6D,2BAA2B,EAC3BO,oBAAmBhE,EAAAA,EAAA,GACdJ,EAAMoE,qBAAmB,IAC5B,CAACnE,EAAOI,QAAQwF,YAAa5F,EAAOI,QAAQyF,cAGlD,KAAKC,EAAAA,GACH,OAAA3F,EAAAA,EAAA,GACKJ,GAAK,IACRgE,WAAY/D,EAAOI,UAEvB,KAAK2F,EAAAA,GACH,OAAA5F,EAAAA,EAAA,GACKJ,GAAK,IACRsE,WAAYrE,EAAOI,QACnBmE,mBAAmB,IAEvB,KAAKyB,EAAAA,GACH,OAAA7F,EAAAA,EAAA,GACKJ,GAAK,IACRwE,mBAAmB,IAEvB,KAAK0B,EAAAA,GACH,OAAA9F,EAAAA,EAAA,GACKJ,GAAK,IACRqE,eAAgBpE,EAAOI,UAE3B,KAAK8F,EAAAA,GACH,OAAA/F,EAAAA,EAAA,GACKJ,GAAK,IACRiE,UAAWhE,EAAOI,UAEtB,KAAK+F,EAAAA,GACH,OAAAhG,EAAAA,EAAA,GACKJ,GAAK,IACRkE,YAAajE,EAAOI,UAExB,KAAKgG,EAAAA,GACH,OAAAjG,EAAAA,EAAA,GACKJ,GAAK,IACRmE,yBAA0BlE,EAAOI,UAErC,KAAKiG,EAAAA,GACH,OAAAlG,EAAAA,EAAA,GACKJ,GAAK,IACRuG,sBAAuBtG,EAAOI,UAElC,KAAKmG,EAAAA,GACH,OAAApG,EAAAA,EAAA,GACKJ,GAAK,IACRyG,uBAAwBxG,EAAOI,UAEnC,KAAKqG,EAAAA,GACH,OAAAtG,EAAAA,EAAA,GACKJ,GAAK,IACRqE,eAAcjE,EAAAA,EAAA,GACTJ,EAAMqE,gBAAc,IACvBsC,2BAA4B1G,EAAOI,UAErCoG,wBAAwB,IAE5B,KAAKG,EAAAA,GACH,OAAAxG,EAAAA,EAAA,GACKJ,GAAK,IACR6G,mBAAoB5G,EAAOI,UAE/B,KAAKyG,EAAAA,GACH,OAAA1G,EAAAA,EAAA,GACKJ,GAAK,IACRqE,eAAcjE,EAAAA,EAAA,GACTJ,EAAMqE,gBAAc,IACvB0C,SAAU9G,EAAOI,QAAQ0G,SACzBC,eAAgB/G,EAAOI,QAAQ2G,eAC/BC,gBAAiBhH,EAAOI,QAAQ4G,gBAChCC,aAAcjH,EAAOI,QAAQ6G,aAC7BC,YAAalH,EAAOI,QAAQ8G,cAE9BN,oBAAoB,IAExB,KAAKO,EAAAA,GACH,OAAAhH,EAAAA,EAAA,GACKJ,GAAK,IACRqH,oCAAqCpH,EAAOI,UAEhD,KAAKiH,EAAAA,GACH,OAAAlH,EAAAA,EAAA,GACKJ,GAAK,IACR0E,aAAczE,EAAOI,QAAQkH,cAC7B9C,qBAAqB,IAEzB,KAAK+C,EAAAA,GACH,OAAApH,EAAAA,EAAA,GACKJ,GAAK,IACRyE,oBAAqBxE,EAAOI,UAEhC,KAAKoH,EAAAA,GACH,OAAArH,EAAAA,EAAA,GACKJ,GAAK,IACR2E,sBAAuB1E,EAAOI,UAElC,KAAKqH,EAAAA,GACH,OAAAtH,EAAAA,EAAA,GACKJ,GAAK,IACRqE,eAAcjE,EAAAA,EAAA,GACTJ,EAAMqE,gBAAc,IACvBsD,KAAM,CACJC,IAAK3H,EAAOI,aAIpB,KAAKwH,EAAAA,GACH,OAAAzH,EAAAA,EAAA,GACKJ,GAAK,IACRqE,eAAcjE,EAAAA,EAAA,GACTJ,EAAMqE,gBAAc,IACvByD,MAAO,CACLF,IAAK3H,EAAOI,aAIpB,KAAK0H,EAAAA,GACH,OAAA3H,EAAAA,EAAA,GACKJ,GAAK,IACR4E,wBAAyB3E,EAAOI,UAEpC,QACE,OAAOL,EACX,E,miCClNF,MAAMJ,EAAe,CACnB+C,YAAa,CACXqF,aAAc,CAAC,GAEjBC,oBAAoB,EACpBC,gBAAgB,EAChBC,qBAAqB,EACrBC,iBAAiB,EACjBC,gBAAgB,EAChBC,kBAAmB,SACnBC,eAAgB,GAChBC,gBAAiB,KACjBC,qBAAsB,KACtBC,iBAAkB,KAClBC,QAAS,GACTC,aAAc,GACdC,SAAU,GACVC,gCAAgC,EAChCC,YAAa,EACbC,aAAc,CAAC,GAiIjB,MA9HuBC,CAACjJ,EAAQJ,EAAcK,KAC5C,IAAIiJ,EACJ,OAAQjJ,EAAOC,MACb,KAAKiJ,EAAAA,GACH,OAAA/I,EAAAA,EAAA,GACKJ,GAAK,IACR2C,YAAa1C,EAAOI,QACpB4H,oBAAoB,IAExB,KAAKmB,EAAAA,GACH,OAAAhJ,EAAAA,EAAA,GACKJ,GAAK,IACRiI,oBAAoB,IAExB,KAAKoB,EAAAA,GACH,OAAAjJ,EAAAA,EAAA,GACKJ,GAAK,IACR4I,aAAc3I,EAAOI,QACrB8H,qBAAqB,IAEzB,KAAKmB,EAAAA,GACH,OAAAlJ,EAAAA,EAAA,GACKJ,GAAK,IACRmI,qBAAqB,IAEzB,KAAKoB,EAAAA,GACH,OAAAnJ,EAAAA,EAAA,GACKJ,GAAK,IACR2I,QAAS1I,EAAOI,QAChB6H,gBAAgB,IAEpB,KAAKsB,EAAAA,GACH,OAAApJ,EAAAA,EAAA,GACKJ,GAAK,IACRkI,gBAAgB,IAEpB,KAAKuB,EAAAA,GACH,OAAArJ,EAAAA,EAAA,GACKJ,GAAK,IACR6I,SAAU5I,EAAOI,QACjB+H,iBAAiB,IAErB,KAAKsB,EAAAA,GACH,OAAAtJ,EAAAA,EAAA,GACKJ,GAAK,IACRoI,iBAAiB,IAErB,KAAKuB,EAAAA,GACH,OAAAvJ,EAAAA,EAAA,GACKJ,GAAK,IACRqI,eAAgBpI,EAAOI,QAAQuJ,KAC/BrB,eAAgBtI,EAAOI,QAAQkI,eAC/BsB,wBAAyB5J,EAAOI,QAAQwJ,wBACxCvB,kBAAmBrI,EAAOI,QAAQyJ,SAAW,WAEjD,KAAKC,EAAAA,GACH,OAAA3J,EAAAA,EAAA,GACKJ,GAAK,IACRgK,kBAAkB,IAEtB,KAAKC,EAAAA,GAQH,OAPAf,EAASgB,IAAAA,MAAQ,CAAC,EAAGlK,GACjBC,EAAOI,SAAWJ,EAAOI,QAAQkC,aACnC2G,EAAOvG,YAAYjC,UAAYwJ,IAAAA,OAC7BhB,EAAOvG,YAAYjC,WAClBmB,GAAMA,EAAES,KAAOrC,EAAOI,QAAQkC,cAGnCnC,EAAAA,EAAA,GACK8I,GAAM,IACTc,kBAAkB,IAEtB,KAAKG,EAAAA,GACH,OAAA/J,EAAAA,EAAA,GACKJ,GAAK,IACR2C,YAAWvC,EAAAA,EAAA,GACNJ,EAAM2C,aAAW,IACpBqF,aAAY5H,EAAAA,EAAA,GACPJ,EAAM2C,YAAYqF,cAAY,IACjCoC,wBAAyBnK,EAAOI,QAAQgK,YACpC,IAAIrK,EAAM2C,YAAYqF,aAAaoC,wBAAyBnK,EAAOI,QAAQiK,SAC3EtK,EAAM2C,YAAYqF,aAAaoC,wBAAwBtH,QACpDwH,GAAYA,EAAQhI,KAAOrC,EAAOI,QAAQiK,QAAQhI,WAKjE,KAAKiI,EAAAA,GACH,OAAAnK,EAAAA,EAAA,GACKJ,GAAK,IACR8I,+BAAgC7I,EAAOI,UAE3C,KAAKmK,EAAAA,GACH,OAAApK,EAAAA,EAAA,GACKJ,GAAK,IACR2C,YAAWvC,EAAAA,EAAA,GACNJ,EAAM2C,aAAW,IACpBqF,aAAY5H,EAAAA,EAAA,GACPJ,EAAM2C,YAAYqF,cAAY,IACjCyC,4BAA6BxK,EAAOI,YAGxCyI,gCAAgC,IAEpC,KAAK4B,EAAAA,GACH,OAAAtK,EAAAA,EAAA,GACKJ,GAAK,IACR+I,YAAa9I,EAAOI,UAExB,KAAKsK,EAAAA,GACH,OAAAvK,EAAAA,EAAA,GACKJ,GAAK,IACRgJ,aAAc/I,EAAOI,UAEzB,KAAKuK,EAAAA,GACH,OAAAxK,EAAAA,EAAA,GACKJ,GAAK,IACR2C,YAAWvC,EAAAA,EAAA,GACNJ,EAAM2C,aAAW,IACpBkI,MAAO5K,EAAOI,YAGpB,QACE,OAAOL,EACX,E,sgCCrKF,MAAMJ,EAAe,CACnBkL,MAAOC,OAAOC,WACdC,OAAQF,OAAOG,YACfC,cAAe,GAejB,MAZsCC,CAACpL,EAAQJ,EAAcK,IACnDA,EAAOC,OACRmL,EAAAA,EACHjL,EAAAA,EAAA,GACKJ,GACAC,EAAOI,SAGLL,ECTb,GACE6E,eAAc,EACdoE,eAAc,EACdqC,iBAAgB,IAChBjK,eAAc,EACdkK,wBAAuB,EACvBxL,aACF,GCRA,MACE8E,EAME2G,EANF3G,eACAoE,EAKEuC,EALFvC,eACA5H,EAIEmK,EAJFnK,eACAkK,EAGEC,EAHFD,wBACAD,EAEEE,EAFFF,iBACAvL,GACEyL,EADFzL,aAGI0L,GAAgB,CACpBC,IAAK,iBACLC,QAASA,EAAAA,EACTC,UAAW,CAAC,UAAW,aAAc,oBAGjCC,GAAiB,CACrBH,IAAK,iBACLC,QAASA,EAAAA,EACTG,UAAW,CAAC,gBAGRC,GAAsC,CAC1CL,IAAK,mBACLC,QAASA,EAAAA,GAGLK,IAAcC,EAAAA,EAAAA,IAAgB,CAClCpH,gBAAgBqH,EAAAA,EAAAA,IAAeT,GAAe5G,GAC9CsH,UAAUD,EAAAA,EAAAA,IAAeL,GAAgB5C,GACzCmD,WAAWF,EAAAA,EAAAA,IAAeH,GAAiBT,GAC3ChB,QAASjJ,EACT0J,OAAQQ,EACRc,MAAOtM,KAIHuM,GAAgB,CACpBZ,IAAK,OACLC,QAAO,IACPC,UAAW,CAAC,iBAAkB,WAAY,SAAU,YAKtD,QAFyBM,EAAAA,EAAAA,IAAeI,GAAeN,ICzCvD,MACMO,IADoBxB,OAAeyB,sCAAwCC,EAAAA,KAC/CC,EAAAA,EAAAA,IAAgBC,EAAAA,IAErCC,IAAQC,EAAAA,EAAAA,IAAYb,GAAaO,IAE7CxB,OAAe6B,MAAQA,GAEjB,MAAME,IAAYC,EAAAA,EAAAA,IAAaH,I,gBCAtC,MAAMI,GAAkBA,KACtBC,EAAAA,GAAAA,KAACC,EAAAA,EAAS,CAACC,UAAU,SAAQC,UAC3BH,EAAAA,GAAAA,KAACI,EAAAA,EAAM,MAILC,GAAOA,KACXL,EAAAA,GAAAA,KAACM,EAAAA,GAAQ,CAACX,MAAOA,GAAMQ,UACrBH,EAAAA,GAAAA,KAACO,EAAAA,EAAW,CAACC,SAASR,EAAAA,GAAAA,KAACD,GAAe,IAAKF,UAAWA,GAAUM,UAC9DH,EAAAA,GAAAA,KAACS,EAAAA,GAAM,CAACC,SAAUA,IAAM5C,OAAO6C,SAAS,EAAG,GAAGR,UAC5CH,EAAAA,GAAAA,KAACY,EAAAA,GAAK,CAACC,KAAK,YAAYC,WAAWC,EAAAA,EAAAA,GAAWC,EAAAA,YAMtDC,SAASC,iBAAiB,oBAAoB,KAC5CC,EAAAA,QAAgBnB,EAAAA,GAAAA,KAACK,GAAI,IAAKY,SAASG,eAAe,kBAAkB,G,0sCCvBvD,SAASC,IACtB,MAAyDC,EAAAC,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAlDC,EAAaH,EAAA,GAAEI,EAAgBJ,EAAA,GACuBK,EAAAJ,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAtDI,EAAeD,EAAA,GAAEE,EAAkBF,EAAA,GAEpCG,GAAWC,EAAAA,EAAAA,MACXrM,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAC/D9C,GAAyBoP,EAAAA,EAAAA,KAC5BjP,GAAqBA,EAAMqM,MAAMxM,yBAE9BC,GAAamP,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMqM,MAAMvM,aAEjE,OACEoP,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACmC,EAAAA,GAAU,CACTC,OAAQX,EACRY,QAASA,IAAMX,GAAiB,GAChC7D,MAAM,QACNyE,WAAW,qBACXC,cAAc,mCAAkCpC,UAEhD8B,EAAAA,EAAAA,MAACO,EAAY,CAAArC,SAAA,EACXH,EAAAA,EAAAA,KAACyC,EAAAA,GAAQ,CACPC,MAAM,uBACNC,KAAK,KACLC,UAAW/P,EACXgQ,SAAWC,IACThB,GAASiB,EAAAA,EAAAA,GAAcD,EAAEE,OAAOC,SAAS,KAG7CjD,EAAAA,EAAAA,KAACyC,EAAAA,GAAQ,CACPC,MAAM,qBACNC,KAAK,KACLC,UAAWhQ,EACXiQ,SAAWC,IACThB,GAASoB,EAAAA,EAAAA,IAA0BJ,EAAEE,OAAOC,UAC5CpB,GAAmB,EAAK,IAG3BD,IACC5B,EAAAA,EAAAA,KAACmD,EAAAA,GAAU,CACTR,KAAK,KACLS,KAAK,2CACLC,SAAS,UACTC,MAAOC,EAAAA,GAAOC,UACdC,QAASA,IAAM3F,OAAOhE,SAAS4J,iBAKvCzB,EAAAA,EAAAA,MAAChC,EAAS,CACR0D,SAAU9Q,EAAa,WAAa,GACpC+Q,WAAgC,eAApBC,IAAIC,QAAQC,IAAuBR,EAAAA,GAAOS,IAAMT,EAAAA,GAAOC,UAAUrD,SAAA,CAC9E,mBACkBzK,EAAYC,WAAW,IAAED,EAAYE,UAAU,SAAOF,EAAYL,GAAG,KACtF2K,EAAAA,EAAAA,KAAA,OAAAG,SAAK,OACLH,EAAAA,EAAAA,KAAA,KAAGiE,KAAMJ,IAAIK,qBAAqB/D,UAChCH,EAAAA,EAAAA,KAACmD,EAAAA,GAAU,CACTR,KAAK,KACLS,KAAK,2BACLE,MAAOC,EAAAA,GAAOY,MACdd,SAAS,yBAGbrD,EAAAA,EAAAA,KAAA,OAAAG,SAAK,OACLH,EAAAA,EAAAA,KAACmD,EAAAA,GAAU,CACTR,KAAK,KACLS,KAAK,eACLE,MAAOC,EAAAA,GAAOY,MACdd,SAAU,KACVI,QAASA,IAAM/B,GAAiB,UAK1C,CAEA,MAAMzB,EAAYmE,EAAAA,GAAOC,GAAG;;;;;;;;;;gBAUZ,EAAGT,gBAAiBA;;;cAGtB,EAAGD,cAAeA;;;IAG5BW,EAAAA,GAAMC;EAGJ/B,EAAe4B,EAAAA,GAAOC,GAAG;;;;;iDC8D/B,MApIwBG,EACtBC,YACAC,gBACAC,uBACAC,kBACAC,sBACAC,mBACAC,iCAEA,MAAMC,GAAUC,EAAAA,EAAAA,MACVnD,GAAWC,EAAAA,EAAAA,MAEXmD,EAA0BA,KAE1BP,GAAsB7C,GAASqD,EAAAA,EAAAA,KAAoB,IAEnDN,GAAqB/C,GAASsD,EAAAA,EAAAA,KAAuB,IACzDtD,GAASuD,EAAAA,EAAAA,KAAyBV,GAAsB,EAWpDW,EAAuD,CAC3D,CAEEC,MAAO,mBACP7C,MAAOmC,EAAsB,SAAW,SACxCW,SAAUA,IAAM1D,GAASsD,EAAAA,EAAAA,KAAwBP,IACjDxB,SAAUwB,EAAsB,SAAW,UAE7C,CACEU,MAAO,eACP7C,MAAO,SAAS+B,EAAU3O,iBAC1B0P,SAAUA,IAAMR,EAAQ/O,KAAK,YAAYwO,EAAUgB,cACnDpC,SAAU,YAGRqC,EAA+C,IAChDJ,EACH,CACEC,MAAO,gBACP7C,MAAO,gBACP8C,SAAUA,IAAMR,EAAQ/O,KAAK,oBAAoB2O,GAAiBvP,MAClEgO,SAAU,qBAEZ,CACEkC,MAAO,gCACP7C,MAAO,gCACP8C,SAAUA,IAAMT,GAA2B,GAC3C1B,SAAU,cAId,IAAIsC,EAIFA,EAHGf,EAEM,aAAcA,EACR,CACbA,EAAgBgB,kBACX,oBAAqBhB,GAAmBA,EAAgBiB,iBAAoB,IAGpEjB,EAAgBkB,WAPhB,CAACrB,GAUlB,MAAMsB,EAAwBJ,EAAa3P,QAAU,EAE/CgQ,EAAcD,GAClB/F,EAAAA,EAAAA,KAACiG,EAAAA,GAAW,CAACtD,KAAK,KAAKuD,KAAMzB,KAE7BzE,EAAAA,EAAAA,KAACmG,EAAAA,GAAgB,CAACC,MAAOT,IAG3B,OACE1D,EAAAA,EAAAA,MAACoE,EAAe,CACd1B,qBAAsBA,EACtBlB,QAASkB,EAAuBO,OAA0BoB,EAAUnG,SAAA,CAEnEwE,GACC1C,EAAAA,EAAAA,MAACsE,EAAa,CAAApG,SAAA,EACZH,EAAAA,EAAAA,KAACwG,EAAAA,GAAS,CAAC7D,KAAK,KAAKyD,MAAOT,EAAcc,OAAQV,IACjDA,IACC/F,EAAAA,EAAAA,KAAC0G,EAAI,CAAC5B,iBAAkBA,EAAiB3E,SAAEsE,EAAU3O,OAEtDgP,IAAoB9E,EAAAA,EAAAA,KAAC2G,EAAS,QAGjC1E,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,CACG6F,EACAtB,IACCzC,EAAAA,EAAAA,MAAC2E,EAAsB,CAACC,SAAUd,EAAsB5F,SAAA,EACtDH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,WAAW6M,KAAK,KAAKoE,OAAO,YAAYzD,MAAOC,EAAAA,GAAOyD,eACjEhH,EAAAA,EAAAA,KAACiH,EAAa,CAAA9G,SAAEuE,WAKxBzC,EAAAA,EAAAA,MAACiF,EAAa,CAAA/G,SAAA,EACVwE,IACA1C,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACmH,EAAAA,GAAmB,CAClBC,QAASxC,EAAkBc,EAAqBJ,EAChD+B,uBAAuB,QAAOlH,UAE9BH,EAAAA,EAAAA,KAACsH,EAAAA,GAAU,CAAC3E,KAAK,KAAK4E,QAAQ,SAASlE,SAAS,eAAemE,aAAa,aAE9ExH,EAAAA,EAAAA,KAACsH,EAAAA,GAAU,CACTjE,SAAS,WACTV,KAAK,KACL4E,QAAQ,SACR9D,QAASyB,QAIflF,EAAAA,EAAAA,KAACsH,EAAAA,GAAU,CACTjE,SAAS,QACTV,KAAK,KACL4E,QAAQ,SACR9D,QAxGsBX,IAC5BA,EAAE2E,mBACFC,EAAAA,EAAAA,KAAM,KACJ5F,GAAS6F,EAAAA,EAAAA,KAAmB,IAC5B7F,GAAS8F,EAAAA,EAAAA,MAAsB,GAC/B,EAoGI,cAAY,sBAGA,EAMtB,MAAMvB,EAAkBjC,EAAAA,GAAOC,GAAG;;;;;aAKrB,EAAGM,0BAA4BA,EAAuB,MAAQ;sBACrDpB,EAAAA,GAAOsE;;;IAGzB,EAAGlD,0BACHA,GACAmD,EAAAA,EAAG;;sBAEevE,EAAAA,GAAOwE;;;;EAMvBb,EAAgB9C,EAAAA,GAAOC,GAAG;;;EAK1BkC,EAAgBnC,EAAAA,GAAOC,GAAG;;;EAK1BqC,EAAOtC,EAAAA,GAAOC,GAAG;;eAER,EAAGS,sBAAwBA,EAAmB,OAAS;;WAE3DvB,EAAAA,GAAOyE;IACd1D,EAAAA,GAAM2D;;;;EAMJtB,EAAYvC,EAAAA,GAAOC,GAAG;;;;sBAINd,EAAAA,GAAOS;;EAGvB4C,EAAyBxC,EAAAA,GAAOC,GAAG;;iBAExB,EAAGwC,aAAeA,EAAU,KAAO;;EAG9CI,EAAgB7C,EAAAA,GAAOC,GAAG;WACrBd,EAAAA,GAAOyD;IACd1C,EAAAA,GAAM4D;IACNC,EAAAA,GAAOC;iBCzMX,MAjB8BC,EAAGzD,kBAAiBxC,SAAQkG,iBAEtDtI,EAAAA,EAAAA,KAACmC,EAAAA,GAAU,CACTC,OAAQA,EACRC,QAASiG,EACThG,WAAW,gCACXzE,MAAM,QACNG,OAAO,QACPuK,yBAAyB,EAAMpI,UAE/BH,EAAAA,EAAAA,KAACC,EAAS,CAAAE,UACRH,EAAAA,EAAAA,KAACwI,EAAAA,EAAY,CAACC,cAAe7D,EAAiB8D,SAAS,QAQ/D,MAAMzI,EAAYmE,EAAAA,GAAOC,GAAG;;;;;kgCC0E5B,MAjFkBsE,KAChB,MAA6ErH,EAAAC,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAtEoH,EAAuBtH,EAAA,GAAEyD,EAA0BzD,EAAA,GAEpDQ,GAAWC,EAAAA,EAAAA,MAEXrM,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAC/DmT,GAAgB7G,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMoM,UAAU0J,gBAClEC,GAAkB9G,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMoM,UAAU2J,kBACpEC,GAA2B/G,EAAAA,EAAAA,KAC9BjP,GAAqBA,EAAMoM,UAAU4J,2BAElCpE,GAAuB3C,EAAAA,EAAAA,KAC1BjP,GAAqBA,EAAMoM,UAAUwF,uBAElCE,GAAsB7C,EAAAA,EAAAA,KACzBjP,GAAqBA,EAAMoM,UAAU0F,sBAElCC,GAAmB9C,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMoM,UAAU2F,mBACrEF,GAAkB5C,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMoM,UAAUyF,kBACpEoE,GAAuBhH,EAAAA,EAAAA,KAC1BjP,GAAqBA,EAAMoM,UAAU6J,uBAkBxC,OAfAC,EAAAA,EAAAA,YAAU,KACR,WACE,IAAKJ,EAAcpE,UAAW,OAE9B,MAAMyE,EAAiBL,EAAcpE,UAAUpP,GACvC8T,EAA+BN,EAA/BM,YAAaC,EAAkBP,EAAlBO,cAEjBD,GAAeC,QACXtH,GAASuH,EAAAA,EAAAA,IAA6BH,EAAQE,EAAeD,UAE7DrH,GAASwH,EAAAA,EAAAA,IAAiC5T,EAAYL,GAAI6T,GAEnE,EAXD,EAWI,GACH,CAACL,IAECC,EAEDC,GAA4BD,GAE5B9I,EAAAA,EAAAA,KAACuJ,EAAkB,CACjB5E,qBAAsBA,EACtBqE,qBAAsBA,EAAqB7I,UAE3CH,EAAAA,EAAAA,KAACI,EAAAA,EAAM,CAACoJ,QAAM,EAACC,OAAO,WAAWC,MAAO,CAAE3C,OAAQ,aAMtD9E,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACqI,EAAqB,CACpBzD,gBAAiBA,EACjBxC,OAAQwG,EACRN,WAAYA,IAAMvD,GAA2B,MAE/C9C,EAAAA,EAAAA,MAACsH,EAAkB,CACjB5E,qBAAsBA,EACtBE,oBAAqBA,EACrBmE,qBAAsBA,EACtB,cAAY,YAAW7I,SAAA,EAEvBH,EAAAA,EAAAA,KAACwE,EAAe,CACdC,UAAWoE,GAAepE,UAC1BC,cAAemE,GAAenE,cAC9BC,qBAAsBA,EACtBC,gBAAiBA,EACjBC,oBAAqBA,EACrBC,iBAAkBA,EAClBC,2BAA4BA,KAE9B/E,EAAAA,EAAAA,KAAC2J,EAAqB,CAAAxJ,UACpBH,EAAAA,EAAAA,KAAC4J,EAAAA,EAAY,CAACnB,cAAe7D,YApCR,IAuCxB,EAMP,MAAM2E,EAAqBnF,EAAAA,GAAOC,GAAG;;oBAEjB,EAAGM,0BAA4BA,EAAuB,MAAQ;gBAClEpB,EAAAA,GAAOY;sBACDZ,EAAAA,GAAOsE;gBACbM,EAAAA,GAAO0B;;WAEZ,EAAGlF,uBAAsBE,yBAC5BF,EACK,QAELE,EACK,QAEF;YAEC,EAAGF,uBAAsBE,yBAC7BF,EACK,OAELE,EACK,QAEF;;;qBAIU,EAAGmE,0BAA2BA;;;;;;;;EAS7CW,EAAwBvF,EAAAA,GAAOC,GAAG;;;;;;4BC/FxC,MA3ByByF,EAAGC,aAAY5J,eAEpC8B,EAAAA,EAAAA,MAAC+H,EAAU,CAACD,WAAYA,EAAW5J,SAAA,EACjCH,EAAAA,EAAAA,KAACiK,EAAQ,CAAA9J,SAAEA,KACX8B,EAAAA,EAAAA,MAACiI,EAAW,CAAA/J,SAAA,EACVH,EAAAA,EAAAA,KAACmK,EAAK,CAACC,IAAKC,EAASC,IAAI,iBACzBrI,EAAAA,EAAAA,MAACsI,EAAI,CAAApK,SAAA,CAAC,kCAEJH,EAAAA,EAAAA,KAAA,SAAM,mCAGRA,EAAAA,EAAAA,KAACwK,EAAAA,GAAI,CAACC,GAAG,IAAGtK,UACVH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLzX,KAAK,SACLsU,QAAQ,YACR5E,KAAK,KACLU,SAAS,cACTsH,aAAa,QAAOxK,SACrB,oBAWX,MAAM8J,EAAW7F,EAAAA,GAAOC,GAAG,GAErB6F,EAAc9F,EAAAA,GAAOC,GAAG,GAExB2F,EAAa5F,EAAAA,GAAOC,GAAG;IACzB4F;;;IAGAC;;;kCAG8B,EAAGH,gBAAiBA;MAChDE;;;MAGAC;;;;;;;;EAUAC,EAAQ/F,EAAAA,GAAOwG,GAAG;;EAIlBL,EAAOnG,EAAAA,GAAOC,GAAG;IACnBC,EAAAA,GAAMuG;WACCtH,EAAAA,GAAOyD;;ECvElB,Q,w4BCcA,MAXqB8D,IAAmB,IAAbC,EAAKC,EAAA,I,oEAAAC,CAAAH,GAAAA,IAC9B,MAAMpV,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAOrE,OALKA,EAAYL,MACf6V,EAAAA,EAAAA,GAAiBpN,OAAOhE,SAASmK,MACjCnG,OAAOhE,SAASmK,KAAO,UAGlBvO,EAAYL,IAAK2K,EAAAA,EAAAA,KAACY,EAAAA,G,+VAAKzN,CAAA,GAAK4X,IAAY,IAAI,E,m3BCUrD,MAhB4BD,IAAmB,IAAbC,EAAKC,EAAA,I,oEAAAC,CAAAH,GAAAA,IACrC,MAAMpV,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAOrE,OALKA,EAAYL,MACf6V,EAAAA,EAAAA,GAAiBpN,OAAOhE,SAASmK,MACjCnG,OAAOhE,SAASmK,KAAO,UAGrBvO,EAAYyV,OAASC,EAAAA,EAAWC,SAClCC,QAAQC,KAAK,kDAAmD7V,IACzDsK,EAAAA,EAAAA,KAACwL,EAAAA,GAAQ,CAACf,GAAG,WAGfzK,EAAAA,EAAAA,KAACyL,E,+VAAYtY,CAAA,GAAK4X,GAAS,E,uECJpC,MAAMW,GAAgB,CAAC,qBACjBC,GAAwB,CAAC,iBAAkB,aAyDjD,OAvD+BC,EAC7BxJ,SACAC,UACAwJ,kCACAC,oBAEA,MAAMpW,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAC/DnC,GAAeyO,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMsK,QAAQ9J,eAE7DwY,GAAaC,EAAAA,EAAAA,MAAbD,SACF/G,GAAUC,EAAAA,EAAAA,MAEVgH,EACJP,GAAcQ,SAASH,KACrBxY,GAAc4Y,eACdR,GAAsBS,MAAMvL,GAASkL,EAASM,WAAWxL,KAM7D,OAJAoI,EAAAA,EAAAA,YAAU,KACR4C,EAAgCI,EAAc,GAC7C,CAACA,KAGFjM,EAAAA,EAAAA,KAACmC,GAAAA,EAAU,CACTC,OAAQA,EACRC,QAASA,EACTiK,gBAAiBL,EACjBM,oBAAqBN,EACrBO,eAAe,OAAMrM,UAErB8B,EAAAA,EAAAA,MAAChC,GAAS,CAAAE,SAAA,EACRH,EAAAA,EAAAA,KAACyM,GAAK,CAAAtM,SAAE2L,KACPY,EAAAA,GAAAA,GAAE,CACD,wCACAhX,EAAYyV,OAASwB,GAAAA,EAASC,QAAU,UAAY,YAEtD3K,EAAAA,EAAAA,MAAC4K,GAAO,CAAA1M,SAAA,CACLzK,EAAYqF,aAAa+R,WACxB9M,EAAAA,EAAAA,KAACwK,EAAAA,GAAI,CAACC,GAAI,WAAYzH,OAAO,SAAQ7C,UACnCH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACzX,KAAK,SAAQkN,UAAEuM,EAAAA,GAAAA,GAAE,2CAG5BT,IACCjM,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLnD,QAAS7R,EAAYqF,aAAa+R,SAAW,YAAc,UAC3DrJ,QAASA,IAAMuB,EAAQ/O,KAAK,uBAAuBkK,SACpD,2BAMI,EAMjB,MAAMF,GAAYmE,EAAAA,GAAOC,GAAG;;;WAGjBd,EAAAA,GAAOyE;;IAEd1D,EAAAA,GAAMuG;EAEJ4B,GAAQrI,EAAAA,GAAOC,GAAG;IACpBC,EAAAA,GAAMyI;;EAGJF,GAAUzI,EAAAA,GAAOC,GAAG;;;;sgCC3E1B,MAAQ2I,GAAuBC,EAAAA,GAAvBD,mBA4DFE,GAAwB9I,EAAAA,GAAOC,GAAG;;;;;;eAMzB4I,EAAAA,GAAkBE;sBACX5J,EAAAA,GAAOS;WAClBT,EAAAA,GAAOY;IACdG,EAAAA,GAAM8I;;;;;;IAMNJ;;;;;;EAQJ,OA/E4BK,KAC1B,MAAuF/L,EAAAC,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAhF8L,EAA4BhM,EAAA,GAAEuK,EAA+BvK,EAAA,GAE9D5L,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAC/DnC,GAAeyO,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMsK,QAAQ9J,eAE/Dga,GAA4BC,EAAAA,GAAAA,IAAcja,GAAcka,QAM9D,IAJAxE,EAAAA,EAAAA,YAAU,KACR4C,EAAgC0B,EAA4B,EAAE,GAC7D,CAACA,KAGDha,GAAcka,QACfF,EAhBqC,IAiBrCha,GAAcma,0BAEd,OAAO,KAET,MAAMC,EAAUjY,EAAYqF,aAAa+R,SACnChB,GAAgBY,EAAAA,GAAAA,GACpB,CACE,kCACAa,EAA4B,EAAI,QAAU,cAC1CI,EAAU,QAAU,aAEtB,CACEC,oBAAqBC,KAAMta,GAAcka,QAAQK,OAAO,kBAI5D,OACE7L,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,CACGoN,EAA4B,IAC3BvN,EAAAA,EAAAA,KAAC4L,GAAsB,CACrBxJ,OAAQkL,EACRjL,QAASA,IAAMwJ,GAAgC,GAC/CA,gCAAiCA,EACjCC,cAAeA,KAGnB7J,EAAAA,EAAAA,MAACiL,GAAqB,CAAA/M,SAAA,EACpBH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,YAAY6M,KAAK,KAAKW,MAAOC,EAAAA,GAAOY,MAAO4C,OAAO,cAC5D+E,EACA6B,IACC3N,EAAAA,EAAAA,KAACwK,EAAAA,GAAI,CAACC,GAAI,WAAYzH,OAAO,SAAS0G,MAAO,CAAEqE,gBAAiBxK,EAAAA,GAAOY,OAAQhE,UAC7EH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACzX,KAAK,SAASsU,QAAQ,oBAAoB5E,KAAK,KAAIxC,UACxDuM,EAAAA,GAAAA,GAAE,gDAKV,E,sjECsEP,OA3H4BsB,EAAG5L,SAAQC,cACrC,IAAKD,EAAQ,OAAO,KAEpB,MAAM1M,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAC/DoM,GAAWC,EAAAA,EAAAA,MAEgET,EAAAC,IAA3CC,EAAAA,EAAAA,UAAmB9L,EAAYuY,aAAY,GAA1EA,EAAW3M,EAAA,GAAE4M,EAAc5M,EAAA,GAGjCK,EAAAJ,IAF+CC,EAAAA,EAAAA,UAC9C9L,EAAYyY,oBACb,GAFMC,EAAgBzM,EAAA,GAAE0M,EAAmB1M,EAAA,GAGW2M,EAAA/M,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAhD+M,EAAYD,EAAA,GAAEE,EAAeF,EAAA,GA6C9BG,EACiB,IAArB/Y,EAAYyV,KACR,GAAGzV,EAAYC,8CACf,GAAGD,EAAYC,sCACf+Y,EACiB,IAArBhZ,EAAYyV,KACR,uCACA,kFACA/H,EACiB,IAArB1N,EAAYyV,KACR,iHACA,gGACEzV,EAAYqF,cAAc4T,cAAgB,+BAGlD,OACE3O,EAAAA,EAAAA,KAACmC,GAAAA,EAAU,CACTtE,MAAM,QACNuE,OAAQA,EACRC,QAASA,EACTiK,iBAAiB,EACjBC,oBAAoB,EACpBhE,yBAAyB,EACzBjG,WAAYmM,EAAOtO,UAEnB8B,EAAAA,EAAAA,MAAA,QAAM2M,SAlDWC,UACnB/L,EAAEgM,iBACFN,GAAgB,GAChB,WACyBO,EAAAA,GAAAA,IAAmBrZ,EAAYL,GAAI,CACxD4Y,cACAG,sBAEWY,KAAKC,UAChBnN,GACEoN,EAAAA,GAAAA,IAAc/b,GAAAA,GAAC,CAAC,EACXuC,GAAW,IACduY,cACAE,mBAAoBC,EACpBe,sBAAsB,MAG1B9M,IAEJ,CAAE,MAAO+M,GACP9D,QAAQ+D,MAAMD,EAChB,CACAZ,GAAgB,EAAM,EA4BSrO,SAAA,EAC3B8B,EAAAA,EAAAA,MAACqN,GAAO,CAAAnP,SAAA,EACNH,EAAAA,EAAAA,KAACyM,GAAK,CAAAtM,SAAEuO,KACR1O,EAAAA,EAAAA,KAACuK,GAAI,CAAApK,SAAEiD,IACN1N,EAAYyV,OAASwB,GAAAA,EAAS4C,YAC7BtN,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACwP,GAAK,CAAArP,SAAC,uDACPH,EAAAA,EAAAA,KAACyP,GAAAA,EAAgB,CACfC,YAAY,aACZC,WAAW,YACXpK,MAAO0I,EACPpL,SAAUqL,EACV0B,UAAQ,QAId5P,EAAAA,EAAAA,KAACwP,GAAK,CAAArP,SAAC,6BACPH,EAAAA,EAAAA,KAACyP,GAAAA,EAAgB,CACfC,YAAY,oBACZC,WAAYja,EAAYyV,OAASwB,GAAAA,EAAS4C,UAAY,YAAc,UACpEhK,MAAO6I,EACPvL,SAAUwL,EACVuB,UAAQ,QAGZ3N,EAAAA,EAAAA,MAAC4N,GAAM,CAAA1P,SAAA,EACLH,EAAAA,EAAAA,KAAA,OAAAG,SAA2B,IAArBzK,EAAYyV,OAAcnL,EAAAA,EAAAA,KAAC8P,GAAQ,CAACrM,QA9FnCsM,KACb,KACEC,EAAAA,GAAAA,IAAuBta,EAAYL,GACrC,CAAE,MAAO+Z,GACP9D,QAAQ+D,MAAMD,EAChB,CACA/M,IACA4N,GAAAA,EAAMhB,SACJhN,EAAAA,EAAAA,MAAA,KAAA9B,SAAA,CAAG,0CACuC,KACxCH,EAAAA,EAAAA,KAACwK,EAAAA,GAAI,CAACC,GAAG,WAAWf,MAAO,CAAEwG,eAAgB,YAAa5M,MAAO,SAAUnD,SAAC,qBAErE,OAGV,EA+E+DA,SAAC,oBAC3DH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACL/H,KAAK,KACLwN,SACE5B,GACsB,IAArB7Y,EAAYyV,QAAgB8C,EAAYjY,SAAWoY,EAAiBpY,SAC/C,IAArBN,EAAYyV,OAAeiD,EAAiBpY,OAC9CmK,SACF,kBAKM,EAMjB,MAAMmP,GAAUlL,EAAAA,GAAOC,GAAG;;EAIpBwL,GAASzL,EAAAA,GAAOC,GAAG;;;;;;0BAMCd,EAAAA,GAAO6M;EAG3B3D,GAAQrI,EAAAA,GAAOC,GAAG;IACpBC,EAAAA,GAAM+L;EAGJ9F,GAAOnG,EAAAA,GAAOC,GAAG;IACnBC,EAAAA,GAAMuG;EAGJ2E,GAAQpL,EAAAA,GAAOC,GAAG;IACpBC,EAAAA,GAAMgM;;EAGJR,GAAW1L,EAAAA,GAAOmM,CAAC;IACrBjM,EAAAA,GAAM8I;WACC7J,EAAAA,GAAOyD;;;;;aAKLzD,EAAAA,GAAOyE;;;EC3KpB,U,0lECuBA,MAAMwI,GAAiCpa,OAAOqa,OAAOC,GAAAA,GAAa/b,IAChEgc,GAAAA,IAmLI1Q,GAAYmE,EAAAA,GAAOwM,IAAI;IACzBtM,EAAAA,GAAM8I;;MAEJ9I,EAAAA,GAAMuM;;EAINC,GAAM1M,EAAAA,GAAOC,GAAG;;;;;;;;;6BASOd,EAAAA,GAAOsE;EAG9BkJ,GAAS3M,EAAAA,GAAOC,GAAG;;;;;;;;;IASrBC,EAAAA,GAAM8I;;6BAEmB7J,EAAAA,GAAOsE;EAG9BmJ,GAAO5M,EAAAA,GAAOwG,GAAG;;EAIjBqG,GAAc7M,EAAAA,GAAOwG,GAAG;;;;;;;;;;;;;sBAaRrH,EAAAA,GAAO2N;;;;EAMvBC,GAAS/M,EAAAA,GAAOC,GAAG;IACrBC,EAAAA,GAAM8M;;;EAKJ3E,GAAQrI,EAAAA,GAAO1B,KAAK;;;;;;;IAOtB4B,EAAAA,GAAM+M;EAGJC,GAAQlN,EAAAA,GAAOmN,KAAK;;;;;sBAKJhO,EAAAA,GAAO6M;IACzB,EAAGf,WAAYA,GAAS,qBAAqB9L,EAAAA,GAAOS;;;IAGpDM,EAAAA,GAAM8I;EAGJoE,GAAkBpN,EAAAA,GAAOC,GAAG;;;;;;;;;EAW5BmL,GAAQpL,EAAAA,GAAOC,GAAG;IACpBC,EAAAA,GAAMgM;EAGV,OAnRkCmB,EAAGrP,SAAQC,cAC3C,MAAMP,GAAWC,EAAAA,EAAAA,MACXrM,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAC/Dgc,EAAchc,EAAYqF,aAAa4W,UAEHrQ,EAAAC,IAAlBC,EAAAA,EAAAA,UAAgB,GAAE,GAAnCoQ,EAAItQ,EAAA,GAAEuQ,EAAOvQ,EAAA,GACkDK,EAAAJ,IAAxCC,EAAAA,EAAAA,UAAsB,CAAC,GAAiB,GAA/DnE,EAAOsE,EAAA,GAAEmQ,EAAUnQ,EAAA,GAC6B2M,EAAA/M,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAhD+M,EAAYD,EAAA,GAAEE,EAAeF,EAAA,GAE8ByD,EAAAxQ,IAAxCC,EAAAA,EAAAA,UAAS9L,EAAYqF,aAAa2T,OAAM,GAA3DA,EAAKqD,EAAA,GAAEC,EAAQD,EAAA,GACyCE,EAAA1Q,IAAvCC,EAAAA,EAAAA,UAAS9L,EAAYqF,aAAaoQ,MAAK,GAAxDA,EAAI8G,EAAA,GAAEC,EAAOD,EAAA,GAGnBE,EAAA5Q,IAF+CC,EAAAA,EAAAA,UAC9C9L,EAAYyY,oBACb,GAFMC,EAAgB+D,EAAA,GAAE9D,EAAmB8D,EAAA,GA0CtCC,EAActP,IAClBA,EAAEgM,iBACFzM,GAAS,EAmBX,OAhBA4G,EAAAA,EAAAA,YAAU,KACR,WACE,IACE,IAAKvT,GAAaqF,cAAcsX,mBAC9B,OAGF,MAAMC,QAAiBC,EAAAA,GAAAA,IAAW7c,EAAYqF,aAAasX,oBAE3DP,EAAWQ,EAASjV,QACtB,CAAE,MAAO+R,GACPoD,GAAAA,EAAUC,UAAUrD,EACtB,CACD,EAZD,EAYI,GACH,CAAC1Z,IAEC2H,GAAShI,IAGZ2K,EAAAA,EAAAA,KAACmC,EAAAA,GAAU,CACTC,OAAQA,EACRC,QAASA,EACTkK,oBAAoB,EACpBD,iBAAe,EACfzO,MAAM,QAAOsC,UAEb8B,EAAAA,EAAAA,MAAChC,GAAS,CAAC2O,SArEMC,UACnB/L,EAAEgM,iBACFhM,EAAE2E,kBAEF+G,GAAgB,GAEhB,IACE,GAAa,IAAToD,QACIc,EAAAA,GAAAA,IAAkBhd,EAAYL,GAAI+V,EAAAA,EAAWC,QAAOlY,GAAAA,GAAA,GACrDuC,EAAYqF,cAAY,IAC3B2T,QACAvD,WAGFwH,EAAAA,GAAAA,IAAiBjd,GAEjBoM,GAAS8Q,EAAAA,GAAAA,OAETf,EAAQ,OACH,QACkB9C,EAAAA,GAAAA,IAAmBrZ,EAAYL,GAAI,CACxD4Y,YAAa,GACbG,sBAGWY,KAAKC,SAChBnN,GAAS8Q,EAAAA,GAAAA,OAGXvQ,GACF,CACF,CAAE,MAAO+M,GACPoD,GAAAA,EAAUC,UAAUrD,EACtB,CAAC,QACCZ,GAAgB,EAClB,GAkCoCrO,SAAA,EAChC8B,EAAAA,EAAAA,MAAC6O,GAAG,CAAA3Q,SAAA,EACFH,EAAAA,EAAAA,KAACgR,GAAI,CAAC5G,IAAKyI,GAAUvI,IAAI,eACzBtK,EAAAA,EAAAA,KAACiR,GAAW,CAAC7G,IAAK/M,EAAQ3C,MAAMC,SAEjC,MACC,OAAQiX,GACN,KAAK,EACH,OACE3P,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACE8B,EAAAA,EAAAA,MAAC8O,GAAM,CAAA5Q,SAAA,EACLH,EAAAA,EAAAA,KAACmR,GAAM,CAAAhR,UACJuM,EAAAA,GAAAA,GACC,CACE,iDACAgF,EAAc,mBAAqB,iBAErC,CAAE/C,aAActR,EAAQsR,kBAG5B3O,EAAAA,EAAAA,KAAC8S,EAAAA,GAAoB,CACnBpQ,MAAM,oBACN6C,MAAO4F,EAAO,CAAE5F,MAAO4F,EAAMzI,MAAOyI,GAAS,KAC7C/D,QAASoJ,GACT3N,SAAWkQ,IACLA,GACFb,EAAQa,EAAUxN,MACpB,EAEFyN,YAAY,mBACZpD,UAAU,KAEZ3N,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,EACEH,EAAAA,EAAAA,KAACyM,GAAK,CAAAtM,SAAC,iCACPH,EAAAA,EAAAA,KAACsR,GAAK,CAEJre,KAAK,OACL6C,KAAK,QACLyP,MAAOmJ,EACP7L,SAAWC,IACTkP,EAASlP,EAAEE,OAAOuC,MAAM,EAE1B0N,aAAa,MACb,cAAY,4BACZD,YAAY,wBATR,yBAaVhT,EAAAA,EAAAA,KAACwR,GAAe,CAAArR,UACdH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACzX,KAAK,SAASkd,UAAWhF,IAASuD,GAASH,EAAapO,SAAC,gBAMzE,KAAK,EACH,OACE8B,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACE8B,EAAAA,EAAAA,MAAC8O,GAAM,CAAA5Q,SAAA,EACL8B,EAAAA,EAAAA,MAAA,OAAKyH,MAAO,CAAE3C,OAAQ,WAAY5G,SAAA,CAAC,mCAEjCH,EAAAA,EAAAA,KAAA,SAAM,2CACmC3C,EAAQsR,aAAa,qBAEhE1M,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,EACEH,EAAAA,EAAAA,KAACwP,GAAK,CAAArP,SAAC,wBACPH,EAAAA,EAAAA,KAACyP,GAAAA,EAAgB,CACfC,YAAY,oBACZC,WAAW,UACXpK,MAAO6I,EACPvL,SAAUwL,EACVuB,UAAQ,WAId3N,EAAAA,EAAAA,MAACuP,GAAe,CAAArR,SAAA,EACdH,EAAAA,EAAAA,KAACmD,EAAAA,GAAU,CAACC,KAAK,OAAOK,QAAS2O,EAAY/O,SAAU,QACvDrD,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACyF,SAAU5B,IAAiBH,EAAiBpY,OAAOmK,SAAC,yBAMpE,QACE,OAAO,KAEZ,EAjFA,QAfkB,IAkGV,E,mCChMF,SAAS+S,KACtB,MAAwBC,GAAgBC,EAAAA,EAAAA,KAAhCC,eACFrO,GAAUC,EAAAA,EAAAA,MAoBhB,OAlBAgE,EAAAA,EAAAA,YAAU,KACR,WACE,IACE,MAAMqJ,QAAiBgB,GAAAA,EAAIC,IAAI,aAAaJ,KAC5CnO,EAAQ/O,MAAKud,EAAAA,GAAAA,IAAuBlB,EAAStD,KAAKyE,SACpD,CAAE,MAAOrE,GACP9D,QAAQ+D,MAAMD,GACda,GAAAA,EAAMZ,MACJ,qHAEFrK,EAAQ/O,KAAK,QACbuc,GAAAA,EAAUC,UAAUrD,GAAMsE,IACxBA,EAAKC,UAAU,mCAAmC,GAEtD,CACD,EAdD,EAcI,GACH,CAACR,IAEG,IACT,C,sFC5Be,SAASS,IAAY,SAAEzT,IACpC,MAAQ4L,GAAaC,EAAAA,EAAAA,MAAbD,SAMR,OAJA9C,EAAAA,EAAAA,YAAU,KACRnL,OAAO6C,SAAS,EAAG,EAAE,GACpB,CAACoL,IAEG5L,CACT,C,6oECuPA,OAhP2B0T,KACzB,MAAmDvS,EAAAC,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAA5CsS,EAAUxS,EAAA,GAAEyS,EAAazS,EAAA,GAE1B5L,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAC/Da,GAAoByL,EAAAA,EAAAA,KACvBjP,GAAqBA,EAAM6E,eAAerB,oBAGvCyO,GAAUC,EAAAA,EAAAA,MACVnD,GAAWC,EAAAA,EAAAA,MAEXiS,EAAYvJ,IACXlU,GAGHuL,GAASmS,EAAAA,GAAAA,KAAqB,IAC9BnW,OAAOhE,SAASmK,KAAOwG,GAHvBzF,EAAQ/O,KAAKwU,EAIf,EAUIyJ,EAAoBA,KACxBF,EAAS,YAAYte,EAAYC,cAAcD,EAAYE,aAAaF,EAAYL,MACpF0e,GAAc,EAAM,EAmChBI,EAAeze,GAAakI,OAAOwW,QAAQzZ,IAEjD,OACEqF,EAAAA,EAAAA,KAACqU,GAAAA,EAAK,CACJC,SACErS,EAAAA,EAAAA,MAAA,UACEhP,KAAK,SACL,cAAY,sBACZshB,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOC,iBAAiBtU,SAAA,CAErCgU,GASAnU,EAAAA,EAAAA,KAAA,OACEuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOE,uBACtB,cAAY,0BACZhL,MAAO,CACLiL,gBAAiB,OAAOjf,EAAYkI,MAAMgX,MAAMja,WAZpDsH,EAAAA,EAAAA,MAAA,OACEsS,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOE,uBACtB,cAAY,0BAAyBvU,SAAA,CAEpCzK,EAAYC,aAAa,IAAIkf,cAC7Bnf,EAAYE,YAAY,IAAIif,kBAWjC7U,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOM,aAAa3U,UACtCH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,oBAEbkK,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOO,mBAAmB5U,UAC5CH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,gBAIjBkf,GAAG,QACHC,OAAK,EACLV,UAAW,IAAGzM,EAAAA,GAAAA,IAAI0M,GAAOU,yCACzBC,cAAY,EACZC,WAAS,EACTzR,SAAS,eACThH,KAAMmX,EACNuB,OAAQA,IAAMtB,GAAc,GAC5B1R,QAASA,IAAM0R,GAAc,GAC7BuB,SACErT,EAAAA,EAAAA,MAAA,OACEsS,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOe,8BACtBC,aAAcA,IAAMzB,GAAc,GAClC0B,aAAcA,IAAM1B,GAAc,GAAO5T,SAAA,EAEzC8B,EAAAA,EAAAA,MAAA,OAAKsS,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOkB,uBAAuBvV,SAAA,EAChDH,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOmB,4BAA4BxV,SACnDgU,GAMAnU,EAAAA,EAAAA,KAAA,OACEuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOoB,wBACtBlM,MAAO,CACLiL,gBAAiB,OAAOjf,EAAYkI,MAAMwW,OAAOzZ,WARrDsH,EAAAA,EAAAA,MAAA,OAAKsS,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOqB,0BAA0B1V,SAAA,CAClDzK,GAAaC,aAAa,IAAIkf,cAC9Bnf,GAAaE,YAAY,IAAIif,oBAWpC5S,EAAAA,EAAAA,MAAA,OAAKsS,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOsB,wBAAwB3V,SAAA,EACjD8B,EAAAA,EAAAA,MAAA,OAAKsS,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOuB,kBAAkB5V,SAAA,CAC1CzK,EAAYC,WAAW,IAAED,EAAYE,UACrCF,EAAYyV,OAASwB,GAAAA,EAASC,SAC7BlX,EAAYqF,cAAcib,iBACxBhW,EAAAA,EAAAA,KAACiW,GAAsB,CAAA9V,UACrBH,EAAAA,EAAAA,KAACkW,GAAAA,GAAa,UAItBlW,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAO2B,sBAAsBhW,SAC9CzK,EAAYyV,OAASwB,GAAAA,EAASC,QAC3BlX,EAAYqF,aAAa4T,aACzBjZ,EAAYqF,aAAa2T,QAE9BhZ,EAAYyV,OAASwB,GAAAA,EAAS4C,YAC7BvP,EAAAA,EAAAA,KAAA,OACEyD,QAASyQ,EACTK,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAO4B,sBACtB,cAAY,+BAA8BjW,SAC3C,iBAIFzK,EAAYyV,OAASwB,GAAAA,EAASC,UAC7B3K,EAAAA,EAAAA,MAACoU,GAAW,CAAAlW,SAAA,CACTmW,QAAQ5gB,EAAYqF,cAAcwb,WACjCvW,EAAAA,EAAAA,KAACwW,GAAAA,GAAU,CAACvjB,KAAMyC,EAAYqF,cAAcwb,UAE7C7gB,EAAYqF,cAAc+R,WAAY9M,EAAAA,EAAAA,KAACyW,GAAAA,GAAQ,cAKxDzW,EAAAA,EAAAA,KAAC0K,GAAAA,EAAM,CAACjH,QApIUiT,KACxB1C,EAAS,YACTD,GAAc,EAAM,EAkIsBQ,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOmC,eAAexW,SAAC,qBAGzEzK,EAAYyV,OAASwB,GAAAA,EAASC,SAAYlX,EAAYqF,aAAa4W,UAIhE,MAHF3R,EAAAA,EAAAA,KAAC0K,GAAAA,EAAM,CAACjH,QAnIUmT,KAC1B5C,EAAS,uBACTD,GAAc,EAAM,EAiI0BQ,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOmC,eAAexW,SAAC,mBAI7EzK,EAAYyV,OAASwB,GAAAA,EAAS4C,WAAa7Z,EAAYqF,aAAa8b,YACnE7W,EAAAA,EAAAA,KAAC0K,GAAAA,EAAM,CACLjH,QAASyQ,EACTK,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOmC,cAAenC,GAAOsC,0BAA0B3W,UAErEuM,EAAAA,GAAAA,GAAE,8CAGNhX,EAAYL,IACXK,EAAYyV,OAASwB,GAAAA,EAASoK,oBAC5BrhB,EAAYyV,OAASwB,GAAAA,EAASC,UAAYlX,EAAYqF,aAAaic,YACnEhX,EAAAA,EAAAA,KAAC0K,GAAAA,EAAM,CACLjH,QAlIUwT,KACtBjD,EAAS,UACTD,GAAc,EAAM,EAiIRQ,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOmC,cAAenC,GAAO0C,cAAc/W,SAC3D,UAIJzK,EAAYyV,OAASwB,GAAAA,EAAS4C,YAC7BvP,EAAAA,EAAAA,KAAC0K,GAAAA,EAAM,CACLjH,QAASyQ,EACTK,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOmC,cAAenC,GAAOsC,0BAA0B3W,SACvE,iBAIFzK,EAAYyV,OAASwB,GAAAA,EAASC,UAC7B3K,EAAAA,EAAAA,MAACyI,GAAAA,EAAM,CAACjH,QAtJe0T,KAC/BnD,EAAS,YAAYte,EAAYqF,aAAasX,sBAC9C0B,GAAc,EAAM,EAoJ+BQ,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOmC,eAAexW,SAAA,CAC7EzK,EAAYqF,aAAa+R,SAAW,OAAS,OAAO,mBAGxDpX,EAAYyV,OAASwB,GAAAA,EAASoK,mBAC7B/W,EAAAA,EAAAA,KAAC0K,GAAAA,EAAM,CACLjH,QAlJgC2T,KAC1CpD,EAAS,mCACTD,GAAc,EAAM,EAiJVQ,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOmC,eAAexW,SACtC,oBAIHH,EAAAA,EAAAA,KAAC0K,GAAAA,EAAM,CACLjH,QAASA,MACP4T,EAAAA,GAAAA,IAAMC,GAAAA,EAAiBC,MAAO,CAC5BC,aAAc,uBAEhB1Z,OAAOhE,SAASmK,KAAO,iCAAiC,EAE1DsQ,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOmC,eAAexW,SACtC,gBAGAzK,EAAYyV,OAASwB,GAAAA,EAAS4C,YAC7BvP,EAAAA,EAAAA,KAAC0K,GAAAA,EAAM,CACL,cAAY,6BACZjH,QAvLoBoL,UAC9BmF,EACE,YAAYte,EAAYC,cAAcD,EAAYE,aAAaF,EAAYL,kBAE7E0e,GAAc,EAAM,EAoLVQ,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOmC,eAAexW,SACtC,yBAIHH,EAAAA,EAAAA,KAAC0K,GAAAA,EAAM,CAACjH,QAnNSoL,gBACjB4I,EAAAA,GAAAA,MAGN3Z,OAAOhE,SAASmK,MAAOyT,EAAAA,GAAAA,KAAiB,EA+MCnD,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOmD,sBAAsBxX,SAAC,iBAKpF,EAMN,MAAMkW,GAAcjS,EAAAA,GAAOC,GAAG;;;;;EAMxB4R,GAAyB7R,EAAAA,GAAOsP,IAAI;;;;;;;EAQlC1G,GAAuBC,EAAAA,GAAvBD,mBACFwH,GAASoD,GAAAA,GAAWC,OAAO,CAC/BpD,gBAAiB,CACfqD,QAAS,OACTC,WAAY,SACZC,WAAY,GACZC,OAAQ,OACRrU,WAAY,OACZsU,QAAS,OACT,CAAClL,IAAqB,CACpBgL,WAAY,SAGhBtD,sBAAqBvhB,GAAAA,GAAA,CACnB6K,OAAQ,OACRH,MAAO,OACPyF,MAAOC,EAAAA,GAAOyE,MACd+F,gBAAiBxK,EAAAA,GAAO4U,YACxBC,YAAa,MACbN,QAAS,OACTO,eAAgB,SAChBN,WAAY,UACTO,EAAAA,GAASC,UAAQ,IACpBC,OAAQ,UACRC,aAAc,MACdC,iBAAkB,YAClBC,mBAAoB,gBACpBC,eAAgB,QAChB,CAAC5L,IAAqB,CACpB8K,QAAS,UAGbhD,YAAa,CACX0D,OAAQ,UACR,CAACxL,IAAqB,CACpB8K,QAAS,SAGb/C,kBAAmB,CACjB+C,QAAS,OACT,CAAC9K,IAAqB,CACpB8K,QAAS,QACTe,SAAU,UAGd3D,oBAAqB,CACnB4D,UAAW,OACXC,aAAc,MACdC,cAAe,MACfC,YAAa,MACbC,aAAc,MACdjB,OAAQ,OACRkB,SAAU,QACV,CAACnM,IAAqB,CACpBoM,UAAW,qCACXvb,MAAO,OACPwb,SAAU,OACVC,KAAM,IAGV/D,6BAA8B,CAC5B1X,MAAO,QACP0b,QAAS,aACTC,OAAQ,IACR,CAACxM,IAAqB,CACpBnP,MAAO,OACP4b,WAAY,EACZP,aAAc,OACdF,cAAe,OACfC,YAAa,SAGjBvD,sBAAuB,CACrBoC,QAAS,OACTiB,aAAc,MACd,CAAC/L,IAAqB,CACpB8K,QAAS,SAGbnC,2BAA4B,CAC1B9X,MAAO,OAETgY,yBAAwB1iB,GAAAA,GAAA,CACtB6K,OAAQ,OACRH,MAAO,OACPyF,MAAOC,EAAAA,GAAOyE,MACd+F,gBAAiBxK,EAAAA,GAAO4U,YACxBH,WAAY,OACZF,QAAS,OACTO,eAAgB,SAChBN,WAAY,UACTO,EAAAA,GAASoB,oBAAkB,IAC9BjB,aAAc,MACdC,iBAAkB,YAClBC,mBAAoB,gBACpBC,eAAgB,UAElBhD,uBAAwB,CACtB5X,OAAQ,OACRH,MAAO,OACPkQ,gBAAiBxK,EAAAA,GAAO4U,YACxBH,WAAY,OACZS,aAAc,MACdC,iBAAkB,YAClBC,mBAAoB,gBACpBC,eAAgB,SAElB9C,uBAAwB,CACtBkC,WAAY,OACZna,MAAO,MACPib,UAAW,MACXV,YAAa,QAEfrC,iBAAgB5iB,GAAAA,GAAA,CACdwmB,IAAK,MACLrW,MAAOC,EAAAA,GAAOyE,OACXsQ,EAAAA,GAAShI,UAAQ,IACpBsJ,cAAe,eAEjBzD,qBAAoBhjB,GAAAA,GAAA,GACfmlB,EAAAA,GAASpQ,UAAQ,IACpB5E,MAAOC,EAAAA,GAAOyE,QAEhBoO,qBAAoBjjB,GAAAA,GAAA,CAClBqlB,OAAQ,WACLF,EAAAA,GAAShI,UAAQ,IACpBhN,MAAOC,EAAAA,GAAOC,YAEhB0T,aAAc,CACZY,QAAS,OACT,CAAC9K,IAAqB,CACpB8K,QAAS,UAGbhB,yBAA0B,CACxBgB,QAAS,OACT,CAAC9K,IAAqB,CACpB8K,QAAS,UAGbnB,cAAaxjB,GAAAA,GAAA,CACXomB,QAAS,YACTxL,gBAAiBxK,EAAAA,GAAOY,MACxB0V,aAAc,aAAatW,EAAAA,GAAOsE,eAC/ByQ,EAAAA,GAAShI,UAAQ,IACpBhN,MAAOC,EAAAA,GAAOyD,YACdnJ,MAAO,QACP4a,aAAc,MACdL,YAAa,IACblY,UAAW,OACX,CAAC8M,IAAkB7Z,GAAA,CACjB0K,MAAO,OACPob,YAAa,EACbC,aAAc,EACd5V,MAAOC,EAAAA,GAAOyE,OACXsQ,EAAAA,GAASlL,WAEd,SAAU,CACRW,gBAAiBxK,EAAAA,GAAOwE,cAG5B4P,qBAAoBxkB,GAAAA,GAAA,CAClBomB,QAAS,aACNjB,EAAAA,GAAShI,UAAQ,IACpBvC,gBAAiBxK,EAAAA,GAAOY,MACxBb,MAAOC,EAAAA,GAAOyD,YACd+R,aAAc,MACdlb,MAAO,QACP4a,aAAc,MACdL,YAAa,IACblY,UAAW,OACX,CAAC8M,IAAkB7Z,GAAA,CACjB0K,MAAO,OACPob,YAAa,EACbC,aAAc,EACd5V,MAAOC,EAAAA,GAAOyE,OACXsQ,EAAAA,GAASlL,WAEd,SAAU,CACRW,gBAAiBxK,EAAAA,GAAOwE,gB,0iCClc9B,MAAQ+R,GAAuB7M,EAAAA,GAAvB6M,mBAgKR,OA9JelC,GAAAA,GAAWC,OAAO,CAC/BkC,iBAAkB,CAChBtB,aAAc,MACdc,QAAS,kBAEXS,0BAA2B,CACzBjM,gBAAiB,SAEnBkM,yBAA0B,CACxBnB,UAAW,MACX5Y,UAAW,UAEbga,qBAAsB,CACpBvW,SAAU,WACVwW,IAAK,OACLC,MAAO,QAETC,gBAAiB,CACfvB,UAAW,QAEbwB,oBAAmBnnB,GAAAA,GAAA,CACjBmQ,MAAOC,EAAAA,GAAOyE,OACXsQ,EAAAA,GAASvL,oBAAkB,IAC9BgM,aAAc,MACd7Y,UAAW,WAEbqa,uBAAsBpnB,GAAAA,GAAA,CACpBmQ,MAAOC,EAAAA,GAAOyE,OACXsQ,EAAAA,GAASlL,WAAS,IACrBlN,UAAW,WAEbsa,2BAA4B,CAC1BlX,MAAOC,EAAAA,GAAOyE,MACd9H,UAAW,SACX,gBAAe/M,GAAAA,GAAA,GACVmlB,EAAAA,GAASzN,WAAS,IACrBkO,aAAc,SAEhB,cAAa5lB,GAAAA,GAAA,CACXmQ,MAAOC,EAAAA,GAAOyD,aACXsR,EAAAA,GAASlL,WAAS,IACrB2L,aAAc,SAGlB0B,yBAAwBtnB,GAAAA,GAAA,CACtB0K,MAAO,MACPia,QAAS,eACT4C,cAAe,MACfnB,QAAS,cACNjB,EAAAA,GAAShI,UAAQ,IACpB,CAACwJ,IAAqB,CACpBjc,MAAO,OACPkJ,OAAQ,OACRwS,QAAS,cAGboB,qBAAoBxnB,GAAAA,GAAA,CAClBmQ,MAAOC,EAAAA,GAAOyE,OACXsQ,EAAAA,GAASlL,WAAS,IACrBvP,MAAO,MACPkb,aAAc,OACdjB,QAAS,OACT,CAACgC,IAAqB,CACpBf,aAAc,OACd,cAAe,CACbA,aAAc,UAIpB6B,oBAAqB,CACnB5C,WAAY,OAEd6C,0BAA2B,CACzBhd,MAAO,MACPia,QAAS,eACTyB,QAAS,UACT,CAACO,IAAqB,CACpBjc,MAAO,OACPkJ,OAAQ,SAGZ+T,8BAA+B,CAC7BvB,QAAS,UACTxS,OAAQ,UAEVgU,qBAAsB,CACpBjC,UAAW,OACXC,aAAc,OACd,eAAgB,CACdhS,OAAQ,MAGZiU,sBAAqB7nB,GAAA,CACnB0K,MAAO,OACPoa,OAAQ,aAAa1U,EAAAA,GAAOsE,cAC5B0R,QAAS,WACTd,aAAc,MACdza,OAAQ,QACLsa,EAAAA,GAAS2C,WAEdC,qBAAsB,CACpBnU,OAAQ,IACRlJ,MAAO,MACPia,QAAS,eACT,eAAgB,CACd/Q,OAAQ,aAGZoU,2BAA0BhoB,GAAAA,GAAA,CACxB4lB,aAAc,QACXT,EAAAA,GAAS2C,WAAS,IACrBG,WAAY,SACZlb,UAAW,WAEbmb,wBAAuBloB,GAAAA,GAAA,CACrB4lB,aAAc,OACdzV,MAAO,UACJgV,EAAAA,GAAS2C,WAAS,IACrB/a,UAAW,WAEbob,sBAAuB,CACrBrD,OAAQ,oBAEVsD,8BAA6BpoB,GAAAA,GAAA,CAC3B+M,UAAW,SACX4X,QAAS,gBACNQ,EAAAA,GAAShI,UAAQ,IACpBzS,MAAO,OACPyF,MAAOC,EAAAA,GAAOyE,QAEhBwT,sBAAqBroB,GAAAA,GAAA,CACnB6kB,WAAY,OACTM,EAAAA,GAASlL,WAAS,IACrB0K,QAAS,eACTxU,MAAOC,EAAAA,GAAOyE,MACdwQ,OAAQ,UACRtI,eAAgB,cAElBuL,mCAAoC,CAClCvb,UAAW,SACX4Y,UAAW,QAEb4C,sBAAqBvoB,GAAA,CACnBmQ,MAAOC,EAAAA,GAAOyE,OACXsQ,EAAAA,GAAS2C,WAEdU,0BAAyBxoB,GAAAA,GAAA,CACvB+c,eAAgB,YAChB5M,MAAOC,EAAAA,GAAOyE,OACXsQ,EAAAA,GAAS2C,WAAS,IACrBlC,aAAc,QAEhB6C,0BAA2B,CACzB9C,UAAW,OACXC,aAAc,U,4kEC0NlB,OAjWoB8C,EAAGxZ,UAAS/G,iBAAgBwgB,eAAczkB,iBAC5D,MAAwCiK,EAAAC,IAAZC,EAAAA,EAAAA,UAAS,CAAC,GAAE,GAAjCua,EAAMza,EAAA,GAAE0a,EAAS1a,EAAA,GAC4BK,EAAAJ,IAAZC,EAAAA,EAAAA,UAAS,IAAG,GAA7Cya,EAAYta,EAAA,GAAEua,EAAeva,EAAA,GACmB2M,EAAA/M,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAhD+M,EAAYD,EAAA,GAAEE,EAAeF,EAAA,GACmByD,EAAAxQ,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAhD2a,EAAYpK,EAAA,GAAEqK,EAAerK,EAAA,GAEUE,EAAA1Q,IAAZC,EAAAA,EAAAA,UAAS,IAAG,GAAvC6a,EAASpK,EAAA,GAAEqK,EAAYrK,EAAA,GACcE,EAAA5Q,IAAZC,EAAAA,EAAAA,UAAS,IAAG,GAArC+a,EAAQpK,EAAA,GAAEqK,EAAWrK,EAAA,GACgBsK,EAAAlb,IAAZC,EAAAA,EAAAA,UAAS,IAAG,GAArCkb,EAAQD,EAAA,GAAEE,EAAWF,EAAA,GAC5BG,GAA8DC,EAAAA,GAAAA,GAAqB,IAA3EC,EAAKF,EAALE,MAAOC,EAAQH,EAARG,SAAUC,EAAiBJ,EAAjBI,kBAAmBC,EAAaL,EAAbK,cACyBC,EAAA3b,IAA3BC,EAAAA,EAAAA,UAASwb,GAAkB,GAA9DG,EAAaD,EAAA,GAAEE,EAAgBF,EAAA,GAEhCG,EAA+B,eAAnB/hB,EACZgiB,EAAYxf,OAAOhE,SAASiS,SAASG,SAAS,eAAiB7U,EAC/DkmB,EAAiBzf,OAAOhE,SAASiS,SAASM,WAAW,cAG3D,IAAImR,EAAiB,uBACjBC,EAAiB,wEACjBC,EAAkB,GAClBC,EAAY,CACd,yCACA,sDACA,kEARoB7f,OAAOhE,SAASiS,SAASM,WAAW,kBAWxDmR,EAAiB,6BACjBC,EAAiB,sEACjBC,EAAkB,oBAClBC,EAAY,CACV,6DACA,sDACA,wCACA,qDAIJ,MAAMC,GAAeL,EACfM,EAAYN,EAElB,IAAIO,EAAW,GAEbA,EADEF,EACS,MACFC,EACE,MAEA,OAGb5U,EAAAA,EAAAA,YAAU,KACR,MAAM8U,EAAQ,GAAGD,yBACX7qB,EAAO,SAASqI,KAEtB+b,EAAAA,GAAAA,IAAM0G,EAAO,CAAE9qB,QAAO,GACrB,CAAC6qB,EAAUxiB,KAEd2N,EAAAA,EAAAA,YAAU,KACRmT,GAAgB,EAAM,GACrB,CAACC,EAAWE,EAAUO,EAAOJ,KAEhCzT,EAAAA,EAAAA,YAAU,KACJ+T,GAAmBI,GAAiB,EAAK,GAC5C,CAACJ,IAEJ,MAiFMgB,EAAgBA,IAChBC,KAAAA,QAAkB5B,IAAc4B,KAAAA,QAAkB1B,IAAa0B,KAAAA,QAAkBnB,IACnFZ,EAAgB,iDACT,GACG+B,KAAAA,QAAkBnB,IAGnBoB,EAAAA,GAAAA,IAAkBpB,IAC3BZ,EAAgB,sBAAuB2B,EAA+B,GAAnB,2BAC5C,GACGI,KAAAA,SAAmBvB,EAAU,CAAEyB,IAAK,EAAGC,IAAK,UAAjD,GACLlC,EAAgB,oDACT,IAPPA,EAAgB,wCACT,GAULmC,EACJlC,IAAiBF,EAAajmB,OAAS,GAAKI,OAAOkoB,KAAKvC,GAAU,CAAC,GAAG/lB,OAAS,GAEjF,OACEiM,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,EACEH,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAO0F,sBAAsB/Z,UAC/CH,EAAAA,EAAAA,KAACsH,EAAAA,GAAU,CAACC,QAAQ,SAASlE,SAAS,QAAQI,QAASpB,EAASkc,gBAAgB,cAElFve,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOyF,0BAA0B9Z,UACnDH,EAAAA,EAAAA,KAAA,KAAGiE,KAAK,IAAG9D,UACTH,EAAAA,EAAAA,KAAA,OAAKoK,IAAKyI,UAGd7S,EAAAA,EAAAA,KAACwe,GAAAA,EAAI,CAACC,UAAQ,EAACC,QAAS,EAAEve,UACxBH,EAAAA,EAAAA,KAACwe,GAAAA,EAAKG,IAAG,CAACF,UAAQ,EAACC,QAAS,EAAEve,UAC5B8B,EAAAA,EAAAA,MAACuc,GAAAA,EAAKI,OAAM,CAAC/gB,MAAO,GAAGsC,SAAA,EACrB8B,EAAAA,EAAAA,MAAA,OAAKsS,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAO6F,iBAAiBla,SAAA,EAC1CH,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAO8F,qBAAqBna,SAAEqd,KAClDxd,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAO+F,wBAAwBpa,SAAEsd,IACpDG,GAAeN,IACdtd,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAO+F,wBAAwBpa,SAAC,wFAKvDwd,EAAU3nB,OAAS,IAClBiM,EAAAA,EAAAA,MAAA,OAAKsS,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOiG,0BAA0Bta,SAAA,EACnDH,EAAAA,EAAAA,KAAA,KAAAG,SAAIud,IACHC,EAAUhpB,KAAKkqB,IAEZ5c,EAAAA,EAAAA,MAAA,OAAKsS,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOmG,sBAAsBxa,SAAA,EAC/C8B,EAAAA,EAAAA,MAAA,QAAA9B,SAAA,EACEH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,WAAWwN,MAAOC,EAAAA,GAAOC,YAAc,QAEpDxD,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOoG,qBAAqBza,SAAE0e,MAJGA,SAU/D5c,EAAAA,EAAAA,MAAA,OAAKsS,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOqG,2BAA2B1a,SAAA,EACpDH,EAAAA,EAAAA,KAAA,OACEuU,WAAWzM,EAAAA,GAAAA,IACTmU,EAAezH,GAAO6G,wBAA0B7G,GAAO2G,4BACvDhb,SAED8b,GAA8B,sBAEjCha,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,EACE8B,EAAAA,EAAAA,MAAC6c,GAAAA,EAAI,CAACzP,MAAOgP,EAAWzP,SAlJfC,UAKrB,GAJAL,GAAgB,GAChB4N,GAAgB,GAChBJ,EAAU,CAAC,GAEPmB,EACF,OAAKH,OAMLC,KALEf,EAAgB,sDAChB1N,GAAgB,IAQpB,GAAIwP,IAEF,YADAxP,GAAgB,GAIlB,IAAIuQ,EACAC,cAAcC,QAAQ,0BACxBF,EAAqBC,aAAaC,QAAQ,wBAC1CD,aAAaE,WAAW,yBAG1B,IACE,MAAMC,QAAqB7L,GAAAA,EAAI8L,KAAK,SAAU,CAC5ClZ,KAAI/S,GAAA,CACF2pB,QACAJ,WACA/mB,WAAY0mB,EACZzmB,UAAW2mB,GACPsB,GAAa,CAAExgB,SAAS,MAI5BigB,IACED,GAAahmB,EAAWlB,MAC1B+U,EAAAA,EAAAA,GAAiB,gCAAgC7T,EAAWlB,OAAQ,IAEpE+U,EAAAA,EAAAA,MAIJ,MAAMhF,EAAOiZ,EAAanQ,MAC1BqQ,EAAAA,GAAAA,IAASnZ,SACHmR,EAAAA,GAAAA,IAAM,GAAGyG,4BAAoC,CACjD7qB,KAAM,SAASqI,MAIfwC,OAAOhE,SAASmK,KADd8a,EACqB,+BAA+BA,IAE/B,iBAE3B,CAAE,MAAO1P,GACPb,GAAgB,GAChBlD,QAAQgU,IAAIjQ,GACRA,EAAMiD,SAAStD,KAAK+M,OAAOe,MAAM,GAAGyC,QAAQ,uBAAyB,EACvErD,EAAgB,sCAEhB7M,EAAMiD,SAAStD,KAAK+M,OAAOe,MAAM,GAAGyC,QAAQ,0CAA4C,EAExFrD,EAAgB,2CAEhBA,EAAgB,2CAGlBF,EAAU3M,EAAMiD,SAAStD,KAAK+M,OAChC,GA2E6D5b,SAAA,GAC5Cgd,GAAiBd,GAAaE,KAC/Bta,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC8e,GAAAA,EAAKU,MAAK,CACTjL,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOuG,qBAAsBvG,GAAO0G,sBAAsB/a,UAEzEH,EAAAA,EAAAA,KAAA,SACEuU,WAAWzM,EAAAA,GAAAA,IACT0M,GAAOwG,sBACPmB,IAAiBE,GAAa7H,GAAO8G,uBAEvC,cAAY,+BACZxlB,KAAK,YACL+M,SAAWC,GAAMwZ,EAAaxZ,EAAEE,OAAOuC,OACvCyN,YAAY,aACZzN,MAAO8W,OAGXrc,EAAAA,EAAAA,KAAC8e,GAAAA,EAAKU,MAAK,CACTjL,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOuG,qBAAsBvG,GAAO0G,sBAAsB/a,UAEzEH,EAAAA,EAAAA,KAAA,SACEuU,WAAWzM,EAAAA,GAAAA,IACT0M,GAAOwG,sBACPmB,IAAiBI,GAAY/H,GAAO8G,uBAEtC,cAAY,8BACZxlB,KAAK,WACL+M,SAAWC,GAAM0Z,EAAY1Z,EAAEE,OAAOuC,OACtCyN,YAAY,YACZzN,MAAOgX,UAKfvc,EAAAA,EAAAA,KAAC8e,GAAAA,EAAKU,MAAK,CAACjL,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOuG,sBAAsB5a,UACtDH,EAAAA,EAAAA,KAAA,SACEuU,WAAWzM,EAAAA,GAAAA,IACT0M,GAAOwG,wBACNkD,EAAAA,GAAAA,IAAkBpB,IAAWX,IAAiB8B,KAAAA,QAAkBnB,KAC/DtI,GAAO8G,uBAEX,cAAY,0BACZxlB,KAAK,QACL+M,SAAWC,GAAMia,EAASja,EAAEE,OAAOuC,OACnCyN,YAAa6K,EAAY,gBAAkB,8BAC3CtY,MAAOuX,MAGVK,GACClb,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACyf,GAAgB,CAAAtf,UACfH,EAAAA,EAAAA,KAAC0f,GAAAA,EAAc,OAEjB1f,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACL,cAAY,4BACZyF,SAAU5B,IAAiBuO,EAC3B7pB,KAAK,SACL4K,MAAM,OAAMsC,SACb,cAGDH,EAAAA,EAAAA,KAAC2f,GAAkB,CACjBlc,QAASA,KACHuZ,GAAmBD,EAAS,IAChCK,GAAiB,EAAM,EACvBjd,UAEFH,EAAAA,EAAAA,KAAC4f,GAAS,CAAAzf,SAAC,qCAIf8B,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC8e,GAAAA,EAAKU,MAAK,CAACjL,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOuG,sBAAsB5a,UACtDH,EAAAA,EAAAA,KAAA,SACEuU,WAAWzM,EAAAA,GAAAA,IACT0M,GAAOwG,sBACPmB,IACGO,EAAS1mB,OAAS,GAAK0mB,EAAS1mB,OAAS,KAC1Cwe,GAAO8G,uBAEX,cAAY,6BACZxlB,KAAK,WACL+M,SAAWC,GAAM6Z,EAAY7Z,EAAEE,OAAOuC,OACtCyN,YAAY,WACZ/f,KAAK,WACLsS,MAAOmX,OAGX1c,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACL,cAAY,4BACZyF,SAAU5B,EACVtb,KAAK,SACL4K,MAAM,OAAMsC,SACb,oBAGDH,EAAAA,EAAAA,KAAC2f,GAAkB,CAAAxf,UACjBH,EAAAA,EAAAA,KAAC4f,GAAS,CAACnc,QAASA,IAAM2Z,GAAiB,GAAMjd,SAAC,8BAO1D8B,EAAAA,EAAAA,MAAA,OAAKsS,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOiH,oCAAoCtb,SAAA,EAC7D8B,EAAAA,EAAAA,MAAA,OAAKsS,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOkH,uBAAuBvb,SAAA,CAAC,iCAClB,QAEjCH,EAAAA,EAAAA,KAAA,KACEuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOmH,2BACtB1X,KAAK,SACLjB,OAAO,SAAQ7C,SAChB,sBAGDH,EAAAA,EAAAA,KAAA,QAAMuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOkH,uBAAuBvb,SAAE,SACrDH,EAAAA,EAAAA,KAAA,KACEuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOmH,2BACtB1X,KAAK,WACLjB,OAAO,SAAQ7C,SAChB,6BAMPH,EAAAA,EAAAA,KAAA,MAAIuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOoH,8BAC1B3Z,EAAAA,EAAAA,MAAA,OAAKsS,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAO+G,+BAA+Bpb,SAAA,CAAC,4BAEzDH,EAAAA,EAAAA,KAAA,QAAM0J,MAAO,CAAEsO,WAAY,OAAQ7X,UACjCH,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOgH,uBAAwB/X,QA3M7Coc,KACdvC,GAAaD,GAAahmB,EAAWlB,OACvC+U,EAAAA,EAAAA,GAAiB,gCAAgC7T,EAAWlB,QAE9D2lB,EAAa,QAAQ,EAuM+D3b,SAAC,0BAQ/E,EAMV,MAAMsf,GAAmBrb,EAAAA,GAAOC,GAAG;;;;EAM7Bsb,GAAqBvb,EAAAA,GAAOC,GAAG;;;;EAM/Bub,GAAYxb,EAAAA,GAAOC,GAAG;;;;;;WAMjBd,EAAAA,GAAOyE;IACd1D,EAAAA,GAAM8I;;;;aAIG7J,EAAAA,GAAOuc;;sgCCrTpB,OA5EA,WACE,MAA+Dxe,EAAAC,IAA7BC,EAAAA,EAAAA,UAAoB,UAAS,GAAxDue,EAASze,EAAA,GAAEwa,EAAYxa,EAAA,GACgCK,EAAAJ,IAA1BC,EAAAA,EAAAA,YAA0B,GAAvDnK,EAAUsK,EAAA,GAAEqe,EAAare,EAAA,GAE1BvG,GAAiB4G,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAAS9D,iBAClEE,GAAiB0G,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAAS5D,iBAClED,GAAoB2G,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAAS7D,oBAErEyG,GAAWC,EAAAA,EAAAA,OAEjBkH,EAAAA,EAAAA,YAAU,KACR,WAKE,GAHEnL,OAAOhE,SAASiS,SAASG,SAAS,eAClCpO,OAAOhE,SAASiS,SAASkU,MAAM,KAAKjqB,OAAS,EAEhC,CACb,MAAMkqB,EAAapiB,OAAOhE,SAASiS,SAASkU,MAAM,KAAKE,IAAI,GAC3D,IACE,MAAQ1M,SAAkB2M,EAAAA,GAAAA,IAAiBF,IAAnCzM,QACRuM,EAAcvM,EAChB,CAAE,MAAO3Q,GACP,GAA0B,MAAtBA,EAAEwP,SAAS+N,OAEb,YADA/U,QAAQ+D,MAAM,2BAGhB,MAAMvM,CACR,CACF,CACD,EAlBD,EAkBI,GACH,KAEHmG,EAAAA,EAAAA,YAAU,KACR6S,EAAazgB,EAA+B,GAC3C,CAACA,IAEJ,MAOMilB,EAAkBA,KACtBxe,GAASye,EAAAA,GAAAA,IAAiB,CAAE5jB,MAAM,IAAS,EAS7C,OANIvB,IACFic,EAAAA,GAAAA,IAAMC,GAAAA,EAAiBkJ,KAAM,CAC3BhJ,aAAc,iBAKhBxX,EAAAA,EAAAA,KAACygB,GAAAA,EAAK,CACJ9jB,KAAMvB,EACNiH,QAASie,EACT3d,KAAK,QACL4R,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAOuF,kBACtBrQ,MAAO,CAAE7L,MAtBO,WAAdkiB,EACK,QAEF,QAmByB1G,SAAU,OAAQlZ,UAEhD8B,EAAAA,EAAAA,MAAA,OAAK,cAAY,cAAa9B,SAAA,CACb,WAAd4f,IACC/f,EAAAA,EAAAA,KAAC6b,GAAW,CACVxZ,QAASie,EACTjpB,WAAYA,EACZiE,eAAgBA,EAChBwgB,aAAcA,IAGH,UAAdiE,IAAyB/f,EAAAA,EAAAA,KAAC0gB,GAAAA,EAAU,CAAC5E,aAAcA,EAAc6E,QAAM,QAIhF,ECzFA,MCkEA,OAlDA,UAAoB,GAClBlW,EAAE,SACFtK,EAAQ,SACRygB,GAAW,EAAK,WAChBC,GAAa,EACb,cAAeC,EAAU,sBACzBC,EAAwB,UAExB,MAAMxqB,GAAoByL,EAAAA,EAAAA,KACvBjP,GAAqBA,EAAM6E,eAAerB,oBAGvCuL,GAAWC,EAAAA,EAAAA,MACTgK,GAAaC,EAAAA,EAAAA,MAAbD,SASR,IAAIiV,GAAW,EAOf,MAN8B,eAA1BD,EACFC,EAAWC,OAAOlV,GAAUM,WAAW5B,KAAQlU,EACZ,UAA1BwqB,IACTC,EAAWC,OAAOlV,KAActB,IAAOlU,IAIvCyJ,EAAAA,EAAAA,KAACC,GAAS,CAAC+gB,SAAUA,EAAS7gB,UAC5B8B,EAAAA,EAAAA,MAACuI,GAAI,CACHC,GAAIA,EACJyW,GAAIN,EAAW,IAAMO,EAAAA,GACrBld,KAAM2c,GAAYnW,EAClBhH,QApBc2d,KACd7qB,IACFuL,GAASmS,EAAAA,GAAAA,KAAqB,IAC9BnW,OAAOhE,SAASmK,KAAOwG,EACzB,EAiBI4W,UAAWL,EACX,cAAaF,EAAW3gB,SAAA,CAEvBA,EACA0gB,IACC7gB,EAAAA,EAAAA,KAACshB,EAAAA,GAAO,CAACC,QAAM,EAACvJ,WAAW,MAAK7X,SAAC,YAO3C,EAIA,MAAMF,GAAYmE,EAAAA,GAAOC,GAAG;;;;;;6BAMC,EAAG2c,cAAgBA,EAAWzd,EAAAA,GAAOC,UAAY;EAExEgH,IAAOpG,EAAAA,EAAAA,IAAO+c,EAAAA,GAAQ;;;IAGxB7c,EAAAA,GAAMgM;WACC/M,EAAAA,GAAOyE;;;aAGLzE,EAAAA,GAAOC;;;IAGhB,EAAG6d,eACHA,GACA,kBACW9d,EAAAA,GAAOC;ECzDtB,OAzB6Bge,KAC3B,MAAM9rB,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAC/DoG,GAAckG,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASpD,cAErE,OACEmG,EAAAA,EAAAA,MAACwf,GAAS,CAAAthB,SAAA,EACRH,EAAAA,EAAAA,KAAC0hB,GAAU,CAACjX,IAAIiN,EAAAA,GAAAA,MAAkBvX,UAAEuM,EAAAA,GAAAA,GAAE,0CACtC1M,EAAAA,EAAAA,KAAC0hB,GAAU,CAACjX,GAAG,gBAAgBoW,YAAU,EAAA1gB,UACtCuM,EAAAA,GAAAA,GAAE,0CAEJhX,EAAYqF,aAAa8b,YACxB7W,EAAAA,EAAAA,KAAC0hB,GAAU,CAACjX,GAAG,iBAAgBtK,UAAEuM,EAAAA,GAAAA,GAAE,+CAErCzK,EAAAA,EAAAA,MAACyf,GAAU,CAACjX,GAAG,SAAQtK,SAAA,EACpBuM,EAAAA,GAAAA,GAAE,iCACF5Q,EAAc,IACbkE,EAAAA,EAAAA,KAACshB,EAAAA,GAAO,CAACtJ,WAAW,MAAMjK,gBAAiBxK,EAAAA,GAAOoe,QAAQxhB,SACvDrE,SAIG,EAQT,MAAM2lB,GAAYrd,EAAAA,GAAOC,GAAG;;;;;EChBnC,OAhB6Bud,KAEzB3f,EAAAA,EAAAA,MAAChC,GAAS,CAAAE,SAAA,EACRH,EAAAA,EAAAA,KAAC0hB,GAAU,CAACjX,IAAIoX,EAAAA,GAAAA,OAAoBd,sBAAsB,aAAaH,UAAQ,EAAAzgB,UAC5EuM,EAAAA,GAAAA,GAAE,0CAEL1M,EAAAA,EAAAA,KAAC0hB,GAAU,CAACjX,GAAG,6BAA6BmW,UAAQ,EAAAzgB,UACjDuM,EAAAA,GAAAA,GAAE,mCAEL1M,EAAAA,EAAAA,KAAC0hB,GAAU,CAACjX,GAAG,cAAcmW,UAAQ,EAAAzgB,UAClCuM,EAAAA,GAAAA,GAAE,2CAQX,MAAMzM,IAAYmE,EAAAA,EAAAA,IAAOqd,GAAU;;kBCyCnC,OAxDmBK,EAAG1f,SAAQC,cAC5B,IAAKD,EAAQ,OAAO,KAEpB,MAAM1M,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAE/DqsB,EACJ,CACE,CACEjsB,KAAM,cACN2U,IAAIiN,EAAAA,GAAAA,MACJsK,cAAelkB,OAAOhE,SAASiS,SAASM,WAAW,iBAErD,CACEvW,KAAM,OACNorB,GAAI,IACJjd,KAAM,QACN+d,cAAelkB,OAAOhE,SAASiS,SAASM,WAAW,UAErD,CACEvW,KAAM,iBACN2U,GAAI,cACJuX,cAAelkB,OAAOhE,SAASiS,SAASM,WAAW,iBAIzD,OACErM,EAAAA,EAAAA,KAACiiB,GAAAA,EAAc,CAAC7f,OAAQA,EAAQC,QAASA,EAAS6f,UAAU,SAAS5V,iBAAe,EAAAnM,UAClF8B,EAAAA,EAAAA,MAAChC,GAAS,CAAAE,SAAA,EACR8B,EAAAA,EAAAA,MAACkgB,GAAQ,CAAAhiB,SAAA,EACPH,EAAAA,EAAAA,KAACoiB,GAAW,CAACnvB,KAAK,SAASwQ,QAASpB,EAAQlC,UAC1CH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,QAAQ6M,KAAK,SAEzBof,EAAMptB,KAAK0tB,IACVriB,EAAAA,EAAAA,KAACmhB,GAAO,CAEND,GAAImB,EAAKnB,GACTzW,GAAI4X,EAAK5X,GACTxG,KAAMoe,EAAKpe,KACX+d,cAAeK,EAAKL,cAAc7hB,SAEjCkiB,EAAKvsB,MANDusB,EAAKvsB,YAUdJ,EAAYL,KACZ2K,EAAAA,EAAAA,KAAA,KAAGiE,KAAK,SAAQ9D,UACdH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACzX,KAAK,SAASsU,QAAQ,YAAYR,OAAO,WAAWlJ,MAAM,OAAMsC,SAAC,kBAMhE,EAMrB,MAAMF,GAAYmE,EAAAA,GAAOC,GAAG;;;EAItB+d,GAAche,EAAAA,GAAOke,MAAM;;;;;;EAO3BH,GAAW/d,EAAAA,GAAOC,GAAG;;;;EAKrB8c,IAAU/c,EAAAA,EAAAA,IAAOoG,EAAAA,GAAK;;;;WAIjB,EAAGwX,mBAAqBA,EAAgBze,EAAAA,GAAOC,UAAYD,EAAAA,GAAOyE;;aAEhEzE,EAAAA,GAAOC;;;ECxBpB,OAvD2B+e,KACzB,MAAM7sB,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAC/DoG,GAAckG,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASpD,cAC/DvI,GAAeyO,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMsK,QAAQ9J,eAC/DoE,GAA0BqK,EAAAA,EAAAA,KAC7BjP,GAAqBA,EAAM6E,eAAeD,0BAG7C,IAAKjC,EAAYqF,aAAaic,WAAathB,EAAYqF,aAAa+R,SAClE,OAAO9M,EAAAA,EAAAA,KAACC,GAAS,IAEnB,MAAMuiB,EACJ9sB,EAAYqF,aAAaic,UACzBthB,EAAYqF,aAAa4W,YACxB7X,SAASiS,SAASM,WAAW,kBAEhC,OACEpK,EAAAA,EAAAA,MAAChC,GAAS,CAACuiB,kCAAmCA,EAAkCriB,SAAA,CAC7EqiB,IACCxiB,EAAAA,EAAAA,KAACyiB,GAAU,CAAChY,GAAI,0BAA0B9S,IAA0BwI,UAClEH,EAAAA,EAAAA,KAACmD,EAAAA,GAAU,CAACC,KAAK,0BAA0BC,SAAS,aAAasH,aAAa,YAGhFjV,EAAYqF,aAAa4W,YACzB3R,EAAAA,EAAAA,KAAC0hB,GAAU,CAACjX,GAAG,sBAAqBtK,UACjCuM,EAAAA,GAAAA,GAAE,gDAGNnZ,GAAcmvB,SAASC,mBACtB3iB,EAAAA,EAAAA,KAAC0hB,GAAU,CAACjX,GAAG,oBAAmBtK,UAC/BuM,EAAAA,GAAAA,GAAE,8CAGNnZ,GAAcmvB,SAASE,4BACtB5iB,EAAAA,EAAAA,KAAC0hB,GAAU,CAACjX,GAAG,WAAUtK,UAAE0iB,EAAAA,GAAAA,IAAqBtvB,KAEjDmC,EAAYqF,aAAaic,WACxBhX,EAAAA,EAAAA,KAAC0hB,GAAU,CAACjX,GAAG,4BAA2BtK,UACvCuM,EAAAA,GAAAA,GAAE,qCAGNhX,EAAYqF,aAAaic,WAAathB,EAAYqF,aAAa4W,YAC9D1P,EAAAA,EAAAA,MAACyf,GAAU,CAACjX,GAAG,SAAS,cAAY,oBAAmBtK,SAAA,EACpDuM,EAAAA,GAAAA,GAAE,iCACF5Q,EAAc,IACbkE,EAAAA,EAAAA,KAACshB,EAAAA,GAAO,CAACtJ,WAAW,MAAMjK,gBAAiBxK,EAAAA,GAAOoe,QAAQxhB,SACvDrE,SAKC,EAMhB,MAAMmE,IAAYmE,EAAAA,EAAAA,IAAOqd,GAAU;IAC/B,EAAGe,uCAAwCA,GAAqC;EAE9EC,IAAare,EAAAA,EAAAA,IAAO+c,EAAAA,GAAQ;;;;;;;;ECnDlC,OAdmC2B,KAE/B7gB,EAAAA,EAAAA,MAACwf,GAAS,CAAAthB,SAAA,EACRH,EAAAA,EAAAA,KAAC0hB,GAAU,CAACjX,IAAIiN,EAAAA,GAAAA,MAAkBvX,UAAEuM,EAAAA,GAAAA,GAAE,0CACtC1M,EAAAA,EAAAA,KAAC0hB,GAAU,CAACjX,GAAG,kCAAkCoW,YAAU,EAAA1gB,UACxDuM,EAAAA,GAAAA,GAAE,mDAEL1M,EAAAA,EAAAA,KAAC0hB,GAAU,CAACjX,GAAG,6BAA4BtK,UACxCuM,EAAAA,GAAAA,GAAE,gDCbJ,MAAMqW,GAAsB,CACjC,WACA,gBACA,eACA,SACA,cACA,iBACA,kBAGWC,GAAsB,CACjC,SACA,WACA,sBACA,4BACA,gCACA,oBACA,WACA,mBACA,wB,ogCCoGF,OApGeC,KACb,MAA+C3hB,EAAAC,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAxC0hB,EAAQ5hB,EAAA,GAAE6hB,EAAW7hB,EAAA,GACmCK,EAAAJ,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAxD4hB,EAAgBzhB,EAAA,GAAE0hB,EAAmB1hB,EAAA,GAEtCjM,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAC/D4tB,GAAWthB,EAAAA,EAAAA,KAAajP,GAAqBA,EAAM+K,OAAOwlB,WAExDvX,GAAaC,EAAAA,EAAAA,MAAbD,SAEFwX,GAAmB7tB,EAAYL,GAG/BmuB,EAA6B,MAAbzX,GAAoBA,EAASM,WAAW,eACxDoX,EACJ1X,EAASM,WAAW,iBACpBN,EAASM,WAAW,cACpBN,EAASM,WAAW,YAEhBqX,EAAeA,KACfH,GAAmBzlB,OAAO6lB,SAAW,MAAQH,GAAiBC,GAChEN,GAAY,GACgB,IAAnBrlB,OAAO6lB,SAChBR,GAAY,EACd,EAUF,IAPAla,EAAAA,EAAAA,YAAU,KACRnL,OAAOoD,iBAAiB,SAAUwiB,GAC3B,KACL5lB,OAAO8lB,oBAAoB,SAAUF,EAAa,IAEnD,CAAC3X,IAEAgX,GAAoB3W,MAAMvL,GAAsB,MAAbkL,GAAoBA,EAASM,WAAWxL,KAC7E,OAAO,KAGT,MAAMgjB,EAAYb,GAAoB5W,MACnCvL,GAAsB,MAAbkL,GAAoBA,EAASM,WAAWxL,KAK9CijB,EACS,MAAb/X,GACAA,EAASM,WAAW,WACpBN,EAASM,WAAW,gBACpBN,EAASM,WAAW,kBAClB3W,EAAYL,IAAMouB,EAEtB,OACExhB,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC+jB,GAAgB,KACjB/jB,EAAAA,EAAAA,KAAC8hB,GAAU,CAAC1f,OAAQghB,EAAkB/gB,QAASA,IAAMghB,GAAoB,MACzErjB,EAAAA,EAAAA,KAACC,GAAS,CAACijB,SAAUA,EAAUW,UAAWA,EAAW,cAAY,cAAa1jB,UAC5E8B,EAAAA,EAAAA,MAAC+hB,GAAK,CAAA7jB,SAAA,CACHmjB,GAAYQ,IACX9jB,EAAAA,EAAAA,KAACikB,GAAoB,CAAChxB,KAAK,SAASwQ,QAASA,IAAM4f,GAAoB,GAAMljB,UAC3EH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,SAAS6M,KAAK,SAG5B4gB,GACCvjB,EAAAA,EAAAA,KAAA,KAAGiE,KAAK,IAAG9D,UACTH,EAAAA,EAAAA,KAACgR,GAAI,CAAC5G,IAAKyI,GAAUvI,IAAI,iBAG3BtK,EAAAA,EAAAA,KAACwK,EAAAA,GAAI,CAACC,IAAIiN,EAAAA,GAAAA,MAAkBvX,UAC1BH,EAAAA,EAAAA,KAACgR,GAAI,CAAC5G,IAAKyI,GAAUvI,IAAI,gBAIvBgZ,EAAiB,KACjBC,GAAwBvjB,EAAAA,EAAAA,KAAC4hB,GAAoB,IAC7ClsB,EAAYyV,OAASwB,GAAAA,EAAS4C,WAAkBvP,EAAAA,EAAAA,KAACwhB,GAAoB,IACrE9rB,EAAYyV,OAASwB,GAAAA,EAASC,SAAgB5M,EAAAA,EAAAA,KAACuiB,GAAkB,IACjE7sB,EAAYyV,OAASwB,GAAAA,EAASoK,kBACzB/W,EAAAA,EAAAA,KAAC8iB,GAA0B,SADpC,EAGDS,GACCthB,EAAAA,EAAAA,MAACiiB,GAAa,CAAA/jB,SAAA,EACVmjB,IACAtjB,EAAAA,EAAAA,KAAA,KAAGiE,KAAK,SAAQ9D,UACdH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACnD,QAAQ,QAAQR,OAAO,YAAW5G,SAAC,eAK/CH,EAAAA,EAAAA,KAAA,KAAGiE,KAAK,eAAc9D,UACpBH,EAAAA,EAAAA,KAACmkB,EAAAA,GAAc,CAACxhB,KAAK,KAAIxC,SAAC,mBAI9BH,EAAAA,EAAAA,KAAC6T,GAAkB,WAIxB,EAMP,MAAM5T,GAAYmE,EAAAA,GAAOC,GAAG;;;cAGd,EAAG6e,cAAgBA,EAAW,SAAW;SAC9C,EAAGA,cAAgBA,EAAW,EAAI;;;eAG5BjW,EAAAA,GAAkBE;sBACX5J,EAAAA,GAAOY;6BACA,EAAG0f,eAAiBA,EAAYtgB,EAAAA,GAAOsE,YAAc;;;IAG9EoF,EAAAA,GAAkBD;;;IAGlBC,EAAAA,GAAkB6M;;;EAIhBkK,GAAQ5f,EAAAA,GAAOC,GAAG;;;;;;EAOlB2M,GAAO5M,EAAAA,GAAOwG,GAAG;;;;EAKjBsZ,GAAgB9f,EAAAA,GAAOC,GAAG;;;;;;EAO1B4f,GAAuB7f,EAAAA,GAAOke,MAAM;;;;;;iBCvJ1C,MAAM8B,IAAkBC,EAAAA,GAAAA,KACtB,IAAM,kCAEFC,IAAqBD,EAAAA,GAAAA,KACzB,IAAM,kCAkBR,OAfe,EACbrkB,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CACJ2jB,OAAK,EAEL1jB,MAAM2jB,EAAAA,GAAAA,KAAoBC,EAAAA,GAAAA,QAC1B3jB,UAAWsjB,IAFP,mCAINpkB,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CACJ2jB,OAAK,EAEL1jB,MAAM2jB,EAAAA,GAAAA,KAAoBE,EAAAA,GAAAA,QAC1B5jB,UAAWwjB,IAFP,mCClBR,MAAMK,IAAiBN,EAAAA,GAAAA,KAAc,IAAM,kCAErCO,GAAc7Z,IAClB,IAAK8Z,EAAAA,GAAcC,YACjB,MAAM,IAAIC,MAAM,+BAElB,MACMC,EADe,IAAIC,gBAAgBla,EAAMjR,SAASorB,QACtB3R,IAAI,QACtC,GAAQyR,IACDG,GAAYC,qBACf,OAAOplB,EAAAA,EAAAA,KAAC2kB,GAAc,IAEtBrZ,QAAQ+D,MAAM,+BAAgC2V,EAClD,EAYF,OATe,EACbhlB,EAAAA,EAAAA,KAACqlB,EAAmB,CAAuBd,OAAK,EAAC1jB,MAAMykB,EAAAA,GAAAA,OAAuBnlB,SAC3EykB,IADsB,oBAGzB5kB,EAAAA,EAAAA,KAACqlB,EAAmB,CAAwBd,OAAK,EAAC1jB,MAAM0kB,EAAAA,GAAAA,KAAsB,SAASplB,SACpFykB,IADsB,qBCpB3B,MAAMY,IAAUnB,EAAAA,GAAAA,KAAc,IAAM,2DAC9BoB,IAAepB,EAAAA,GAAAA,KAAc,IAAM,2DAczC,OAZe,EACbrkB,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CACJ2jB,OAAK,EAEL1jB,MAAM2jB,EAAAA,GAAAA,IAAoBkB,GAAAA,KAC1B5kB,UAAW0kB,IAFP,iBAINxlB,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAoB1jB,MAAM2jB,EAAAA,GAAAA,IAAoBmB,GAAAA,KAAkCxlB,UAC1FH,EAAAA,EAAAA,KAACylB,GAAY,CAACG,gBAAiBC,GAAAA,GAAgBC,sBADhC,iBCXnB,MAAMC,IAAU1B,EAAAA,GAAAA,KAAc,IAAM,kCAgBpC,OAde,EACbrkB,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAEJC,MAAM2jB,EAAAA,GAAAA,IAAoBwB,GAAAA,KAC1BC,OAAQA,EAAGC,QAAOpsB,eAChBkG,EAAAA,EAAAA,KAACwL,EAAAA,GAAQ,CAACf,GAAI,0BAA0Byb,EAAMC,OAAOjG,aAAapmB,EAASorB,YAHzE,iBAMNllB,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAoB2jB,OAAK,EAAC1jB,KAAK,qCAAqCC,UAAWilB,IAA1E,iBACX/lB,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAoB2jB,OAAK,EAAC1jB,KAAK,4BAA2BV,UAC9DH,EAAAA,EAAAA,KAAC+lB,GAAO,CAACK,WAAS,KADT,iB,oCCXb,MAaMC,GAAUjiB,EAAAA,GAAOC,GAAG;;sBAEJd,EAAAA,GAAO+iB;;EAIvB7Z,GAAQrI,EAAAA,GAAOC,GAAG;IACpBC,EAAAA,GAAMiiB;WACChjB,EAAAA,GAAOyE;EAGZwe,GAAWpiB,EAAAA,GAAOC,GAAG;IACvBC,EAAAA,GAAMmiB;WACCljB,EAAAA,GAAOyE;EAGZuC,GAAOnG,EAAAA,GAAOC,GAAG;IACnBC,EAAAA,GAAMuG;WACCtH,EAAAA,GAAOyE;;;EAKlB,OApCwB0e,KAEpB1mB,EAAAA,EAAAA,KAAC2mB,EAAAA,GAAa,CAACC,eAAe,EAAKzmB,UACjC8B,EAAAA,EAAAA,MAACokB,GAAO,CAAAlmB,SAAA,EACNH,EAAAA,EAAAA,KAACyM,GAAK,CAAAtM,SAAC,UACPH,EAAAA,EAAAA,KAACwmB,GAAQ,CAAArmB,SAAC,qDACVH,EAAAA,EAAAA,KAACuK,GAAI,CAAApK,SAAC,mEACNH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACjH,QAASA,IAAO3F,OAAOhE,SAASmK,MAAO4iB,EAAAA,GAAAA,OAAc1mB,SAAC,iBCRtE,MAeMkmB,GAAUjiB,EAAAA,GAAOC,GAAG;;sBAEJd,EAAAA,GAAO+iB;;EAIvB7Z,GAAQrI,EAAAA,GAAOC,GAAG;IACpBC,EAAAA,GAAMiiB;WACChjB,EAAAA,GAAOyE;EAGZwe,GAAWpiB,EAAAA,GAAOC,GAAG;IACvBC,EAAAA,GAAMmiB;WACCljB,EAAAA,GAAOyE;EAGZuC,GAAOnG,EAAAA,GAAOC,GAAG;IACnBC,EAAAA,GAAMuG;WACCtH,EAAAA,GAAOyE;;;EAKlB,OAtCqB8e,KAEjB9mB,EAAAA,EAAAA,KAAC2mB,EAAAA,GAAa,CAACC,eAAe,EAAKzmB,UACjC8B,EAAAA,EAAAA,MAACokB,GAAO,CAAAlmB,SAAA,EACNH,EAAAA,EAAAA,KAACyM,GAAK,CAAAtM,SAAC,UACPH,EAAAA,EAAAA,KAACwmB,GAAQ,CAAArmB,SAAC,qDACVH,EAAAA,EAAAA,KAACuK,GAAI,CAAApK,SAAC,4FAGNH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACjH,QAASA,IAAMuB,QAAQ+hB,IAAI,GAAG5mB,SAAC,iBCA/C,MAyDMF,GAAYmE,EAAAA,GAAOC,GAAG;;;iBAGX,EAAG2iB,iBAAkBA;WAC3BzjB,EAAAA,GAAOyE;EAGZgJ,GAAO5M,EAAAA,GAAOwG,GAAG;;;EAKjB6B,GAAQrI,EAAAA,GAAOC,GAAG;IACpBC,EAAAA,GAAMoV;;;EAKJuN,GAAQ7iB,EAAAA,GAAOC,GAAG;;;;IAIpBC,EAAAA,GAAMuG;;;;;EAOJqc,GAAc9iB,EAAAA,GAAOC,GAAG;IAC1BC,EAAAA,GAAM8I;;;;;aAKG7J,EAAAA,GAAOyE;;eAELzE,EAAAA,GAAOC;;;EAKhB2jB,GAAa/iB,EAAAA,GAAOC,GAAG;;;0BAGH,EAAGuG,SAAUA;;EAIvC,OA1G8Bwc,EAAG/X,YAC/B,MAAMvN,GAAWC,EAAAA,EAAAA,OAEjBkH,EAAAA,EAAAA,YAAU,KACRnH,GAASmS,EAAAA,GAAAA,KAAqB,GAAM,GACnC,IAGgB,mBAAf5E,EAAMvZ,OACHgI,OAAOhE,SAASutB,KAAKC,SAAS,aACjCxpB,OAAOhE,SAASytB,QAAQzpB,OAAOhE,SAAW,YAC1CgE,OAAOhE,SAAS4J,WAIpB,IAAI8jB,EAAa3jB,KAAK4jB,gBAClBC,EAAmC,KACnC3P,EAAa,SACjB,GAAI1I,EAAMsY,aAAc,CACtB,MAAMtH,EAAShR,EAAMiD,SAAS+N,OAC9BmH,GAAa,EACbzP,EAAa,SACE,MAAXsI,EACFqH,GAAiB1nB,EAAAA,EAAAA,KAAC0mB,GAAe,IACb,MAAXrG,EACTqH,GAAiB1nB,EAAAA,EAAAA,KAAC4nB,GAAAA,EAAW,IACT,MAAXvH,IACTqH,GAAiB1nB,EAAAA,EAAAA,KAAC8mB,GAAY,IAElC,MACEY,GACEzlB,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACyM,GAAK,CAAAtM,SAAC,mCACP8B,EAAAA,EAAAA,MAACglB,GAAK,CAAA9mB,SAAA,EACJH,EAAAA,EAAAA,KAAA,KAAAG,SAAG,yEACHH,EAAAA,EAAAA,KAAA,KAAAG,SAAG,sBAELH,EAAAA,EAAAA,KAAA,KAAGiE,KAAK,kBAAiB9D,UACvBH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACzX,KAAK,SAAQkN,SAAC,sBAExB8B,EAAAA,EAAAA,MAACilB,GAAW,CAAA/mB,SAAA,CAAC,wBAEXH,EAAAA,EAAAA,KAAA,KAAGiE,KAAK,WAAU9D,SAAC,mBAErBH,EAAAA,EAAAA,KAACmnB,GAAU,CAACvc,IAAK+J,QAKvB,OACE1S,EAAAA,EAAAA,MAAChC,GAAS,CAAC+mB,YAAajP,EAAW5X,SAAA,CAChCqnB,GAAaxnB,EAAAA,EAAAA,KAAC6nB,GAAM,KAAM7nB,EAAAA,EAAAA,KAACgR,GAAI,CAAC5G,IAAKyI,KACrC6U,IACS,EC5ChB,OAfsBI,EAAG3nB,eACvB,MAAMzK,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAErE,OACEsK,EAAAA,EAAAA,KAAC+nB,GAAAA,EAAsB,CACrBC,SAAUxV,GAAAA,EAEVyV,SAAW5Y,IAAUrP,EAAAA,EAAAA,KAAConB,GAAqB,CAAC/X,MAAOA,IACnD6Y,KAAM,CAAEhf,OAAQxT,GAAaL,GAAI8yB,UAAWzyB,GAAaonB,OAAQ3c,SAEhEA,GACsB,E,wBCdtB,MAAMioB,GAA0BvZ,gBACd4E,GAAAA,EAAQF,KAAI8U,EAAAA,GAAAA,SACnBrZ,KAAKsZ,QAGVC,GAAyB1Z,gBAKb4E,GAAAA,EAAQ2L,MAC7BiJ,EAAAA,GAAAA,OACA,CAAEG,UAAWC,GACb,CAAEC,QAAS,OAEG1Z,K,wCCLlB,MAAM2Z,GAAa,sCAEZ,SAASC,IAAWC,iBAAiB,MAAEC,EAAK,MAAEC,EAAK,OAAEC,KAC1D,OACE/mB,EAAAA,EAAAA,MAACgnB,GAAI,CAAA9oB,SAAA,EACH8B,EAAAA,EAAAA,MAACinB,GAAG,CAAA/oB,SAAA,EACFH,EAAAA,EAAAA,KAACmpB,EAAAA,GAAY,CACXC,WAAY,EACZ1mB,OAAOgK,EAAAA,GAAAA,GAAE,CAACic,GAAY,UACtBU,WAAYP,EACZQ,WAAYR,EACZS,aAAa,EACbC,YAAY,cAEdxpB,EAAAA,EAAAA,KAACypB,GAAY,CAACJ,WAAYP,EAAOQ,WAAYR,QAE/C7mB,EAAAA,EAAAA,MAACinB,GAAG,CAAA/oB,SAAA,EACFH,EAAAA,EAAAA,KAACmpB,EAAAA,GAAY,CACXC,WAAY,EACZ1mB,OAAOgK,EAAAA,GAAAA,GAAE,CAACic,GAAY,UACtBU,UAAWP,IAAUC,EACrBO,WAAYP,EACZQ,aAAa,EACbC,YAAY,cAEdxpB,EAAAA,EAAAA,KAACypB,GAAY,CAACJ,UAAWP,IAAUC,EAAOO,WAAYP,QAExD9mB,EAAAA,EAAAA,MAACinB,GAAG,CAAA/oB,SAAA,EACFH,EAAAA,EAAAA,KAACmpB,EAAAA,GAAY,CACXC,WAAY,EACZ1mB,OAAOgK,EAAAA,GAAAA,GAAE,CAACic,GAAY,UACtBU,UAAWP,GAASC,IAAUC,EAC9BM,WAAYN,EACZO,aAAa,EACbC,YAAY,cAEdxpB,EAAAA,EAAAA,KAACypB,GAAY,CAACJ,UAAWP,GAASC,IAAUC,EAAQM,WAAYN,SAIxE,CACA,MAAMC,GAAO7kB,EAAAA,GAAOC,GAAG;;;;;;;IAOnB4I,EAAAA,GAAkByc;;;EAKhBR,GAAM9kB,EAAAA,GAAOC,GAAG;;;;;;;EAShBolB,GAAerlB,EAAAA,GAAOC,GAAG;;;gBAGf,EAAGglB,eACXA,EAAkB9lB,EAAAA,GAAOomB,eACtBpmB,EAAAA,GAAOsE;;;;;;aAOL,EAAGwhB,eAAiBA,EAAY,MAAQ;kBACnC,EAAGA,YAAWC,gBACtBD,EAAkB9lB,EAAAA,GAAOC,UACzB8lB,EAAmB/lB,EAAAA,GAAOqmB,MACvBrmB,EAAAA,GAAOsE;;8BCqCpB,OA9GA,UAAe,OAAE4I,EAAM,QAAEoZ,EAAO,QAAE3X,EAAO,gBAAE4X,EAAe,WAAEC,IAC1D,MAAQC,EAA6BvZ,EAA7BuZ,KAAM7e,EAAuBsF,EAAvBtF,KAAM8e,EAAiBxZ,EAAjBwZ,aAmCpB,OAjCAhhB,EAAAA,EAAAA,YAAU,KACR,OAAQghB,GACN,KAAKC,GAAiBC,gBACtB,KAAKD,GAAiBE,wBACtB,KAAKF,GAAiBG,mBACpBnY,EAAQ,mBACR,MACF,KAAKgY,GAAiBI,qBACpBpY,EAAQ,sBACR,MACF,KAAKgY,GAAiBK,kBACtB,KAAKL,GAAiBM,SACtB,KAAKN,GAAiBO,WACpBvY,EAAQ,qBACR,MACF,KAAKgY,GAAiBQ,yBACpBxY,EAAQ,0BACR,MACF,UAAK5L,EACH,MACF,SACEqkB,EAAAA,GAAAA,GAAaV,GAGbA,IACF5S,EAAAA,GAAAA,IAAMC,GAAAA,EAAiBC,MAAO,CAC5BqT,gBAAiB,qBACjBpT,aAAc,0BACdqT,cAAeZ,GAEnB,GACC,CAACA,KAGFhoB,EAAAA,EAAAA,MAAC6oB,GAAAA,GAAe,CAACjtB,MAAM,QAAOsC,SAAA,EAC5BH,EAAAA,EAAAA,KAAC8qB,GAAAA,GAAY,CACXC,WAAW,kBACXC,QAAQ,+CAEVhrB,EAAAA,EAAAA,KAACirB,GAAc,CAAA9qB,SAAC,2BAChB8B,EAAAA,EAAAA,MAACipB,GAAgB,CAAA/qB,SAAA,EACf8B,EAAAA,EAAAA,MAACkpB,GAAM,CACLC,SAAUnB,IAAiBC,GAAiBI,qBAC5C7mB,QAASA,IAAMqmB,EAAgBI,GAAiBI,sBAAsBnqB,SAAA,CACvE,eACaH,EAAAA,EAAAA,KAAA,KAAAG,SAAG,eAAc,0CAE/B8B,EAAAA,EAAAA,MAACkpB,GAAM,CACLC,SAAUnB,IAAiBC,GAAiBQ,yBAC5CjnB,QAASA,IAAMqmB,EAAgBI,GAAiBQ,0BAA0BvqB,SAAA,CAC3E,gBACcH,EAAAA,EAAAA,KAAA,KAAAG,SAAG,kBAAiB,0BAGrCH,EAAAA,EAAAA,KAACirB,GAAc,CAAA9qB,SAAC,oBAChB8B,EAAAA,EAAAA,MAACipB,GAAgB,CAAA/qB,SAAA,EACf8B,EAAAA,EAAAA,MAACkpB,GAAM,CACLC,SAAUnB,IAAiBC,GAAiBC,gBAC5C1mB,QAASA,IAAMqmB,EAAgBI,GAAiBC,iBAAiBhqB,SAAA,CAClE,gBACcH,EAAAA,EAAAA,KAAA,KAAAG,SAAG,kBAAkB,4CAEpC8B,EAAAA,EAAAA,MAACkpB,GAAM,CACLC,SAAUnB,IAAiBC,GAAiBK,kBAC5C9mB,QAASA,IAAMqmB,EAAgBI,GAAiBK,mBAChD,cAAY,iCAAgCpqB,SAAA,CAC7C,kBACgBH,EAAAA,EAAAA,KAAA,KAAAG,SAAG,YAAY,yDAEhC8B,EAAAA,EAAAA,MAACkpB,GAAM,CACLC,SAAUnB,IAAiBC,GAAiBM,SAC5C/mB,QAASA,IAAMqmB,EAAgBI,GAAiBM,UAAUrqB,SAAA,CAC3D,kBACgBH,EAAAA,EAAAA,KAAA,KAAAG,SAAG,4BAA4B,oCAEhD8B,EAAAA,EAAAA,MAACkpB,GAAM,CACLC,SAAUnB,IAAiBC,GAAiBO,WAC5ChnB,QAASA,IAAMqmB,EAAgBI,GAAiBO,YAAYtqB,SAAA,CAC7D,kBACgBH,EAAAA,EAAAA,KAAA,KAAAG,SAAG,gBAAgB,uCAGtC8B,EAAAA,EAAAA,MAACuP,GAAe,CAACwY,KAAMA,EAAK7pB,SAAA,CACzB0kB,EAAAA,GAAcwG,yBACbrrB,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLzX,KAAK,SACLwQ,QAASoL,gBACD4I,EAAAA,GAAAA,KAAS,EACftX,SACH,cAIHH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLzX,KAAK,SACL,cAAY,sBACZkd,UAAWhF,EACX1H,QAASsmB,EACTlsB,MAAM,QAAOsC,SACd,kBAMT,EAIA,MAAMqR,GAAkBpN,EAAAA,GAAOC,GAAsB;gBACrC,EAAG2lB,UAAYA,EAAO,OAAS;EAGzCiB,GAAiB7mB,EAAAA,GAAOknB,EAAE;;IAE5BhnB,EAAAA,GAAM+L;EAGJ6a,GAAmB9mB,EAAAA,GAAOC,GAAG;;;;;EAO7B8mB,GAAS/mB,EAAAA,GAAOC,GAA2B;;;;sBAI3Bd,EAAAA,GAAO2N;;;IAGzB5M,EAAAA,GAAMuG;;IAEN,EAAGugB,cACHA,GACA,2BACoB7nB,EAAAA,GAAOC,+BACbD,EAAAA,GAAOgoB,+BACZhoB,EAAAA,GAAOioB;yCCtJpB,MAAMC,GAA4B,EAE3B,SAASC,IAAW,OAAEC,EAAM,WAAEC,EAAU,SAAEpmB,IAC/C,OACEvD,EAAAA,EAAAA,MAAC4pB,GAAI,CAACD,WAAYA,EAAYnoB,QAASA,IAAM+B,EAASmmB,EAAOt2B,IAAI8K,SAAA,EAC/DH,EAAAA,EAAAA,KAAC8rB,EAAAA,GAAc,CAACnpB,KAAK,KAAKuD,KAAMylB,KAChC1pB,EAAAA,EAAAA,MAAC8pB,GAAI,CAAA5rB,SAAA,EACHH,EAAAA,EAAAA,KAAA,MAAI0O,MAAOid,EAAO71B,KAAKqK,SAAEwrB,EAAO71B,QAChCkK,EAAAA,EAAAA,KAAA,MAAI0O,MAAOid,EAAOjd,MAAMvO,SAAEwrB,EAAOjd,SACjC1O,EAAAA,EAAAA,KAAA,MAAI0O,MAAOid,EAAO7xB,SAASqG,SAAEwrB,EAAO7xB,eAEtCkG,EAAAA,EAAAA,KAACgsB,GAAY,CAAA7rB,SACVwrB,EAAOhwB,aAAaswB,MAAM,EAAGR,IAA2B92B,KAAKu3B,IAC5DjqB,EAAAA,EAAAA,MAACkqB,GAAW,CAAAhsB,SAAA,EACVH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,cAAc6M,KAAK,KAAKW,MAAOC,EAAAA,GAAOyD,eACjDhH,EAAAA,EAAAA,KAAA,QAAM0O,MAAOwd,EAAYxd,MAAOvO,SAAE+rB,EAAYxd,UAF9B,eAAewd,EAAY72B,YAQvD,CAEA,MAAM02B,GAAO3nB,EAAAA,GAAOC,GAAG;;;;MAIjB8D,EAAAA,GAAOikB;;;MAGP9nB,EAAAA,GAAM+L;;;MAGN/L,EAAAA,GAAMgM;;;MAGNhM,EAAAA,GAAM8I;aACC7J,EAAAA,GAAOyD;;EAIdglB,GAAe5nB,EAAAA,GAAOC,GAAG;;;;;EAOzBwnB,GAAOznB,EAAAA,GAAOC,GAAG;;;;;;;;;;;IAWnB,EAAGunB,gBACHA,EACI,qBACUroB,EAAAA,GAAO8oB,yCACD9oB,EAAAA,GAAOC,0BAClBD,EAAAA,GAAOC,iBAEZ,qBACUD,EAAAA,GAAOY,iCACDZ,EAAAA,GAAO2N,4BAClB3N,EAAAA,GAAOyE;;IAGhBiF,EAAAA,GAAkBD;;;;;UAKZ8e,EAAAA;;;UAGAC;;;UAGAC;;;;EAMJG,GAAc/nB,EAAAA,GAAOC,GAAG;;;;;;WAMnBd,EAAAA,GAAOyD;IACd1C,EAAAA,GAAMgM;;;MAGJnI,EAAAA,GAAOikB;;sgCC9EN,MAAME,GAAoB,EAE3BC,GAAsB5xB,IAC1B,IACE,MAAM6xB,EAAS,IAAIC,IAAI9xB,GACvB,GAAI6xB,EAAOE,KAAKxgB,SAAS,kBAAmB,CAC1C,MAAMuc,EAAW+D,EAAOG,aAAapZ,IAAI,QACzC,GAAIkV,EACF,OAAOA,CAEX,CACF,CAAE,MAAO3lB,GACP,CAGF,OAAO,IAAI,EAGN,SAAS8pB,IAAoB,SAClCC,EAAQ,WACR9C,EAAU,OACV+C,EAAM,QACNxE,EAAO,iBACPyE,EAAgB,oBAChBC,EAAmB,aACnBC,EAAY,gBACZC,EAAe,kBACfC,EAAiB,qBACjBC,EAAoB,WACpBC,IAEA,MAAgD/rB,EAAAC,IAAZC,EAAAA,EAAAA,UAAS,IAAG,GAAzC8rB,EAAUhsB,EAAA,GAAEisB,EAAajsB,EAAA,GACiBK,EAAAJ,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAA1CgsB,EAAS7rB,EAAA,GAAE8rB,EAAY9rB,EAAA,GAExB+rB,GAAcC,EAAAA,GAAAA,OAEpB1kB,EAAAA,EAAAA,YAAU,KACRikB,EAAgBZ,IAChBc,EAAqB9E,EAAQ3zB,KAAKg3B,GAAWA,EAAOt2B,KAAI,GACvD,KAEH4T,EAAAA,EAAAA,YAAU,KACyB,IAA7BkkB,EAAkBn3B,QACpBo3B,EAAqB9E,EAAQ3zB,KAAKg3B,GAAWA,EAAOt2B,KACtD,GACC,CAACizB,KAEJrf,EAAAA,EAAAA,YAAU,KACHqkB,GAA2C,IAA7BH,EAAkBn3B,SACnCo3B,EAAqB9E,EAAQ3zB,KAAKg3B,GAAWA,EAAOt2B,MACpD63B,EAAgBZ,IAClB,GACC,CAACgB,IAEJ,MAAgBM,GAAcC,EAAAA,GAAAA,GAAY,CACxCC,WAAYvF,GACZwF,UAAWA,EAAGC,cACZC,YAAW,KACTP,EAAYQ,kBAAkB,CAAEC,SAAU,CAAC,6BAC3CnB,EAAoBgB,GACpBZ,EAAqB,CAACY,IACtBP,GAAa,EAAM,GAClB,IAAK,EAEVW,QAAUhf,IACRa,GAAAA,EAAMZ,MACJ,sFAEFmD,GAAAA,EAAUC,UAAUrD,GAAasE,IAC/BA,EAAKC,UAAU,gCAAgC,IAEjD8Z,GAAa,EAAM,IAjBfY,OAqBFC,GAAOC,EAAAA,EAAAA,UACX,IAAM,IAAIC,GAAAA,EAAKlG,EAAS,CAAEhK,KAAM,CAAC,OAAQ,WAAY,yBACrD,CAACgK,IA8BGmG,EACc,uBAAlB5B,EAAS1hB,MAAmD,sBAAlB0hB,EAAS1hB,KAC/CujB,EAAapG,EAAQtyB,OAAS,EAGpC,OAAKy4B,IAAkBpB,GAAeqB,GAMjCA,GAKHzsB,EAAAA,EAAAA,MAAChC,GAAS,CAAAE,SAAA,EACRH,EAAAA,EAAAA,KAAC2uB,GAAAA,GAAU,CACT5D,WAAW,6BACXC,SACE/oB,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,CAAE,kCAC8BH,EAAAA,EAAAA,KAAA,KAAAG,SAAG,mBAAkB,oFAKzD8B,EAAAA,EAAAA,MAAC2sB,GAAe,CAAAzuB,SAAA,EACdH,EAAAA,EAAAA,KAAC6uB,GAAAA,EAAc,CACbtpB,MAAO+nB,EACPzqB,SAAU0qB,EACV3e,SAzDQ2C,IAGd,GAFA2b,EAAgBZ,KAEX/a,EAEH,YADA6b,EAAqB9E,EAAQ3zB,KAAKg3B,GAAWA,EAAOt2B,MAKtD,MAAMozB,EAAW8D,GAAmBhb,GAQpC,IANA8F,EAAAA,GAAAA,IAAMC,GAAAA,EAAiBwX,OAAQ,CAC7BlE,gBAAiB,sBACjBmE,aAAcxd,EACdyd,cAAe1Y,QAAQmS,KAGrBA,EAGF,OAFAgF,GAAa,QACbG,EAAUnF,GAIZ,MAAMwG,EAASX,EAAKpJ,OAAO3T,GAC3B6b,EAAqB6B,EAAOt6B,KAAKu6B,GAAMA,EAAEC,KAAK95B,KAAI,EAkC5C2d,YAAY,kEAEd/Q,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,EACEH,EAAAA,EAAAA,KAACshB,EAAAA,GAAO,CAACvT,gBAAiBxK,EAAAA,GAAO6rB,YAAYjvB,SAAEgtB,EAAkBn3B,SAAiB,uCAItFgK,EAAAA,EAAAA,KAACqvB,GAAgB,CAAAlvB,SACdqtB,GACCvrB,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,CAAE,gDAEAH,EAAAA,EAAAA,KAACI,EAAAA,EAAM,CAACoJ,QAAM,EAACC,OAAO,iBAGxBxH,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,CACGgtB,EAAkBlB,MAAM,EAAGgB,GAAct4B,KAAK8zB,IAC7C,MAAMkD,EAASrD,EAAQgH,MAAK,EAAGj6B,QAASA,IAAOozB,IAC/C,OAAKkD,GAEH3rB,EAAAA,EAAAA,KAAC0rB,GAAU,CAETC,OAAQA,EACRC,WAAYmB,IAAqBpB,EAAOt2B,GACxCmQ,SAAWnQ,IACT23B,EAAoB33B,IACpBgiB,EAAAA,GAAAA,IAAMC,GAAAA,EAAiBC,MAAO,CAC5BqT,gBAAiB,sBACjBpT,aAAc,aACdgR,UAAWnzB,GACX,GATC,UAAUs2B,EAAOt2B,MAHN,IAchB,IAGL43B,EAAeE,EAAkBn3B,SAChCgK,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLzX,KAAK,SACLsU,QAAQ,QACR5E,KAAK,KACLc,QAASA,KACPypB,EAAgBD,EAAeX,KAC/BjV,EAAAA,GAAAA,IAAMC,GAAAA,EAAiBC,MAAO,CAC5BqT,gBAAiB,sBACjBpT,aAAc,mBACd+X,cAAetC,EAAeX,GAC9BkD,MAAOrC,EAAkBn3B,QACzB,EACFmK,SACH,oBAOT8B,EAAAA,EAAAA,MAACwtB,GAAgB,CAACC,YAAazC,EAAe3E,EAAQtyB,OAAOmK,SAAA,EAC3DH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLzX,KAAK,SACLsU,QAAQ,QACR5E,KAAK,KACLc,QAASA,KACPqpB,EAAO,UACPzV,EAAAA,GAAAA,IAAMC,GAAAA,EAAiBC,MAAO,CAC5BqT,gBAAiB,sBACjBpT,aAAc,cACdgY,MAAOrC,EAAkBn3B,OACzBwyB,UAAWuE,GACX,EACF5sB,SACH,UAGDH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLzX,KAAK,SACLsU,QAAQ,UACR5E,KAAK,KACLoE,OAAO,SACPtD,QAASA,KACPsmB,EAAW,WACX1S,EAAAA,GAAAA,IAAMC,GAAAA,EAAiBC,MAAO,CAC5BqT,gBAAiB,sBACjBpT,aAAc,+BACdgY,MAAOrC,EAAkBn3B,OACzBwyB,UAAWuE,GACX,EAEJ5c,UAAW4c,EAAiB5sB,SAC7B,cAGDH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLzX,KAAK,SACLsU,QAAQ,YACR5E,KAAK,KACLc,QAASA,KACPupB,EAAoB,MACpBjD,EAAW,WACX1S,EAAAA,GAAAA,IAAMC,GAAAA,EAAiBC,MAAO,CAC5BqT,gBAAiB,sBACjBpT,aAAc,cACdgY,MAAOrC,EAAkBn3B,QACzB,EACFmK,SACH,gBA1HEH,EAAAA,EAAAA,KAACI,EAAAA,EAAM,CAACoJ,QAAM,EAACC,OAAO,cAN7BsgB,EAAW,UACJ,KAqIX,CAEO,MAAM9pB,GAAYmE,EAAAA,GAAOC,GAAG;;;;;;IAM/B4I,EAAAA,GAAkBD;;;;EAiBhB4hB,IAXmBxqB,EAAAA,GAAOurB,EAAE;;WAEvBpsB,EAAAA,GAAOyD;IACd1C,EAAAA,GAAM+L;EAGcjM,EAAAA,GAAOknB,EAAE;;IAE7BhnB,EAAAA,GAAMmiB;EAGcriB,EAAAA,GAAOC,GAAG;;;;;;;WAOvBd,EAAAA,GAAOyE;IACd1D,EAAAA,GAAM8I;;;;;;;;;;;GAaJiiB,GAAmBjrB,EAAAA,GAAOC,GAAG;;;;;IAK/BC,EAAAA,GAAM+M;EAGJoe,GAAmBrrB,EAAAA,GAAOC,GAAG;;gBAEnB,EAAGqrB,iBAAmBA,EAAc,OAAS;;0BAEnCnsB,EAAAA,GAAOsE;;kBCnUlB,SAAS+nB,IAAc,SAAEvsB,EAAQ,MAAEqL,EAAK,YAAExU,EAAW,GAAEuQ,EAAE,MAAE5M,IACxE,OACEoE,EAAAA,EAAAA,MAAChC,GAAS,CAACwK,GAAIA,EAAI5M,MAAOA,EAAMsC,SAAA,EAC9BH,EAAAA,EAAAA,KAAC8G,GAAAA,EAAI,CAAChR,KAAMuN,EAAUV,KAAK,KAAKW,MAAOC,EAAAA,GAAOyE,SAC9ChI,EAAAA,EAAAA,KAACyM,GAAK,CAAAtM,SAAEuO,KACR1O,EAAAA,EAAAA,KAAC6vB,GAAW,CAAA1vB,SAAEjG,MAGpB,CAEA,MAAM+F,IAAYmE,EAAAA,EAAAA,IAAOoG,EAAAA,GAAK;;;;;WAKnB,EAAG3M,WAAYA;;;;;;sBAMJ0F,EAAAA,GAAO2N;;;;;EAOvBzE,GAAQrI,EAAAA,GAAO0rB,EAAE;;WAEZvsB,EAAAA,GAAOC;IACdc,EAAAA,GAAMuG;EAGJglB,GAAczrB,EAAAA,GAAOxP,CAAC;;WAEjB2O,EAAAA,GAAOyD;IACd1C,EAAAA,GAAM4D;;EC+EV,OAvHc6nB,EAAGjS,eACf,MAAMpoB,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAC/DnC,GAAeyO,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMsK,QAAQ9J,eAM/Dy8B,EAAoB1Z,SAAQ2Z,EAAAA,EAAAA,GAAiB,IAAI,EAAOv6B,EAAYyV,MAAQ,GAAG,IAErF,OACElJ,EAAAA,EAAAA,MAAC6oB,GAAAA,GAAe,CACdjtB,MAAO,CAAC,qBAAsB,qBAAqBqO,SAAS4R,GAAY,QAAU,QAAQ3d,SAAA,EAE1FH,EAAAA,EAAAA,KAAC8qB,GAAAA,GAAY,CACXC,WAAW,eACXC,SACE/oB,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,CAAE,YACUzK,EAAYC,WAAW,KACjCqK,EAAAA,EAAAA,KAAA,SAAM,6CAKZA,EAAAA,EAAAA,KAACkwB,GAAkB,CAAA/vB,SAChB,MACC,OAAQ2d,GACN,IAAK,qBACL,IAAK,oBACH,OACE7b,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC4vB,GAAa,CACZvsB,SAAS,UACTqL,MAAM,yCACNxU,YAAY,+DACZuQ,GAAI,YAAY/U,EAAYC,cAAcD,EAAYE,aAAaF,EAAYL,KAC/EwI,MAAM,WAERmC,EAAAA,EAAAA,KAAC4vB,GAAa,CACZvsB,SAAS,SACTqL,MAAM,wCACNxU,YAAY,uEACZuQ,IAAIiN,EAAAA,GAAAA,IAAgB,YACpB7Z,MAAM,WAERmC,EAAAA,EAAAA,KAAC4vB,GAAa,CACZvsB,SAAS,eACTqL,MAAM,wBACNxU,YAAY,+EACZuQ,IAAIiN,EAAAA,GAAAA,IAAgB,YACpB7Z,MAAM,aAId,IAAK,kBACH,OACEoE,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC4vB,GAAa,CACZvsB,SAAS,MACTqL,MAAM,sCACNxU,YAAY,+DACZuQ,IAAI0lB,EAAAA,GAAAA,KAAwB,CAAEtY,QAAQ,IACtCha,MAAM,UAEPtK,GAAcmvB,SAASE,4BACrBrvB,EAAamvB,SAAS0N,uBACrBpwB,EAAAA,EAAAA,KAAC4vB,GAAa,CACZvsB,SAAS,SACTqL,MAAM,wCACNxU,YAAY,6DACZuQ,IAAI4lB,EAAAA,GAAAA,MACJxyB,MAAM,WAGRmC,EAAAA,EAAAA,KAAC4vB,GAAa,CACZvsB,SAAS,UACTqL,MAAM,yCACNxU,YAAY,0EACZuQ,IAAI4lB,EAAAA,GAAAA,MACJxyB,MAAM,cAKlB,IAAK,yBACH,OACEoE,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC4vB,GAAa,CACZvsB,SAAS,UACTqL,MAAM,sCACNxU,YAAY,0EACZuQ,GAAG,IACH5M,MAAM,WAERmC,EAAAA,EAAAA,KAAC4vB,GAAa,CACZvsB,SAAS,SACTqL,MAAM,wCACNxU,YAAY,oDACZuQ,IAAIiN,EAAAA,GAAAA,IAAgB,YACpB7Z,MAAM,aAKjB,EA/EA,MAiFDmyB,GAAkC,oBAAblS,KACrB9d,EAAAA,EAAAA,KAACmD,EAAAA,GAAU,CACTM,QAxGe6sB,MACrBL,EAAAA,EAAAA,IAAiBvY,EAAAA,GAAAA,IAAgB,WAAY,CAAE6Y,OAAQ,UAAW,EAAO76B,EAAYyV,KAAK,EAwGpF/H,KAAK,oCACLT,KAAK,KACLU,SAAS,cACT0D,OAAO,eAGK,EAMtB,MAAMmpB,GAAqB9rB,EAAAA,GAAOC,GAAG;;;;IAIjC4I,EAAAA,GAAkBD;;;wgECxGf,IAAKkd,GAAgB,SAAhBA,GAAgB,OAAhBA,EAAgB,4CAAhBA,EAAgB,sCAAhBA,EAAgB,oBAAhBA,EAAgB,wBAAhBA,EAAgB,kCAAhBA,EAAgB,kDAAhBA,EAAgB,wCAAhBA,EAAgB,oDAAhBA,CAAgB,MAoT5B,OAhSA,WACE,MAAuD5oB,EAAAC,IAAjBC,EAAAA,EAAAA,UAAc,CAAC,GAAE,GAAhDgvB,EAAWlvB,EAAA,GAAEmvB,EAAcnvB,EAAA,GAMhCK,EAAAJ,IAL4CC,EAAAA,EAAAA,UAAS,CACrDsnB,OAAO,EACPC,OAAO,EACP2H,QAAQ,EACR1H,QAAQ,IACR,GALKH,EAAelnB,EAAA,GAAEgvB,EAAkBhvB,EAAA,GAUxC2M,EAAA/M,IAJ8BC,EAAAA,EAAAA,UAAmB,CACjDwoB,KAAM,GACN7e,KAAM,GACN8e,kBAAc3jB,IACd,GAJKumB,EAAQve,EAAA,GAAEsiB,EAAWtiB,EAAA,GAKoCyD,EAAAxQ,IAAlCC,EAAAA,EAAAA,UAA6B,MAAK,GAAhDsQ,GAAFC,EAAA,GAAYA,EAAA,IAIzBE,EAAA1Q,IAFyEC,EAAAA,EAAAA,UACxE,MACD,GAFMqvB,EAA6B5e,EAAA,GAAE6e,EAAgC7e,EAAA,GAIzCE,EAAA5Q,IAA3BC,EAAAA,EAAAA,UAAS8qB,IAAkB,GADtByE,EAAgC5e,EAAA,GAAE6e,EAAmC7e,EAAA,GAI3EsK,EAAAlb,IAF2EC,EAAAA,EAAAA,UAC1E,IACD,GAFMyvB,EAA8BxU,EAAA,GAAEyU,EAAiCzU,EAAA,GAIlE/mB,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAE7D2c,GAAuBe,EAAAA,EAAAA,KAAvBf,mBACFvQ,GAAWC,EAAAA,EAAAA,MACXiD,GAAUC,EAAAA,EAAAA,MAGVksB,EADkC5vB,IAAjB6vB,EAAAA,GAAAA,KAAiB,GAArB,GACyB7d,IAAI,6BAEhDtK,EAAAA,EAAAA,YAAU,KACJvT,EAAYqF,cAAc1F,IAC5B2P,EAAQ/O,KAAK,KAEXP,EAAYshB,UACd+S,EAAW,QACb,GACC,KAEH9gB,EAAAA,EAAAA,YAAU,KACJ4f,EAAgBC,OAASqI,IAC3BP,EAAWz9B,GAAAA,GAAC,CAAC,EACR05B,GAAQ,IACX1hB,KAAM,kBACN8e,aAAcC,GAAiBC,mBAEjCwG,EAAkBx9B,GAAAA,GAAC,CAAC,EAAI01B,GAAe,IAAEC,OAAO,EAAMC,OAAO,KAC/D,GACC,CAACF,EAAgBC,SAEpB7f,EAAAA,EAAAA,YAAU,KACR,WACE,GAAIoJ,EACF,IACE,MAAMC,QAAiBC,EAAAA,GAAAA,IAAWF,GAClCP,EAAWQ,EAASjV,QACtB,CAAE,MAAOgS,GACP/D,QAAQ+D,MAAMA,EAChB,CAEH,EATD,EASI,GACH,CAACgD,IAEJ,MAAMgf,GAAcC,EAAAA,EAAAA,QAA8B,OAClDroB,EAAAA,EAAAA,YAAU,KACRooB,EAAYE,SAASC,eAAe,CAAEC,SAAU,YAChDpa,EAAAA,GAAAA,IAAMC,GAAAA,EAAiBkJ,KAAM,CAC3BoK,gBAAiB,sBACjB/B,mBACA,GACD,CAACA,IAEJ,MAAA6I,GAIIC,EAAAA,GAAAA,GAAS,CACXxD,SAAU,CAAC,2BACXyD,QAASxJ,GACTyJ,gBAAiBA,KACXhJ,EAAgBE,OAGb,IAETqF,QAAU/e,IAERmD,GAAAA,EAAUC,UAAUpD,GAAeqE,IACjCA,EAAKC,UAAU,8CAA8C,GAC7D,IAhBEme,EAAoBJ,EAA1B1iB,KACS+iB,EAA2BL,EAApCM,QACYC,EAA8BP,EAA1CrE,WAkBI6E,GAAkBrE,EAAAA,GAAAA,GAAY,CAClCC,WAAahQ,IACXqU,EAAAA,GAAAA,IAAQ,CACNrU,WACA0S,cACA4B,0BAA2BvB,EAC3B5G,aAAc4C,EAAS5C,aACvBkH,2BAEJ/C,QAASA,CAAC/e,EAAOgjB,EAAWC,KAC1B,GAAIjjB,aAAiBkjB,GAAAA,GAQnB,OAPA5B,EAAmB,CACjB7H,OAAO,EACPC,OAAO,EACP2H,QAAQ,EACR1H,QAAQ,SAEV/Y,GAAAA,EAAMZ,OAAM3C,EAAAA,GAAAA,GAAE,0DAGhB8lB,EAAAA,GAAAA,IAAkBnjB,EAAOgjB,EAAWC,EAAQ,EAE9CvE,UAAWlf,UACT/M,GAASoN,EAAAA,GAAAA,IAAeujB,UAElBC,EAAAA,GAAAA,IAAiBv/B,GAAAA,GAAC,CAAC,EACpBs/B,GAC0B,UAAzBA,EAAY3U,UAAwB,CAAE3S,KAAM,MAElDkU,EAAAA,GAAAA,IAASoT,GAELA,EAAYtnB,OAASwB,GAAAA,EAASC,UAChC9K,GAAS6wB,EAAAA,GAAAA,IAAkBF,EAAY13B,aAAasX,qBAEhD8e,GACFnsB,EAAQ/O,MAAK28B,EAAAA,GAAAA,KAA4B,CAAEnf,QAAS0d,MAIxDpH,EAAW,SAAS,IAIlB8I,GAAuBhF,EAAAA,GAAAA,GAAY,CACvCC,WAAYA,KAAMgF,EAAAA,GAAAA,IAAajK,EAAgBkK,YAC/ChF,UAAWA,KAETjwB,OAAOhE,SAASmK,KAAO,GAAG,EAE5BmqB,QAASoE,GAAAA,KAGLQ,EAAiBlV,IACjBoU,EAAgB1E,WAGpB0E,EAAgB7D,OAAOvQ,EAAS,EAG5BmV,EAAWA,KACfnxB,GACEoN,EAAAA,GAAAA,IAAc/b,GAAAA,GAAC,CAAC,EACXuC,GAAW,IACdshB,UAAU,MAGd+S,EAAW,QAAQ,EAGfmJ,EAAcA,CAAC3tB,EAAO4tB,KACtBA,IAAatG,EAAStnB,IACxBkrB,EAAct9B,GAAC,CAAC,EACVq9B,GAAa4C,WAAa,CAAEA,WAAY5C,EAAY4C,YAAe,OAI7D,SAAV7tB,GAAoB4tB,IAAatG,EAAS7C,KAC5C4G,EAAY,CACV5G,KAAMmJ,EACNhoB,KAAM,KAGRylB,GAAayC,IACX,MAAMC,EAAengC,GAAA,GAAQkgC,GAE7B,OADAC,EAAgB/tB,GAAS4tB,EAClBG,CAAe,GAE1B,EAIIxG,EAAUyG,IACd5C,EAAkBx9B,GAAAA,GAAC,CAAC,EAAI01B,GAAe,IAAE,CAAC0K,IAAe,IAAQ,EAI7DxJ,EAAcyJ,IAClB7C,EAAkBx9B,GAAAA,GAAC,CAAC,EAAI01B,GAAe,IAAE,CAAC2K,IAAc,IAAO,EAgE3DC,EAAmBr9B,OAAOqa,OAAOoY,GAAiB6K,OAAO9hB,GAASA,IAExE,OACE3P,EAAAA,EAAAA,MAAC0xB,GAAc,CAAAxzB,SAAA,EACb8B,EAAAA,EAAAA,MAAC2xB,GAAM,CAAAzzB,SAAA,EACLH,EAAAA,EAAAA,KAAA,OAAKoK,IAAKyI,MACR4gB,IACAzzB,EAAAA,EAAAA,KAACmD,EAAAA,GAAU,CACTC,MAAMsJ,EAAAA,GAAAA,GAAE,6CACRpJ,MAAOC,EAAAA,GAAOC,UACdH,SAAU,KACVI,QAASA,MACP4T,EAAAA,GAAAA,IAAMC,GAAAA,EAAiBC,MAAO,CAC5BqT,gBAAiB,sBACjBpT,aAAc,0BAEhBqb,EAAqBxE,OAAO,CAAC,EAAE,EAEjCle,SAAU0iB,EAAqBrF,gBAIrCxtB,EAAAA,EAAAA,KAAC4oB,GAAQ,CAACC,gBAAiBA,KAC3B5mB,EAAAA,EAAAA,MAAC4xB,GAAa,CAAA1zB,SAAA,EACZH,EAAAA,EAAAA,KAAA,OAAK8zB,IAAKzC,IArFImC,MAClB,MAAQ1K,EAAiCD,EAAjCC,MAAOC,EAA0BF,EAA1BE,MAAO2H,EAAmB7H,EAAnB6H,OAAQ1H,EAAWH,EAAXG,OAC9B,OAAKF,EAEOC,EAaA2H,EAgBA1H,GAyBLhpB,EAAAA,EAAAA,KAAC+vB,GAAK,CAACjS,SAAU+O,EAAS1hB,QAvB7BnL,EAAAA,EAAAA,KAAC+zB,GAAAA,GAAK,CACJjW,SAAU+O,EAAS1hB,KACnB6nB,cAAeA,EACfzkB,aAAc2jB,EAAgB1E,UAC9BV,OAAQA,KACN6D,EAAkBx9B,GAAAA,GAAC,CAAC,EACf01B,GAAe,IAElBE,MACEiL,OAAOlC,GAAsB97B,QAAU,IACpB,uBAAlB62B,EAAS1hB,MAAmD,sBAAlB0hB,EAAS1hB,MACtDulB,QAAQ,IACR,EAEJF,YAAaA,EACbC,eAAgBA,EAChBvqB,KAAMxQ,EACNu+B,4BAA6BnC,GAAsBxC,MACjD,EAAGj6B,QAASA,IAAOw7B,OAlCvB7wB,EAAAA,EAAAA,KAAC4sB,GAAmB,CAClBC,SAAUA,EACV9C,WAAYA,EACZ+C,OAAQA,EACRxE,QAASwJ,GAAwB,GACjC/E,iBAAkB8D,EAClB7D,oBAAqB8D,EACrB7D,aAAc8D,EACd7D,gBAAiB8D,EACjB7D,kBAAmB8D,EACnB7D,qBAAsB8D,EACtB7D,WAAY4E,KAxBdjyB,EAAAA,EAAAA,KAACk0B,GAAK,CACJzjB,OAAQoc,EACRhD,QAAUvxB,GAAM46B,EAAY,OAAQ56B,GACpC4Z,QAAU5Z,GAAM46B,EAAY,OAAQ56B,GACpCwxB,gBAAkBxxB,GAAM46B,EAAY,eAAgB56B,GACpDyxB,WAAYA,KACVgI,IACAhI,EAAW,QAAQ,KAVlB/pB,EAAAA,EAAAA,KAACm0B,GAAAA,EAAoB,CAACpK,WAAYkJ,GAuDF,EA4BpCO,QAIT,EAIA,MAAMG,GAAiBvvB,EAAAA,GAAOC,GAAG;;;;;;;EAS3BuvB,GAASxvB,EAAAA,GAAOC,GAAG;;;;;;sBAMHd,EAAAA,GAAOY;;;;;6BAKAZ,EAAAA,GAAOsE;EAE9BgsB,GAAgBzvB,EAAAA,GAAOC,GAAG;;ogCCzThC,MAAM+vB,IAAwB/P,EAAAA,GAAAA,KAAc,IAAM,2DAC5CgQ,IAAUhQ,EAAAA,GAAAA,KAAc,IAAM,kCAC9BiQ,IAAcjQ,EAAAA,GAAAA,KAAc,IAAM,kCAClCkQ,IAAclQ,EAAAA,GAAAA,KAAc,IAAM,mEAClCmQ,IAAoBnQ,EAAAA,GAAAA,KAAc,IAAM,0DACxCoQ,IAAuBpQ,EAAAA,GAAAA,KAAc,IAAM,6GAC3CqQ,IAAUrQ,EAAAA,GAAAA,KAAc,IAAM,2DAC9BsQ,IAA0BtQ,EAAAA,GAAAA,KAAc,IAAM,8HAC9CuQ,IAAgCvQ,EAAAA,GAAAA,KACpC,IAAM,0GAEFwQ,IAA+BxQ,EAAAA,GAAAA,KACnC,IAAM,6HAEFyQ,IAA4BzQ,EAAAA,GAAAA,KAAc,IAAM,iCAChD0Q,IAAe1Q,EAAAA,GAAAA,KAAc,IAAM,kCACnC2Q,IAAc3Q,EAAAA,GAAAA,KAAc,IAAM,2DAClC4Q,IAAY5Q,EAAAA,GAAAA,KAAc,IAAM,kCAChC6Q,IAAc7Q,EAAAA,GAAAA,KAAc,IAAM,iCAClC8Q,IAAc9Q,EAAAA,GAAAA,KAAc,IAAM,kCAClC+Q,IAAc/Q,EAAAA,GAAAA,KAAc,IAAM,kCAClCgR,IAAiBhR,EAAAA,GAAAA,KAAc,IAAM,kCACrCiR,IAAiBjR,EAAAA,GAAAA,KAAc,IAAM,kCACrCoB,IAAepB,EAAAA,GAAAA,KAAc,IAAM,2DACnCkR,IAA2BlR,EAAAA,GAAAA,KAAc,IAAM,+EAC/CmR,IAAUnR,EAAAA,GAAAA,KAAc,IAAM,kCAC9BoR,IAAQpR,EAAAA,GAAAA,KAAc,IAAM,kCAC5BqR,IAAkBrR,EAAAA,GAAAA,KAAc,IAAM,yFACtCsR,IAAmBtR,EAAAA,GAAAA,KAAc,IAAM,qEACvCuR,IAAUvR,EAAAA,GAAAA,KAAc,IAAM,kCAC9BwR,IAAYxR,EAAAA,GAAAA,KAAc,IAAM,kCAChCyR,IAASzR,EAAAA,GAAAA,KAAc,IAAM,kCAC7B0R,IAAyB1R,EAAAA,GAAAA,KAAc,IAAM,kCAC7C2R,IAAuB3R,EAAAA,GAAAA,KAAc,IAAM,iCAC3C4R,IAA4B5R,EAAAA,GAAAA,KAAc,IAAM,+EAChD6R,IAAiB7R,EAAAA,GAAAA,KAAc,IAAM,kCACrC8R,IAA2B9R,EAAAA,GAAAA,KAAc,IAAM,iCAE7CrX,GAAuBC,EAAAA,GAAvBD,mBAED,IAAKmY,GAAW,SAAXA,GAAW,OAAXA,EAAW,4CAAXA,EAAW,sBAAXA,EAAW,0CAAXA,EAAW,yCAAXA,CAAW,MAOhB,MAAMiR,GAA8B,CACzC,CAACvQ,GAAAA,GAAgBwQ,KAAMlR,GAAYC,qBACnC,CAACS,GAAAA,GAAgByQ,WAAYnR,GAAYmR,UACzC,CAACzQ,GAAAA,GAAgB0Q,qBAAsBpR,GAAYoR,oBACnD,CAAC1Q,GAAAA,GAAgBC,oBAAqBX,GAAYW,oBAW9C4H,GAAc,IAAI8I,GAAAA,EAAY,CAClCC,cAAe,IAAIC,GAAAA,EAAc,CAC/BtI,QAASA,CAAC/e,EAAOsnB,EAAYC,EAAUC,KAErC,GAAIA,EAASzvB,QAAQgnB,QAAS,OAE9B,MAAM0I,EAAOD,EAASC,KACtB,IAAKA,GAAMC,wBAA0BC,KAAAA,aAAmB3nB,GACtD,OAGF,MAAM4M,EAAe5M,EAAMiD,UAAUtD,MAAMK,OAASA,EAAMiD,UAAUtD,KAAK+M,OACzE,GAAI7jB,MAAM++B,QAAQhb,GAChBhM,GAAAA,EAAMZ,OACJpN,EAAAA,EAAAA,MAAA,OAAKsS,UAAU,YAAWpU,SAAA,CAAC,+CAEzBH,EAAAA,EAAAA,KAAA,MAAAG,SACG8b,EAAatnB,KAAKya,IACjBpP,EAAAA,EAAAA,KAAA,MAAAG,SAAeiP,GAANA,gBAKZ,GAAI6M,EACThM,GAAAA,EAAMZ,MAAM4M,QACP,GAA+B,MAA3B5M,EAAMiD,UAAU+N,OACzBpQ,GAAAA,EAAMZ,OACJpN,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,CAAK,yCACkCH,EAAAA,EAAAA,KAAA,KAAGiE,MAAM4iB,EAAAA,GAAAA,OAAa1mB,SAAC,kCAG3D,GAA+B,MAA3BkP,EAAMiD,UAAU+N,OACzBpQ,GAAAA,EAAMZ,MAAM,6CACP,CACL,MAAMgR,EAAShR,GAAOiD,UAAU+N,OAChCpQ,GAAAA,EAAMZ,OACJ3C,EAAAA,GAAAA,GAAE,CAAC,QAAS2T,EAAS,oBAAsB,WAAY,CAAEA,OAAQA,GAAU,MAE/E,KAGJ6W,eAAgB,CACdC,QAAS,CACPC,sBAAsB,MAM5B,IAAIC,GAA8B,KAMlC,MAAMr2B,WAAYs2B,EAAAA,cAGhBC,WAAAA,CAAYxsB,GACVysB,MAAMzsB,GAAO,KAHf0sB,cAAQ,EAKNC,KAAKD,SAAW,KAChBC,KAAK3kC,MAAQ,CACX4kC,2BAA2B,EAC3BC,iCAAiC,EACjCC,sBAAsB,GAGxBb,KAAAA,SAAec,QAAQC,OAAOC,OAAS,mBACvChB,KAAAA,SAAec,QAAQC,OAAO,gBAAkB,kBAClD,CAEA,uBAAME,GACJ,MAAAC,EAOIR,KAAK3sB,MANPotB,EAAqBD,EAArBC,sBACAvlB,EAAgBslB,EAAhBtlB,iBACAwlB,EAAWF,EAAXE,YACAxwB,EAAmBswB,EAAnBtwB,oBACA+qB,EAAiBuF,EAAjBvF,kBACA3tB,EAAOkzB,EAAPlzB,QAGF0yB,KAAKD,SAAWzyB,EAAQqzB,QAAO,CAACv+B,EAAU9G,KACzB,QAAXA,GAA0C8G,EAASiS,SA/BhDM,WAAW,gBAgChBvO,OAAOhE,SAAS4J,QAClB,IAGF00B,KACAE,EAAAA,GAAAA,MAGAx6B,OAAOoD,iBAAiB,SAAUi3B,GAE9Br6B,OAAOy6B,WAAa,GAAKz6B,OAAO06B,YAAc,GAGhDL,IAGF,MAAMjyB,QAAa0M,GAAiB,GAEpC,GAAK1M,EAAK7Q,GAEH,CAED6Q,EAAKiF,OAASC,EAAAA,EAAWC,SAC3BsnB,EAAkBzsB,EAAKnL,aAAasX,oBAGtC,MAAMomB,EAAgC5qB,OAAQ6qB,KAAK7qB,KAAM3H,EAAKyyB,YAAa,QAAU,EAC/EC,EACJ1yB,GAAMiF,OAASwB,GAAAA,EAASC,SACxB1G,EAAKnL,eACJmL,EAAKnL,aAAa2T,QAClBxI,EAAKnL,aAAaoQ,KAErBusB,KAAKmB,SAAS,CACZlB,2BACG79B,SAASiS,SAASM,WAAW,iBAC7BvS,SAASiS,SAASM,WAAW,aAC9BnG,GAAMiF,OAASwB,GAAAA,EAASoK,mBACO,IAA/B7Q,GAAMiJ,qBACRyoB,iCACG99B,SAASiS,SAASM,WAAW,iBAC7BvS,SAASiS,SAASM,WAAW,cAC7BvS,SAASiS,SAASM,WAAW,aAC9BosB,GACAG,GAEN,MA3BEhxB,IA6BF8vB,KAAKmB,SAAS,CACZhB,sBAAsB,IAIxB,MAAMiB,EAAiB73B,SAASG,eAAe,mBAC/C,GAAI03B,EAAgB,CAClB,MAAMC,EAAmB93B,SAASG,eAAe,sBAGd,MAAjCs2B,KAAK3sB,MAAMjR,SAASiS,UACpB2rB,KAAK3sB,MAAMjR,SAASiS,SAASM,WAAW,kBAExC0sB,GAAkBC,YAAYF,GAG9BA,EAAepvB,MAAMoO,QAAU,QAEnC,CACF,CAEAmhB,kBAAAA,CAAmBC,GACbA,EAAUC,cAAgBzB,KAAK3sB,MAAMouB,aACvCzB,KAAK3sB,MAAMqtB,cAGTV,KAAK3sB,OAAOrV,eACd2pB,EAAAA,GAAAA,IAASqY,KAAK3sB,MAAMrV,aAIhBgiC,KAAK3sB,MAAMrV,aAAaL,IAAMwvB,EAAAA,GAAcuU,kBAEzB,OAAjB/B,IACFgC,aAAahC,IAEfA,GAAepJ,YAAWpf,gBAClB4I,EAAAA,GAAAA,MACNxH,GAAAA,EAAMZ,MAAM,+CACZgqB,aAAahC,IACbA,GAAe,IAAI,GA5HP,OAiIdK,KAAK3sB,MAAMjR,WAAao/B,EAAUp/B,WACpCw+B,EAAAA,GAAAA,KAEJ,CAEAgB,oBAAAA,GACE,MAAQnB,EAA0BT,KAAK3sB,MAA/BotB,sBACRr6B,OAAO8lB,oBAAoB,SAAUuU,GACrCT,KAAKD,YACP,CAEAxR,MAAAA,GACE,MAAAsT,EAAkC7B,KAAK3sB,MAA/BjR,EAAQy/B,EAARz/B,SAAUpE,EAAW6jC,EAAX7jC,aAElB8jC,EAAAA,GAAAA,IAAa1/B,EAASiS,UAEtB,MAAM0tB,EAAkC,MAAtB3/B,EAASiS,UAAoBjS,EAASiS,SAASM,WAAW,eAEtEqtB,EACJ5/B,EAASiS,SAASG,SAAS,qBAC3BpS,EAASiS,SAASM,WAAW,mBAC7BvS,EAASiS,SAASM,WAAW,0BAC7BvS,EAASiS,SAASM,WAAW,aAC7BvS,EAASiS,SAASM,WAAW,WAC7BvS,EAASiS,SAASM,WAAW,WAC7BvS,EAASiS,SAASM,WAAW,iBAC7BvS,EAASiS,SAASM,WAAW,kBAC7BvS,EAASiS,SAASM,WAAW,gBAC7BvS,EAASiS,SAASG,SAAS,YAC3BpS,EAASiS,SAASM,WAAW,kBAEzBstB,GACHjkC,EAAYL,IACbyE,EAASiS,SAASG,SAAS,qBAC3BpS,EAASiS,SAASM,WAAW,aAC7BvS,EAASiS,SAASM,WAAW,kBAC7BvS,EAASiS,SAASM,WAAW,gBAC7BvS,EAASiS,SAASG,SAAS,WAG7B,GAAI8S,eAAiBA,aAAaC,QAAQ,wBAAyB,CACjE,MACM2a,EADY,IAAI3U,gBAAgBnnB,OAAOhE,SAASorB,QACxB3R,IAAI,eAE9BqmB,GACF5a,aAAa6a,QAAQ,uBAAwBD,EAEjD,CAIA,IACI9/B,EAASiS,SAASM,WAAW,cAC5BvS,EAASiS,SAASM,WAAW,kBAC7BxI,IAAI4jB,iBACL/xB,EAAYL,IACdqiC,KAAK3kC,MAAM8kC,qBAEX,OAAO73B,EAAAA,EAAAA,KAACI,EAAAA,EAAM,CAACsJ,MAAO,CAAEoP,UAAW,QAAUtP,QAAM,EAACC,OAAO,aAG7D,IAAIqwB,GAAWpiB,EAAAA,GAAAA,MAOf,OANIhiB,EAAYyV,OAASC,EAAAA,EAAWC,UACMyuB,EAApCpkC,EAAYqF,aAAa4W,UAAsB,gCACnC,uBAEdjc,EAAYyV,OAASC,EAAAA,EAAW2uB,mBAAkBD,EAAW,+BAG/D73B,EAAAA,EAAAA,MAAC+3B,GAAAA,GAAmB,CAACC,OAAQvM,GAAYvtB,SAAA,CACtC0D,IAAIq2B,kBAAmBl6B,EAAAA,EAAAA,KAACqB,EAAa,KACtCY,EAAAA,EAAAA,MAAC6lB,GAAa,CAAA3nB,SAAA,EACZH,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAO2lB,iBAAiBh6B,UAC1C8B,EAAAA,EAAAA,MAAA,OACE,uBAAsBvM,EAAY+P,WAClC,cAAY,6BACZ8O,WAAWzM,EAAAA,GAAAA,IACT2xB,EAAY,KAAOjlB,GAAO4lB,0BAC1BV,EAAWllB,GAAO6lB,qBAAuB,MACzCl6B,SAAA,EAEAw5B,IAAU35B,EAAAA,EAAAA,KAAC2I,EAAS,KACtB3I,EAAAA,EAAAA,KAACijB,GAAM,IACNvtB,EAAYyV,OAASwB,GAAAA,EAASC,UAAW5M,EAAAA,EAAAA,KAACqN,GAAmB,KAC9DrN,EAAAA,EAAAA,KAAC4T,GAAW,CAAAzT,UACV8B,EAAAA,EAAAA,MAACq4B,EAAAA,SAAQ,CACPrS,UACEjoB,EAAAA,EAAAA,KAACI,EAAAA,EAAM,CACLsJ,MAAO,CACLoP,UAAW,QACX9a,OAAQ,QACR+Z,WAAY,SACZM,eAAgB,SAChBP,QAAS,QAEXtO,QAAM,EACNC,OAAO,aAEVtJ,SAAA,CAEAu3B,KAAK3kC,MAAM4kC,4BACV33B,EAAAA,EAAAA,KAACgO,GAAmB,CAClB5L,OAAQs1B,KAAK3kC,MAAM4kC,0BACnBt1B,QAASA,IAAMq1B,KAAKmB,SAAS,CAAElB,2BAA2B,MAG7DD,KAAK3kC,MAAM6kC,kCACV53B,EAAAA,EAAAA,KAACyR,GAAyB,CACxBrP,OAAQs1B,KAAK3kC,MAAM6kC,gCACnBv1B,QAASA,IAAMq1B,KAAKmB,SAAS,CAAEjB,iCAAiC,OAGpE31B,EAAAA,EAAAA,MAACs4B,EAAAA,GAAM,CAAAp6B,SAAA,CACJzK,EAAYL,KACX2K,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,IAAGV,UACnBH,EAAAA,EAAAA,KAACwL,EAAAA,GAAQ,CAACf,GAAIqvB,OAGlB95B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,SAASC,UAAW80B,MACtC51B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,QAAQC,UAAWk0B,MACrCh1B,EAAAA,EAAAA,KAACyL,EAAY,CAAC8Y,OAAK,EAAC1jB,KAAK,gBAAgBC,UAAWy0B,MACpDv1B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,SAASC,UAAW+0B,MACtC71B,EAAAA,EAAAA,KAACwL,EAAAA,GAAQ,CAACrT,KAAK,YAAYsS,GAAG,kBAC9BzK,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,uBAAuBC,UAAWi1B,KACnDrgC,EAAYL,IACX2K,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,wBAAuBV,UACvCH,EAAAA,EAAAA,KAACwL,EAAAA,GAAQ,CAACf,IAAI+vB,EAAAA,GAAAA,KAAkB9kC,EAAY+P,WAAY,CAAEg1B,SAAU,SAGtEz6B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CACJ2jB,OAAK,EACL1jB,KAAK,wBACLolB,OAAQA,MACN/a,EAAAA,EAAAA,GAAiB,0BACVlL,EAAAA,EAAAA,KAACwL,EAAAA,GAAQ,CAACf,GAAG,eAI1BzK,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CACJ2jB,OAAK,EACL1jB,KAAK,6BACLC,UAAWk1B,MAEbh2B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,eAAeC,UAAWg1B,MAE5C91B,EAAAA,EAAAA,KAACyL,EAAY,CAAC8Y,OAAK,EAAC1jB,KAAK,cAAcC,UAAW45B,MAClD16B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,8BAA6BV,SAC5CA,EAAG+lB,YACF,MAAQlB,EAAiBkB,EAAMC,OAAvBnB,aACR,OAAQA,GACN,KAAKG,GAAYC,qBACjB,KAAKD,GAAYmR,UACf,OAAOt2B,EAAAA,EAAAA,KAAC20B,GAAuB,IACjC,KAAKxP,GAAYoR,oBACf,OAAOv2B,EAAAA,EAAAA,KAAC40B,GAA6B,IACvC,KAAKzP,GAAYW,mBACf,OAAO9lB,EAAAA,EAAAA,KAAC60B,GAA4B,IACtC,QACEvpB,QAAQ+D,MAAM,+BAAgC2V,GAClD,KAGJhlB,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,mCAAkCV,UAClDH,EAAAA,EAAAA,KAACkT,GAAsB,OAEzBlT,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,uBAAuBC,UAAWwzB,MACpDt0B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,eAAeC,UAAWyzB,MAC5Cv0B,EAAAA,EAAAA,KAACqlB,EAAmB,CAClBd,OAAK,EACL1jB,KAAK,sBACLC,UAAW0zB,MAEbx0B,EAAAA,EAAAA,KAACyL,EAAY,CACX8Y,OAAK,EACL1jB,KAAK,gCACLolB,OAAQA,EAAGnsB,SAAU6gC,MACnB36B,EAAAA,EAAAA,KAACwL,EAAAA,GAAQ,CAACf,GAAEtX,GAAAA,GAAA,GAAOwnC,GAAS,IAAE5uB,SAAU,wBAG5C/L,EAAAA,EAAAA,KAACyL,EAAY,CAAC5K,KAAK,iBAAiB0jB,OAAK,EAACzjB,UAAW2zB,MACrDz0B,EAAAA,EAAAA,KAACwL,EAAAA,GAAQ,CAAC3K,KAAK,oBAAoB4J,GAAG,oBACtCzK,EAAAA,EAAAA,KAACyL,EAAY,CACX8Y,OAAK,EACL1jB,KAAK,4BACLolB,OAAQA,KACNjmB,EAAAA,EAAAA,KAAC8J,EAAgB,CAACC,WAAW,QAAO5J,UAClCH,EAAAA,EAAAA,KAACo1B,GAAW,SAIlBp1B,EAAAA,EAAAA,KAACyL,EAAY,CACX8Y,OAAK,EACL1jB,KAAK,kCACLC,UAAWm1B,MAEbj2B,EAAAA,EAAAA,KAACyL,EAAY,CACX8Y,OAAK,EACL1jB,KAAK,6BACLC,UAAWo1B,MAEbl2B,EAAAA,EAAAA,KAACyL,EAAY,CAAC8Y,OAAK,EAAC1jB,KAAK,WAAWC,UAAW4zB,MAC/C10B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,yBAAyBC,UAAWszB,MACtDp0B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CACJ2jB,OAAK,EACL1jB,KAAK,+CACLC,UAAWuzB,MAGbr0B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,kBAAkBC,UAAW2kB,MAC/CzlB,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,kCAAiCV,UACjDH,EAAAA,EAAAA,KAACylB,GAAY,CAACG,gBAAiBC,GAAAA,GAAgB0Q,yBAEjDv2B,EAAAA,EAAAA,KAACyL,EAAY,CAAC8Y,OAAK,EAAC1jB,KAAK,oBAAoBC,UAAW40B,KACvDkF,GACAC,GACAC,GACAC,IACD/6B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,WAAWC,UAAW60B,KACvC9Q,EAAAA,GAAcmW,yBACbh7B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CACJ2jB,OAAK,EACL1jB,KAAK,uCACLC,UAAWg0B,MAGb90B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,yBAAyBC,UAAWi0B,MAExD/0B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,SAASC,UAAWm0B,MACtCj1B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,WAAWC,UAAWo0B,MACxCl1B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,WAAWC,UAAWq0B,MACxCn1B,EAAAA,EAAAA,KAACyL,EAAY,CAAC8Y,OAAK,EAAC1jB,KAAK,SAASC,UAAW20B,MAC7Cz1B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,mBAAmBC,UAAWu0B,MAChDr1B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,mBAAmBC,UAAWw0B,MAChDt1B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,WAAWC,UAAW00B,MACxCx1B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,YAAWV,UAC3BH,EAAAA,EAAAA,KAACwL,EAAAA,GAAQ,CAACf,GAAG,6BAEfzK,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAACC,KAAM,eAAgBC,UAAWk0B,MACxCh1B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,oBAAoBC,UAAWq1B,MAMjDn2B,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,OAClBb,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,iBAClBb,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,OAAOC,UAAW4lB,MACpC1mB,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,OAAOC,UAAWgmB,MACpC9mB,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAAC2jB,OAAK,EAAC1jB,KAAK,OAAOC,UAAW8mB,GAAAA,KACpC5nB,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAACC,KAAK,IAAIC,UAAW8mB,GAAAA,iBAMpC6R,IAAaz5B,EAAAA,EAAAA,KAAA,OAAK3K,GAAG,uBACtB2K,EAAAA,EAAAA,KAACi7B,GAAAA,GAAc,CACb1mB,WAAWzM,EAAAA,GAAAA,IAAI0M,GAAO0mB,iBACtBC,gBAAgBrzB,EAAAA,GAAAA,IAAI0M,GAAO4mB,aAC3BC,eAAevzB,EAAAA,GAAAA,IAAI0M,GAAO8mB,YAC1BC,mBAAmBzzB,EAAAA,GAAAA,IAAI0M,GAAOgnB,gBAC9BC,WAAYC,GAAAA,GACZ/3B,SAAS,cACTg4B,UAAW,IACXC,sBAAoB,KAEtB57B,EAAAA,EAAAA,KAAC67B,GAAAA,EAAO,KACNnC,IAAY15B,EAAAA,EAAAA,KAAC6P,GAAAA,EAAM,QAErBisB,kBAAYC,UAAW/7B,EAAAA,EAAAA,KAACg8B,GAAAA,EAAkB,CAACC,eAAe,MAGlE,EAGF,MAKMC,GAAqB,CACzB/D,sBAAuBgE,GAAAA,EACvBvpB,iBAAkBwpB,GAAAA,GAClBltB,eAAgBmtB,GAAAA,GAChBjE,YAAakE,GAAAA,GACb10B,oBAAqB20B,EAAAA,GACrB5J,kBAAmB6J,GAAAA,IAGrB,QAAeC,EAAAA,EAAAA,KAdU1pC,IAAK,CAC5B2C,YAAa3C,EAAMmM,SAASxJ,YAC5ByjC,YAAapmC,EAAM+K,OAAOD,SAYYq+B,GAAxC,CAA4Dl7B,IAE5D,MAAMwT,GAASoD,GAAAA,GAAWC,OAAO,CAC/BsiB,gBAAiB,CACfx2B,SAAU,WACVmU,QAAS,OACT9Z,OAAQ,cACR0+B,oBAAqB,QAEvBtC,0BAA2B,CACzBtiB,QAAS,eACTnU,SAAU,WACVg5B,UAAW,QACX5jB,aAAc,QAEhB6jB,4BAA6B,CAC3B,CAAC5vB,IAAqB,CACpB,iCAAkC,CAChCgL,WAAY,QACZI,YAAa,QACba,YAAa,QACbC,aAAc,WAIpBmhB,qBAAsB,CACpBthB,aAAc,OAEhBuiB,WAAUnoC,GAAA,CACRmQ,MAAOC,EAAAA,GAAOY,MACdiU,YAAa,QACVE,EAAAA,GAASpQ,UAEdszB,eAAgB,CACd53B,WAAYL,EAAAA,GAAOC,WAErB43B,YAAa,CACX7hB,QAAS,OACTP,cAAe,OACfP,aAAc,OAEhByiB,gBAAiB,CACf1hB,OAAQ,KAEVqjB,YAAa,CACXl5B,SAAU,Y,8rCC9fd,MAhG6Bm5B,EAAG7pC,OAAO,WACrC,MAAA8pC,GAA0E/6B,EAAAA,EAAAA,KACvEjP,GAAqBA,EAAMmM,SAASxJ,cAD/BL,EAAE0nC,EAAF1nC,GAAIS,EAAIinC,EAAJjnC,KAAMgnB,EAAKigB,EAALjgB,MAAOlf,EAAKm/B,EAALn/B,MAAOuN,EAAI4xB,EAAJ5xB,KAAMpQ,EAAYgiC,EAAZhiC,aAAc49B,EAAUoE,EAAVpE,WAAYqE,EAAKD,EAALC,MAG1DC,EAAY9xB,IAASwB,EAAAA,EAASC,QAC9BswB,EAAoB/xB,IAASwB,EAAAA,EAASoK,iBAEtCjV,GAAWC,EAAAA,EAAAA,OAEjBkH,EAAAA,EAAAA,YAAU,KACR,IAAK5T,EAAI,OAET,IAAIyoB,EAAyD,YACzDmf,EAAWnf,EAAW,UACjBof,IAAmBpf,EAAW,oBAEvChgB,OAAOq/B,QAAQ,WAAY,CACzBC,MAnBe,2BAoBfl3B,KAAI/S,EAAAA,EAAA,CACFkC,KACAS,OACAgnB,QACAugB,UAAWz/B,EAAMjD,IACjB2iC,QAAS,IAAIC,KAAK5E,GAAY6E,eAC1BP,GAAa,CACfjmC,UAAW,CACT,CACE3B,GAAI0F,EAAa0iC,WACjB3nC,KAAMiF,EAAa4T,iBAGtB,CAAF,GAED+uB,aAAYvqC,EAAAA,EAAAA,EAAA,CACVwqC,UAAW7f,GACP3S,IAASwB,EAAAA,EAAS4C,WAAa,CACjCquB,qBAAsB7iC,EAAa6iC,qBACnCC,sBAAuB9iC,EAAajB,SACpCgkC,+BAAgC/iC,EAAatH,WAAa,IAAIoC,QAC3DkoC,GAAaA,EAASC,YAAcD,EAASE,aAC9CjoC,SAEAinC,GAAa,CACfiB,iBAAkBnjC,EAAa+R,SAC/BqxB,uBAAwBpjC,EAAaib,eACrCooB,qBAAsBrjC,EAAawb,QACnC8nB,+BAAgCrB,EAAMnnC,QACnCyoC,GAAkC,YAAxBA,EAAMC,gBACjBvoC,SAEAknC,GAAqB,CACvBsB,6BAA8BzjC,EAAaq4B,WAC3CqL,mCAAoC1jC,EAAa2jC,oBACjDC,4CAA6C5jC,EAAa6jC,0BAIhE,GACD,CAACvpC,IAEJ,MAAM+rB,EAAcA,KAKlB,IAJA/J,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBC,MAAO,CAC5BC,aAAc,2BAAoC,WAATvkB,EAAoB,cAAgB,eAG1EoC,EAQH,OAPA6V,EAAAA,EAAAA,GAAiBpN,OAAOhE,SAASiS,eACjCjK,GACEye,EAAAA,EAAAA,IAAiB,CACf5jB,MAAM,EACNrB,eAAgB,4BAMtB,MAAMujC,EAAoB/gC,OAAOq/B,QAC/B,wBACAF,EACI,iDACA,sEAENn/B,OAAOnB,KAAKkiC,EAAmB,SAAS,EAG1C,MAAgB,WAAT5rC,GACL+M,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACjH,QAAS2d,EAAYjhB,SAAC,4BAE9BH,EAAAA,EAAAA,KAAC8+B,EAAa,CAAA3+B,UACZH,EAAAA,EAAAA,KAAC++B,EAAAA,EAAU,CAAC7d,GAAG,SAASzd,QAAS2d,EAAYjhB,SAAC,sBAIjD,EAKH,MAAM2+B,EAAgB16B,EAAAA,GAAOC,GAAG;;;;;;;;;;uJCahC,IA1HewL,KAEX5N,EAAAA,EAAAA,MAAC+8B,EAAc,CAAA7+B,SAAA,EACb8B,EAAAA,EAAAA,MAACg9B,EAAc,CAAA9+B,SAAA,EACb8B,EAAAA,EAAAA,MAACi9B,EAAY,CAAA/+B,SAAA,EACXH,EAAAA,EAAAA,KAACgR,EAAI,CAAC5G,IAAKyI,EAAUvI,IAAI,eACzBrI,EAAAA,EAAAA,MAACk9B,EAAuB,CAAAh/B,SAAA,EACtB8B,EAAAA,EAAAA,MAACkP,EAAM,CAAAhR,SAAA,CAAC,uBAENH,EAAAA,EAAAA,KAAA,SAAM,2BAGRiC,EAAAA,EAAAA,MAACm9B,EAAS,CAAAj/B,SAAA,CAAC,oCAETH,EAAAA,EAAAA,KAAA,SAAM,+BAGRA,EAAAA,EAAAA,KAAA,OAAAG,UACEH,EAAAA,EAAAA,KAACmkB,EAAAA,GAAc,CACbxhB,KAAK,KACL9E,MAAM,QACNwhC,UAAU,OAGV9qB,UAAU,2DAA0DpU,SACrE,oBAKL8B,EAAAA,EAAAA,MAACq9B,EAAiB,CAAAn/B,SAAA,EAChBH,EAAAA,EAAAA,KAAA,KAAGiE,KAAK,qCAAqCjB,OAAO,SAASu8B,IAAI,aAAYp/B,UAC3EH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,UAAU6M,KAAK,KAAKW,MAAOC,EAAAA,GAAOi8B,iBAE/Cx/B,EAAAA,EAAAA,KAAA,KACEiE,KAAK,kDACLjB,OAAO,SACPu8B,IAAI,aAAYp/B,UAEhBH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,WAAW6M,KAAK,KAAKW,MAAOC,EAAAA,GAAOi8B,oBAGlDx/B,EAAAA,EAAAA,KAACy/B,EAAI,CAACC,YAAU,KAChBz9B,EAAAA,EAAAA,MAAC09B,EAAc,CAAAx/B,SAAA,EACb8B,EAAAA,EAAAA,MAAC29B,EAAU,CAAAz/B,SAAA,EACTH,EAAAA,EAAAA,KAAC6/B,EAAU,CAAA1/B,SAAC,aACZH,EAAAA,EAAAA,KAAC++B,EAAU,CAAC7d,GAAG,IAAIjd,KAAK,SAAQ9D,SAAC,WAGjCH,EAAAA,EAAAA,KAAC++B,EAAU,CAAC7d,GAAG,IAAIjd,KAAK,4BAA2B9D,SAAC,UAGpDH,EAAAA,EAAAA,KAAC++B,EAAU,CAAC7d,GAAG,IAAIjd,KAAK,WAAU9D,SAAC,aAGnCH,EAAAA,EAAAA,KAAC++B,EAAU,CACT7d,GAAG,IACHjd,KAAK,gEAA+D9D,SACrE,oBAIH8B,EAAAA,EAAAA,MAAC29B,EAAU,CAAAz/B,SAAA,EACTH,EAAAA,EAAAA,KAAC6/B,EAAU,CAAA1/B,SAAC,aACZH,EAAAA,EAAAA,KAAC++B,EAAU,CAAC7d,GAAG,IAAIjd,KAAK,qCAAoC9D,SAAC,UAG7DH,EAAAA,EAAAA,KAAC++B,EAAU,CAAC7d,GAAG,IAAIjd,KAAK,kCAAiC9D,SAAC,iBAG1DH,EAAAA,EAAAA,KAAC88B,EAAAA,EAAoB,KACrB98B,EAAAA,EAAAA,KAAC++B,EAAU,CAAC7d,GAAG,IAAIjd,KAAK,WAAU9D,SAAC,mBAIrC8B,EAAAA,EAAAA,MAAC29B,EAAU,CAAAz/B,SAAA,EACTH,EAAAA,EAAAA,KAAC6/B,EAAU,CAAA1/B,SAAC,cACZH,EAAAA,EAAAA,KAAC++B,EAAU,CAAC7d,GAAG,IAAIjd,KAAK,+CAA8C9D,SAAC,oBAGvEH,EAAAA,EAAAA,KAAC++B,EAAU,CAAC7d,GAAG,IAAIjd,KAAK,6CAA4C9D,SAAC,+BAQ3E8B,EAAAA,EAAAA,MAAC69B,EAAW,CAAA3/B,SAAA,EACVH,EAAAA,EAAAA,KAAA,KAAGiE,KAAK,qCAAqCjB,OAAO,SAASu8B,IAAI,aAAYp/B,UAC3EH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,UAAU6M,KAAK,KAAKW,MAAOC,EAAAA,GAAOi8B,iBAE/Cx/B,EAAAA,EAAAA,KAAA,KACEiE,KAAK,kDACLjB,OAAO,SACPu8B,IAAI,aAAYp/B,UAEhBH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,WAAW6M,KAAK,KAAKW,MAAOC,EAAAA,GAAOi8B,uBAIpDx/B,EAAAA,EAAAA,KAACy/B,EAAI,KACLz/B,EAAAA,EAAAA,KAACi/B,EAAc,CAAA9+B,UACb8B,EAAAA,EAAAA,MAAC89B,EAAe,CAAA5/B,SAAA,EACd8B,EAAAA,EAAAA,MAAC+9B,EAAW,CAAA7/B,SAAA,EACVH,EAAAA,EAAAA,KAAC++B,EAAU,CAAC7d,GAAG,IAAIjd,KAAK,WAAWX,MAAOC,EAAAA,GAAO2N,YAAY/Q,SAAC,oBAG9DH,EAAAA,EAAAA,KAAC++B,EAAU,CAAC7d,GAAG,IAAIjd,KAAK,SAASX,MAAOC,EAAAA,GAAO2N,YAAY/Q,SAAC,yBAO9DH,EAAAA,EAAAA,KAACigC,EAAS,CAAA9/B,SAAC,uCASrB,MAAM+/B,EAAqB,6BAErBlB,EAAiB56B,EAAAA,GAAOC,GAAG;;;;;;;kBAOf4I,EAAAA,GAAkBE;;IAEhC7I,EAAAA,GAAMuG;WACCtH,EAAAA,GAAOY;sBACIZ,EAAAA,GAAOi8B;;IAEzBU;;;EAKEjB,EAAiB76B,EAAAA,GAAOC,GAAG;eAClB4I,EAAAA,GAAkBkzB;;EAI3BjB,EAAe96B,EAAAA,GAAOC,GAAG;;;;;;IAM3B67B;;;;EAMElvB,EAAO5M,EAAAA,GAAOwG,GAAG;;;;IAInBs1B;;;EAKE/uB,EAAS/M,EAAAA,GAAOC,GAAG;IACrBC,EAAAA,GAAMmiB;;;IAGNyZ;;;EAKEd,EAAYh7B,EAAAA,GAAOC,GAAG;;EAItB86B,EAA0B/6B,EAAAA,GAAOC,GAAG;;;;;;;;;EAY7B06B,GAAa36B,EAAAA,EAAAA,IAAOoG,EAAAA,GAAyB;;;IAGtDlG,EAAAA,GAAMuG;;WAEC,EAAGvH,WAAYA,GAASC,EAAAA,GAAOY;;;aAG7BZ,EAAAA,GAAO68B;;;6BAGS78B,EAAAA,GAAO88B;qCACC98B,EAAAA,GAAO88B;;;;;aAK/B98B,EAAAA,GAAOY;;;EAKdw7B,EAAiBv7B,EAAAA,GAAOC,GAAG;;;;IAI7B67B;;;;;;EAQEN,EAAax7B,EAAAA,GAAOC,GAAG;;;;;MAKvB06B;;;EAKAc,EAAaz7B,EAAAA,GAAOC,GAAG;IACzBC,EAAAA,GAAM+L;;;;IAIN6vB;;;EAKEJ,EAAc17B,EAAAA,GAAOC,GAAG;;;;IAI1B67B;;;EAKEZ,EAAoBl7B,EAAAA,GAAOC,GAAG;;;;IAIhC67B;;;;EAMET,EAAOr7B,EAAAA,GAAOC,GAA6B;;;;;IAK7C,EAAGq7B,gBACHA,GACA,mCAGIQ;EASFH,EAAkB37B,EAAAA,GAAOC,GAAG;;;;;;IAM9B67B;;;;EAMEF,EAAc57B,EAAAA,GAAOC,GAAG;;;;;;IAM1B67B;;;;;;EAQED,EAAY77B,EAAAA,GAAOC,GAAG;IACxBC,EAAAA,GAAMuG;;WAECtH,EAAAA,GAAO2N;;IAEdgvB;;;;yuCCjUJ,MAAQpmB,EAAuB7M,EAAAA,GAAvB6M,mBAEKtF,EAASoD,EAAAA,GAAWC,OAAO,CACtCyoB,kBAAmB,CACjBjnB,SAAU,QACVxb,MAAO,kBACP0b,QAAS,uBACTgnB,SAAU,UACV,CAACzmB,GAAqB,CACpBjc,MAAO,QACP0b,QAAS,cAGbinB,oBAAqB,CACnBjnB,QAAS,MACT8lB,UAAW,QAEboB,0BAAyBttC,EAAAA,EAAA,CACvB0K,MAAO,OACPwb,SAAU,QACVrb,OAAQ,QACR+I,OAAQ,OACRwS,QAAS,QACNjB,EAAAA,GAASlL,WAAS,IACrB9J,MAAOC,EAAAA,GAAOyE,MACd04B,OAAQ,OACRjoB,aAAc,MACdR,OAAQ,aAAa1U,EAAAA,GAAO6rB,cAC5B,SAAU,CACRlX,QAAS,OACTyoB,YAAap9B,EAAAA,GAAOC,UACpB4V,UAAW,mBAEb,gBAAejmB,EAAA,CACbmQ,MAAOC,EAAAA,GAAOyD,aACXsR,EAAAA,GAASlL,aAGhBwzB,uBAAsBztC,EAAAA,EAAA,CACpB4T,OAAQ,uBACLuR,EAAAA,GAASlL,WAAS,IACrB6K,OAAQ,OACRC,QAAS,OACTtU,WAAY,cACZ,SAAU,CACRsU,QAAS,OACTD,OAAQ,QAEV,gBAAiB,CACf3U,MAAOC,EAAAA,GAAOyD,eAGlB65B,2BAA4B,CAC1B7oB,WAAY,QAEd8oB,8BAA+B,CAC7BjjC,MAAO,OACPwb,SAAU,QACVvB,QAAS,OACT5X,UAAW,QACX4Y,UAAW,QAEbioB,mBAAkB5tC,EAAAA,EAAA,CAChB2kB,QAAS,OACTO,eAAgB,iBACbC,EAAAA,GAASvL,oBAAkB,IAC9BzJ,MAAOC,EAAAA,GAAOyE,MACd9H,UAAW,OACX6G,OAAQ,gBAEVi6B,6BAA8B,CAC5BnjC,MAAO,OACPG,OAAQ,OACRwa,OAAQ,UACRR,WAAY,OAEdipB,sBAAqB9tC,EAAAA,EAAA,CACnBmQ,MAAOC,EAAAA,GAAOyE,OACXsQ,EAAAA,GAASlL,WAAS,IACrBrG,OAAQ,gBACR7G,UAAW,SAEbghC,kCAAmC,CACjCn6B,OAAQ,iBAEVo6B,+BAAgC,CAC9Bp6B,OAAQ,aAEVq6B,uBAAsBjuC,EAAAA,EAAA,CACpB0K,MAAO,OACPG,OAAQ,OACRia,OAAQ,QACLK,EAAAA,GAASC,UAAQ,IACpBxR,OAAQ,MACRwS,QAAS,EACTzB,QAAS,OACTC,WAAY,SACZM,eAAgB,SAChBG,OAAQ,YAEV6oB,yBAAwBluC,EAAAA,EAAA,CACtB2lB,UAAW,MACXxV,MAAOC,EAAAA,GAAOS,KACXsU,EAAAA,GAASlL,WAAS,IACrBlN,UAAW,OACX6Y,aAAc,QAEhBuoB,uBAAwB,CACtBrpB,OAAQ,aAAa1U,EAAAA,GAAOS,OAE9Bu9B,sBAAqBpuC,EAAAA,EAAA,CACnB4a,gBAAiBxK,EAAAA,GAAOsE,aACrByQ,EAAAA,GAASlL,WAAS,IACrBqL,aAAc,MACdza,OAAQ,OACRsF,MAAOC,EAAAA,GAAOyE,MACduR,QAAS,eACTzB,QAAS,cACTC,WAAY,SACZhR,OAAQ,SACRpD,SAAU,aAEZ69B,6BAA8B,CAC5BzzB,gBAAiB,WAEnB0zB,kCAAmC,CACjCloB,QAAS,WAEXmoB,0BAAyBvuC,EAAAA,EAAA,CACvB0K,MAAO,QACPia,QAAS,OACT6pB,SAAU,OACVhF,UAAW,OACX51B,OAAQ,gBACLuR,EAAAA,GAASlL,WAAS,IACrB6K,OAAQ,aAAa1U,EAAAA,GAAO6rB,cAC5B3W,aAAc,QAEhBmpB,4BAA6B,CAC3B/jC,MAAO,SAETgkC,+BAAgC,CAC9B3pB,QAAS,OACTyoB,YAAap9B,EAAAA,GAAOC,WAEtBs+B,uBAAsB3uC,EAAAA,EAAA,GACjBmlB,EAAAA,GAASlL,WAAS,IACrB9J,MAAOC,EAAAA,GAAOyE,MACd+Q,aAAc,QAEhBgpB,+BAAgC,CAC9B/pB,WAAY,QAEdgqB,0BAAyB7uC,EAAAA,EAAA,CACvB2kB,QAAS,OACTnU,SAAU,WACVoU,WAAY,SACZgB,aAAc,OACdE,YAAa,OACb0jB,UAAW,OACX9+B,MAAO,OACPyF,MAAOC,EAAAA,GAAOC,UACduK,gBAAiBxK,EAAAA,GAAOY,OACrBmU,EAAAA,GAASlL,WAAS,IACrB6K,OAAQ,eAAe1U,EAAAA,GAAOsE,cAC9Bo6B,UAAW,aACXxpB,aAAc,MACd,SAAU,CACRypB,QAAS,EACT1pB,OAAQ,aAGZ2pB,gCAAiC,CAC/B5oB,QAAS,+BAIA6oB,EAAsBh+B,EAAAA,GAAOC,GAAG;;;;IAIzCC,EAAAA,GAAM8I;;;YAGGrC,GACTA,EAAMs3B,eACF,aAAa9+B,EAAAA,GAAOC,YACpB,aAAaD,EAAAA,GAAO6rB;;MAEtB9qB,EAAAA,GAAM2W;aACElQ,GAAWA,EAAMs3B,eAAiB9+B,EAAAA,GAAOC,UAAYD,EAAAA,GAAO6rB;;;;oBAIrDrkB,GAAWA,EAAM3L,MAAQ,MAAQ;;EAGzCkjC,EAAel+B,EAAAA,GAAOC,GAAG;;;;;0BAKZd,EAAAA,GAAOsE;;;;;EAMpB06B,EAAen+B,EAAAA,GAAOC,GAAG;sBAChBd,EAAAA,GAAOgoB;;;;;MAKvBjnB,EAAAA,GAAMgM;aACEvF,GAAWA,EAAMy3B,IAAMj/B,EAAAA,GAAOS,IAAMT,EAAAA,GAAOyE;+BAC1BzE,EAAAA,GAAOsE;;;EAIzB46B,EAAoBr+B,EAAAA,GAAOC,GAAG;IACvCC,EAAAA,GAAM2W;WACC1X,EAAAA,GAAOyD;;EAGlB,I,ugCCjNA,MAAM07B,EAAQ,CACZ,EAAG,UACH,EAAG,iBAGL,MAAMC,UAAoBrL,EAAAA,cACxBC,WAAAA,CAAYxsB,GACVysB,MAAMzsB,GAAO,KAgBfpY,aAAe,KACb,MAAAulC,EAAgCR,KAAK3sB,MAErC,MAAO,CACL63B,qBAAqB,EACrBC,QAJmB3K,EAAb4K,cAKNC,SAAU,GACVjmB,MAAO,GACPkmB,YAAY,EACZ3zB,MAAO,GACPuC,KAAM,EACNqxB,UAAW,GACXC,SAAS,EACT/3B,KAZyB+sB,EAAJ/sB,KAatB,EACD,KAQFg4B,oBAAsBt0B,UACpB,MAAA0qB,EASI7B,KAAK3sB,MARPzC,EAAUixB,EAAVjxB,WACA5S,EAAW6jC,EAAX7jC,YACA0tC,EAAY7J,EAAZ6J,aACAC,EAAS9J,EAAT8J,UACAC,EAAY/J,EAAZ+J,aACAC,EAAoBhK,EAApBgK,qBACAC,EAASjK,EAATiK,UACAC,EAAsBlK,EAAtBkK,uBAGMt4B,EAASusB,KAAK3kC,MAAdoY,KAERrI,EAAEgM,iBAEF,MAAA40B,EAA2ChM,KAAK3kC,MAAxC8vC,EAAOa,EAAPb,QAASG,EAAUU,EAAVV,WAAYC,EAASS,EAATT,UAE7BvL,KAAKmB,SAAS,CACZ+J,qBAAqB,IAGvB,MAAMe,EAASV,EACZtuC,KAAKmoB,GACGA,EAAMvX,QAEdxP,KAAK,KAEFiZ,EAAI7b,EAAAA,EAAA,GACJ6vC,GAAcH,GAAWA,EAAQ7sC,OAAS,GAAK,CAAE6sC,YAAW,CAAF,GAC9De,UAAWD,EACXL,eACAn4B,OACA04B,WAAYnuC,EAAYL,KAGtBmuC,IAAWx0B,EAAK80B,WAAaN,UAENlwB,EAAAA,EAAI8L,KAAKikB,EAAWr0B,IAE7BA,KAAKC,SAKA,aAAjBm0B,KACF/rB,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBysB,MAAO,CAC5BD,WAAYN,EACZQ,OAAQC,EAAAA,EAAmBC,UAI7B57B,KAGFovB,KAAKmB,SAAS,CACZgK,QAAS,GACTD,qBAAqB,EACrBG,SAAU,GACVnxB,KAAM,IAEJlc,EAAYyV,OAASwB,EAAAA,EAASoK,kBAChC0sB,EAAuB/tC,EAAYqF,aAAaopC,eAClDZ,OAtBA7L,KAAKmB,SAAS,CACZ+J,qBAAqB,GAsBzB,EACA,KAEFwB,aAAe,CAACthC,EAAGuhC,KAEJ,UAATA,GAC4B,IAA1BvhC,EAAEE,OAAOuC,MAAMvP,QAAmC,MAAnB8M,EAAEE,OAAOuC,MAK9CmyB,KAAKmB,SAAS,CAAE,CAACwL,GAAOvhC,EAAEE,OAAOuC,MAAO8J,MAAO,KAJ3CvM,EAAEgM,gBAI8C,EACpD,KAEFw1B,uBAA0BxhC,IACxB,GACE40B,KAAK3kC,MAAM+pB,QACV,CAAC,QAAS,MAAO,IAAK,KAAK5Q,SAASpJ,EAAErE,MAAmB,SAAXqE,EAAE7P,MAA8B,UAAX6P,EAAE7P,MACtE,CACA6P,EAAEgM,iBACF,MAAMgO,EAAQ,CACZvX,MAAOmyB,KAAK3kC,MAAM+pB,MAAMynB,OAAOC,cAC/BC,SAAS,GAGP3nB,EAAMvX,OAASmyB,KAAK+M,QAAQ3nB,EAAMvX,SACpCuX,EAAM2nB,SAAU,GAGlB,MAAMxB,EAAY,IAAIvL,KAAK3kC,MAAMkwC,UAAWnmB,GAC5C4a,KAAKmB,SAAS,CACZoK,YACAnmB,MAAO,IAEX,CAEA,GAAc,cAAVha,EAAErE,MACCi5B,KAAK3kC,MAAM+pB,OAAS4a,KAAK3kC,MAAMkwC,UAAUjtC,OAAQ,CACpD,MAAMitC,EAAY,IAAIvL,KAAK3kC,MAAMkwC,WACjCA,EAAUyB,MAEVhN,KAAKmB,SAAS,CACZoK,YACA5zB,MAAO,IAEX,CACF,EACA,KAEFo1B,QAAW3nB,IACT,IAAIzN,EAAQ,KAUZ,GARK4O,IAAAA,QAAkBnB,KACrBzN,EAAQ,GAAGyN,oCAGToB,EAAAA,EAAAA,IAAkBpB,KACpBzN,EAAQ,+CAGNqoB,KAAK3kC,MAAMkwC,UAAU72B,MAAMtJ,GAAMA,EAAEyC,QAAUuX,IAAQ,CACvD,MAAM6nB,EAAO7nB,EAEb4a,KAAKmB,SAAS,CAAE/b,MAAO,KACvBzN,EAAQ,GAAGs1B,2BACb,CACA,OAAIt1B,IACFqoB,KAAKmB,SAAS,CAAExpB,WACT,EAEE,EACX,KAEFu1B,YAAe9hC,IACbA,EAAEgM,iBAGF,IAAI60B,EADU7gC,EAAE+hC,cAAcC,QAAQ,QACnB5e,MAAM,sCAIzB,GAFAyd,EAAS,IAAI,IAAIvrC,IAAIurC,IAEjBA,EAAQ,CACV,MAAMV,EAAYvL,KAAK3kC,MAAMkwC,UAAUtuC,KAAKmO,GAAMA,EAAEyC,QAG9Cw/B,EAF0BpB,EAAO9tC,QAAQinB,IAAWmmB,EAAU/2B,SAAS4Q,KAEnCnoB,KAAKmoB,IAAK,CAClDvX,MAAOuX,EACP2nB,UAAUvmB,EAAAA,EAAAA,IAAkBpB,OAG9B4a,KAAKmB,SAAS,CACZoK,UAAW,IAAIvL,KAAK3kC,MAAMkwC,aAAc8B,IAE5C,GAGF,KACAC,eAAiB,KACf,MAAQ/B,EAAcvL,KAAK3kC,MAAnBkwC,UAER,QAAIA,EAAUjtC,OAAS,KAEfitC,EAAU72B,MAAM0Q,IAAWA,EAAM2nB,SAAQ,EACjD,KAEFQ,eAAkBniC,IAChB,MAAAoiC,EAA6BxN,KAAK3kC,MAA1BkwC,EAASiC,EAATjC,UAEFnmB,GAFkBooB,EAAL71B,MAELqoB,KAAK3kC,MAAM+pB,MAAMynB,OAAOC,eAEtC,GAAI1nB,GAAS4a,KAAK+M,QAAQ3nB,GAAQ,CAChC,MAAMmmB,EAAY,IAAIvL,KAAK3kC,MAAMkwC,UAAWnmB,GACtCimB,EAAWE,EAAUltC,KAAK,MAEhC2hC,KAAKmB,SAAS,CACZoK,YACAnmB,MAAO,GACPimB,WACA1zB,MAAO,IAEX,MAAW4zB,EAAUjtC,OAAS,GAAsB,IAAjB8mB,EAAM9mB,OACnC0hC,KAAKsN,iBACPtN,KAAKyL,oBAAoBrgC,GAEzB40B,KAAKmB,SAAS,CAAExpB,MAAO,6DAEfyN,GAA8B,IAArBmmB,EAAUjtC,QAC7B0hC,KAAKmB,SAAS,CAAExpB,MAAO,iCACzB,EACA,KAEF81B,oBAAuBC,IACrB,MAAMnC,EAAY,IAAIvL,KAAK3kC,MAAMkwC,WACjCA,EAAUoC,OAAOD,EAAY,GAE7B1N,KAAKmB,SAAS,CACZoK,YACA5zB,MAAO,IACP,EACF,KAEFi2B,WAAcxiC,IACZ,MAAM3C,EAAW2C,EAAEE,OAAO7C,SAC1Bu3B,KAAKmB,SAAS,CAAEqK,SAAS,IACrB/iC,EAASnK,QAAQmK,EAASA,EAASnK,OAAS,GAAGuvC,OAAO,EAC1D,KAEFC,WAAc1iC,IACZ40B,KAAK4M,uBAAuBxhC,GAC5B40B,KAAKmB,SAAS,CAAEqK,SAAS,GAAQ,EACjC,KAEFuC,6BAA+B,MAG7Bn9B,EAFuBovB,KAAK3sB,MAApBzC,cAGRovB,KAAKmB,SAAS,CAAEoK,UAAW,IAAK,EAlQhCvL,KAAK3kC,MAAQ,CACX6vC,qBAAqB,EACrBC,QAAS93B,EAAM+3B,cACfC,SAAU,GACVjmB,MAAO,GACPkmB,YAAY,EACZpxB,KAAM,EACNqxB,UAAW,GACX5zB,MAAO,GACP6zB,SAAS,EACTb,gBAAgB,EAChBl3B,KAAMJ,EAAMI,KAEhB,CAmBA8tB,kBAAAA,CAAmBC,GACbA,EAAUv8B,OAAS+6B,KAAK3sB,MAAMpO,MAChC+6B,KAAKmB,SAASnB,KAAK/kC,eAEvB,CAiOAszB,MAAAA,GACE,MAAAyf,EASIhO,KAAK3sB,MARPpO,EAAI+oC,EAAJ/oC,KACA2L,EAAUo9B,EAAVp9B,WAGA86B,GAFWsC,EAAXhwC,YACcgwC,EAAdC,eACYD,EAAZtC,cACAwC,EAAWF,EAAXE,YACAC,EAAcH,EAAdG,eAIFC,GAHeJ,EAAbK,cAeErO,KAAK3kC,OAXP8vC,EAAOiD,EAAPjD,QAEA/lB,GADQgpB,EAAR/C,SACK+C,EAALhpB,OAEA8lB,GADUkD,EAAV9C,WACmB8C,EAAnBlD,qBACAK,EAAS6C,EAAT7C,UACArxB,EAAIk0B,EAAJl0B,KACAvC,EAAKy2B,EAALz2B,MACA6zB,EAAO4C,EAAP5C,QACA/3B,EAAI26B,EAAJ36B,KACAk3B,EAAcyD,EAAdzD,eAGIsB,EAASV,EAAUtuC,KAAI,CAACmoB,EAAOkpB,IACtB,IAATp0B,GAEA3P,EAAAA,EAAAA,MAAA,OAEEsS,WAAWzM,EAAAA,EAAAA,IACT0M,EAAO+sB,uBACNzkB,EAAM2nB,SAAWjwB,EAAOgtB,8BAE3B,cAAY,qBAAoBrhC,SAAA,CAE/B2c,EAAMvX,OACPvF,EAAAA,EAAAA,KAAA,OACEuU,WAAWzM,EAAAA,EAAAA,IAAI0M,EAAO4sB,wBACtB39B,QAASA,IAAMi0B,KAAKyN,oBAAoBa,GAAG7lC,UAE3CH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,IAAI6M,KAAK,KAAKW,MAAOwZ,EAAM2nB,QAAUlhC,EAAAA,GAAOyE,MAAQzE,EAAAA,GAAOS,UAZnE,cAAcgiC,MAkBvBhmC,EAAAA,EAAAA,KAAA,OAEEuU,WAAWzM,EAAAA,EAAAA,IACT0M,EAAO+sB,sBACP/sB,EAAOitB,kCACc,IAArBwB,EAAUjtC,QAAgBwe,EAAOyxB,0BAEnC,cAAY,qBAAoB9lC,SAE/B2c,EAAMvX,OARFygC,KAaLhzB,EACJ2wB,EAAO3tC,OAAS,EACZ,YACiB,aAAjBotC,EACA,sBACA,kCAEN,OACEpjC,EAAAA,EAAAA,KAACygB,EAAAA,EAAK,CACJ9jB,KAAMA,EACN0F,QAASiG,EACT3F,KAAK,OACLxC,UAAQ,EACRoU,UAAW,IAAGzM,EAAAA,EAAAA,IAAI0M,EAAO8rB,qBACzB,cAAY,eAAcngC,SAEhB,IAATyR,GACC3P,EAAAA,EAAAA,MAACwe,EAAAA,EAAMnR,QAAO,CAACiF,UAAW,IAAGzM,EAAAA,EAAAA,IAAI0M,EAAOgsB,uBAAuBrgC,SAAA,EAC7D8B,EAAAA,EAAAA,MAAA,OAAKsS,WAAWzM,EAAAA,EAAAA,IAAI0M,EAAOusB,oBAAoB5gC,SAAA,CAC5CylC,GACD5lC,EAAAA,EAAAA,KAACsH,EAAAA,GAAU,CAACjE,SAAS,QAAQV,KAAK,KAAKc,QAAS6E,EAAYf,QAAQ,eAEtEvH,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,EAAAA,IAAI0M,EAAOysB,uBAAuB9gC,SAAE0lC,KACpD5jC,EAAAA,EAAAA,MAAA,OAAKyH,MAAO,CAAEoO,QAAS,QAAS3X,SAAA,EAC9B8B,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,EACEH,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,EAAAA,IAAI0M,EAAOstB,wBAAwB3hC,SAAC,mBACpD8B,EAAAA,EAAAA,MAAA,OACEsS,WAAWzM,EAAAA,EAAAA,IACT0M,EAAOktB,0BACPwB,GAAW1uB,EAAOqtB,+BAClB8B,EAAO3tC,OAAS,GAAKwe,EAAO2tB,gCAC5B9yB,GAASmF,EAAO8sB,uBACC,eAAjB8B,GAAiC5uB,EAAOotB,6BACxCzhC,SAAA,CAEDwjC,GACD3jC,EAAAA,EAAAA,KAAA,SACE/M,KAAK,OACLshB,WAAWzM,EAAAA,EAAAA,IACT0M,EAAOosB,uBACW,IAAlB+C,EAAO3tC,QAAgBwe,EAAOqsB,4BAEhCn3B,MAAO,CACL7L,MAAOif,EAAM9mB,OAAS,KACtBmjB,SAAUwqB,EAAO3tC,OAAS,EAAI,OAAS,OAEzCgd,YAAaA,EACbzN,MAAOuX,EACPopB,WAAS,EACTC,QAASzO,KAAK4N,WACdziC,SAAWC,GAAM40B,KAAK0M,aAAathC,EAAG,SACtCsjC,UAAW1O,KAAK4M,uBAChB+B,QAAS3O,KAAKkN,YACd0B,OAAQ5O,KAAK8N,WACb,cAAY,qCAIA,eAAjBpC,IACCnhC,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,EACEH,EAAAA,EAAAA,KAAA,OACEuU,WAAWzM,EAAAA,EAAAA,IACT0M,EAAOstB,uBACPttB,EAAOutB,gCACP5hC,SACH,UAGDH,EAAAA,EAAAA,KAACoiC,EAAmB,CAClBlhB,GAAIqlB,EAAAA,EACJC,OAAK,EACLpnC,MAAgB,IAAT+L,EACP/H,KAAMs/B,EAAMv3B,GACZs7B,WAAS,EACTpE,eAAgBA,EAChB5+B,QAASA,IAAMi0B,KAAKmB,SAAS,CAAEwJ,gBAAiBA,IAChDiE,OAAQA,IAAM5O,KAAKmB,SAAS,CAAEwJ,gBAAgB,IAC9CqE,KAAK,eAAcvmC,UAEnB8B,EAAAA,EAAAA,MAACqgC,EAAY,CAACphB,GAAIqlB,EAAAA,EAASI,KAAKxmC,SAAA,EAC9B8B,EAAAA,EAAAA,MAACsgC,EAAY,CAACrhB,GAAIqlB,EAAAA,EAASK,KAAMnjC,QAASA,IAAMi0B,KAAKmB,SAAS,CAAE1tB,KAAM,IAAKhL,SAAA,CAAC,iBAE1EH,EAAAA,EAAAA,KAACyiC,EAAiB,CAAAtiC,SAAC,0FAKrB8B,EAAAA,EAAAA,MAACsgC,EAAY,CAACrhB,GAAIqlB,EAAAA,EAASK,KAAMnjC,QAASA,IAAMi0B,KAAKmB,SAAS,CAAE1tB,KAAM,IAAKhL,SAAA,CAAC,WAE1EH,EAAAA,EAAAA,KAACyiC,EAAiB,CAAAtiC,SAAC,qFAS9B2c,EAAM9mB,OAAS,IACdgK,EAAAA,EAAAA,KAAA,OAAK0J,MAAO,CAAE/F,SAAU,YAAaxD,UACnC8B,EAAAA,EAAAA,MAAA,OACEsS,WAAWzM,EAAAA,EAAAA,IAAI0M,EAAOwtB,2BACtBv+B,QAASi0B,KAAK4M,uBAAuBnkC,SAAA,CACtC,WACU2c,EAAMynB,OAAOC,cAAc,mBAI1CxkC,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,EAAAA,IAAI0M,EAAO6sB,0BAA0BlhC,SAAEkP,KACvDpN,EAAAA,EAAAA,MAAA,OAAKyH,MAAO,CAAE3C,OAAQ,OAAQ0S,WAAY,QAAStZ,SAAA,EACjDH,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,EAAAA,IAAI0M,EAAOstB,wBAAwB3hC,SAAC,wBACpDH,EAAAA,EAAAA,KAAA,YACEuU,WAAWzM,EAAAA,EAAAA,IAAI0M,EAAOisB,2BACtBztB,YACmB,aAAjBowB,EAA8B,gBAAkB,+BAElD79B,MAAOs9B,EACPgE,KAAM,EACNV,QAAUrjC,GACRA,EAAEgkC,cAAcC,kBACdjkC,EAAEgkC,cAAcvhC,MAAMvP,OACtB8M,EAAEgkC,cAAcvhC,MAAMvP,QAG1B6M,SAAWC,GAAM40B,KAAK0M,aAAathC,EAAG,WACtC,cAAY,sCAGhB9C,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,EAAAA,IAAI0M,EAAOssB,+BAA+B3gC,UACxDH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLzX,KAAK,SACLkd,SAAUyyB,GAA4C,IAArBK,EAAUjtC,OAC3CyN,QAASi0B,KAAKuN,eACd,cAAY,gCAA+B9kC,SAEzB,aAAjBijC,EAA8B,QAAU,sBAK/CnhC,EAAAA,EAAAA,MAACwe,EAAAA,EAAMnR,QAAO,CAACiF,UAAW,IAAGzM,EAAAA,EAAAA,IAAI0M,EAAOgsB,iCAAiCrgC,SAAA,EACvEH,EAAAA,EAAAA,KAAA,OAAKuU,WAAWzM,EAAAA,EAAAA,IAAI0M,EAAOusB,oBAAoB5gC,SAAC,sBAChDH,EAAAA,EAAAA,KAAA,OACEuU,WAAWzM,EAAAA,EAAAA,IACT0M,EAAOysB,sBACPzsB,EAAO0sB,mCACP/gC,SACH,4DAGDH,EAAAA,EAAAA,KAAA,OAAAG,SAAMwjC,KACN3jC,EAAAA,EAAAA,KAAA,OACEuU,WAAWzM,EAAAA,EAAAA,IAAI0M,EAAOysB,sBAAuBzsB,EAAO2sB,gCAAgChhC,SACrF,2EAGDH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACzX,KAAK,SAASwQ,QAASi0B,KAAK+N,6BAA6BtlC,SAAC,eAO5E,EAGF,MAMM+7B,EAAqB,CACzBuH,uBAAwBuD,EAAAA,IAG1B,IC7gBA,GD6gBevK,EAAAA,EAAAA,KAVU1pC,IAChB,CACL2C,YAAa3C,EAAMmM,SAASxJ,eAQQwmC,EAAxC,CAA4DyG,E,ksCE3T5D,IAjLmBjiB,EAAGjS,SAAQC,QAAOu4B,SAAQnrB,eAAc6E,UAAS,MAClE,MAA4Crf,EAAAC,GAAZC,EAAAA,EAAAA,UAAS,IAAG,GAArCkb,EAAQpb,EAAA,GAAEqb,EAAWrb,EAAA,GACuBK,EAAAJ,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAA5C0lC,EAAUvlC,EAAA,GAAEwlC,EAAaxlC,EAAA,GACuB2M,EAAA/M,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAhD2a,EAAY7N,EAAA,GAAE8N,EAAe9N,EAAA,GACEyD,EAAAxQ,GAAZC,EAAAA,EAAAA,UAAS,IAAG,GAA/B6N,EAAK0C,EAAA,GAAEq1B,EAAQr1B,EAAA,GAEtB6K,GAA8DC,EAAAA,EAAAA,GAAqB,IAA3EC,EAAKF,EAALE,MAAOC,EAAQH,EAARG,SAAUC,EAAiBJ,EAAjBI,kBAAmBC,EAAaL,EAAbK,cACyBhL,EAAA1Q,GAA3BC,EAAAA,EAAAA,UAASwb,GAAkB,GAA9DG,EAAalL,EAAA,GAAEmL,EAAgBnL,EAAA,GAEhC3W,GAAiB0G,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAAS5D,iBAEjEqxB,EAAiCprB,GAAjB6vB,EAAAA,EAAAA,KAAiB,GAArB,IAEnBnoB,EAAAA,EAAAA,YAAU,KACJ+T,GAAmBI,GAAiB,EAAK,GAC5C,CAACJ,IAEJ,MAqDMqqB,EAAY,IAAIpiB,gBAChBkM,EAAyBxE,EAAapZ,IAAI,4BAGhD,OAFI4d,GAAwBkW,EAAUC,OAAO,2BAA4BnW,IAGvElvB,EAAAA,EAAAA,MAACwe,EAAK,CAACE,OAAQA,EAAOxgB,SAAA,EACpB8B,EAAAA,EAAAA,MAAC6O,EAAG,CAAC6P,OAAQA,EAAOxgB,SAAA,CACjBsO,IACCzO,EAAAA,EAAAA,KAACgR,EAAI,CAACvG,GAAG,IAAGtK,UACVH,EAAAA,EAAAA,KAAA,OAAKoK,IAAKyI,MAGbnE,IACCzM,EAAAA,EAAAA,MAACwK,EAAK,CAAAtM,SAAA,EACJH,EAAAA,EAAAA,KAACmR,EAAM,CAAAhR,SAAC,mBACRH,EAAAA,EAAAA,KAACunC,EAAS,CAAApnC,SAAC,0EAGf8B,EAAAA,EAAAA,MAAC6c,EAAI,CAAClQ,SAvEQC,UAOlB,GANA/L,EAAEgM,iBAEFq4B,GAAc,GACd/qB,GAAgB,GAChBgrB,EAAS,IAELjqB,EACF,OAAKH,OAMLC,KALEmqB,EAAS,wFACTD,GAAc,IAQlB,IAAKrqB,IAAUJ,EAGb,OAFA0qB,EAAS,qDACTD,GAAc,GAIhB,IACE,MAAM70B,QAAiBk1B,EAAAA,EAAAA,IAAO,CAAE1qB,QAAOJ,aAEvC,IAAI+qB,EAAc,GAClB,GAAuB,2BAAnBnsC,EACFmsC,EAAc,wBACT,CACL,MAAMtW,EAAyBxE,EAAapZ,IAAI,4BAChDk0B,EAAc,mBACZtW,EAAyB,6BAA6BA,IAA2B,GAErF,EAEAlB,EAAAA,EAAAA,GAAiBwX,GAAa,EAAMn1B,EAAStD,KAAK7D,KACpD,CAAE,MAAOiE,GACP,OAAQA,EAAIkD,SAAS+N,QACnB,KAAK,IACH+mB,GAAS16B,EAAAA,EAAAA,GAAE,wBACX,MACF,KAAK,IACH06B,EAAS,uEACT,MACF,QACEA,EAASh4B,EAAIkD,SAAStD,KAAKK,OAE/B83B,GAAc,EAChB,GAqBgChnC,SAAA,EAC1BH,EAAAA,EAAAA,KAAC+kB,EAAK,CAAC,cAAY,qBAAoB5kB,SAAEkP,KACzCrP,EAAAA,EAAAA,KAACsR,EAAK,CACJjC,MAAQ8M,IAAiBW,GAAUzN,EACnC,cAAY,yBACZvZ,KAAK,QACLyP,MAAOuX,EACP7pB,KAAK,QACL+f,YAAY,QACZnQ,SAAWC,IACTsZ,GAAgB,GAChBW,EAASja,EAAEE,OAAOuC,MAAM,IAG3B4X,GACClb,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC0f,EAAAA,EAAc,KACf1f,EAAAA,EAAAA,KAACmkB,EAAAA,GAAc,CACb,cAAY,cACZtmB,MAAM,OACN8E,KAAK,KACLwN,SAAU+2B,EACVj0C,KAAK,SAAQkN,SACd,uBAGD8B,EAAAA,EAAAA,MAACylC,EAAS,CACRxmB,GAAG,MACHzd,QAASA,KACHuZ,GAAmBD,EAAS,IAChCK,GAAiB,EAAM,EACvBjd,SAAA,CACH,WACU6c,GAAqB,oCAIlC/a,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACsR,EAAK,CACJjC,MAAQ8M,IAAiBO,GAAarN,EACtC,cAAY,4BACZvZ,KAAK,WACLyP,MAAOmX,EACPzpB,KAAK,WACL+f,YAAY,WACZnQ,SAAWC,IACTsZ,GAAgB,GAChBO,EAAY7Z,EAAEE,OAAOuC,MAAM,KAG/BvF,EAAAA,EAAAA,KAACmkB,EAAAA,GAAc,CACb,cAAY,cACZtmB,MAAM,OACN8E,KAAK,KACLwN,SAAU+2B,EACVj0C,KAAK,SAAQkN,SACd,aAGD8B,EAAAA,EAAAA,MAAC68B,EAAa,CAAA3+B,SAAA,EACZ8B,EAAAA,EAAAA,MAACylC,EAAS,CAACxmB,GAAG,MAAMzd,QAASA,IAAM2Z,GAAiB,GAAMjd,SAAA,EACxDH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,OAAO6M,KAAK,OAAO,wBAEhC3C,EAAAA,EAAAA,KAAC0nC,EAAS,CAACj9B,GAAG,mBAAkBtK,SAAC,kCAM3CH,EAAAA,EAAAA,KAAC+Q,EAAM,CAAC4P,OAAQA,EAAOxgB,SACpB8mC,IACChlC,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,CAAE,kCAEC2b,GACC9b,EAAAA,EAAAA,KAAC81B,EAAM,CAACrrB,GAAG,IAAIhH,QAASA,IAAMqY,EAAa,UAAU3b,SAAC,aAItDH,EAAAA,EAAAA,KAAC81B,EAAM,CAACrrB,GAAI,gBAAe48B,EAAU1kC,KAAO,EAAI,IAAI0kC,EAAUtU,aAAe,IAAK5yB,SAAC,mBAOrF,EAMZ,MAAQ6M,EAA2CC,EAAAA,GAA3CD,mBAAoB8M,EAAuB7M,EAAAA,GAAvB6M,mBAEtB2G,EAAQrc,EAAAA,GAAOC,GAAG;;sBAEFd,EAAAA,GAAOY;;IAEzB,EAAGwc,aAAcA,GAAU,eAAexY,EAAAA,GAAOw/B;;IAEjD36B;;;;;IAKA8M;;;;;EAOE9I,GAAO5M,EAAAA,EAAAA,IAAOoG,EAAAA,GAAK;;EAInBiC,EAAQrI,EAAAA,GAAOC,GAAG;;;;;EAOlB8M,EAAS/M,EAAAA,GAAOC,GAAG;IACrBC,EAAAA,GAAMsjC;IACN9tB;MACExV,EAAAA,GAAMyI;;EAINw6B,EAAYnjC,EAAAA,GAAOC,GAAG;IACxBC,EAAAA,GAAMuG;;;IAGNiP;;;EAKEgF,EAAO1a,EAAAA,GAAOwM,IAAI;;;;;;EAQlBmU,EAAQ3gB,EAAAA,GAAOC,GAAG;IACpBC,EAAAA,GAAM2W;;;WAGC1X,EAAAA,GAAOS;;;EAKZsN,EAAQlN,EAAAA,GAAOmN,KAAK;IACtBjN,EAAAA,GAAM8I;;;;;;sBAMY7J,EAAAA,GAAOsE;;;IAGzB,EAAGwH,WAAYA,GAAS,qBAAqB9L,EAAAA,GAAOS;;IAEpD8V;oBACgBvW,EAAAA,GAAOsE;;EAIrBiJ,EAAM1M,EAAAA,GAAOC,GAAG;;;;;IAKlB,EAAGsc,YAAcA,EAAS,2BAA6B;IACvD3T;;;EAKE+D,EAAS3M,EAAAA,GAAOC,GAAG;;;;;;;0BAOCd,EAAAA,GAAO6M;;;;;;;IAO7B,EAAGuQ,YACHA,EACI,SACFrc,EAAAA,GAAMgM,qCAEJ,SACFhM,EAAAA,GAAM+M;;IAGRyI;;;aAGSvW,EAAAA,GAAOyD;MACd1C,EAAAA,GAAM+L;;;EAKNyuB,EAAgB16B,EAAAA,GAAOC,GAAG;;;;;EAO1BqjC,GAAYtjC,EAAAA,EAAAA,IAAOoG,EAAAA,GAAK;;;;;;WAMnBjH,EAAAA,GAAOyE;IACd1D,EAAAA,GAAM8I;;IAEN0M;aACSvW,EAAAA,GAAOyD;MACd1C,EAAAA,GAAM+L;;;;;;;aAOC9M,EAAAA,GAAOuc;;EAIdgW,GAAS1xB,EAAAA,EAAAA,IAAOoG,EAAAA,GAAK;;WAEhBjH,EAAAA,GAAOyE;IACd1D,EAAAA,GAAM8I;;IAEN0M;;;;;;;;;;;;aAYSvW,EAAAA,GAAOC;MACdc,EAAAA,GAAM+L;;;;uHC3PZ,IAjHqB7H,EAAGC,gBAAeC,cACrC,GAAI,aAAcD,EAAe,CAC/B,MAAM/S,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAE7D2H,EAA4BoL,EAA5BpL,QAASuI,EAAmB6C,EAAnB7C,eAEXiiC,EAAkB,kBAAmBxqC,EAErCqI,EAA+C,CACnD,CACEH,MAAO,eACP7C,MAAO,eACP8C,SAAUA,IAAM1H,OAAOnB,KAAK,YAAYiJ,EAAeH,aAAc,UACrEpC,SAAU,YAId,OACEpB,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACE8B,EAAAA,EAAAA,MAAA,OAAK,cAAY,wBAAuB9B,SAAA,EACtCH,EAAAA,EAAAA,KAAC8nC,EAAY,CAAA3nC,SAAC,eACd8B,EAAAA,EAAAA,MAAC8lC,EAAoB,CAAA5nC,SAAA,EACnBH,EAAAA,EAAAA,KAACiG,EAAAA,GAAW,CAACtD,KAAK,KAAKuD,KAAMN,IAC5B8C,IACC1I,EAAAA,EAAAA,KAACmH,EAAAA,GAAmB,CAACC,QAAS1B,EAAoB2B,uBAAuB,QAAOlH,UAC9EH,EAAAA,EAAAA,KAACsH,EAAAA,GAAU,CACT3E,KAAK,KACL4E,QAAQ,SACRlE,SAAS,eACTmE,aAAa,mBAMvBxH,EAAAA,EAAAA,KAACgoC,EAAmB,CAAC,cAAY,sBAAqB7nC,UACpDH,EAAAA,EAAAA,KAACioC,EAAY,CACX/mB,GAAI2mB,EAAkB,MAAQr9B,EAAAA,GAC9BC,GAAKo9B,OAAqDvhC,EAAnC,YAAYjJ,EAAQ6iB,aAC3Cld,OAAO,SAAQ7C,SAEd0nC,EAAkBxqC,EAAQ6qC,eAAiB,kBAAoB7qC,EAAQsR,kBAG5E3O,EAAAA,EAAAA,KAACmoC,EAAc,CAACz/B,QAASA,EAAS,cAAY,kBAAiBvI,UAC3D,oBAAqBsI,IAAkBo/B,EACrCp/B,EAAc5C,gBACd,CAAC,CAAC,IACJlR,KAAKyzC,IACL,MAAMC,EAAkB3yC,EAAYL,KAAOoT,EAAc7C,eAAevQ,GAIxE,OAFEgzC,GAAmBD,EAAOj9B,OAASwB,EAAAA,EAAS4C,aAAe,OAAQ64B,KAE9BP,GACrC5lC,EAAAA,EAAAA,MAACqmC,EAAY,CAAAnoC,SAAA,EACXH,EAAAA,EAAAA,KAACuoC,EAAAA,GAAa,CACZC,UAAWX,EACXY,SAAUprC,EAAQqrC,OAAO/tC,IACzBgI,KAAK,QAEPV,EAAAA,EAAAA,MAAC0mC,EAAgB,CAAAxoC,SAAA,CAAE9C,EAAQsR,aAAa,eAG1C3O,EAAAA,EAAAA,KAAC+nC,EAAoB,CAAA5nC,UACnBH,EAAAA,EAAAA,KAACiG,EAAAA,GAAW,CACVtD,KAAK,KACLuD,KAAMkiC,EACNQ,SAAUP,EAAkB17B,EAAAA,EAASC,QAAUw7B,EAAOj9B,KACtD09B,aAAchB,EACdiB,eAAgBV,EAAOj9B,OAASwB,EAAAA,EAAS4C,aANjB64B,EAA4B/yC,GASzD,MAGJK,EAAYyV,OAASwB,EAAAA,EAASC,UAC7B3K,EAAAA,EAAAA,MAAC8mC,EAAO,CAACrgC,QAASA,EAAQvI,SAAA,EACxBH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,mBAAmBwN,MAAOC,EAAAA,GAAOylC,OAAQrmC,KAAK,KAAKoE,OAAO,eAAe,0GAO9F,CAGA,MAAMkiC,EAAiB,IAAIC,IAU3B,MATA,IAAKzgC,EAAc3C,YAAc,IAAKqjC,SAASC,IACxCA,IACAH,EAAeI,IAAID,EAAYtvC,UAIpCmvC,EAAe11B,IAAI61B,EAAYtvC,UAAU7D,KAAKmzC,GAH5CH,EAAeK,IAAIF,EAAYtvC,SAAU,CAACsvC,IAGc,KAI1DppC,EAAAA,EAAAA,KAACupC,EAAc,CAAAppC,SACZjI,MAAMC,KAAK8wC,EAAe3qB,QAAQ3pB,KAAKmF,IACtCmI,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,EACEH,EAAAA,EAAAA,KAACwpC,EAAc,CAAArpC,SAAErG,IAChBmvC,EAAe11B,IAAIzZ,GAAUnF,KAAKy0C,IACjCppC,EAAAA,EAAAA,KAAC+nC,EAAoB,CAAA5nC,UACnBH,EAAAA,EAAAA,KAACiG,EAAAA,GAAW,CAACtD,KAAK,KAAKuD,KAAMkjC,EAAaR,SAAUQ,EAAYj+B,QADvC,gBAAgBi+B,EAAY/zC,UAHjDyE,MASG,EAMrB,MAAMmuC,GAAe7jC,EAAAA,EAAAA,IAAOoG,EAAAA,GAAK;;;;;;;;;EAW3Bs9B,EAAe1jC,EAAAA,GAAOC,GAAG;IAC3BC,EAAAA,GAAM+M;WACC9N,EAAAA,GAAOyD;;EAIZghC,GAAsB5jC,EAAAA,EAAAA,IAAO0jC,EAAa;;EAI1CyB,EAAiBnlC,EAAAA,GAAOC,GAAG;;EAI3BmlC,GAAiBplC,EAAAA,EAAAA,IAAO0jC,EAAa;;EAIrCK,EAAiB/jC,EAAAA,GAAOC,GAAG;IAC7B,EAAGqE,aAAcA,GAAW;IAC5B,EAAGA,cAAeA,GAAW;;;;;;;;;;;wBAWTnF,EAAAA,GAAO6M;;EAIzBk4B,EAAelkC,EAAAA,GAAOC,GAAG;;;;;;;;;EAUzBskC,EAAmBvkC,EAAAA,GAAOC,GAAG;;;IAG/B8D,EAAAA,GAAOshC;IACPnlC,EAAAA,GAAM2D;EAGJ8gC,EAAU3kC,EAAAA,GAAOC,GAAG;IACtBC,EAAAA,GAAM4D;sBACY3E,EAAAA,GAAOmmC;WAClBnmC,EAAAA,GAAOylC;;;;IAId,EAAGtgC,aACHA,GACA,kFAIIpE,EAAAA,GAAMgM;EAKRy3B,EAAuB3jC,EAAAA,GAAOC,GAAG;;;;;;;;oOC/MvC,MALa,I,MAAIslC,GAAAA,UAAc,CAC7BlrC,IAAKmrC,EAAAA,GAAYC,sBACjBC,aAAa,I,iECmCf,MA/B6BC,EAC3BC,kBACA5nC,SACAC,aAEKD,GAGHpC,EAAAA,EAAAA,KAACmC,EAAAA,EAAU,CAACC,OAAQA,EAAQC,QAASA,EAASxE,MAAM,QAAQ0K,yBAAuB,EAAApI,UACjF8B,EAAAA,EAAAA,MAACqN,EAAO,CAAC,cAAY,yBAAwBnP,SAAA,EAC3CH,EAAAA,EAAAA,KAACiqC,EAAO,CAAA9pC,SAAC,6BACT8B,EAAAA,EAAAA,MAACioC,EAAI,CAAA/pC,SAAA,EACHH,EAAAA,EAAAA,KAAA,MAAAG,SAAI,sCACJH,EAAAA,EAAAA,KAAA,MAAAG,SAAI,qDAENH,EAAAA,EAAAA,KAACmqC,EAAAA,GAAU,CACTl3C,KAAK,mBACLmQ,MAAMsJ,EAAAA,EAAAA,GAAE,4BACR09B,eAAa,EACbvsC,MAAM,UAERmC,EAAAA,EAAAA,KAACwR,EAAe,CAAArR,UACdH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAAC7M,MAAM,QAAQ4F,QAASumC,EAAiB,cAAY,gBAAe7pC,SAAC,kBAjBhE,KA4BtB,MAAMmP,EAAUlL,EAAAA,GAAOC,GAAG;;EAIpB4lC,EAAU7lC,EAAAA,GAAOC,GAAG;IACtBC,EAAAA,GAAMsjC;EAGJsC,EAAO9lC,EAAAA,GAAOimC,EAAE;IAClB/lC,EAAAA,GAAMuG;;;;EAMJ2G,EAAkBpN,EAAAA,GAAOC,GAAG;;;;;kgCCgdlC,MA/cuBimC,EACrB7hC,gBACA8hC,cACAC,WAAU,EACV/lC,YACAgmC,kBAEA,MAAoDnpC,EAAAC,GAAZC,EAAAA,EAAAA,UAAS,IAAG,GAA7CkpC,EAAYppC,EAAA,GAAEqpC,EAAerpC,EAAA,GACwBK,EAAAJ,GAAdC,EAAAA,EAAAA,WAAS,GAAK,GAArDopC,EAAejpC,EAAA,GAAEkpC,EAAkBlpC,EAAA,GACa2M,EAAA/M,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAhD+M,EAAYD,EAAA,GAAEE,EAAeF,EAAA,GAG/ByD,EAAAxQ,GAFiCC,EAAAA,EAAAA,UAEpC,IAAG,GAFEspC,EAAW/4B,EAAA,GAAEg5B,EAAch5B,EAAA,GAGiDE,EAAA1Q,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAA5EwpC,EAA0B/4B,EAAA,GAAEg5B,EAA6Bh5B,EAAA,GACSE,EAAA5Q,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAlE0pC,EAAqB/4B,EAAA,GAAEg5B,EAAwBh5B,EAAA,GACYsK,EAAAlb,GAAlBC,EAAAA,EAAAA,YAAkB,GAA3D4pC,EAAgB3uB,EAAA,GAAE4uB,EAAmB5uB,EAAA,GAC6CS,EAAA3b,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAlF8pC,EAA6BpuB,EAAA,GAAEquB,GAAgCruB,EAAA,GACHsuB,GAAAjqC,GAArBC,EAAAA,EAAAA,YAAqB,GAA5DiqC,GAAeD,GAAA,GAAEE,GAAkBF,GAAA,GACiCG,GAAApqC,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAApEoqC,GAAsBD,GAAA,GAAEE,GAAyBF,GAAA,GAElD7pC,IAAWC,EAAAA,EAAAA,MAEXrM,IAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cACrE,IAAIyT,IAAcnH,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMoM,UAAU0J,cAAcM,cAC9EC,IAAgBpH,EAAAA,EAAAA,KACjBjP,GAAqBA,EAAMoM,UAAU0J,cAAcO,gBAGlDX,GAAeqjC,cAAgBrjC,EAAcsjC,iBAC/C3iC,GAAgBX,EAAcsjC,eAC9B5iC,GAAcV,EAAcqjC,cAI9B,MAAME,IAAa1a,EAAAA,EAAAA,QAAOoZ,GACpBuB,IAAwB3a,EAAAA,EAAAA,QAAOnoB,IAE/B+iC,IAAe5a,EAAAA,EAAAA,QAAyB,MAExC6a,IAAqC7a,EAAAA,EAAAA,UAErC8a,IAAiB9a,EAAAA,EAAAA,QAA8B,MAE/C+a,IAAkB/a,EAAAA,EAAAA,QAAmC,MAErDgb,IAAoBhb,EAAAA,EAAAA,QAA8B,MAClDib,IAAiBjb,EAAAA,EAAAA,QAA8B,OAErDroB,EAAAA,EAAAA,YAAU,KAER0hC,EAAgB,IAChBI,EAAe,IACfc,IAA0B,GAE1BM,GAAmC5a,SAASib,QAE5CjB,IAAiC,GAEjCkB,EAAKhQ,UACL,MAAMiQ,EAAUD,EAAKE,SAASp5B,IAAI,kBAAkB9K,GAAepT,MAMnE,OALAq3C,EAAQE,UAAUC,EAAAA,GAAcC,aAAa,SAAUjK,GACrD,MAAMkK,EAAcC,KAAKC,MAAMpK,EAAQ7zB,MACvCu7B,GAAar2C,GAAa,IAAIA,EAAU64C,IAC1C,IAEO,KACLL,EAAQQ,aAAa,CACtB,GACA,CAACzkC,IAIJ,MAAM0kC,IAA2BC,EAAAA,EAAAA,IAASC,EAAAA,GAAiB,MAC3DpkC,EAAAA,EAAAA,YAAU,KACJE,IAAeC,IACjB,WAEE6iC,GAAsB1a,QAAUpoB,GAChC0hC,GAAmB,GAEnB,MAAMyC,QAAqBC,EAAAA,EAAAA,IAAgB,CAAEpkC,eAAaC,mBAGtDkkC,GAAgBrB,GAAsB1a,UAAYpoB,KAGpDwhC,EAAgB2C,EAAah4B,QAAU02B,GAAWza,SAClDwZ,EAAeuC,EAAaE,sBAG9B3C,GAAmB,EACpB,EAhBD,EAiBF,GACC,CAAC1hC,MAIJF,EAAAA,EAAAA,YAAU,KAEoB,IAAxByhC,EAAa10C,QAAgBq2C,GAAgB9a,UAC/C8a,GAAgB9a,QAAQ7nB,MAAM1L,OAAS,SAGrCmL,KAEF6iC,GAAWza,QAAUmZ,EAKfE,GAAmBM,GACvBiC,GAAyB,CACvBhkC,eACAC,iBACAkM,QAASo1B,EACT+C,cAAe3C,EACZn2C,KAAK+4C,GAAeA,EAAWr4C,KAC/BQ,QAAQR,GAAOihB,QAAQjhB,OAGhC,GACC,CAACq1C,IAEJ,MAAMV,GAAkBA,KACtBkC,GAAa3a,SAASoc,OAAO,EAmJzBC,GAA8B9qC,IAClC,MAAM+qC,EAAU/qC,EAAEE,OACb6qC,IACLA,EAAQnkC,MAAM1L,OAAS,UACvB6vC,EAAQnkC,MAAM1L,OAAS,GAAG6vC,EAAQC,iBAElCnD,EAAgBkD,EAAQtoC,OAAM,EAkD1BwoC,GAAmBtlC,GAAiB,YAAaA,EACjDqgC,GACJpzC,GAAYyV,OAASwB,EAAAA,EAAS4C,WAAa7Z,GAAYL,KAAOoT,GAAe7C,gBAAgBvQ,GACzF24C,GACJt4C,GAAYL,KAAOoT,GAAe7C,gBAAgBvQ,IAAMoP,GAAW0G,OAASwB,EAAAA,EAAS4C,UAEvF,IAAI0+B,GAA4BxpC,GAA4C3O,KAY5E,OAVEi4C,IACA,kBAAmBtlC,EAAcpL,SACjCoL,EAAcgL,QAAQy6B,cACtBx4C,GAAYL,KAAOoT,EAAc7C,eAAevQ,GAEhD44C,GAA2BxlC,EAAcpL,QAAQ6qC,eAAiB,cACzD6F,IAAoBC,IAAoB,iBAAkBvlC,EAAcpL,UACjF4wC,GAA2B,OAAOxlC,EAAcpL,QAAQsR,sBAIxD1M,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACmuC,EAAS,CACRl7C,KAAK,OACLm7C,OAAO,yCACPta,IAAKoY,GACLrpC,SAtNyBgM,UAC7BkP,EAAMjP,iBACNq8B,GAAyB,GACzBF,GAA8B,GAE9B,MAAMoD,EAAQtwB,EAAM/a,OAAOqrC,MAE3B,IAAKA,GAA0B,IAAjBA,EAAMr4C,OAGlB,OAFAm1C,GAAyB,QACzBO,GAAmB,4DAIrB,MAAM4C,EAAOD,EAAM,GAEnB,GAAIC,EAAK3rC,KA3JkB,IAoKzB,OARAwoC,GAAyB,QACzBO,IACEzpC,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,CAAE,2BAEAH,EAAAA,EAAAA,KAAA,SAAM,qDAOZ,GACE8qC,EAAY1+B,MACTshC,GACCA,EAAWa,WAAaD,EAAKx4C,MAC7B43C,EAAWc,gBAAkBF,EAAK3rC,MAClC+qC,EAAWe,oBAAsBH,EAAKr7C,OAK1C,OAFAk4C,GAAyB,QACzBO,GAAmB,wCAKrB,MAAMgD,EAAiB,IAAI5D,IAI3B6D,EAAAA,EAAAA,YAAU,KACR5D,EAAe,IACV2D,EACH,CACEH,SAAUD,EAAKx4C,KACf04C,cAAeF,EAAK3rC,KACpB8rC,kBAAmBH,EAAKr7C,OAE1B,IAGJ,MAAM27C,EAAiBtC,GAAkB/a,QACzC,GAAIqd,GAAkBvC,GAAgB9a,QAAS,CAE3Cqd,EAAed,aAAec,EAAeC,cAC7CxC,GAAgB9a,QAAQsd,aAvMC,MA2MzBzC,GAAe7a,SAASud,kBAAkBtd,eAAe,CACvDC,SAAU,SACVsd,MAAO,WAITlD,IAA0B,GAE9B,CAGA,IAAI6B,EACJvB,GAAmC5a,QAAU,IAAIyd,gBACjD,IACEtB,QAAmBuB,EAAAA,EAAAA,IACjBX,EACAnC,GAAmC5a,QAAQ2d,OAC3C7D,EAEJ,CAAE,MAAOpuC,GACPyuC,GAAmB,4DACnBX,EAAe2D,EACjB,CAGA,GAAIhB,EAAY,CAEd,MAAMyB,EAAiB,IAAIT,EAAgBhB,GAC3C3C,EAAeoE,GAGfhC,GAAyB,CACvBhkC,eACAC,iBACAkM,QAASo1B,EACT+C,cAAe0B,EACZx6C,KAAKy6C,GAAgBA,EAAY/5C,KACjCQ,QAAQR,GAAOihB,QAAQjhB,MAE9B,CAGA0oB,EAAM/a,OAAOuC,MAAQ,GACrB4lC,GAAyB,EAAM,KA6G7BnrC,EAAAA,EAAAA,KAAC+pC,EAAoB,CACnB3nC,OAAQ4oC,EACR3oC,QAASA,IAAM4oC,GAA8B,GAC7CjB,gBAAiBA,MAEnBhqC,EAAAA,EAAAA,KAACqvC,EAAAA,GAAU,CACTjtC,OAAQkU,QAAQm1B,IAChBppC,QAASA,IAAMqpC,QAAmBplC,GAClCu8B,QAAS4I,MAEXxpC,EAAAA,EAAAA,MAAChC,EAAS,CAACuqC,QAASA,EAAQrqC,SAAA,CACzB4tC,IACCtlC,EAAcgL,QAAQy6B,eACrBx4C,GAAYyV,OAASC,EAAAA,EAAWC,SAAWy9B,MAC1C9oC,EAAAA,EAAAA,KAACmqC,EAAAA,GAAU,CACTl3C,KAAK,mBACLmQ,KAAM,gDACJ0lC,GAAiB,MAAQ,wEAEzBA,GAAiB,MAAQ,kBAE3B/hC,OAAO,eACPuoC,KAAMhrC,EAAAA,GAAM2W,aAGlBjb,EAAAA,EAAAA,KAACuvC,EAAc,CAAC/E,QAASA,EAAS1W,IAAKwY,GAAkBnsC,UACvD8B,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,CACG2qC,EAAY90C,OAAS,IACpBgK,EAAAA,EAAAA,KAACwvC,EAAoB,CAAC1b,IAAKsY,GAAejsC,SACvC2qC,EAAYn2C,KAAK+4C,IAChB1tC,EAAAA,EAAAA,KAACyvC,EAAAA,GAAiB,CAEhB/B,WAAYA,EACZlD,QAASA,EACTY,iBAAmBsC,EAAWr4C,GAAwB,IAAnB+1C,EACnCsE,SAAUA,IA7IIC,KAC9B,GAAIA,EAAc,CAChB,MAAMR,EAAiBrE,EAAYj1C,QAAQ63C,GAAeA,EAAWr4C,KAAOs6C,IAC5E5E,EAAeoE,GAGfhC,GAAyB,CACvBhkC,eACAC,iBACAkM,QAASo1B,EACT+C,cAAe0B,EACZx6C,KAAKy6C,GAAgBA,EAAY/5C,KACjCQ,QAAQR,GAAOihB,QAAQjhB,MAE9B,MAEE82C,GAAmC5a,SAASib,QAE5CzB,EAAe,IAAID,EAAY7e,MAAM,EAAG6e,EAAY90C,OAAS,IAC/D,EA0HgC45C,CAAuBlC,EAAWr4C,IAClDoO,QAASA,IACPiqC,EAAWr4C,IACXo1C,EAAYK,EAA2C4C,EAAWr4C,KAP/D,cAAcq4C,EAAWr4C,IAAM,kBAa5C2K,EAAAA,EAAAA,KAAC6vC,EAAS,CACR,cAAY,gBACZ/b,IAAKuY,GACLr5B,YACE43B,GAAmBzhC,GACf,GACA,sBAAsB8kC,KAE5B1oC,MAAOmlC,EACPF,QAASA,EACTpE,UAAWwH,GACX/qC,SAAU+qC,GACVzH,QAASA,IAAM0F,IAA0B,MAE3C7rC,EAAAA,EAAAA,KAAA,OAAK8zB,IAAKyY,WAGdvsC,EAAAA,EAAAA,KAAC8vC,EAAqB,CAAA3vC,UACpBH,EAAAA,EAAAA,KAAC+vC,EAAY,CAACC,UAAWpE,GAAwBnoC,QAtIpCwsC,KACnB1D,GAAehb,SAASC,eAAe,CACrCC,SAAU,SACVsd,MAAO,QAETlD,IAA0B,GAG1B,MAAMqE,EAAW7D,GAAgB9a,QAC5B2e,IACLA,EAAS3K,QACT2K,EAASnJ,kBAAkB2D,EAAa10C,OAAQ00C,EAAa10C,QAAO,EA2HSmK,UACrEH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,eAAe6M,KAAK,KAAKW,MAAOC,EAAAA,GAAOY,aAGtDlC,EAAAA,EAAAA,MAAC89B,EAAe,CAACyK,QAASA,EAAQrqC,SAAA,EAChC8B,EAAAA,EAAAA,MAACkuC,EAAuB,CAAC3F,QAASA,EAAQrqC,SAAA,EACxCH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,YAAYwN,MAAOC,EAAAA,GAAOyE,SACrChI,EAAAA,EAAAA,KAACowC,EAAc,CAAC5F,QAASA,EAAQrqC,UAAEuM,EAAAA,EAAAA,GAAE,kCAEvCzK,EAAAA,EAAAA,MAACouC,EAAqB,CAAAlwC,SAAA,EACpBH,EAAAA,EAAAA,KAACsH,EAAAA,GAAU,CACTjE,SAAS,aACTmE,aAAa,QACb8oC,YAAY,kBACZ7sC,QA9SuB8sC,KAE5BjF,EAIHtB,MAHAuB,IAAiC,GACjCN,GAA8B,GAGhC,EAwSU96B,SAAU5B,GAAgB28B,EAC1B3jC,QAAQ,QACR,cAAY,2BAEdvH,EAAAA,EAAAA,KAACwwC,EAAAA,GAAO,CACNxvB,UAAW0pB,EACXljC,aAAcgjC,EAAU,QAAU,QAClC7mC,SAAS,MACT2R,QACEk1B,EACI,mDACA,2BACLrqC,UAEDH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLzX,KAAK,SACL,cAAY,sBACZoQ,SAAS,eACTsH,aAAa,QACblH,QA1JOoL,UACnBL,GAAgB,GAEhB,MAAMi/B,EAAgB3C,EACnBn2C,KAAK+4C,GAAeA,EAAWr4C,KAC/BQ,OAAOygB,SAEV,GAAI7N,GAAepT,SACXo7C,EAAAA,EAAAA,IAAmB,CACvBC,gBAAiBjoC,EAAcpT,GAC/BigB,QAASo1B,EACT+C,sBAEG,CACL,MAAQkD,SAAyBC,EAAAA,EAAAA,IAAoB,CACnDxnC,iBACAD,eACAD,OAASzE,EAA+BpP,GACxCigB,QAASo1B,EACT+C,mBALMkD,eAOR7uC,IAAS+uC,EAAAA,EAAAA,IAAmBF,GAC9B,CAIA5F,EAAe,IACfJ,EAAgB,IAChBkB,IAA0B,GAC1Br9B,GAAgB,EAAM,EA8HV2B,UAAWu6B,GAAgBn8B,GAAgB28B,EAC3CvoC,KAAM6nC,EAAU,KAAO,KAAKrqC,SAC7B,sBAOR,EAMP,MAAMguC,EAAY/pC,EAAAA,GAAOmN,KAAK;;;;EAMxBtR,EAAYmE,EAAAA,GAAOC,GAAG;sBACN,EAAGmmC,aAAeA,EAAUjnC,EAAAA,GAAO4U,YAAc5U,EAAAA,GAAOY;aACjE,EAAGqmC,aAAeA,EAAU,OAAS;;;EAK5CzK,EAAkB37B,EAAAA,GAAOC,GAAG;;;;gBAIlB,EAAGmmC,aAAeA,EAAU,OAAS;EAG/C+E,EAAiBnrC,EAAAA,GAAOC,GAAG;gBACjB,EAAGmmC,aAAeA,EAAUjnC,EAAAA,GAAOY,MAAQZ,EAAAA,GAAO4U;;;;;;EAQ5D23B,EAAwB1rC,EAAAA,GAAOC,GAAG;;;;EAMlC0rC,EAAe3rC,EAAAA,GAAOC,GAAG;;;;;;aAMlB,EAAG2rC,eAAiBA,EAAY,OAAS;;;;;;;;sBAQhCzsC,EAAAA,GAAOyE;gBACbG,EAAAA,GAAO2oC;;;;aAIV,EAAGd,eAAiBA,EAAY,MAAQ;;;;;EAO/CR,EAAuBprC,EAAAA,GAAOC,GAAG;;;;;EAOjCwrC,EAAYzrC,EAAAA,GAAO8rC,QAAQ;gBAvhBA;;aA0hBpB,EAAG1F,aAAeA,EAAU,YAAc;;;;IAInDlmC,EAAAA,GAAM8I;;gBAEM,EAAGo9B,cAAeA,GAAWjnC,EAAAA,GAAO4U;;;;MAI9C7T,EAAAA,GAAM8I;aACC7J,EAAAA,GAAOyD;;EAIdmpC,EAA0B/rC,EAAAA,GAAOC,GAAG;;;EAIpC+rC,EAAiBhsC,EAAAA,GAAOC,GAAG;IAC7B,EAAGmmC,aAAeA,EAAUlmC,EAAAA,GAAMgM,SAAWhM,EAAAA,GAAMysC;EAEjDV,EAAwBjsC,EAAAA,GAAOC,GAAG;;;;+CClexC,MA7GA,UAAqB,SACnBnQ,EAAQ,aACR88C,EAAY,QACZxG,GAAU,EAAK,UACf/lC,EAAS,UACT+oB,EAAS,cACT/kB,EAAa,YACbgiC,IAEA,MAAMwG,GAAmB3f,EAAAA,EAAAA,QAA8B,MAYvD,OAVAroB,EAAAA,EAAAA,YAAU,KACRglB,YAAW,KACTgjB,EAAiB1f,SAASC,eAAe,CACvCC,SAAU,SACVsd,MAAO,QACPtlC,OAAQ,WACR,GACD,GAAG,GACL,CAACvV,IAEAs5B,GAAiC,IAApBt5B,EAAS8B,QAEtBgK,EAAAA,EAAAA,KAACC,EAAS,CAAAE,UACRH,EAAAA,EAAAA,KAACI,EAAAA,EAAM,CAACoJ,QAAM,EAACC,OAAO,WAAWC,MAAO,CAAE3C,OAAQ,aAMtD/G,EAAAA,EAAAA,KAACC,EAAS,CAAC,cAAY,gBAAeE,UACpCH,EAAAA,EAAAA,KAACkxC,GAAQ,CAAA/wC,SACNjM,EAAS8B,QAAUyS,EAClBvU,EAASS,KAAI,CAACkuC,EAASsO,KACrB,MAAMC,EACJvO,EAAQ38B,KAAKiF,OAASwB,EAAAA,EAAS4C,aAAe,OAAQszB,EAAQ38B,MAC1D2iC,EAAevyB,QACnB7N,GACE,YAAaA,GACb,kBAAmBA,EAAcpL,SAGrC,OACE4E,EAAAA,EAAAA,MAACovC,EAAO,CAENvd,IAAKqd,IAAUj9C,EAAS8B,OAAS,EAAIi7C,EAAmB,KACxDzG,QAASA,EACT,cAAY,UAASrqC,SAAA,EAErBH,EAAAA,EAAAA,KAACsxC,EAAW,CAAAnxC,SAAE0N,IAAMg1B,EAAQlK,YAAc,IAAI4Y,aAC9CtvC,EAAAA,EAAAA,MAACuvC,EAAgB,CAAArxC,SAAA,EACfH,EAAAA,EAAAA,KAACyxC,EAAuB,CAAAtxC,SACrBixC,IAAuBvI,GACtB7oC,EAAAA,EAAAA,KAACuoC,EAAAA,GAAa,CACZC,UAAWK,EACXJ,SACE,YAAahgC,GAAiB,WAAYA,EAAcpL,QACpDoL,EAAcpL,QAAQqrC,OAAO/tC,SAC7B2L,EAEN3D,KAAK,QAGP3C,EAAAA,EAAAA,KAAC8rB,EAAAA,GAAc,CACbnpB,KAAK,KACLuD,KAAM28B,EAAQ38B,KACd2iC,aAAcA,OAIpB5mC,EAAAA,EAAAA,MAACyvC,EAAc,CAAC,cAAY,kBAAiBvxC,SAAA,CAC1C0iC,EAAQ2K,oBAAoBx3C,OAAS,IACpCgK,EAAAA,EAAAA,KAAC2xC,GAA0B,CAAAxxC,SACxB0iC,EAAQ2K,oBAAoB74C,KAAK+4C,IAChC1tC,EAAAA,EAAAA,KAACyvC,EAAAA,GAAiB,CAEhB/B,WAAYA,EACZlD,QAASA,EACT/mC,QAASA,IAAMgnC,EAAY5H,EAAQ2K,oBAAqBE,EAAWr4C,KAH9D,mBAAmBq4C,EAAWr4C,WAQ1Cu8C,EAAAA,EAAAA,IAAe/O,EAAQvtB,iBAvCvB,iBAAiButB,EAAQxtC,KA0CtB,KAId2K,EAAAA,EAAAA,KAAC0xC,EAAc,CAAAvxC,SACZ6wC,GACChxC,EAAAA,EAAAA,KAAC6xC,GAAiB,CAAA1xC,SAAC,wEAInBH,EAAAA,EAAAA,KAAC6xC,GAAiB,CAAA1xC,SACf,mDACEsE,GAA4C3O,cAS/D,EAIA,MAAMmK,EAAYmE,EAAAA,GAAOC,GAAG;;;;;;;;;;;;;;wBAcJd,EAAAA,GAAO6M;;EAIzBkhC,EAAcltC,EAAAA,GAAOC,GAAG;IAC1BC,EAAAA,GAAM4D;WACC3E,EAAAA,GAAO6rB;;EAIZiiB,EAAUjtC,EAAAA,GAAOC,GAAG;;aAEZ0G,GAAWA,EAAMy/B,QAAU,aAAe;;;qBAGlCz/B,GAAWA,EAAMy/B,QAAU,OAAS;;IAEtD,EAAGA,cACFA,GACD;EAOEgH,EAAmBptC,EAAAA,GAAOC,GAAG;;;;;EAO7BotC,EAA0BrtC,EAAAA,GAAOC,GAAG;;;;EAMpCqtC,EAAiBttC,EAAAA,GAAOC,GAAG;IAC7BC,EAAAA,GAAM8I;EAGJukC,GAA6BvtC,EAAAA,GAAOC,GAAG;;;;EAMvC6sC,GAAW9sC,EAAAA,GAAOC,GAAG;;EAGrBwtC,GAAoBztC,EAAAA,GAAOC,GAAG;IAChCC,EAAAA,GAAMgM;WACC/M,EAAAA,GAAOyD;;;sgCC1ClB,OAvIqB4C,EAAGnB,gBAAe+hC,UAASxsC,aAC9C,MAA8DsD,EAAAC,IAA9BC,EAAAA,EAAAA,UAA2B,IAAG,GAAvDtN,EAAQoN,EAAA,GAAEipC,EAAWjpC,EAAA,GACkCK,EAAAJ,IAAtBC,EAAAA,EAAAA,YAAsB,GAAvDwvC,EAAYrvC,EAAA,GAAEmwC,EAAenwC,EAAA,GAC4B2M,EAAA/M,IAAdC,EAAAA,EAAAA,WAAS,GAAK,GAAzDuwC,EAAiBzjC,EAAA,GAAE0jC,EAAoB1jC,EAAA,GAG8CyD,EAAAxQ,IAAxCC,EAAAA,EAAAA,UAAqC,IAAG,GAArFywC,EAAkBlgC,EAAA,GAAEmgC,EAAqBngC,EAAA,GAC4CE,EAAA1Q,IAAlBC,EAAAA,EAAAA,YAAkB,GAArF2wC,EAA6BlgC,EAAA,GAAEmgC,EAAgCngC,EAAA,GAEhEvc,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAC/DmT,GAAgB7G,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMoM,UAAU0J,gBAClElE,GAAuB3C,EAAAA,EAAAA,KAC1BjP,GAAqBA,EAAMoM,UAAUwF,uBAGlC7C,GAAWC,EAAAA,EAAAA,OAEjBkH,EAAAA,EAAAA,YAAU,KACR,WACE,IAAIR,GAAepT,IAAQsP,IAAwB6lC,EAYjDD,EAAY,IACZyH,GAAqB,QAZrB,IACE,MAAQrB,SAAyB0B,EAAAA,EAAAA,IAAY5pC,EAAcpT,KAAnDs7C,eAERpG,EAAYoG,EAAez8C,UAC3B89C,GAAqB,GACrBlwC,GAASs2B,EAAAA,EAAAA,MACX,CAAE,MAAOt1B,GACPgvC,EAAgBhvC,GAChBkvC,GAAqB,EACvB,CAKH,EAhBD,EAgBI,GACH,CAACvpC,EAAe9D,IAGnB,MAAM8lC,EAAcA,CAACK,EAAyC6E,KAC5DuC,EAAsBpH,GACtB,MAAMqG,EAAQrG,EAAYwH,WAAW5E,GAAeA,EAAWr4C,KAAOs6C,IACtEyC,EAAiCjB,EAAM,EAQzC,IAAK1oC,GAAepT,IAAMm1C,EACxB,OACExqC,EAAAA,EAAAA,KAACuyC,GAAS,CAAApyC,UACRH,EAAAA,EAAAA,KAACwyC,GAAc,CAACpoC,IAAKqoC,EAAYnoC,IAAI,oBAK3C,MAAMooC,EACJjqC,GAAiB/S,EAAYL,KAAOoT,EAAc7C,gBAAgBvQ,GAE9Ds9C,EAAalqC,GAAiB,eAAgBA,EAEpD,IAAIhE,EACA+lC,GAAW/hC,EACRiqC,EALiCjqC,GAAiB,oBAAqBA,EAQ1EhE,EAAYgE,EAAc5C,gBAAgB,GACjC8sC,IACTluC,EAAYgE,EAAc3C,WAAWwpB,MAClCsjB,GAAeA,EAAWv9C,KAAOoT,EAAc7C,eAAevQ,MALjEoP,EAAYgE,EAAc7C,eAW5BnB,EAAYoE,EAAcpE,UAG5B,MAAMouC,EAAoBrI,GAAW/hC,GAAiB,aAAcA,EAEpE,OACExG,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC8yC,EAAAA,EAA6B,CAC5BhI,YAAamH,EACbc,uBAAwBZ,EACxBa,0BAA2BZ,EAC3Ba,aA3CeA,KACnBf,EAAsB,IACtBE,OAAiC9rC,EAAU,KA2CzCtG,EAAAA,EAAAA,KAACC,GAAS,CAACjC,OAAQA,EAAOmC,UACxB8B,EAAAA,EAAAA,MAAC0G,GAAS,CAAC6hC,QAASA,EAAQrqC,SAAA,EAC1B8B,EAAAA,EAAAA,MAACixC,GAAoB,CAACC,UAAWN,EAAkB1yC,SAAA,CAChD0yC,IACC5wC,EAAAA,EAAAA,MAACmxC,GAAc,CAAC,cAAY,kBAAiBjzC,SAAA,EAC3C8B,EAAAA,EAAAA,MAACoxC,GAAa,CAAAlzC,SAAA,EACZH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,WAAW6M,KAAK,KAAKW,MAAOC,EAAAA,GAAOyD,YAAaD,OAAO,cAAe,IAAI,eAGvF9E,EAAAA,EAAAA,MAACgF,GAAa,CAAA9G,SAAA,EACZH,EAAAA,EAAAA,KAAA,OAAAG,SAAMsI,EAAcs1B,SAASrvB,OAAS,uBACtC1O,EAAAA,EAAAA,KAACszC,GAAY,CACX7oC,IAAI8oC,EAAAA,EAAAA,GAAiB,CACnBnqC,cAAeX,EAAcsjC,eAC7B51C,KAAMsS,EAAcs1B,SAAS5nC,OAE/B6M,OAAO,SAAQ7C,UAEfH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,+BAKnBkK,EAAAA,EAAAA,KAACwzC,EAAW,CACVt/C,SAAUA,EACV88C,aAAcA,EACdvoC,cAAeA,EACf+hC,QAASl0B,QAAQk0B,GACjB/lC,UAAWA,EACX+oB,UAAWukB,EACXtH,YAAaA,QAGjBzqC,EAAAA,EAAAA,KAACsqC,EAAc,CACb7hC,cAAeA,EACf8hC,YAAaA,EACbC,QAASA,EACT/lC,UAAWA,EACXgmC,YAAaA,WAIlB,EAMP,MAAMxqC,GAAYmE,EAAAA,GAAOC,GAAG;;;;YAIf0G,GAAUA,EAAM/M;EAGvB2K,GAAYvE,EAAAA,GAAOC,GAAG;;;;aAId0G,GAAWA,EAAMy/B,QAAU,YAAc;EAGjD0I,GAAuB9uC,EAAAA,GAAOC,GAAG;;wBAEf,EAAG8uC,eAAiBA,EAAY,WAAa;;;EAK/DC,GAAiBhvC,EAAAA,GAAOC,GAAG;;;EAK3BgvC,GAAgBjvC,EAAAA,GAAOC,GAAG;;;IAG5BC,EAAAA,GAAM4D;WACC3E,EAAAA,GAAOyD;EAGZC,GAAgB7C,EAAAA,GAAOC,GAAG;;;IAG5BC,EAAAA,GAAMiU;;;;MAIJpQ,EAAAA,GAAOshC;;;EAKP6J,IAAelvC,EAAAA,EAAAA,IAAOoG,EAAAA,GAAK;WACtBjH,EAAAA,GAAOC;;IAEdc,EAAAA,GAAM2W;EAGJs3B,GAAYnuC,EAAAA,GAAOC,GAAG;;;;;;EAQtBmuC,GAAiBpuC,EAAAA,GAAOwG,GAAG;;wpCCtKjC,MArDkC6oC,EAAGpxC,UAASD,SAAQsxC,2BACpD,MAA+CpyC,EAAAC,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAxCmyC,EAAQryC,EAAA,GAAEsyC,EAAWtyC,EAAA,GAgB5B,OAdA2H,EAAAA,EAAAA,YAAU,KACJ0qC,GACF1lB,YAAW,KACT2lB,GAAY,EAAM,GACjB,IACL,GACC,CAACD,KAEJ1qC,EAAAA,EAAAA,YAAU,KACJ7G,GACFwxC,GAAY,EACd,GACC,CAACxxC,KAGFpC,EAAAA,EAAAA,KAACmC,EAAAA,GAAU,CAACE,QAASA,EAASD,OAAQA,EAAQvE,MAAM,QAAQG,OAAO,QAAOmC,UACxE8B,EAAAA,EAAAA,MAACO,EAAY,CAAArC,SAAA,EACXH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,UAAUwN,MAAOC,EAAAA,GAAOqmB,MAAOjnB,KAAK,SAC/CV,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,EACE8B,EAAAA,EAAAA,MAAC6O,EAAG,CAAA3Q,SAAA,EACFH,EAAAA,EAAAA,KAACmR,EAAM,CAAAhR,SAAC,kCACRH,EAAAA,EAAAA,KAACo/B,EAAS,CAAAj/B,SAAC,uHAKbH,EAAAA,EAAAA,KAACo/B,EAAS,CAAAj/B,SAAC,+CACXH,EAAAA,EAAAA,KAAC0K,EAAAA,EAAM,CAACrH,SAAS,QAAQ0D,OAAO,aAAatD,QAASiwC,EAAqBvzC,SAAC,4BAG5E8B,EAAAA,EAAAA,MAAC4xC,EAAE,CAAA1zC,SAAA,CAAC,KACC,KACHH,EAAAA,EAAAA,KAACmD,EAAAA,GAAU,CACTM,QAASA,KACPqwC,UAAUC,UAAUC,UAAUl2C,OAAOhE,SAASmK,MAC9C2vC,GAAY,EAAK,EAEnBxwC,KAAMuwC,EAAW,UAAY,yBAC7BrwC,MAAOqwC,EAAWpwC,EAAAA,GAAOqmB,MAAQrmB,EAAAA,GAAOC,UACxCH,SAAS,OACTsH,aAAa,OACbhI,KAAK,iBAKF,EAMjB,MAAMH,EAAe4B,EAAAA,GAAOC,GAAG;;;;;;EAOzB8M,EAAS/M,EAAAA,GAAOC,GAAG;WACdd,EAAAA,GAAOyE;IACd1D,EAAAA,GAAMyI;;EAGJqyB,EAAYh7B,EAAAA,GAAOC,GAAG;IACxBC,EAAAA,GAAM8I;;EAGJ0D,EAAM1M,EAAAA,GAAOC,GAAG;;;;EAKhBwvC,EAAKzvC,EAAAA,GAAOC,GAAG;;;;IAIjBC,EAAAA,GAAM2W;uCC9EH,MAAMg5B,EAAqBplC,MAAO20B,EAAmB0Q,WACnC5gC,EAAAA,EAAIC,IAAI,oBAAqB,CAClD4S,OAAQ,CACN2d,WAAYN,EACZ2Q,QAASD,MAGGllC,KAGLolC,EAAuBA,EAClC5Q,YACApgC,OACAixC,YACA13C,UAOA2W,EAAAA,EAAI8L,MAAKk1B,EAAAA,EAAAA,OAAyB,CAChCxQ,WAAYN,EACZ+Q,YAAaF,EACbjxC,OACAzG,SAGS63C,EAAqBA,CAACn/C,EAAY+N,EAAezG,IAC5D2W,EAAAA,EAAImhC,KAAIC,EAAAA,EAAAA,KAAqB,CAAEr/C,GAAIA,IAAO,CAAE+N,OAAMzG,SAEvCg4C,EAAwBt/C,GAAeie,EAAAA,EAAI8L,MAAKw1B,EAAAA,EAAAA,KAA4B,CAAEv/C,QAE9Ew/C,EAA0Bx/C,GACrCie,EAAAA,EAAI8L,MAAK01B,EAAAA,EAAAA,KAA8B,CAAEz/C,QAE9B0/C,EAAwB1/C,GAAeie,EAAAA,EAAI0hC,QAAON,EAAAA,EAAAA,KAAqB,CAAEr/C,Q,8PC1CtF,MAAM60C,EAAO9lC,EAAAA,GAAOimC,EAAE;;;EAgCtB,MA3BwB,CACtB4K,kBAAkBj1C,EAAAA,EAAAA,KAAAkC,EAAAA,SAAA,CAAA/B,SAAE,YACpB+0C,wBACEjzC,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAA,KAAAG,SAAG,cACH8B,EAAAA,EAAAA,MAACioC,EAAI,CAAA/pC,SAAA,EACHH,EAAAA,EAAAA,KAAA,MAAAG,SAAI,yGAIJH,EAAAA,EAAAA,KAAA,MAAAG,SAAI,yDACJH,EAAAA,EAAAA,KAAA,MAAAG,SAAI,gGAIVg1C,oBACElzC,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAA,KAAAG,SAAG,cACH8B,EAAAA,EAAAA,MAACioC,EAAI,CAAA/pC,SAAA,EACHH,EAAAA,EAAAA,KAAA,MAAAG,SAAI,iDACJH,EAAAA,EAAAA,KAAA,MAAAG,SAAI,8EACJH,EAAAA,EAAAA,KAAA,MAAAG,SAAI,uD,ggCCgIZ,MA1HoCi1C,EAClCC,cACA5hC,UACA6hC,UACAC,mBAAmB,EACnBxnB,YACAynB,sBAEA,MAAoCl0C,EAAAC,GAAZC,EAAAA,EAAAA,UAAS,IAAG,GAA7B4B,EAAI9B,EAAA,GAAEm0C,EAAOn0C,EAAA,GACsBK,EAAAJ,GAAdC,EAAAA,EAAAA,WAAS,GAAK,GAAnCY,EAAMT,EAAA,GAAE+zC,EAAS/zC,EAAA,GAClBg0C,GAAoBrkB,EAAAA,EAAAA,SAAO,GAE3B57B,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAE/DkgD,GAAwB/nB,EAAAA,EAAAA,GAAY,CACxCC,WAAYsmB,EACZrmB,UAAYzb,IACV,MAAQjd,EAAOid,EAAStD,KAAhB3Z,GACRogD,EAAQ,IACR1nB,EAAU14B,EAAG,EAEf+4B,QAASoE,EAAAA,MAYXvpB,EAAAA,EAAAA,YAAU,KACJ7F,EAAKpN,OAAS,IAAG2/C,EAAkBpkB,SAAU,EAAI,GACpD,CAACnuB,KAEJ6F,EAAAA,EAAAA,YAAU,IACD,KACD0sC,EAAkBpkB,SAAWnuB,EAAKpN,OAAS,IAC7CqhB,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBu+B,QAAS,CAC9Br+B,aAAc,oBACdoT,gBAAiB,8BACjBkrB,aAAcriC,EAAQtd,MACtB,GAEL,IAEH,MAAM4/C,EAAYT,GAASjgD,GAE3B,OACE4M,EAAAA,EAAAA,MAAChC,EAAS,CAAC81C,UAAWA,EAAU51C,SAAA,CAC7B41C,IAAa/1C,EAAAA,EAAAA,KAACy/B,GAAI,CAACr1B,IAAK4rC,KACzB/zC,EAAAA,EAAAA,MAACg0C,EAAO,CAAA91C,SAAA,EACNH,EAAAA,EAAAA,KAAC8rB,EAAAA,GAAc,CAAC5lB,KAAMxQ,EAAoBiN,KAAK,OAAQ,IACtDozC,GAAY9zC,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,CAAE,cAAYm1C,GAASpvC,MAAMpQ,MAAQu/C,MAAkBpzC,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,CAAE,OAAKk1C,SAE7Er1C,EAAAA,EAAAA,KAACk2C,EAAAA,GAAY,CACX5gC,QACEygC,EAAYI,EAAgBhB,mBAAqBgB,EAAgBjB,uBAEnEr3C,MAAM,QACNu4C,eAAgBL,EAAY,OAAS,QACrCM,iBAAkBN,EAAY,QAAU,SAAS51C,UAEjDH,EAAAA,EAAAA,KAAC6vC,EAAAA,GAAS,CACRtqC,MAAOnC,EACPkzC,UAAWhyC,EAAAA,GAAMiyC,mBACjB1zC,SAAWC,GAAM2yC,EAAQ3yC,EAAEE,OAAOuC,OAClC2qC,UAAQ,EACRsG,eAAgBT,EAAY,QAAU,OACtCrV,OAAO,OACP+V,eAAgBV,OAAYzvC,EAAY,QAG3CmN,EAAQy6B,cAAgB6H,GAAargD,EAAYyV,OAASC,EAAAA,EAAWC,UACpErL,EAAAA,EAAAA,KAACmqC,EAAAA,GAAU,CACTl3C,KAAK,mBACLmQ,KAAK,oIACL2D,OAAO,WACPuoC,KAAMhrC,EAAAA,GAAM2W,aAGhBjb,EAAAA,EAAAA,KAAC02C,EAAiB,CAAAv2C,SACf41C,GAAargD,EAAYyV,OAASC,EAAAA,EAAWC,UAC5CrL,EAAAA,EAAAA,KAACyC,EAAAA,GAAQ,CACPC,OACET,EAAAA,EAAAA,MAAA,QAAA9B,SAAA,CAAM,SACGm1C,GAASpvC,MAAMpQ,KAAK,oDAC1By/C,EAAmB,GAAKD,GAASpvC,MAAMiF,OAASC,EAAAA,EAAWurC,WAC1D10C,EAAAA,EAAAA,MAAA,QAAA9B,SAAA,CACG,IAAI,eACQ,KACbH,EAAAA,EAAAA,KAAC42C,EAAAA,GAAQ,CAACnsC,GAAI,YAAY6qC,GAASpvC,MAAMT,aAAcnC,MAAOC,EAAAA,GAAOC,UAAUrD,SAAC,0BAErE,OAGX,QAGRyC,UAAWR,EACXS,SAAWC,GAAM4yC,EAAU5yC,EAAEE,OAAOC,SACpCN,KAAK,UAIXV,EAAAA,EAAAA,MAAC40C,EAAM,CAAA12C,SAAA,EACLH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACL/H,KAAK,KACL9E,MAAM,QACN4F,QAvFoBqzC,KAC1BlB,EAAsBvnB,OAAO,CAC3BjrB,OACAogC,UAAW/vB,EAAQpe,GACnBg/C,UAAWiB,GAASjgD,SAAMiR,EAC1B3J,KAAMyF,GACN,EAkFI+N,SAA0B,IAAhB/M,EAAKpN,QAAgB4/C,EAAsBpoB,UAAUrtB,SAChE,YAGDH,EAAAA,EAAAA,KAAC+2C,EAAM,CAACtzC,QAASA,IAAM+xC,GAAgB,GAAOr1C,SAAC,gBAEvC,EAMT,MAAM02C,EAASzyC,EAAAA,GAAOC,GAAG;;;;IAI5BC,EAAAA,GAAM8I;IACN,EAAG4pC,eAAgBA,GAAa;EAE9Bf,EAAU7xC,EAAAA,GAAOC,GAAG;;;;IAItBC,EAAAA,GAAMgM;WACC/M,EAAAA,GAAOyD;;EAGZ/G,EAAYmE,EAAAA,GAAOC,GAAG;;YAEhB,EAAG0xC,eAAiBA,EAAY,gBAAkB;EAEjDW,EAAoBtyC,EAAAA,GAAOC,GAAG;;EAI9B0yC,EAAS3yC,EAAAA,GAAOC,GAAG;;;;IAI5BC,EAAAA,GAAM+M;WACC9N,EAAAA,GAAOC;EAGZi8B,GAAOr7B,EAAAA,GAAOwG,GAAG;;;;;sgCC/GvB,OA5DkCqsC,EAAGC,UAASnpB,YAAWopB,mBACvD,MAAoD71C,EAAAC,IAA5BC,EAAAA,EAAAA,UAAS01C,EAAQ9zC,MAAQ,IAAG,GAA7CA,EAAI9B,EAAA,GAAEm0C,EAAOn0C,EAAA,GACsCK,EAAAJ,IAA9BC,EAAAA,EAAAA,UAAS01C,EAAQv6C,OAAQ,GAAK,GAAnDyF,EAAMT,EAAA,GAAE+zC,EAAS/zC,EAAA,GAElBjM,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAE/DmhC,GAAWhJ,EAAAA,EAAAA,GAAY,CAC3BC,WAAYA,IAAM0mB,EAAmB0C,EAAQ7hD,GAAI+N,EAAMhB,GACvD2rB,UAAWlf,UACT4mC,EAAQ,IACRxlC,EAAAA,EAAMhB,QAAQ,0BACR8e,GAAW,EAEnB+I,KAAM,CACJC,uBAAuB,KAQrBgf,EAAiC,IAArBrgD,EAAYyV,KAE9B,OACElJ,EAAAA,EAAAA,MAACm1C,GAAa,CAAAj3C,SAAA,EACZH,EAAAA,EAAAA,KAAC6vC,EAAAA,GAAS,CACRtqC,MAAOnC,EACPkzC,UAAWhyC,EAAAA,GAAMiyC,mBACjBvjC,YAAY,oBACZnQ,SAAWC,GAAM2yC,EAAQ3yC,EAAEE,OAAOuC,OAClC2qC,UAAQ,EACRsG,eAAe,QACf9V,OAAO,UAET1gC,EAAAA,EAAAA,KAAC02C,EAAiB,CAAAv2C,SACf41C,IACC/1C,EAAAA,EAAAA,KAACyC,EAAAA,GAAQ,CACPC,MAAM,+CACNE,UAAWR,EACXS,SAAWC,GAAM4yC,EAAU5yC,EAAEE,OAAOC,SACpCN,KAAK,UAIXV,EAAAA,EAAAA,MAAC40C,EAAM,CAACG,WAAS,EAAA72C,SAAA,EACfH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACL/H,KAAK,KACLoE,OAAO,aACPtD,QA/BoBqzC,KAC1BjgB,EAASxI,QAAQ,EA+BXle,SAAU0mB,EAASrJ,WAA8B,IAAjBpqB,GAAMpN,OAAamK,SACpD,YAGDH,EAAAA,EAAAA,KAAC+2C,EAAM,CAACtzC,QAASA,IAAM0zC,GAAa,GAAOh3C,SAAC,gBAEhC,EAMpB,MAAMi3C,GAAgBhzC,EAAAA,GAAOC,GAAG;;sgCCrChC,MAAMgzC,GAAiBA,EACrBH,UACAzjC,UACA8hC,mBAAmB,EACnB+B,kBACAC,YACA1P,kBACA2P,aAAY,MAEZ,MACEniD,EAWE6hD,EAXF7hD,GACA6Q,EAUEgxC,EAVFhxC,KACAyyB,EASEue,EATFve,WACAv1B,EAQE8zC,EARF9zC,KACAzG,EAOEu6C,EAPFv6C,KACA86C,EAMEP,EANFO,SACAC,EAKER,EALFQ,QACAC,EAIET,EAJFS,gBACAC,EAGEV,EAHFU,kBACAC,EAEEX,EAFFW,wBACAC,EACEZ,EADFY,0BAGqDx2C,EAAAC,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAhDu2C,EAAYz2C,EAAA,GAAEk0C,EAAel0C,EAAA,GACaK,EAAAJ,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAA1Cw1C,EAASr1C,EAAA,GAAEw1C,EAAYx1C,EAAA,GAExBjM,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAC/DoM,GAAWC,EAAAA,EAAAA,MAEX6b,EAAcloB,EAAYyV,OAASwB,EAAAA,EAAS4C,UAC5C0tB,EAAYvnC,EAAYyV,OAASwB,EAAAA,EAASC,QAC1CswB,EAAoBxnC,EAAYyV,OAASwB,EAAAA,EAASoK,iBAElDihC,EAA8BtiD,EAAYL,IAAMK,EAAYL,KAAO6Q,GAAM7Q,GAEzE4iD,EAAkC,IAArB1C,EACb2C,EACJF,IAAgChB,KAAeiB,GAAcjkB,OAAO0jB,GAAS1hD,QAAU,GACnFmiD,GAAalb,IAAc+a,EAC3BI,GAAoBL,GAAgBE,IAAeP,GAAS1hD,QAAUuhD,EACtEc,EAAkB,MACtB,GAAIN,GAAgBE,GAAcP,GAAS1hD,OAAQ,OAAO,EAE1D,IAAK2G,EAAM,OAAO,EAElB,GAAIihB,GAAesf,EAAmB,CAGpC,OAFwBua,GAAUvxC,MAAM7Q,KAAOK,EAAYL,EAG7D,CAEA,GAAI4nC,EAAW,CACb,MAAMqb,EAAoBb,GAAUvxC,MAAMnL,cAAwC0iC,WAC5E8a,EAAuB7iD,EAAYqF,cAAc0iC,WAEvD,OAAO6a,IAAqBC,CAC9B,CAEA,OAAO,CACR,EAnBuB,GAqBlBC,GACJ3Q,GAAmB3hC,GAAMiF,OAASwB,EAAAA,EAASC,QAAU,cAAgB1G,GAAMpQ,KAE7E,IAAI2iD,GAAgC,GAChCC,GAAmC,GAEnCxyC,GAAMiF,OAASwB,EAAAA,EAAS4C,WAC1BmpC,GAAqBxyC,EAAKnL,cAA0CjB,SACpE2+C,GAAkBvyC,EAAKnL,cAA0C2T,OAAS,aACjExI,GAAMiF,OAASwB,EAAAA,EAASoK,kBACjC2hC,GAAqBxyC,EAAKnL,cAA2Cq4B,WACrEqlB,GAAkBvyC,EAAKnL,cAA2CoQ,MACzD08B,GACT6Q,GAAoB,kBACpBD,GAAiB,YACPvyC,GAAMnL,cAAwC4T,eACxD+pC,IAAqBxyC,GAAMnL,cAAuC4T,aAClE8pC,GAAkBvyC,GAAMnL,cAAwC2T,OAAS,YAG3E,MAuCMiqC,GAAW9pC,UACf,GAAKnZ,EAAYL,IAKjB,GAAK8iD,EAEL,UACQxD,EAAqBt/C,IAC3BgiB,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBC,MAAO,CAC5BC,aAAc,iBACdoT,gBAAiB,iBACjBkrB,aAAcriC,EAAQtd,KACtByiD,QAASf,IAEXP,GACF,CAAE,MAAOx0C,GACPmN,EAAAA,EAAMZ,MAAM,qEAEZmD,EAAAA,EAAUC,UAAU3P,GAAI4Q,IACtBA,EAAKC,UAAU,2BACfD,EAAKmlC,QAAQ,CACXC,UAAW73B,OAAO5rB,GAClB6T,OAAQxT,EAAYL,GACpB8yB,UAAWzyB,EAAYonB,OACvB,GAEN,OA1BEhb,GAASye,EAAAA,EAAAA,IAAiB,CAAE5jB,MAAM,IA0BpC,EAkFIo8C,IACHX,GAAoBC,IAAoB3iD,EAAYyV,OAASwB,EAAAA,EAASC,QAEzE,OACE3K,EAAAA,EAAAA,MAAChC,GAAS,CAAC+4C,UAAWD,GAAsBd,WAAYA,EAAW93C,SAAA,CAChE44C,IAAwBd,IACvBj4C,EAAAA,EAAAA,KAACi5C,GAAe,CAAA94C,SAAC,4BAEnB8B,EAAAA,EAAAA,MAACi3C,GAAO,CAAA/4C,SAAA,EACN8B,EAAAA,EAAAA,MAACk3C,GAAW,CAAAh5C,SAAA,CACT62C,GACCh3C,EAAAA,EAAAA,KAACi3C,GAAyB,CACxBC,QAASA,EACTnpB,UAjIUlf,UACpBsoC,GAAa,GACb3B,GAAgB,SACV8B,GAAiB,EA+HbH,aAAcA,KAGhBl1C,EAAAA,EAAAA,MAACm3C,GAAa,CAACnB,WAAYA,EAAW93C,SAAA,EACpCH,EAAAA,EAAAA,KAACq5C,GAAc,CAACL,UAAWZ,EAAkBZ,UAAWA,EAAUr3C,SAC/D83C,EAAa,KAAO,QAEvBh2C,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,CACG44C,KAAyBd,IACxBj4C,EAAAA,EAAAA,KAACi5C,GAAe,CAAA94C,SAAC,4BAEnBH,EAAAA,EAAAA,KAACs5C,GAAW,CAAAn5C,SAAEiD,UAInB80C,IACCj2C,EAAAA,EAAAA,MAACs3C,GAAc,CAAAp5C,SAAA,CACZ88B,IACCj9B,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACnD,QAAQ,YAAY5E,KAAK,KAAKc,QAASA,IAAM0zC,GAAa,GAAMh3C,SAAC,UAI3EH,EAAAA,EAAAA,KAACw5C,GAAM,CAAC/1C,QApFHoL,UACf,UACQkmC,EAAqB1/C,GAC3B4a,EAAAA,EAAMhB,QAAQ,oBACdqoC,GACF,CAAE,MAAOx0C,GACPmN,EAAAA,EAAMZ,MAAM,qEAEZmD,EAAAA,EAAUC,UAAU3P,GAAI4Q,IACtBA,EAAKC,UAAU,2BACfD,EAAKmlC,QAAQ,CACXC,UAAW73B,OAAO5rB,GAClB6T,OAAQxT,EAAYL,GACpB8yB,UAAWzyB,EAAYonB,OACvB,GAEN,GAoEoC3c,SAAC,eAG/B8B,EAAAA,EAAAA,MAACw3C,GAAI,CAACxB,WAAYA,EAAYjB,UAAWA,EAAU72C,SAAA,EACjDH,EAAAA,EAAAA,KAAC05C,GAAgB,CACfjvC,GAAIvE,GAAMiF,OAASwB,EAAAA,EAAS4C,UAAY,YAAYrJ,GAAMT,kBAAea,EAAUnG,UAEnFH,EAAAA,EAAAA,KAAC8rB,EAAAA,GAAc,CACb5lB,KAAMA,EACNvD,KAAK,KACLkmC,aAAc3iC,GAAMiF,OAASwB,EAAAA,EAASC,SAAWi7B,OAGrD5lC,EAAAA,EAAAA,MAAC03C,GAAQ,CAAAx5C,SAAA,EACPH,EAAAA,EAAAA,KAAC0G,GAAI,CAAAvG,SACF+F,GAAMiF,OAASwB,EAAAA,EAAS4C,WACvBtN,EAAAA,EAAAA,MAAC20C,EAAAA,GAAQ,CACPnsC,GAAI,YAAYvE,GAAMT,aACtB6pC,KAAMhrC,EAAAA,GAAM2W,UACZxX,QAASA,KACP4T,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBC,MAAO,CAC5BC,aAAc,yBACdoT,gBAAiB,iBACjBkrB,aAAcriC,EAAQtd,OAEzBgK,SAAA,CAEAq4C,GAAc,KAAGC,GAAe,KAAGC,OAGtCz2C,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,CACGq4C,GAAc,KAAGC,GAAe,KAAGC,IACpC14C,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,WAAWwN,MAAOC,EAAAA,GAAOC,UAAWb,KAAK,KAAKoE,OAAO,oBAItE/G,EAAAA,EAAAA,KAAC45C,GAAU,CAAAz5C,SAAE0N,IAAM8qB,GAAY7qB,OAAO,2BAI3C5H,GAAMiF,OAASwB,EAAAA,EAASC,UACvB5M,EAAAA,EAAAA,KAACwwC,EAAAA,GAAO,CACNl7B,QAAS6gC,EAAgBlB,iBACzBtxC,SAAS,QACT6D,aAAa,cACb4uC,eAAe,OAAMj2C,UAErB8B,EAAAA,EAAAA,MAAC43C,GAAqB,CACpBC,QAAS3B,EACT4B,QAASlC,EACTp0C,QAASk1C,GAASx4C,SAAA,EAElBH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,aAAa6M,KAAK,KAAKW,MAAOC,EAAAA,GAAOC,aAChDxD,EAAAA,EAAAA,KAACg6C,GAAiB,CAAA75C,SAAEw3C,YAK3BzxC,GAAMiF,OAASwB,EAAAA,EAASC,UACvB3K,EAAAA,EAAAA,MAACg4C,GAAO,CAAA95C,SAAA,CACLzK,EAAYyV,OAASwB,EAAAA,EAASC,QAC3B,oBACA,6BACJ3K,EAAAA,EAAAA,MAACi4C,GAAY,CAACJ,QAAS3B,EAAW10C,QAASk1C,GAASx4C,SAAA,EAClDH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CACHhR,KAAM,YAAW+hD,EAA0B,UAAY,IACvDl1C,KAAK,KACLW,MAAO60C,EAAY50C,EAAAA,GAAOC,UAAYD,EAAAA,GAAO6rB,cAC5C,IACFuoB,MAEH11C,EAAAA,EAAAA,MAACi4C,GAAY,CAACJ,QAAS3B,EAAW10C,QA1LvBoL,UACjB,GAAKnZ,EAAYL,IAKjB,GAAKuoB,GAAgBsf,EAErB,UACQ2X,EAAuBx/C,IAC7BgiB,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBC,MAAO,CAC5BC,aAAc,mBACdoT,gBAAiB,iBACjBkrB,aAAcriC,EAAQtd,KACtByiD,QAASf,IAEXP,GACF,CAAE,MAAOx0C,GACPmN,EAAAA,EAAMZ,MAAM,uEAEZmD,EAAAA,EAAUC,UAAU3P,GAAI4Q,IACtBA,EAAKC,UAAU,6BACfD,EAAKmlC,QAAQ,CACXC,UAAW73B,OAAO5rB,GAClB6T,OAAQxT,EAAYL,GACpB8yB,UAAWzyB,EAAYonB,OACvB,GAEN,OA1BEhb,GAASye,EAAAA,EAAAA,IAAiB,CAAE5jB,MAAM,IA0BpC,EA8J4DwD,SAAA,EACpDH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CACHhR,KAAM,cAAagiD,EAA4B,UAAY,IAC3Dn1C,KAAK,KACLW,MAAO60C,EAAY50C,EAAAA,GAAOC,UAAYD,EAAAA,GAAO6rB,cAC5C,IACFwoB,SAILQ,GAAoBC,KACpBp2C,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLnD,QAAQ,YACR5E,KAAK,KACLc,QAASA,IAAM+xC,GAAgB,GAC/BzuC,OAAQqxC,EAAmB,gBAAkB,kBAC7Cv6C,MAAM,cAAasC,SAElB83C,EAAa,SAAW,UAE1Bt7C,GAAQ86C,GAAY/hD,EAAYyV,OAASwB,EAAAA,EAASC,UACjD5M,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACL/H,KAAK,KACL4E,QAAQ,QACR9D,QAjKUoL,UACpB,UACQ2lC,EAAmBn/C,OAAIiR,GAAW,IACxC+Q,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBC,MAAO,CAC5BC,aAAc,eACdoT,gBAAiB,iBACjBkrB,aAAcriC,EAAQtd,OAExB8Z,EAAAA,EAAMhB,SACJhN,EAAAA,EAAAA,MAACk4C,GAAY,CAAAh6C,SAAA,CACV,kBACDH,EAAAA,EAAAA,KAACo6C,GAAU,CAAC32C,QAASA,IAAM+wC,EAAmBn/C,OAAIiR,GAAW,GAAMnG,SAAC,aAGxEm3C,GACF,CAAE,MAAOx0C,GACPmN,EAAAA,EAAMZ,MAAM,mEAEZmD,EAAAA,EAAUC,UAAU3P,GAAI4Q,IACtBA,EAAKC,UAAU,gCACfD,EAAKmlC,QAAQ,CACXC,UAAW73B,OAAO5rB,GAClB6T,OAAQxT,EAAYL,GACpB8yB,UAAWzyB,EAAYonB,OACvB,GAEN,GAwIU/V,OAAO,aACPlJ,MAAM,cAAasC,SACpB,oBAMN43C,IACC/3C,EAAAA,EAAAA,KAACo1C,EAA2B,CAC1BC,YACExN,EAAkB,mBAAqB3hC,GAAMnL,cAAqB4T,aAEpE8E,QAASA,EACT6hC,QAAS4B,EACT3B,iBAAkBA,EAClBxnB,UArRelf,UACrBsoC,GAAa,GACb3B,GAAgB,SACV8B,IACNrnC,EAAAA,EAAMhB,SACJhN,EAAAA,EAAAA,MAACk4C,GAAY,CAAAh6C,SAAA,CACV,oBACDH,EAAAA,EAAAA,KAACo6C,GAAU,CAAC32C,QAASA,IA5BZoL,WACb,UACQkmC,EAAqBsF,SAErB/C,IAENrnC,EAAAA,EAAMhB,QAAQ,mBAChB,CAAE,MAAOnM,GACPmN,EAAAA,EAAMZ,MAAM,qEAEZmD,EAAAA,EAAUC,UAAU3P,GAAI4Q,IACtBA,EAAKC,UAAU,sCACfD,EAAKmlC,QAAQ,CACXC,UAAW73B,OAAOo5B,GAClBnxC,OAAQxT,EAAYL,GACpB8yB,UAAWzyB,EAAYonB,OACvB,GAEN,GAU+Bw9B,CAAOD,GAAkBl6C,SAAC,YAExD,EA6QKq1C,gBAAiBA,KAGnByC,GAAcjkB,OAAO0jB,GAAS1hD,QAAU,IAAKgK,EAAAA,EAAAA,KAACu6C,GAAc,KAC9Dv6C,EAAAA,EAAAA,KAACw6C,GAAO,CAACC,cAAexC,GAAcjkB,OAAO0jB,GAAS1hD,QAAQmK,SAC3D6zB,OAAO0jB,GAAS1hD,QAAU,IACzBiM,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,CACG83C,IAAcj4C,EAAAA,EAAAA,KAACy/B,GAAI,CAACr1B,IAAK4rC,IACzB0B,GAAS/iD,KAAI,CAAC+lD,EAAOvJ,KACpBnxC,EAAAA,EAAAA,KAACq3C,GAAc,CAEb9B,iBAAkBA,EAAmB,EACrCiC,UAAWS,GAAwB,IAAV9G,EACzB19B,QAASA,EACTyjC,QAASwD,EACTpD,gBAAiBA,EACjBC,UAAWA,EACX1P,gBAAiBA,GAPZ6S,EAAMrlD,aAaX,EAIhB,UAEA,MAAM4K,GAAYmE,EAAAA,GAAOC,GAAG;IACxB,EAAG20C,YAAWf,gBACde,GACA,yBACkBf,EAAa,OAAS,4DAExB10C,EAAAA,GAAOo3C;EAKrBJ,GAAiBn2C,EAAAA,GAAOC,GAAG;;;gBAGjBd,EAAAA,GAAOsE;;EAIjBqxC,GAAU90C,EAAAA,GAAOC,GAAG;;;EAIpB80C,GAAc/0C,EAAAA,GAAOC,GAAG;;EAGxB+0C,GAAgBh1C,EAAAA,GAAOC,GAAG;IAC5B,EAAG4zC,gBAAkBA,EAAa3zC,EAAAA,GAAM+L,WAAa/L,EAAAA,GAAMuG;;;EAIzDwuC,GAAiBj1C,EAAAA,GAAOw2C,MAAM;gBACpB,EAAG5B,eAAiBA,EAAYz1C,EAAAA,GAAOo3C,UAAYp3C,EAAAA,GAAOY;;IAEtE,EAAGqzC,gBAAiBA,GAAa;EAE/B8B,GAAcl1C,EAAAA,GAAOC,GAAG;;EAGxBo1C,GAAOr1C,EAAAA,GAAOC,GAAG;;;IAGnBC,EAAAA,GAAM2W;;iBAEO,EAAG+7B,eAAiBA,EAAY,IAAM;EAEjD0C,IAAmBt1C,EAAAA,EAAAA,IAAOoG,EAAAA,GAAK;;oBAEjB,EAAGC,QAAUA,EAAK,OAAS;;EAGzCkvC,GAAWv1C,EAAAA,GAAOC,GAAG;;;EAIrBqC,GAAOtC,EAAAA,GAAOC,GAAG;;;IAGnBC,EAAAA,GAAM2W;;EAGJ2+B,GAAax1C,EAAAA,GAAOC,GAAG;IACzBC,EAAAA,GAAM2W;WACC1X,EAAAA,GAAOyD;EAEZwyC,GAASp1C,EAAAA,GAAOC,GAAG;;;;IAIrBC,EAAAA,GAAM+M;WACC9N,EAAAA,GAAOS;EAEZ61C,GAAwBz1C,EAAAA,GAAOC,GAAG;;;;;sBAKlBd,EAAAA,GAAO4U;;;;;WAKlB5U,EAAAA,GAAOs3C;;;WAGPt3C,EAAAA,GAAOyD;IACd,EAAG+yC,aAAcA,GAAW,UAAUx2C,EAAAA,GAAOC;IAC7C,EAAGs2C,aACHA,GACA,kEAGkBv2C,EAAAA,GAAOgoB,8CACDhoB,EAAAA,GAAOgoB;EAI7ByuB,GAAoB51C,EAAAA,GAAOC,GAAG;;EAG9Bm2C,GAAUp2C,EAAAA,GAAOC,GAAG;;;IAGtB,EAAGo2C,mBACHA,GACA;;;;;EASEhb,GAAOr7B,EAAAA,GAAOwG,GAAG;;;;;EAMjB2uC,GAAiBn1C,EAAAA,GAAOC,GAAG;;;;;EAM3B41C,GAAU71C,EAAAA,GAAOC,GAAG;;;;;IAKtBC,EAAAA,GAAM2W;EAEJi/B,GAAe91C,EAAAA,GAAOC,GAAG;IAC3B,EAAGy1C,aAAcA,GAAW;;;;WAIrB,EAAGA,aAAeA,EAAUv2C,EAAAA,GAAOC,UAAYD,EAAAA,GAAO6rB;EAE3D6pB,GAAkB70C,EAAAA,GAAOC,GAAG;IAC9BC,EAAAA,GAAMysC;WACCxtC,EAAAA,GAAOu3C;;EAGZX,GAAe/1C,EAAAA,GAAOC,GAAG;;;;EAKzB+1C,GAAah2C,EAAAA,GAAOke,MAAM;;;;;;sgCCvjBhC,MAAMy4B,GAAoC,CACxC,CACEx1C,MAAO,QACP7C,MAAO,gBAET,CACE6C,MAAO,SACP7C,MAAO,eAET,CACE6C,MAAO,oBACP7C,MAAO,sBAILs4C,GAAoBA,EACtBvnC,UAASskC,eAAcvC,kBAAiByF,uBAC1CnnB,KAEA,MAA+DxyB,EAAAC,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAxD05C,EAAgB55C,EAAA,GAAE65C,EAAmB75C,EAAA,GACiBK,EAAAJ,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAtD45C,EAAez5C,EAAA,GAAE05C,EAAkB15C,EAAA,GAEpCjM,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAC/DoM,GAAWC,EAAAA,EAAAA,MAEXu5C,EAAW7nC,EAAQ8nC,mBAAqB11B,EAAAA,GAAgB0Q,oBACxDsR,GAAkB2T,EAAAA,EAAAA,IAAsB/nC,EAAS/d,GACjD2/C,EAAcxN,EAAkB,cAAiBp0B,EAAQpW,SAAiBsR,aAC1E8sC,EACJ,iBAAkBhoC,EAAQpW,SAAWoW,EAAQpW,QAAQsR,cAAczC,SAAS,QAExEwvC,EACJhmD,EAAYyV,OAASwB,EAAAA,EAASC,UAC9B+uC,EAAAA,EAAAA,IAAuBjmD,EAAmC+d,GACtDmoC,GACJC,EAAAA,EAAAA,IAA2BpoC,KAAkCqoC,EAAAA,GAAwBC,OAItFztC,EAAA/M,IAF2BC,EAAAA,EAAAA,UAC1Bk6C,EAA0BX,GAAgB,GAAKA,GAAgB,IAChE,GAFM7G,EAAM5lC,EAAA,GAAE0tC,EAAS1tC,EAAA,GAG6CyD,EAAAxQ,IAArCC,EAAAA,EAAAA,UAAkC,IAAG,GAA9Dy6C,EAAQlqC,EAAA,GAAEmqC,EAAWnqC,EAAA,GAEtBoqC,EAAiB,CAACxvC,EAAAA,EAAS4C,UAAW5C,EAAAA,EAASoK,kBAAkB7K,SAASxW,EAAYyV,MAEtFmsC,EAAkBzoC,UACtB,MAAQutC,SAA2BnI,EAAmBxgC,EAAQpe,GAAI6+C,EAAO3uC,QAAjE62C,iBACRF,EAAYE,EAAiB,GAG/BnzC,EAAAA,EAAAA,YAAU,KACRquC,GAAiB,GAChB,CAACpD,KAEJjrC,EAAAA,EAAAA,YAAU,KACJyyC,GAAyBM,EAAUjB,GAAgB,GAAG,GACzD,CAACrlD,EAAYyV,OAEhB,MAAMkxC,EAAmBA,KACvB/E,IACA9B,GAAgB,GAEZ2G,GACFhB,GAAoB,EACtB,EAGF,OACEl5C,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACyzC,EAAyB,CACxBpxC,QAASA,IAAM84C,GAAoB,GACnC/4C,OAAQ84C,EACRxH,qBAAsBA,IAAMuH,GAAoB,MAElDj7C,EAAAA,EAAAA,KAACs8C,EAAAA,EAAS,CAACl6C,OAAQg5C,EAAiB/4C,QAASA,IAAMg5C,GAAmB,MACtEp5C,EAAAA,EAAAA,MAACgoC,GAAO,CAACnW,IAAKA,EAAKz+B,GAAG,MAAK8K,SAAA,CAAC,YAChBk1C,KAEXuG,GACC35C,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACE8B,EAAAA,EAAAA,MAAA,KAAA9B,SAAA,CAAG,mBACgBk1C,EAAY,qCAAmC,IAC/DiG,EAAW,kBAAoB,MAAM,YAGfh1C,IAAnB5Q,EAAYL,IAEZ4M,EAAAA,EAAAA,MAACs6C,GAAW,CAAAp8C,SAAA,EACVH,EAAAA,EAAAA,KAAA,OAAAG,SAAK,uBACLH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLjH,QAASA,KACP3B,GAASye,EAAAA,EAAAA,IAAiB,CAAE5jB,MAAM,IAAQ,EAC1CwD,SACH,eAMH43C,GAEA/3C,EAAAA,EAAAA,KAACo1C,EAA2B,CAC1BC,YAAaA,GAAe,cAC5B5hC,QAASA,EACTsa,UAAWsuB,EACX7G,gBAAiBA,IAInB2G,GAEAn8C,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACL3D,OAAO,gBACPtD,QAASoL,UACH4sC,QACsBe,EAAAA,EAAAA,IAAqB/oC,EAAQpe,IACtCmgD,GAAgB,GAC1B6F,GAAmB,GAExB7F,GAAgB,EAClB,EACAr1C,SACH,2BAbL,MAqBJH,EAAAA,EAAAA,KAACy8C,GAAM,CAAAt8C,UACLH,EAAAA,EAAAA,KAAA,KAAAG,SAAG,6BAGN87C,EAASjmD,OAAS,IACjBiM,EAAAA,EAAAA,MAACy6C,GAAM,CAAAv8C,SAAA,CAAC,YAENH,EAAAA,EAAAA,KAAC28C,EAAAA,GAAkB,CACjBv1C,QACE1R,EAAYyV,OAASC,EAAAA,EAAWC,QAC5B0vC,GACAA,GAAgBllD,QAAQ+mD,GAA4B,YAAjBA,EAAOr3C,QAEhDA,MAAO2uC,EACPrxC,SAAWC,GAAMk5C,EAAUl5C,SAIjC9C,EAAAA,EAAAA,KAAC68C,GAAS,CAAA18C,SACP87C,EAAStnD,KAAKuiD,IACbl3C,EAAAA,EAAAA,KAACq3C,GAAc,CAEb5jC,QAASA,EACTyjC,QAASA,EACT3B,iBAAkB,EAClBgC,UAAWmE,EACX7T,gBAAiBA,EACjByP,gBAAiBA,GANZJ,EAAQ7hD,UAUlB,EAIP,QAAeynD,EAAAA,EAAAA,YAAW9B,IAE1B,MAAMuB,GAAcn4C,EAAAA,GAAOC,GAAG;;;;;;gBAMdd,EAAAA,GAAOw5C;;;EAIjBL,GAASt4C,EAAAA,GAAOC,GAAG;;;;;IAKrBC,EAAAA,GAAM8I;EAEJ68B,GAAU7lC,EAAAA,GAAOC,GAAG;IACtBC,EAAAA,GAAMoV;;;;;EAMJmjC,GAAYz4C,EAAAA,GAAOC,GAAG;;EAGtBo4C,GAASr4C,EAAAA,GAAOC,GAAG;;2GCnOlB,MAAM24C,EAAO,CAClB,CACE/4C,KAAM,8DACNb,KAAM,oCAER,CACEa,KAAM,8DACNb,KAAM,iCAER,CACEa,KAAM,0DACNb,KAAM,yCAER,CACEa,KAAM,mFACNb,KAAM,kDAER,CACEa,KAAM,yEACNb,KAAM,4CAER,CACEa,KAAM,uGACNb,KAAM,wDAER,CACEa,KAAM,6EACNb,KAAM,mCAIG65C,EAAkB,CAC7B,CACEh5C,KAAM,gFACNb,KAAM,mDAER,CACEa,KAAM,wEACNb,KAAM,0DAER,CACEa,KAAM,iEACNb,KAAM,oDAER,CACEa,KAAM,uEACNb,KAAM,2BAER,CACEa,KAAM,6FACNb,KAAM,kCAER,CACEa,KAAM,sGACNb,KAAM,4CAIG85C,EAAgB,CAC3B,CACEj5C,KAAM,wEACNb,KAAM,+FAER,CACEa,KAAM,iGACNb,KAAM,oEAER,CACEa,KAAM,8EACNb,KAAM,iDAER,CACEa,KAAM,2EACNb,KAAM,8CAER,CACEa,KAAM,6EACNb,KAAM,iDAIG+5C,EAAiC,CAC5C,CACE/5C,KAAM,mEACNa,KAAM,6EAER,CACEb,KAAM,sDACNa,KAAM,qFAER,CACEb,KAAM,8DACNa,KAAM,uGAER,CACEb,KAAM,iGACNa,KAAM,gIAIGm5C,EAAY,CACvB,CACEn5C,KAAM,kDACNb,KAAM,4DAER,CACEa,KAAM,2DACNb,KAAM,sHAER,CACEa,KAAM,yDACNb,KAAM,uEAER,CACEa,KAAM,4IACNb,KAAM,gH,eCnGV,MAAQi6C,EAAYC,EAAAA,GAAZD,QA4CR,MA1CoBE,EAAG9pC,cACrB,MAAM+pC,EAAc,IAAIR,GAEpBvpC,EAAQgqC,YAAYC,iBACtBF,EAAYvnD,KAAK,CACfgO,KAAM,uCAAuCwP,EAAQgqC,YAAYC,kBACjEt6C,KAAM,gDAIV,MAAMu6C,EAAelqC,EAAQ/E,MAAMxC,SAAS,cACtC0xC,EAAYnqC,EAAQtd,KAAK+V,SAC7B,8EAEI2xC,EAA4C,qBAAjBpqC,EAAQtd,KACnC2nD,EAAgBrqC,EAAQpW,QAAQhI,KAAOgoD,EAE7C,IAAIU,EAAOP,EAWX,OAVIG,EACFI,EAAOd,EACEW,EACTG,EAAOb,EACEW,EACTE,EAAOZ,EACEW,IACTC,EAAOX,IAIPn7C,EAAAA,EAAAA,MAAChC,EAAS,CAAAE,SAAA,EACRH,EAAAA,EAAAA,KAACiqC,EAAO,CAAA9pC,SAAC,+BACR49C,EAAKppD,KAAKqpD,IACTh+C,EAAAA,EAAAA,KAAA,OAAAG,UACEH,EAAAA,EAAAA,KAAC42C,EAAAA,GAAQ,CAACnsC,GAAI,CAAEsB,SAAUiyC,EAAI/5C,MAAQqrC,KAAMhrC,EAAAA,GAAM8I,UAAW6wC,QAAM,EAAA99C,SAChE69C,EAAI56C,QAFC46C,EAAI/5C,UAMN,EAMhB,MAAMhE,EAAYmE,EAAAA,GAAOC,GAAG;sBACNd,EAAAA,GAAO2N;;;;;;;EAQvB+4B,EAAU7lC,EAAAA,GAAOC,GAAG;IACtBC,EAAAA,GAAM+L;;6KCpDK,SAAS6tC,GAAa,QACnCzqC,EAAO,aACP0qC,GAAe,EAAI,cACnBC,GAAgB,EAAI,WACpBC,EAAU,WACVC,IAEA,MAAMjhD,EAAUoW,EAAQpW,QAExB,GAAIoW,EAAQy6B,cAAgB,kBAAmB7wC,EAAS,OAAO,KAE/D,IAAIkhD,EAAwC,GACxC,wBAAyB9qC,IAC3B8qC,EAAoB9qC,EAAQ+qC,qBAG9B,IAAIC,EAAkDF,EAAkB1oD,QAAQ6oD,IAC9E/C,EAAAA,EAAAA,IAAuB+C,EAAUjrC,KAEnCgrC,GAA8BE,EAAAA,EAAAA,GAAwBF,GACtDA,EAA8BA,EAA4BG,MACxD,CAACruC,EAAGsuC,IACF7qB,QAAO8qB,EAAAA,EAAAA,IAA0BD,EAAGprC,KAAasrC,EAAAA,EAASC,cAC1DhrB,QAAO8qB,EAAAA,EAAAA,IAA0BvuC,EAAGkD,KAAasrC,EAAAA,EAASC,gBAG9D,MAAM57C,EAAOi7C,GAAchhD,EAAQnD,YAEnC,OACE+H,EAAAA,EAAAA,MAAChC,EAAS,CAAC,cAAY,oBAAoBq+C,WAAYA,EAAWn+C,SAAA,CAC/D6zB,OAAO5wB,GAAMpN,QAAU,IACtBiM,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACiqC,EAAO,CAAC50C,GAAG,aAAa+oD,cAAeA,EAAcj+C,SAAC,gBAGvDH,EAAAA,EAAAA,KAAA,OAAAG,SACGk+C,GACCY,EAAAA,EAAAA,IAAmB77C,IAEnBnB,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACG8+C,EAAAA,EAAAA,IAAmB77C,GAAM,QAE1BpD,EAAAA,EAAAA,KAAC42C,EAAAA,GAAQ,CACPnsC,GAAI,YAAYpN,EAAQ6iB,aACxB5c,MAAOC,EAAAA,GAAOC,UACd8rC,KAAMhrC,EAAAA,GAAMiU,SACZ2mC,WAAS,EACTjB,QAAM,EAAA99C,SACP,uBAQVs+C,EAA4BzoD,OAAS,IACpCiM,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACiqC,EAAO,CAACmU,eAAa,EAAAj+C,SAAC,eACvBH,EAAAA,EAAAA,KAACm/C,EAAS,CAAChB,aAAcA,EAAah+C,SACnCs+C,EAA4B9pD,KAAKyzC,IAChCpoC,EAAAA,EAAAA,KAACiG,EAAAA,GAAW,CAEVC,KAAMkiC,EACNzlC,KAAK,KACLimC,SAAUj8B,EAAAA,EAASC,SAHd,YAAcw7B,EAAO/yC,aAW1C,CAEA,MAAM4K,EAAYmE,EAAAA,GAAOC,GAAG;IACxBC,EAAAA,GAAMuG;iBACO,EAAGyzC,gBAAiBA,GAAc;;;;EAK7CrU,EAAU7lC,EAAAA,GAAOC,GAAG;IACtBC,EAAAA,GAAMyI;IACN,EAAGqxC,mBAAoBA,GAAiB;;EAGtCe,EAAY/6C,EAAAA,GAAOC,GAAG;;;;IAIxB,EAAG85C,kBACHA,GACA,WACIlxC,EAAAA,GAAkBmyC;iKCjGX,SAASxrB,GAAO,QAAEngB,EAAO,UAAE2S,GAAY,IACpD,MAAM9C,GAAWthB,EAAAA,EAAAA,KAAajP,GAAqBA,EAAM+K,OAAOwlB,WAE1D+7B,EAAmB,kBAAmB5rC,EAAQpW,SAAWoW,EAAQy6B,aACjEoR,EAAQ7rC,EAAQ8nC,mBAAqB11B,EAAAA,GAAgB0Q,oBACrDgpB,EAAW9rC,EAAQgqC,YAEzB,OACEx7C,EAAAA,EAAAA,MAAChC,EAAS,CACRu/C,mBACGF,GAASC,EAASE,aAAa9kD,KAAQ8Y,EAAQisC,wBAAwBD,aAAa9kD,IAEvFyrB,UAAWA,EAAUjmB,SAAA,EAErB8B,EAAAA,EAAAA,MAAC09C,EAAM,CAACv5B,UAAWA,EAAUjmB,SAAA,EAC3B8B,EAAAA,EAAAA,MAAC29C,EAAgB,CACf1+B,IAAKm+B,GAAqBC,IAAUC,EAASM,iBAAoB,MACjEp1C,IACG40C,IACCC,GAASC,EAASM,iBAAoBP,IACxC,YAAa7rC,EAAQpW,QAA2B6iB,aAElDkG,UAAWA,EAAUjmB,SAAA,EAErBH,EAAAA,EAAAA,KAACuoC,EAAAA,GAAa,CACZE,SAAU,WAAYh1B,EAAQpW,QAAUoW,EAAQpW,QAAQqrC,OAAO/tC,IAAM,KACrE6tC,UAAW6W,EACX18C,KAAM2gB,EAAW,KAAO,OAEzB+7B,EACI5rC,EAAQpW,QAAgC6qC,cACxCz0B,EAAQpW,QAA2BsR,aACvC8E,EAAQpW,QAAQyiD,sBAAwBC,EAAAA,GAA0BC,WACjEhgD,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,WAAW6M,KAAK,KAAKoE,OAAO,cAAczD,MAAOC,EAAAA,GAAO08C,oBAGtEX,IAASt/C,EAAAA,EAAAA,KAACkgD,EAAa,CAAC95B,UAAWA,EAAUjmB,SAAEo/C,EAASY,qBAE3DngD,EAAAA,EAAAA,KAACyM,EAAK,CAACiC,MAAO+E,EAAQ/E,MAAO0X,UAAWA,EAAUjmB,SAC/CsT,EAAQ/E,QAEV+E,EAAQisC,wBACP1/C,EAAAA,EAAAA,KAACogD,EAAqB,CAAC31C,GAAI,gBAAgBgJ,EAAQisC,uBAAuBvpD,OAAOgK,SAC9EsT,EAAQisC,uBAAuB5pD,QAGlCkK,EAAAA,EAAAA,KAAA,YAIR,CAEA,MAAMC,EAAYmE,EAAAA,GAAOC,GAAG;;;;;;;gBAOZ,EAAGm7C,wBACfA,EAAqB,OAAOA,KAAwB;;;EAIlDG,EAASv7C,EAAAA,GAAOC,GAAG;;;;IAIrB,EAAG+hB,gBACFA,GACD,SACEnZ,EAAAA,GAAkB6M;EAOlB8lC,GAAmBx7C,EAAAA,EAAAA,IAAOoG,EAAAA,GAAK;;;;WAI1BjH,EAAAA,GAAOY;IACdG,EAAAA,GAAM+7C;;2BAEiB98C,EAAAA,GAAO68B;mCACC78B,EAAAA,GAAO68B;;;aAG7B78B,EAAAA,GAAOY;6BACSZ,EAAAA,GAAO68B;qCACC78B,EAAAA,GAAO68B;;EAGtC8f,EAAgB97C,EAAAA,GAAOC,GAAG;WACrBd,EAAAA,GAAOY;IACdG,EAAAA,GAAMg8C;IACN,EAAGl6B,gBACFA,GACD,SACEnZ,EAAAA,GAAkBD,+BAChB1I,EAAAA,GAAM8I;EAIRX,EAAQrI,EAAAA,GAAOC,GAAG;;IAEpB,EAAGqK,WACCA,EAAM1Y,OAAS,GAAWsO,EAAAA,GAAMiiB,cAC7BjiB,EAAAA,GAAMi8C;;WAGNh9C,EAAAA,GAAOY;;;;IAId,EAAGiiB,YAAW1X,YACb0X,GACD,sBAEQ1X,EAAM1Y,OAAS,GAAW,GACvB;EAUToqD,GAAwBh8C,EAAAA,EAAAA,IAAOoG,EAAAA,GAAK;;;;;;sBAMpBjH,EAAAA,GAAOi9C;;WAElBj9C,EAAAA,GAAOY;IACdG,EAAAA,GAAMC;;2BAEiBhB,EAAAA,GAAOs3C;mCACCt3C,EAAAA,GAAOs3C;;;aAG7Bt3C,EAAAA,GAAOY;wBACIZ,EAAAA,GAAO88B;6BACF98B,EAAAA,GAAOs3C;qCACCt3C,EAAAA,GAAOs3C;;kQCxD5C,MAxFsB4F,EACpBhtC,UACAitC,kBACAC,gBACAC,+BAA8B,MAE9B,MAAMlrD,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAE/DmrD,EAAuB,CAC3BC,YAAY9gD,EAAAA,EAAAA,KAAC+gD,EAAM,CAACz9C,MAAOC,EAAAA,GAAOylC,OAAO7oC,SAAC,iBAC1CqJ,QACEvH,EAAAA,EAAAA,MAAC8+C,EAAM,CAACz9C,MAAOC,EAAAA,GAAOy9C,UAAU7gD,SAAA,CAAC,YACrB0N,IAAM4F,EAAQgqC,YAAYwD,UAAY,GAAGnzC,OAAO,YAG9DozC,aAAalhD,EAAAA,EAAAA,KAAC+gD,EAAM,CAACz9C,MAAOC,EAAAA,GAAO49C,YAAYhhD,SAAC,aAChDihD,cAAcphD,EAAAA,EAAAA,KAAC+gD,EAAM,CAACz9C,MAAOC,EAAAA,GAAO49C,YAAYhhD,SAAC,cAGnD,GAAIsT,EAAQ8nC,mBAAqB11B,EAAAA,GAAgBwQ,KAAO5iB,EAAQgqC,YAAY4D,SAAU,CACpF,MAAMC,GACJr/C,EAAAA,EAAAA,MAAC8+C,EAAM,CAACz9C,MAAOC,EAAAA,GAAOy9C,UAAU7gD,SAAA,EAC9BH,EAAAA,EAAAA,KAACuhD,EAAAA,GAAiB,CAAClhC,OAAO,UAAU,iCAKxCwgC,EAAqBr3C,OAAS83C,EAC9BT,EAAqBK,YAAcI,CACrC,CAEA,IAAIE,EAAmB,YACnBC,EAA8B,MAClC,GAAQhuC,EAAQ8nC,mBACT11B,EAAAA,GAAgBC,mBACnB07B,EAAmB,UACnBC,EAAoB,sBAIxB,MAAMC,GACJC,EAAAA,EAAAA,IAAaluC,KAAamuC,EAAAA,GAAUC,aAAensD,EAAYyV,OAASwB,EAAAA,EAASC,QAEnF,OACE3K,EAAAA,EAAAA,MAAChC,EAAS,CAAC,cAAY,SAAQE,SAAA,EAC3BygD,IAAgCc,IAChC1hD,EAAAA,EAAAA,KAAC8hD,EAAAA,GAAG,CACFn/C,KAAK,KACLoL,gBAAiBxK,EAAAA,GAAOgoB,eACxBjoB,MAAOC,EAAAA,GAAO88B,SACdiP,KAAMhrC,EAAAA,GAAMC,WACZ+Q,QAASksC,EACTn+C,SAAUo+C,KAGbM,EAAAA,EAAAA,IAAiBtuC,EAASotC,GAC1BD,GACC5gD,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLnD,QAAQ,wBACR5E,KAAK,KACLc,QAASA,MACP4T,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBC,MAAO,CAC5BqT,gBAAiB,gBACjBpT,aAAc,yBACds+B,aAAcriC,EAAQtd,MACtB,EACFgK,SACH,uBAIDuhD,IACChB,GACCz+C,EAAAA,EAAAA,MAAC+/C,EAAO,CAAA7hD,SAAA,EACNH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,UAAUwN,MAAOC,EAAAA,GAAOqmB,MAAOjnB,KAAK,OAAO,yBAIxDV,EAAAA,EAAAA,MAACggD,EAAQ,CAAA9hD,SAAA,EACPH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,OAAOwN,MAAOC,EAAAA,GAAOC,aAChCxD,EAAAA,EAAAA,KAACkiD,EAAY,CAACvB,cAAeA,EAAcxgD,SAAC,oBAIxC,EAMhB,MAAMF,EAAYmE,EAAAA,GAAOC,GAAG;;;;;0BAKFd,EAAAA,GAAOsE;IAC7BvD,EAAAA,GAAMC;EAEJw8C,EAAS38C,EAAAA,GAAOC,GAAG;;;;WAId,EAAGf,WAAYA;EAEpB0+C,EAAU59C,EAAAA,GAAOC,GAAG;;;;WAIfd,EAAAA,GAAOqmB;EAEZq4B,EAAW79C,EAAAA,GAAOC,GAAG;;;;WAIhBd,EAAAA,GAAOC;;;;;;EAOZ0+C,EAAe99C,EAAAA,GAAOsP,IAAI;;;;;;;IAO5B,EAAGitC,mBACHA,GACA;IAIA1zC,EAAAA,GAAkB6M;;;;kgCCbtB,MAtHgBqoC,EACd1uC,UACA2uC,cAAa,EACb3+C,UACAm9C,+BAA8B,EAC9ByB,eAEA,MAAyD/gD,EAAAC,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAlDm/C,EAAar/C,EAAA,GAAEghD,EAAgBhhD,EAAA,GAEhC5L,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAE7DgZ,EACN+E,EADM/E,MAAOrR,EACboW,EADapW,QAAS4Q,EACtBwF,EADsBxF,YAAaE,EACnCsF,EADmCtF,mBAAoBsvC,EACvDhqC,EADuDgqC,YAAalC,EACpE9nC,EADoE8nC,iBAGtEgH,GAAiDC,EAAAA,EAAAA,GAAiB/uC,EAAQpe,IAAlEotD,EAAmBF,EAAnBE,oBAAqB/B,EAAe6B,EAAf7B,gBAc7B,IAAIjmB,EAIFA,EAHG/kC,GAAaL,GAEPK,EAAYyV,OAASwB,EAAAA,EAASoK,iBAC5B9I,EAEAE,EAJA,IAAKF,GAAe,MAASE,GAAsB,IAOhEssB,EAAWviC,MAAMC,KAAK,IAAIC,IAAIqiC,IAE9B,MAAMioB,GAAe7G,EAAAA,EAAAA,IAA2BpoC,KAAaqoC,EAAAA,GAAwB+F,YAC/ErZ,GAAYgT,EAAAA,EAAAA,IAAsB/nC,EAAS/d,GAE3CitD,EAAWD,GAAgB9B,EAA8BgC,EAAmBC,EAElF,OACE7iD,EAAAA,EAAAA,KAAC2iD,EAAQ,CACPl4C,GAAI,CACFsB,UAAU+2C,EAAAA,EAAAA,IAAmBrvC,GAC7B4uC,YACAliD,UAEF8B,EAAAA,EAAAA,MAAC4pB,EAAAA,GAAI,CACHtS,QAAQ,MACRwpC,iBAAkBX,EAClB3+C,QAASA,GAtCMu/C,OACfnH,EAAAA,EAAAA,IAA2BpoC,KAAaqoC,EAAAA,GAAwB+F,cAEpEY,KAEAprC,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBC,MAAO,CAC5BC,aAAc,2BACdoT,gBAAiB,aACjBq4B,WAAW,IACX,GA8BEztC,aAAcA,IAAM8sC,GAAiB,GACrC7sC,aAAcA,IAAM6sC,GAAiB,GACrC,cAAY,WAAUniD,SAAA,CAErBiiD,IACCpiD,EAAAA,EAAAA,KAACkjD,EAAc,CAAA/iD,UACbH,EAAAA,EAAAA,KAACmjD,EAAY,CACX3D,mBACEjE,IAAqB11B,EAAAA,GAAgBwQ,KAAOonB,EAAY2F,aAAaC,YAAY1oD,IAEnFgmD,cAAeA,OAIrB1+C,EAAAA,EAAAA,MAACk3C,EAAW,CAACiJ,WAAYA,EAAWjiD,SAAA,EAClC8B,EAAAA,EAAAA,MAACqhD,EAAO,CAAC,cAAY,eAAcnjD,SAAA,EACjCH,EAAAA,EAAAA,KAACuoC,EAAAA,GAAa,CACZC,UAAWA,EACXC,SAAU,WAAYprC,EAAUA,EAAQqrC,OAAO/tC,IAAM,KACrDgI,KAAMy/C,EAAa,KAAO,OAE3B5Z,EACEnrC,EAAgC6qC,eAAiB,WAElDloC,EAAAA,EAAAA,KAACujD,EAAAA,GAAa,CACZngD,KAAM,iBAAkB/F,EAAUA,EAAQsR,aAAe,GACzD2gC,KAAMhrC,EAAAA,GAAM+L,WACZmzC,UAAW,eAAepB,EAAa,GAAK,QAC5C56C,aAAa,cAInBxH,EAAAA,EAAAA,KAACyM,EAAK,CAAC21C,WAAYA,EAAY,cAAY,QAAOjiD,UAChDH,EAAAA,EAAAA,KAACujD,EAAAA,GAAa,CACZngD,KAAMsL,EACN+0C,MAAOrB,EAAa,EAAI,EACxB9S,KAAM8S,EAAa99C,EAAAA,GAAM8M,iBAAmB9M,EAAAA,GAAMiU,cAGtDvY,EAAAA,EAAAA,KAAA,OAAK,cAAY,WAAUG,UACzBH,EAAAA,EAAAA,KAAC0jD,EAAAA,GAAY,CAACC,SAAU,EAAExjD,SACvBs6B,EAAS9lC,KAAKivD,IACb5jD,EAAAA,EAAAA,KAAC8hD,EAAAA,GAAG,CAEFxsC,QAASsuC,EACTjhD,KAAK,KACLkhD,MAAOlD,EAAgB,OAAS,WAH3B,GAAGltC,EAAQpe,MAAMuuD,eAShC5jD,EAAAA,EAAAA,KAACygD,EAAa,CACZhtC,QAASA,EACTitC,gBAAiBA,IAAmB,EACpCC,cAAeA,EACfC,4BAA6BA,QAGxB,EAMf,MAAMiC,GAAiBz+C,EAAAA,EAAAA,IAAOoG,EAAAA,GAAK;;;;aAItBjH,EAAAA,GAAOyE;;;EAId46C,EAAmBx+C,EAAAA,GAAOC,GAAG;;WAExBd,EAAAA,GAAOyE;;EAGZk7C,EAAiB9+C,EAAAA,GAAOC,GAAG;;;;WAItBd,EAAAA,GAAOY;;EAGZg/C,EAAe/+C,EAAAA,GAAOC,GAAG;;;;;;2BAMJ,EAAGm7C,wBAAyBA;;qBAElC,EAAGmB,mBAAqBA,EAAgB,OAAS;;;EAIhExH,EAAc/0C,EAAAA,GAAOC,GAAG;;;gBAGd,EAAG+9C,gBAAkBA,EAAa,QAAU;sBACtC,EAAGr0C,qBAAsBA;;mBAE5B,EAAG0K,kBAAmBA;EAEnC6qC,EAAUl/C,EAAAA,GAAOC,GAAG;;;;;IAKtBC,EAAAA,GAAM+L;EAEJ5D,EAAQrI,EAAAA,GAAOC,GAAG;YACZ,EAAG+9C,gBAAkBA,EAAa,OAAS;;IAEnD99C,EAAAA,GAAMiU;sHC/LV,MAAMmH,EAAiBA,EAAGtc,OAAO,6BAC/BnB,EAAAA,EAAAA,MAAC6hD,EAAI,CAAA3jD,SAAA,EACHH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,OAAOwN,MAAOC,EAAAA,GAAOyD,YAAarE,KAAK,OACjDS,KAMC0gD,EAAO1/C,EAAAA,GAAOC,GAAG;;;;;WAKZd,EAAAA,GAAOyD;IACd1C,EAAAA,GAAM8I;0sCCGV,SAAS22C,EAAWC,GAClB,OAAOn2C,IAAMm2C,GAAMl2C,OAAO,WAC5B,CAsJA,MApJ8Bm2C,EAAGC,eAAcC,gBAAe,EAAMxhD,OAAO,SACzE,MAAmDrB,EAAAC,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAA5CwhC,EAAU1hC,EAAA,GAAE8iD,EAAa9iD,EAAA,GAEhC,IAAM3G,EAAQupD,EAARvpD,IACF,qBAAsBupD,IACxBvpD,GAAM0pD,EAAAA,EAAAA,IAAkBH,EAAa/tD,KAAO+tD,EAAa3I,mBAG3D,IACI+I,EADA51C,EAAQw1C,EAAax1C,MAErBs1C,EAAsB,KACtB1uC,EAAyB,KAE7B,GAAI,qBAAsB4uC,EACxBI,GACEriD,EAAAA,EAAAA,MAACsiD,EAAe,CAACvhB,WAAYA,EAAYwhB,OAAQluC,QAAQ3b,GAAKwF,SAAA,EAC5DH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,cAAcwN,MAAOC,EAAAA,GAAO6rB,eACvCpvB,EAAAA,EAAAA,KAAA,QAAAG,SAAO+jD,EAAaO,sBAGpBP,EAAaF,OAAMA,EAAOD,EAAWG,EAAaF,OACtD1uC,EAAU4uC,EAAaQ,cAGlB,GAAI,WAAYR,EAAc,CACnC,MAAQ74C,EAAY64C,EAAZ74C,SACJA,GAAW64C,EAAaS,iBAC1Bj2C,EAAQ,GACLrD,GAAwBu5C,iBACxBv5C,GAAoCw5C,UACpCx5C,GAAqBsD,cACrBtD,GAAwBvV,MACzBouD,EAAaS,mBACTj2C,KAEJw1C,EAAaY,SACfR,GACEriD,EAAAA,EAAAA,MAAC8iD,EAAM,CAAA5kD,SAAA,EACLH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,UAAUwN,MAAOC,EAAAA,GAAO6rB,cAAe,IACjD41B,KAAKC,eAAen3C,OAAOo3C,KAAKC,MAAMjB,EAAaY,aAItDZ,EAAaF,OAAMA,EAAOD,EAAWG,EAAaF,OAClDE,EAAakB,WAAUpB,GAAQ,MAAMD,EAAWG,EAAakB,aACjE9vC,EAAU4uC,EAAahqD,WAGzB,MAAO,GAAI,gBAAiBgqD,EACtBA,EAAa7jC,SACfikC,GACEriD,EAAAA,EAAAA,MAAC8iD,EAAM,CAAA5kD,SAAA,EACLH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,SAASwN,MAAOC,EAAAA,GAAO6rB,cAAe,YACxC1iB,EAAAA,EAAAA,GAAE,CAAC,uBAAwBw3C,EAAa7jC,aAInD6jC,EAAamB,cACfrB,EAAO,gBAAgBD,EAAWG,EAAamB,gBAEjD/vC,EAAU4uC,EAAaQ,cAGlB,GAAI,qBAAsBR,EAAc,CAC7C,MAAQ3I,EAA6D2I,EAA7D3I,iBAAkB9nC,EAA2CywC,EAA3CzwC,QAASuqB,EAAkCkmB,EAAlClmB,UAAWsnB,EAAuBpB,EAAvBoB,mBAEzC52C,IAAOA,EAAQ,QAAQ+E,EAAQ/E,SAEpC,IAAI62C,EAAe,MACnB,OAAQhK,GACN,KAAK11B,EAAAA,GAAgBC,mBACnBy/B,EAAe,sBACf,MACF,KAAK1/B,EAAAA,GAAgByQ,UACnBivB,EAAe,YACf,MACF,KAAK1/B,EAAAA,GAAgB0Q,oBACnBgvB,EAAe,kBAGnBjB,GACEriD,EAAAA,EAAAA,MAAC8iD,EAAM,CAAA5kD,SAAA,EACLH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CACHhR,KAAM0vD,EAAAA,GAAyBjK,GAC/Bj4C,MAAOC,EAAAA,GAAO6rB,YACdzsB,KAAK,OAEN4iD,EAAa,KAAG9xC,EAAQ/E,SAIzBsvB,GAAasnB,EACftB,EAAOD,EAAWuB,GACRtnB,IACVgmB,EAAO,yBAGT1uC,EAAU4uC,EAAauB,OACzB,CAEA,OACEzlD,EAAAA,EAAAA,KAACC,EAAS,CAAC0C,KAAMA,EAAKxC,UACpB8B,EAAAA,EAAAA,MAACyjD,EAAO,CACNzyD,KAAK,SACLwQ,QAASA,IAAM0gD,GAAgBC,GAAephB,GAC9CrgC,KAAMA,EACNwhD,aAAcA,EAAahkD,SAAA,EAE3B8B,EAAAA,EAAAA,MAAC09C,EAAM,CAACh9C,KAAMA,EAAKxC,SAAA,EACjBH,EAAAA,EAAAA,KAACyM,EAAK,CACJyU,GACMvmB,GAAO,qBAAsBupD,EAAqB15C,EAAAA,GAC7C7P,EAAY,IACd,MAETsJ,KAEEtJ,GAAK0R,WAAW,QACZ1R,EACAA,GAAK0R,WAAW,OAChB,mBAAmB1R,IACnB,WAAWA,IAEjB8P,GAAI9P,EACJqI,OAAO,SACPL,KAAMA,EACNqgC,WAAYA,EACZv/B,QAAUX,GAAMnI,GAAOmI,EAAE2E,kBAAkBtH,SAE1CuO,IAEFy1C,GAAgB7uC,IAAWtV,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAMktC,EAAa,aAAe,oBAErEA,IAAchjC,EAAAA,EAAAA,KAACsP,EAAO,CAAAnP,SAAEmV,KACzBrT,EAAAA,EAAAA,MAAC0jD,EAAO,CAAC3iB,WAAYA,EAAW7iC,SAAA,CAC7BmkD,EACAN,IACC/hD,EAAAA,EAAAA,MAAC8iD,EAAM,CAAA5kD,SAAA,EACLH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,WAAWwN,MAAOC,EAAAA,GAAO6rB,cACnC40B,YAKC,EAMhB,MAAM/jD,EAAYmE,EAAAA,GAAOC,GAAG;;;aAGf,EAAG1B,UAAqB,OAATA,EAAgB,UAAY;gBACxC,EAAGA,UAAqB,OAATA,EAAgBY,EAAAA,GAAOsE,YAActE,EAAAA,GAAOwE;;EAGrE29C,EAAUthD,EAAAA,GAAOke,MAAM;;;;;;;IAOzBhe,EAAAA,GAAM4D;;;;;;cAMI,EAAGi8C,kBAAoBA,EAAe,UAAY;;;;;;EAO1DxE,EAASv7C,EAAAA,GAAOC,GAAG;;;;IAIrB,EAAG1B,UAAoB,OAATA,GAAiB;;;EAI7B8J,EAAQrI,EAAAA,GAAOC,GAAG;IACpB,EAAG1B,UAAqB,OAATA,EAAgB2B,EAAAA,GAAM4D,SAAW5D,EAAAA,GAAMgM;IACtD,EAAG0yB,aAAYrgC,UACF,OAATA,GAAkBqgC,EACT,OAATrgC,EAAsBwF,EAAAA,GAAOshC,UACpB,OAAT9mC,EAAsBwF,EAAAA,GAAOy9C,iBAAjC,EAFyCz9C,EAAAA,GAAOikB;WAIzC7oB,EAAAA,GAAOyE;IACd,EAAGkZ,GAAI2kC,KACC,QAARA,GACA,yCAGStiD,EAAAA,GAAOyE;EAMd29C,EAAUvhD,EAAAA,GAAOC,GAAG;;iBAET,EAAG2+B,gBAAkBA,EAAa,aAAe;;WAEvDz/B,EAAAA,GAAO6rB;;EAGZ21B,EAAS3gD,EAAAA,GAAOC,GAAG;;;;EAKnBkgD,GAAkBngD,EAAAA,EAAAA,IAAO2gD,EAAO;IAClC,EAAG/hB,gBAAiBA,GAAc;;;MAGhC,EAAGA,gBAAiBA,GAAc;MAClC,EAAGA,aAAYwhB,aAAcA,IAAWxhB,IAAe76B,EAAAA,GAAOikB;;EAG9D9c,EAAUlL,EAAAA,GAAOC,GAAG;;IAEtBC,EAAAA,GAAM2W;+pCChPH,MAAM6qC,EAAmB,CAC9B,EAAG,8CACH,EAAG,8EACH,EAAG,sFACH,EAAG,wFACH,EAAG,iGACH,EAAG,4HACH,EAAG,iCACH,EAAG,wCACH,EAAG,wCAGQC,EAAoB,CAAC,EAAG,GAE/BC,EAAgBC,IAEpBjmD,EAAAA,EAAAA,KAAA,MAAA7M,EAAAA,EAAA,GAAS8yD,EAAOl7C,OAAK,IAAEwJ,UAAU,mBAAmB,cAAY,aAAYpU,SACzE+lD,KAoFL,KAhFaC,EAAGC,WAAUC,WAAU,EAAOxjD,eAavCZ,EAAAA,EAAAA,MAAChC,EAAS,CAAAE,SAAA,EACR8B,EAAAA,EAAAA,MAACqkD,EAAe,CAACD,QAASA,EAAQlmD,SAAA,EAChCH,EAAAA,EAAAA,KAACumD,EAAqB,IACrBF,GACCrmD,EAAAA,EAAAA,KAACwmD,EAAAA,EAAM,CACLC,OAAK,EACLC,UAAQ,EACRC,SAAO,EACPphD,MAAO6gD,EACPjoC,IAAK,EACLC,IAAKhoB,OAAOkoB,KAAKsoC,EAAAA,IAA6B5wD,OAC9C6wD,MAAI,EACJC,YAAY,EACZC,aAAcf,EACdnjD,SACEA,GAAQ,CAAMmkD,GAAgCnkD,EAASmkD,OAI3D/kD,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACinD,EAAY,CAAA9mD,SACV/J,OAAOkoB,KAAKsoC,EAAAA,IAA6BjyD,KAAKuyD,IAC7ClnD,EAAAA,EAAAA,KAACmnD,EAAG,CAEFnmC,SAAUgT,OAAOkzB,IAAUd,EAAS,IAAMpyB,OAAOkzB,IAAUd,EAAS,IAD/Dc,QAKXlnD,EAAAA,EAAAA,KAAConD,EAAW,CAAChB,SAAUA,WAI7BpmD,EAAAA,EAAAA,KAACqnD,EAAM,CAAAlnD,SACJ/J,OAAOqa,OAAOm2C,EAAAA,IAA6BjyD,KAAI,CAAC4Q,EAAOygC,KACtD,MAAMpa,EAAaw6B,EAAS,IAAMpgB,EAAI,GAAKogB,EAAS,IAAMpgB,EAAI,EAC9D,OACE/jC,EAAAA,EAAAA,MAACqlD,EAAK,CAEJ17B,WAAYA,EACZ,cAAa,OAAOoa,EAAI,IACxB,gBAAepa,EAAWzrB,SAAA,EAE1B8B,EAAAA,EAAAA,MAACuN,EAAK,CAACvc,KAAK,SAASwQ,QAASA,IAtDhByjD,KACxB,IAAKrkD,EAAU,OAEf,MAAM0kD,GAAgBnB,EAAS,GAAKA,EAAS,IAAM,EAEjDvjD,EADEqkD,EAAQK,EACD,CAACL,EAAOd,EAAS,IAEjB,CAACA,EAAS,GAAIc,GACzB,EA8C8CM,CAAiBxhB,EAAI,GAAIqgB,QAASA,EAAQlmD,SAAA,CAC3E6lC,EAAI,EAAE,KAAGzgC,MAEZvF,EAAAA,EAAAA,KAACwwC,EAAAA,GAAO,CACNl7B,SACErT,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAA,KAAAG,SAAG,eACHH,EAAAA,EAAAA,KAAA,SACC8lD,EAAiB9f,EAAI,MAG1BriC,SAAS,QACT6D,aAAa,QACb4uC,eAAe,kBAAiBj2C,UAEhCH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,OAAO6M,KAAK,KAAKoE,OAAO,YAAYzD,MAAOC,EAAAA,GAAO6rB,kBApB1D7pB,EAsBC,SAUpB,MAAMtF,EAAYmE,EAAAA,GAAOC,GAAG;;;;EAKtBiiD,EAAkBliD,EAAAA,GAAOC,GAAG;;iBAEjB,EAAGgiD,aAAeA,EAAU,SAAW;;;;;;;;;;;;;0BAa9B9iD,EAAAA,GAAOsE;;;0BAGPtE,EAAAA,GAAOC;;;;;;;;;;;;4BAYLD,EAAAA,GAAO6rB;;;4BAGP7rB,EAAAA,GAAOsE;;;;;;;;;;;oBAWfM,EAAAA,GAAOs/C;0BACDlkD,EAAAA,GAAOY;;;;EAK3BoiD,EAAwBniD,EAAAA,GAAOC,GAAG;;;;;sBAKlBd,EAAAA,GAAOsE;;EAGvBo/C,EAAe7iD,EAAAA,GAAOC,GAAG;;;;;;;;;EAUzB8iD,EAAM/iD,EAAAA,GAAOC,GAAG;;;sBAGA,EAAG2c,cAAgBA,EAAWzd,EAAAA,GAAOsE,YAActE,EAAAA,GAAO6rB;;EAG1Eg4B,EAAchjD,EAAAA,GAAOC,GAAG;;SAErB,EAAG+hD,cAAe,IAAMA,EAAS,GAAK;YACnC,EAAGA,cAAe,IAAMA,EAAS,GAAKA,EAAS,IAAM;;sBAE3C7iD,EAAAA,GAAOC;;EAGvB6jD,EAASjjD,EAAAA,GAAOC,GAAG;;;;EAKnBijD,EAAQljD,EAAAA,GAAOC,GAAG;;;IAGpBC,EAAAA,GAAMgM;WACC,EAAGsb,gBAAkBA,EAAaroB,EAAAA,GAAOyE,MAAQzE,EAAAA,GAAO6rB;EAE7D5f,EAAQpL,EAAAA,GAAOke,MAAM;;;;IAIvB,EAAG+jC,cAAeA,GAAW;;;;EAK3BH,GACJjkD,EAAAA,EAAAA,MAAA,OAAKpE,MAAM,KAAKG,OAAO,IAAI0pD,QAAQ,WAAWC,KAAK,OAAOC,MAAM,6BAA4BznD,SAAA,EAC1FH,EAAAA,EAAAA,KAAA,QAAM6nD,EAAE,uBAAuBC,OAAQvkD,EAAAA,GAAOC,UAAWukD,YAAY,SACrE/nD,EAAAA,EAAAA,KAAA,QAAM6nD,EAAE,uBAAuBC,OAAQvkD,EAAAA,GAAOC,UAAWukD,YAAY,SACrE/nD,EAAAA,EAAAA,KAAA,QAAM6nD,EAAE,uBAAuBC,OAAQvkD,EAAAA,GAAOC,UAAWukD,YAAY,U,8UC7NzE,MA2BMC,GAAoB5jD,EAAAA,EAAAA,IAAOqc,EAAAA,EAAM;;WAE5Bld,EAAAA,GAAOyE;IACd1D,EAAAA,GAAM8I;EAEJ5K,GAAe4B,EAAAA,EAAAA,IAAOqc,EAAAA,EAAMnR,QAAQ;;MAEpChL,EAAAA,GAAMyI;aACCxJ,EAAAA,GAAOyE;;;;;MAKd1D,EAAAA,GAAM8I;aACC7J,EAAAA,GAAOyE;;;;EAMpB,MA/CgCigD,EAAGC,wBAAuBC,+BAEtDnoD,EAAAA,EAAAA,KAACgoD,EAAiB,CAChBrrD,KAAMurD,EACN7lD,QAASA,IAAM8lD,GAAyB,GACxCxlD,KAAK,OACL4J,oBAAoB,EACpBgI,UAAU,YAAWpU,UAErB8B,EAAAA,EAAAA,MAACO,EAAY,CAAArC,SAAA,EACXH,EAAAA,EAAAA,KAAA,MAAAG,SAAI,8CACJH,EAAAA,EAAAA,KAAA,KAAAG,SAAG,kEACH8B,EAAAA,EAAAA,MAAA,KAAA9B,SAAA,CAAG,2CACwC,KACzCH,EAAAA,EAAAA,KAAA,KAAGiE,KAAK,WAAWjB,OAAO,SAAQ7C,SAAC,eAE9B,IAAI,sBAGXH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACzX,KAAK,SAASwQ,QAASA,IAAM0kD,GAAyB,GAAOhoD,SAAC,e,ggCC0J9E,MA/JA,UAA8B,WAAE4pB,IAC9B,MAAMq+B,GAAmBpmD,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,YAAYonB,QAChFwG,GAAWthB,EAAAA,EAAAA,KAAajP,GAAqBA,EAAM+K,OAAOwlB,WAEKhiB,EAAAC,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAA9D6mD,EAAmB/mD,EAAA,GAAEgnD,EAAsBhnD,EAAA,GACQK,EAAAJ,GAAhCC,EAAAA,EAAAA,UAAS4mD,GAAoB,IAAG,GAAnDtrC,EAAKnb,EAAA,GAAEob,EAAQpb,EAAA,GAEmD2M,EAAA/M,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAlE0mD,EAAqB55C,EAAA,GAAE65C,EAAwB75C,EAAA,GAClByD,EAAAxQ,GAAZC,EAAAA,EAAAA,UAAS,IAAG,GAA7B+mD,EAAIx2C,EAAA,GAAEy2C,EAAOz2C,EAAA,GACqBE,EAAA1Q,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAlC6N,EAAK4C,EAAA,GAAEm1B,EAAQn1B,EAAA,GAC6DE,EAAA5Q,GAArCC,EAAAA,EAAAA,UAAgC,MAAK,GAA5EinD,EAAet2C,EAAA,GAAEu2C,EAAkBv2C,EAAA,GAEpCw2C,GAAuB96B,EAAAA,EAAAA,GAAY,CACvCC,WAAY86B,EAAAA,GACZ76B,UAAYkB,IACNA,EACFlF,IAEAqd,GAAS,EACX,EAEFhZ,QAASoE,EAAAA,KAGLq2B,GAA6Bh7B,EAAAA,EAAAA,GAAY,CAC7CC,WAAYg7B,EAAAA,GACZ/6B,UAAWA,KACT9d,EAAAA,EAAMhB,QAAQ,wDACdq5C,GAAuB,EAAM,EAE/Bl6B,QAAUhf,IACR,OAAQA,EAAIkD,UAAU+N,QACpB,KAAK,IAeH,OAdApQ,EAAAA,EAAMZ,OACJ05C,EAAAA,EAAAA,IACE,uEACA/oD,EAAAA,EAAAA,KAAA,QACE0J,MAAO,CAAEwG,eAAgB,aACzBzM,QAASoL,gBACDikB,EAAAA,EAAAA,IAAa,8BACnBh1B,OAAOhE,SAASmK,KAAO,QAAQ,EAC/B9D,SACH,sBAKE,EACT,KAAK,IAIH,OAHA8P,EAAAA,EAAMZ,OACJ3C,EAAAA,EAAAA,GAAE,+EAEG,EAEX,MAAM2C,CAAK,IAgBf,OAZApG,EAAAA,EAAAA,YAAU,KAEY,IAAhBs/C,EAAKvyD,QAAiBqZ,GACxBs5C,EAAqBt6B,OAAOk6B,EAC9B,GACC,CAACA,KAQFtmD,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACioD,EAAuB,CACtBC,sBAAuBA,EACvBC,yBAA0BA,KAE5BlmD,EAAAA,EAAAA,MAAC4xB,EAAAA,GAAa,CAACjiB,KAAM,EAAG,cAAY,mBAAmB/T,MAAM,QAAOsC,SAAA,EAClEH,EAAAA,EAAAA,KAAC2uB,EAAAA,GAAU,CAAC5D,WAAW,kBAAkBC,QAAQ,uCACjDhrB,EAAAA,EAAAA,KAACgpD,EAAe,CACd35C,MAAOA,EACP45C,UAAQ,EACRh2D,KAAK,SACLi2D,OAAQ,EACRC,YAAa7lC,EAAW,IAAM,IAC9B8lC,WAAY9lC,EAAW,GAAK,IAC5BtQ,YAAa,CAAC,IAAK,IAAK,IAAK,KAC7BnQ,SArBgBwmD,IAClBA,EAAiBrzD,QAAUqZ,GAAO+3B,GAAS,GAC/CohB,EAAQa,EAAiB,EAoBnBl5C,SAAUw4C,EAAqBn7B,aAEjCvrB,EAAAA,EAAAA,MAACqnD,EAAW,CAAAnpD,SAAA,CACTkP,IACCrP,EAAAA,EAAAA,KAACupD,EAAa,CAAC7/C,MAAO,CAAEpG,MAAOC,EAAAA,GAAOS,KAAM7D,UACzCuM,EAAAA,EAAAA,GAAE,wEAGPzK,EAAAA,EAAAA,MAACsnD,EAAa,CAAAppD,SAAA,EACXuM,EAAAA,EAAAA,GAAE,kEAAmE,KACtE1M,EAAAA,EAAAA,KAACwpD,EAAe,CAAC/lD,QAASA,IAAM6kD,GAAuB,GAAMnoD,UAC1DuM,EAAAA,EAAAA,GAAE,uEAGN27C,IACCpmD,EAAAA,EAAAA,MAACwnD,EAAY,CACX76C,SAAW9L,IACTA,EAAEgM,kBACFuI,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBu/B,OAAQ,CAC7BjsB,gBAAiB,uBACjB53B,OAAQ,4BACRo1D,mBACAsB,YAAa5sC,IAGM,KAAjBA,EAAMynB,QAOVmkB,EAAmB,MACnBG,EAA2Bx6B,OAAOvR,IAPhC4rC,EAAmB,CACjBiB,UAAU,EACV1tC,aAAc,uCAKsB,EACxC9b,SAAA,EAEFH,EAAAA,EAAAA,KAAC6vC,EAAAA,GAAS,CACR58C,KAAK,QACLsS,MAAOuX,EACPja,SAAWC,GAAMia,EAASja,EAAEE,OAAOuC,OACnCwW,OAAQ0sC,EAAkB,CAACA,QAAmBniD,KAEhDtG,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLzX,KAAK,SACLsU,QAAQ,UACR5E,KAAK,KACLoE,OAAO,WACPoJ,SAAU04C,EAA2Br7B,UAAUrtB,UAE9CuM,EAAAA,EAAAA,GAAE,uEAIT1M,EAAAA,EAAAA,KAAC4pD,EAAO,CAAC5rD,OAAQ,KAChB6mB,EAAAA,GAAcwG,yBACbrrB,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLzX,KAAK,SACLsU,QAAQ,wBACR9D,QAASoL,gBACD4I,EAAAA,EAAAA,KAAS,EAEjB1Q,OAAO,aAAY5G,SACpB,qBAQb,EAIA,MAAMmpD,EAAcllD,EAAAA,GAAOC,GAAG;;;;;;;;;EAWxBklD,EAAgBnlD,EAAAA,GAAOC,GAAG;IAC5BC,EAAAA,GAAMgM;;;WAGC/M,EAAAA,GAAOyE;EAIZghD,GAAkB5kD,EAAAA,EAAAA,IAAOylD,EAAAA,EAAe;;;;;oBAK1BtmD,EAAAA,GAAO4U;4BACC5U,EAAAA,GAAOC;;eAEpBD,EAAAA,GAAOyE;;qBAEDzE,EAAAA,GAAOyE;;;0BAGFzE,EAAAA,GAAOC;;;;;;iCAMAD,EAAAA,GAAOC;;;iCAGPD,EAAAA,GAAOC;;;;sBAIlBD,EAAAA,GAAOC;;;sBAGNuH,GAAUA,EAAMsE,OAAS9L,EAAAA,GAAOS;;;EAKjDwlD,EAAkBplD,EAAAA,GAAOsP,IAAI;IAC/BpP,EAAAA,GAAM8I;;;WAGC7J,EAAAA,GAAOC;;;;;EAOZomD,EAAUxlD,EAAAA,GAAOC,GAAG;YACb0G,GAAWA,EAAM/M,OAAS,GAAG+M,EAAM/M,WAAa;;EAIvDyrD,EAAerlD,EAAAA,GAAOwM,IAAI;;sHC5OzB,MAAMie,EAAiBA,EAC5BtpB,QACA1C,WACA+L,WACAoE,cACA82C,aAAa,QACbC,uBAAsB,MAGpB9nD,EAAAA,EAAAA,MAAChC,EAAS,CACR2O,SAAW9L,IACTA,EAAEgM,iBACFF,EAASrJ,EAAM,EACfpF,SAAA,EAEFH,EAAAA,EAAAA,KAAC8G,EAAAA,EAAI,CAAChR,KAAK,SAASwN,MAAOC,EAAAA,GAAOyD,YAAaD,OAAO,eACtD/G,EAAAA,EAAAA,KAACsR,EAAK,CAAC/L,MAAOA,EAAO1C,SAAWC,GAAMD,EAASC,EAAEE,OAAOuC,OAAQyN,YAAaA,KAC7EhT,EAAAA,EAAAA,KAACgqD,EAAc,CACbvmD,QAASA,KACPZ,EAAS,IACLknD,GACFn7C,EAAS,GACX,EACAzO,UAEFH,EAAAA,EAAAA,KAAC8G,EAAAA,EAAI,CAAChR,KAAK,IAAIwN,MAAOC,EAAAA,GAAO0mD,YAAatnD,KAAK,KAAKoE,OAAO,gBAE5DuP,QAAQwzC,KAAe9pD,EAAAA,EAAAA,KAAC0K,EAAM,CAACzX,KAAK,SAAQkN,SAAE2pD,OAK/C7pD,EAAYmE,EAAAA,GAAOwM,IAAI;;;;;sBAKPrN,EAAAA,GAAOsE;;;;wBAILtE,EAAAA,GAAOC;;;;;;0BAMLD,EAAAA,GAAO6rB;;;0BAGP7rB,EAAAA,GAAOC;;;;IAI7ByJ,EAAAA,GAAkB6M;;;EAKhBxI,EAAQlN,EAAAA,GAAOmN,KAAK;;;;;WAKfhO,EAAAA,GAAOyE;IACd1D,EAAAA,GAAM4lD;;;;aAIG3mD,EAAAA,GAAOyD;MACd1C,EAAAA,GAAM8I;;EAIN48C,EAAiB5lD,EAAAA,GAAOC,GAAG;;;;;;;;;EAW3BqG,EAAStG,EAAAA,GAAOke,MAAM;;sBAEN/e,EAAAA,GAAOgoB;WAClBhoB,EAAAA,GAAOC;;;IAGdc,EAAAA,GAAM6lD;;;wBAGc5mD,EAAAA,GAAO6mD;;;;wBAIP7mD,EAAAA,GAAOomB;;kqCCZ/B,IAjFgC0gC,EAC9BjoD,SACAC,UACAC,aACAgoD,YACAC,kBAEA,IAAKnoD,EAAQ,OAAO,KAEpB,MAAMN,GAAWC,EAAAA,EAAAA,MACX/N,GAAiBgO,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMsK,QAAQrJ,iBACjE0B,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAC/D80D,GAAgCC,EAAAA,EAAAA,IAA6Bz2D,EAAgB,CACjF0B,EAAYonB,QAGoCxb,EAAAC,GAAtBC,EAAAA,EAAAA,UAAmB,IAAG,GAA3CmiC,EAAMriC,EAAA,GAAEopD,EAASppD,EAAA,GACwBK,EAAAJ,GAAZC,EAAAA,EAAAA,UAAS,IAAG,GAAzCmpD,EAAUhpD,EAAA,GAAEipD,EAAajpD,EAAA,GACkB2M,EAAA/M,GAApBC,EAAAA,EAAAA,UAAiB,IAAG,GAA3CqhC,EAAOv0B,EAAA,GAAEu8C,EAAUv8C,EAAA,GACsCyD,EAAAxQ,GAAxBC,EAAAA,EAAAA,WAAkB,GAAM,GAAzD+M,EAAYwD,EAAA,GAAEvD,EAAeuD,EAAA,IAEpC9I,EAAAA,EAAAA,YAAU,KACRnH,GAASgpD,EAAAA,EAAAA,IAAuBp1D,EAAYqF,cAAc0iC,YAAY,GACrE,IAeH,OACEz9B,EAAAA,EAAAA,KAACmC,EAAAA,EAAU,CACTC,OAAQA,EACRC,QAASA,EACTkK,mBAAsC,IAAlBo3B,EAAO3tC,QAAmC,IAAnB6sC,EAAQ7sC,OACnDsM,WAAYA,EACZzE,MAAM,QAAOsC,UAEbH,EAAAA,EAAAA,KAACsP,EAAO,CAAC,cAAY,6BAA4BnP,UAC/C8B,EAAAA,EAAAA,MAAA,QAAM2M,SAtBU9L,IACpBA,EAAEgM,iBACEP,IACJC,GAAgB,GAChBu8C,QAAQC,IAAIrnB,EAAOhvC,KAAKmoB,GAAUytC,EAAYztC,EAAO+lB,MAClDooB,MAAK,KACJ5oD,IACA4N,EAAAA,EAAMhB,QAAQq7C,EAAU,IAEzBY,OAAO97C,GAAQ9D,QAAQ+D,MAAMD,KAC7B+7C,SAAQ,IAAM38C,GAAgB,KAAO,EAYPrO,SAAA,EAC3BH,EAAAA,EAAAA,KAACwP,EAAK,CAAArP,SAAC,uBACPH,EAAAA,EAAAA,KAACorD,EAAAA,EAAa,CACZ7lD,MAAOo+B,EAAOhvC,IAAIgc,EAAAA,IAClBvJ,QAASojD,EACT3nD,SAAU6nD,EACVtjB,SAAUwjB,KAEZ5qD,EAAAA,EAAAA,KAAC+kB,EAAK,CAAA5kB,SAAEwqD,KACR3qD,EAAAA,EAAAA,KAACwP,EAAK,CAAC67C,gBAAc,EAAAlrD,SAAC,wBACtBH,EAAAA,EAAAA,KAACsrD,EAAQ,CACPt4C,YAAY,gBACZ6zB,KAAK,IACLthC,MAAOs9B,EACPhgC,SAAWC,GAAM+nD,EAAW/nD,EAAEE,OAAOuC,OACrC,cAAY,mBAEdvF,EAAAA,EAAAA,KAACurD,EAAqB,CAAAprD,UACpBH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLzX,KAAK,SACL0P,KAAM,KACNU,SAAS,QACT8M,SAA4B,IAAlBwzB,EAAO3tC,QAAgBsgB,QAAQq0C,IAAep8C,EACxD,cAAY,gBAAepO,SAC5B,kBAMI,EAMjB,MAAMmP,EAAUlL,EAAAA,GAAOC,GAAG;;EAIpBmL,EAAQpL,EAAAA,GAAO1B,KAAK;IACtB4B,EAAAA,GAAM+M;;IAELzc,GAAMA,EAAEy2D,gBAAkB;EAGzBtmC,EAAQ3gB,EAAAA,GAAOC,GAAG;IACpBC,EAAAA,GAAM8I;WACC7J,EAAAA,GAAOS;;EAIZsnD,EAAWlnD,EAAAA,GAAO8rC,QAAQ;IAC5B5rC,EAAAA,GAAM8I;;;;sBAIY7J,EAAAA,GAAO6M;;;;;MAKvB9L,EAAAA,GAAM8I;aACC7J,EAAAA,GAAOyD;;EAIdukD,EAAwBnnD,EAAAA,GAAOC,GAAG;;wqCC7HxC,MAUamnD,EAAoBpnD,EAAAA,GAAOC,GAAG;WAChC,EAAGxG,WAAYA,GAAS;IAC/B,EAAG4tD,qBAAsB,GAAGA;;;;IAI5BnnD,EAAAA,GAAM8I;EAGGs+C,GAAiBtnD,EAAAA,EAAAA,KAnBV2G,GACXA,EAAM4gD,WACX3rD,EAAAA,EAAAA,KAAC4rD,EAAAA,EAAez4D,EAAA,CAACkC,GAAG,oBAAuB0V,IACzCA,EAAM8D,OACR7O,EAAAA,EAAAA,KAAC6rD,EAAAA,EAAW14D,EAAA,CAACkC,GAAG,gBAAmB0V,KAEnC/K,EAAAA,EAAAA,KAAC8rD,EAAAA,GAAM34D,EAAA,CAACkC,GAAG,kBAAqB0V,KAaY;IAC5CghD,EAAAA;;;;;;;;EAUSC,EAAe5nD,EAAAA,GAAOC,GAAG;;sBAEhBd,EAAAA,GAAOsE;;;;IAIzBvD,EAAAA,GAAM2W;;;;;EAOGgxC,GAAsB7nD,EAAAA,EAAAA,IAAO4nD,EAAa;;;EAK1CE,EAAc9nD,EAAAA,GAAOC,GAAG;IACjCC,EAAAA,GAAM2W;;EASGkxC,GALkB/nD,EAAAA,GAAOC,GAAG;;;EAKb,CAC1Bu4C,OAAQA,CAACpoC,GAAU43C,YAAWxgC,gBAAYz4B,EAAAA,EAAAA,EAAA,GACrCqhB,GAAM,IACTzG,gBAAiBq+C,GAAaxgC,EAAaroB,EAAAA,GAAO4U,YAAc,cAChEF,OAAQ2T,EAAa,aAAaroB,EAAAA,GAAOC,YAAc,QACvDiV,aAAcmT,EAAa,MAAQ,QACnC,SAAU,CACR7d,gBAAiBxK,EAAAA,GAAO4U,cAEvBG,EAAAA,GAASlL,WAAS,IACrB9J,MAAOC,EAAAA,GAAOyE,MACdwQ,OAAQ,YAEV6zC,QAAUC,GAAIn5D,EAAAA,EAAAA,EAAA,GACTm5D,GACAh0C,EAAAA,GAASlL,WAAS,IACrBqL,aAAc,QAEhB8zC,KAAOD,GAAIn5D,EAAAA,EAAAA,EAAA,GACNm5D,GACAh0C,EAAAA,GAASlL,WAAS,IACrBoM,OAAQ,KACRV,UAAW,MACXL,aAAc,QAEhB+zC,WAAaF,GAAIn5D,EAAAA,EAAA,GACZm5D,GAAI,IACPv+C,gBAAiBxK,EAAAA,GAAO4U,aACrBG,EAAAA,GAASlL,WAEdq/C,YAAcH,GAAIn5D,EAAAA,EAAA,GACbm5D,GACAh0C,EAAAA,GAASlL,WAEd4F,YAAaA,CAACs5C,GAAQF,eAAWj5D,EAAAA,EAAA,GAC5Bm5D,GAAI,IACPx0C,QAASs0C,EAAY,OAAS,QAC9B9oD,MAAOC,EAAAA,GAAOyD,aACXsR,EAAAA,GAASlL,a,i4ECjGhB,MAAMs/C,EAAY5hD,IAA6B,IAA1B3K,EAAQ2K,EAAR3K,SAAa4K,EAAK4hD,EAAA7hD,EAAA8hD,GAErC,OAAIzsD,EAAS0sD,eAAe3gD,SAAS,cAEjClM,EAAAA,EAAAA,KAAC8sD,EAAAA,EAAW3hC,OAAMh4B,EAAAA,EAAA,GAAK4X,GAAK,IAAA5K,UAC1B8B,EAAAA,EAAAA,MAAC6oB,EAAa,CAAA3qB,SAAA,CACX,WACDH,EAAAA,EAAAA,KAAC8qB,EAAqB,CAAA3qB,SAAEA,EAAS0sD,eAAeE,UAAU,YAMhE/sD,EAAAA,EAAAA,KAAC8sD,EAAAA,EAAW3hC,OAAMh4B,EAAAA,EAAA,GAAK4X,GAAK,IAAA5K,UAC1BH,EAAAA,EAAAA,KAAC8qB,EAAc,CAAA3qB,SAAEA,EAAS0sD,eAAiB1sD,MACzB,EAqBlB6sD,EAAWC,IAA6B,IAA1B9sD,EAAQ8sD,EAAR9sD,SAAa4K,EAAK4hD,EAAAM,EAAAC,GACpC,MAAAC,EAAAh6D,EAAA,GAAoC4X,GAA5B4gD,EAASwB,EAATxB,UAAkBwB,EAAPtmD,QAGjBkE,EAAMqiD,eAGR,OAAOptD,EAAAA,EAAAA,KAAC8sD,EAAAA,EAAWE,SAAQ75D,EAAAA,EAAA,GAAK4X,GAAK,IAAA5K,SAAGA,IAA+B,EAGnEktD,EAA2B3mB,GAAU37B,IAClC/K,EAAAA,EAAAA,KAAC8sD,EAAAA,EAAWQ,kBAAiBn6D,EAAAA,EAAA,GAAK4X,GAAK,IAAA5K,SAAGumC,KAG7C6mB,EAA0BC,GAA2BziD,IAEvD/K,EAAAA,EAAAA,KAAC8sD,EAAAA,EAAWW,iBAAgBt6D,EAAAA,EAAA,GAAK4X,GAAK,IAAA5K,SAAGqtD,KAIvCjnB,EAAYx7B,IAChB,MACEqiD,EAiBEriD,EAjBFqiD,eACAN,EAgBE/hD,EAhBF+hD,WACAnB,EAeE5gD,EAfF4gD,UACA9kD,EAcEkE,EAdFlE,QAEAO,GAYE2D,EAbF2iD,MAaE3iD,EAZF3D,SACAumD,EAWE5iD,EAXF4iD,WACA9qD,EAUEkI,EAVFlI,SACA0C,EASEwF,EATFxF,MACAmhC,EAQE37B,EARF27B,KACAlZ,EAOEziB,EAPFyiB,UACAhZ,EAMEzJ,EANFyJ,OACAo5C,EAKE7iD,EALF6iD,aACAJ,EAIEziD,EAJFyiD,sBACAx6C,EAGEjI,EAHFiI,YACA66C,EAEE9iD,EAFF8iD,WACAC,EACE/iD,EADF+iD,kBAG6DxsD,EAAAC,GAArBC,EAAAA,EAAAA,UAAS+D,GAAS,IAAG,GAAxDwoD,EAAazsD,EAAA,GAAE0sD,EAAgB1sD,EAAA,GACkBK,EAAAJ,GAApBC,EAAAA,EAAAA,UAASqsD,GAAW,GAAjD/5C,EAAUnS,EAAA,GAAEoS,EAAapS,EAAA,GAE1BssD,GAAmB38B,EAAAA,EAAAA,QAAOy8B,GAE1BG,EAAkBH,GAAe/3D,QAAU23D,GAEjD1kD,EAAAA,EAAAA,YAAU,KACR,MAAMklD,EAAM5oD,GAAOA,OAASA,EAC5ByoD,EAAiB91D,MAAM++B,QAAQk3B,GAAOA,EAAM,CAACA,GAAK,GACjD,CAAC5oD,KAEJ0D,EAAAA,EAAAA,YAAU,KACJpC,GAAWonD,EAAiB18B,SAASv7B,SAAW23D,EAClD55C,GAAc,GAEdA,EAAc85C,GAGhBI,EAAiB18B,QAAUw8B,CAAa,GACvC,CAACA,IAEJ,MAQMK,EAAkBp7C,IAEpB24C,EACA,uCACA,0BAEJ,OACE3rD,EAAAA,EAAAA,KAAC8qB,EAAmB33B,EAAAA,EAAA,GAAK4X,GAAK,IAAA5K,UAC5BH,EAAAA,EAAAA,KAAC8qB,EAAgB33B,EAAAA,EAAA,CAEfohB,UAAW,SACX85C,gBAAiB,SAEjBr7C,YAAao7C,EACbE,kBACEznD,EACK0nD,GAAe,YAAYA,IAC3BA,GAAe,WAAWA,IAEjCT,mBAAoBjnD,GAAiBinD,EACrChB,WAAU35D,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EAAA,CACRq7D,mBAAoBA,IAAM,MACtB3nD,GAAW,CAAEskB,OAAQuhC,IACrBhmB,GAAQ,CAAE4mB,kBAAmBD,EAAwB3mB,KACrDlZ,GAAa,CAAE8/B,kBAAmBA,IAAM,OACxCE,GAAyB,CAC3BC,iBAAkBF,EAAuBC,KAEvCU,GAAmB,CACrBT,iBAAkBA,IAAM,OACvB,CAAF,GACDT,SAAWyB,IACTzuD,EAAAA,EAAAA,KAACgtD,EAAQ75D,EAAA,CACPw4D,UAAWA,EACXyB,eACEc,EAAkB,8BAAgCd,QAAkB9mD,GAElEmoD,KAGL3B,GAELe,WAAYhnD,EAAUiN,EAAa+5C,GAC/B9iD,GAAK,IACTyJ,OAAMrhB,EAAAA,EAAAA,EAAA,GACD23B,GACAtW,GACAo5C,GAGLxmD,QAAS8mD,EAAkB,GAAK9mD,GAASzS,KAAK+5D,GAAIv7D,EAAA,CAAQuP,MAAOgsD,EAAKtrD,MAASsrD,KAC/E7rD,SA3DgBA,IAAa,CAACC,EAAG6rD,KACrC,MAAMR,EAAMrrD,EAAK5K,MAAM++B,QAAQn0B,GAAKA,EAAEnO,KAAKi6D,GAAMA,EAAErpD,OAASqpD,IAAK9rD,EAAI,CAACA,GAAK,GAAM,GACjFkrD,EAAiBG,GACO,oBAAbtrD,GACTA,EAASC,EAAG6rD,EACd,EAsDcvqB,CAAavhC,GACvB0C,MACEA,EACIsB,EACEO,GACIzS,KAAK+5D,GAAIv7D,EAAA,CAAQuP,MAAOgsD,EAAKtrD,MAASsrD,KACvC74D,QAAQ+mD,GAAWmR,EAAc7hD,SAAS0wC,GAAQr3C,SACrD6B,GACIzS,KAAK+5D,GAAIv7D,EAAA,CAAQuP,MAAOgsD,EAAKtrD,MAASsrD,KACvC74D,QAAQ+mD,GAAW37B,OAAO8sC,KAAmBnR,GAAQr3C,UAAS,QACnEe,OAGY,EAkE1BigC,EAASsoB,aAAe,CACtBhoD,SAAS,EACT8kD,WAAW,EACX98C,OAAO,EACP6+C,OAAO,EACPoB,cAAe,OACfC,kBAAkB,EAClBC,YAAY,GAGd,O,gGCvNA,IAhCkB1S,EAAGl6C,SAAQC,cAEzBJ,EAAAA,EAAAA,MAACE,EAAAA,GAAU,CAACE,QAASA,EAASD,OAAQA,EAAQvE,MAAM,QAAOsC,SAAA,EACzD8B,EAAAA,EAAAA,MAAC6O,EAAG,CAAC,cAAY,aAAY3Q,SAAA,EAC3BH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,OAAO6M,KAAK,QACvBV,EAAAA,EAAAA,MAACkP,EAAM,CAAAhR,SAAA,CAAC,0BACgBH,EAAAA,EAAAA,KAAA,SAAM,+BAG9BA,EAAAA,EAAAA,KAACivD,EAAQ,CAAA9uD,SAAC,iLAIVH,EAAAA,EAAAA,KAAC0K,EAAAA,EAAM,CACL/H,KAAK,KACLU,SAAS,oBACTsH,aAAa,QACb5D,OAAO,UACP0D,GAAG,4BACHykD,cAAY,EACZC,gBAAc,EAAAhvD,SACf,8BAIH8B,EAAAA,EAAAA,MAAC8O,EAAM,CAAA5Q,SAAA,CAAC,0BACgBH,EAAAA,EAAAA,KAAA,KAAGiE,KAAK,+BAA8B9D,SAAC,mCAQrE,MAAQ2Z,EAAuB7M,EAAAA,GAAvB6M,mBAEF3I,EAAS/M,EAAAA,GAAO0rB,EAAE;WACbvsB,EAAAA,GAAOyE;IACd1D,EAAAA,GAAMg8C;;EAIJ2O,EAAW7qD,EAAAA,GAAOxP,CAAC;WACd2O,EAAAA,GAAOyD;IACd1C,EAAAA,GAAM8I;;;EAKJ0D,EAAM1M,EAAAA,GAAOC,GAAG;;;;;;;;;EAWhB0M,EAAS3M,EAAAA,GAAOC,GAAG;;;;;;;0BAOCd,EAAAA,GAAO6M;;;;;;IAM7B9L,EAAAA,GAAMgM;;IAENwJ;;;aAGSvW,EAAAA,GAAOyD;MACd1C,EAAAA,GAAM+L;;;uxEC3DZ,MAiMQrD,EAA2CC,EAAAA,GAA3CD,mBAAoB8M,EAAuB7M,EAAAA,GAAvB6M,mBAEtB2G,EAAQrc,EAAAA,GAAOC,GAAG;;;sBAGFd,EAAAA,GAAOY;gBACbgE,EAAAA,GAAO2oC;;IAEnB9jC;;;;;IAKA8M;;;;;EAOE9I,EAAO5M,EAAAA,GAAOC,GAAG;;;;;;;;;EAWjB8M,EAAS/M,EAAAA,GAAOC,GAAG;;;IAGrBC,EAAAA,GAAMg8C;;;;;;IAMNxmC;MACExV,EAAAA,GAAMyI;;EAINqiD,EAAchrD,EAAAA,GAAOC,GAAG;IAC1BC,EAAAA,GAAMg8C;;;;;;IAMNxmC;;;EAKEgF,EAAO1a,EAAAA,GAAOwM,IAAI;;;;;EAOlBE,EAAM1M,EAAAA,GAAOC,GAAG;;;;;;;IAOlB2I;;;EAKE+D,EAAS3M,EAAAA,GAAOC,GAAG;;;;;;;;0BAQCd,EAAAA,GAAO6M;;IAE7B9L,EAAAA,GAAM+M;;;IAGNyI;;;;aAISvW,EAAAA,GAAOyD;;MAEd1C,EAAAA,GAAM+L;;;EAKNylB,GAAS1xB,EAAAA,EAAAA,IAAOoG,EAAAA,GAAK;WAChBjH,EAAAA,GAAOyE;;;IAGd1D,EAAAA,GAAM8I;;;;IAIN0M;;;;;;;;;;;;aAYSvW,EAAAA,GAAOC;MACdc,EAAAA,GAAM+L;;;;EAMNg/C,EAAuBjrD,EAAAA,GAAOC,GAAG;;;;;EAOjCoI,EAAQrI,EAAAA,GAAO1B,KAAK;;;;;;IAMtB4B,EAAAA,GAAM+M;;;EAKJG,EAAkBpN,EAAAA,GAAOC,GAAG;;;;;;EAQlC,IA1V4B0G,IAC1B,MAAMrV,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAC/DoM,GAAWC,EAAAA,EAAAA,MACXiD,GAAUC,EAAAA,EAAAA,MAE2D3D,EAAAC,GAAvCC,EAAAA,EAAAA,UAA+B,SAAQ,GAApE8tD,EAAUhuD,EAAA,GAAEiuD,EAAajuD,EAAA,GAEuBK,EAAAJ,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAhD+M,EAAY5M,EAAA,GAAE6M,EAAe7M,EAAA,GAE6C2M,EAAA/M,GAA3CC,EAAAA,EAAAA,UAAmB9L,EAAYuY,aAAY,GAA1EA,EAAWK,EAAA,GAAEJ,EAAcI,EAAA,GAGjCyD,EAAAxQ,GAF+CC,EAAAA,EAAAA,UAC9C9L,EAAYyY,oBACb,GAFMC,EAAgB2D,EAAA,GAAE1D,EAAmB0D,EAAA,GAItCy9C,EAAe3gD,UAUnB,IAAIyD,EATJxP,EAAEgM,kBAEFuI,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBC,MAAO,CAC5BC,aAAc,iBACdoT,gBAAiB,kBAGnBpc,GAAgB,GAGhB,IACE8D,QAAiBvD,EAAAA,EAAAA,IAAmBrZ,EAAYL,GAAI,CAClD4Y,cACAG,qBAEFI,GAAgB,EAClB,CAAE,MAAOY,GACPoD,EAAAA,EAAUC,UAAUrD,GAAMsE,IACxBA,EAAKC,UAAU,8BACfD,EAAKmlC,QAAQ,CACX4W,cAAe/5D,EAAYL,IAC3B,GAEN,CAEIid,GAAUtD,MAAMC,UAClBnN,GACEoN,EAAAA,EAAAA,IAAc/b,EAAAA,EAAC,CAAC,EACXuC,GAAW,IACduY,cACAE,mBAAoBC,EACpBe,sBAAsB,MAItBzZ,EAAYyV,OAASC,EAAAA,EAAWurC,UAClC3xC,EAAQ/O,MAAKukC,EAAAA,EAAAA,KAAkB9kC,EAAY+P,aAE3CT,EAAQ/O,KAAK,KAGf8U,EAAM6D,aACR,EAGImB,EAASA,MACbsH,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBC,MAAO,CAC5BC,aAAc,OACdoT,gBAAiB,kBAGnB,KACE5a,EAAAA,EAAAA,IAAuBta,EAAYL,GACrC,CAAE,MAAO+Z,GACP9D,QAAQ+D,MAAMD,EAChB,CAEApK,EAAQ/O,MAAKyhB,EAAAA,EAAAA,OAEbzH,EAAAA,EAAMhB,SACJhN,EAAAA,EAAAA,MAAA,KAAA9B,SAAA,EACGuM,EAAAA,EAAAA,GAAE,qCACH1M,EAAAA,EAAAA,KAACwK,EAAAA,GAAI,CACHC,GAAI,YAAY/U,EAAYC,cAAcD,EAAYE,aAAaF,EAAYL,KAC/EqU,MAAO,CAAEwG,eAAgB,YAAa5M,MAAO,SAAUnD,UAEtDuM,EAAAA,EAAAA,GAAE,yCAGR,EAgBH,OAbAzD,EAAAA,EAAAA,YAAU,KACR,GAAIvT,EAAYL,GAAI,CAClB,GAAIK,EAAYyV,OAASC,EAAAA,EAAWC,QAElC,YADArG,EAAQ/O,KAAK,uBAIfs5D,EAAc,WAChB,KAA0B,UAAfD,IACTpkD,EAAAA,EAAAA,IACF,GACC,CAACxV,EAAYL,KAEG,aAAfi6D,GAEArtD,EAAAA,EAAAA,MAACwe,EAAK,CAAAtgB,SAAA,EACJ8B,EAAAA,EAAAA,MAAC6O,EAAG,CAAA3Q,SAAA,EACFH,EAAAA,EAAAA,KAACgR,EAAI,CAAA7Q,UACHH,EAAAA,EAAAA,KAACwK,EAAAA,GAAI,CAACC,GAAG,IAAGtK,UACVH,EAAAA,EAAAA,KAAA,OAAKoK,IAAKyI,SAGd7S,EAAAA,EAAAA,KAACmR,EAAM,CAAAhR,SACJzK,EAAYyV,OAASwB,EAAAA,EAAS4C,WAC3B7C,EAAAA,EAAAA,GAAE,2CACFA,EAAAA,EAAAA,GAAE,yCAERzK,EAAAA,EAAAA,MAAC6c,EAAI,CAAClQ,SAAU4gD,EAAarvD,SAAA,EAC3B8B,EAAAA,EAAAA,MAACotD,EAAoB,CAAAlvD,SAAA,EACnBH,EAAAA,EAAAA,KAACyM,EAAK,CAAAtM,UACHuM,EAAAA,EAAAA,GAAE,CACD,0CACAhX,EAAYyV,OAASwB,EAAAA,EAAS4C,UAAY,YAAc,wBAG5DvP,EAAAA,EAAAA,KAACyP,EAAAA,GAAgB,CACfC,YAAY,aACZC,WACEja,EAAYyV,OAASwB,EAAAA,EAAS4C,UAAY,YAAc,mBAE1DhK,MAAO0I,EACPpL,SAAUqL,EACV0B,UAAQ,OAGXla,EAAYyV,OAASC,EAAAA,EAAWurC,YAC/B10C,EAAAA,EAAAA,MAACotD,EAAoB,CAAAlvD,SAAA,EACnBH,EAAAA,EAAAA,KAACyM,EAAK,CAAAtM,UAAEuM,EAAAA,EAAAA,GAAE,4CACV1M,EAAAA,EAAAA,KAACyP,EAAAA,GAAgB,CACfC,YAAY,oBACZC,WAAW,YACXpK,MAAO6I,EACPvL,SAAUwL,EACVuB,UAAQ,cAMlB5P,EAAAA,EAAAA,KAAC+Q,EAAM,CAAA5Q,UACL8B,EAAAA,EAAAA,MAACuP,EAAe,CAAArR,SAAA,EACdH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACL/H,KAAK,KACL1P,KAAK,SACLsU,QAAQ,QACR4I,SAAU5B,EACV9K,QAASsM,EACT,cAAY,6BAA4B5P,UAEvCuM,EAAAA,EAAAA,GAAE,iCAEL1M,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACL/H,KAAK,KACL1P,KAAK,SACLkd,SAAU5B,EACV9K,QAAS+rD,EACT,cAAY,uCAAsCrvD,UAEjDuM,EAAAA,EAAAA,GAAE,mDASb1M,EAAAA,EAAAA,KAAC0gB,EAAAA,EAAU,CACTjS,QACEzO,EAAAA,EAAAA,KAACgR,EAAI,CAACjK,OAAO,cAAa5G,UACxBH,EAAAA,EAAAA,KAACwK,EAAAA,GAAI,CAACC,GAAG,IAAGtK,UACVH,EAAAA,EAAAA,KAAA,OAAKoK,IAAKyI,QAIhBnE,OAAO1O,EAAAA,EAAAA,KAACovD,EAAW,CAAAjvD,UAAEuM,EAAAA,EAAAA,GAAE,yCACvBu6B,QACEhlC,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,CAAE,mCAEAH,EAAAA,EAAAA,KAAC81B,EAAM,CAACrrB,GAAG,eAActK,SAAC,gBAG9B,C,irEChMN,MAAMuvD,EAAqB,CACzBliC,WAAW,EACXm8B,UAAU,EACVgG,YAAa,GA+If,MArIwCC,EAAG9kB,cAAa+kB,0BAEtD,MAAMC,GAAyBvhC,EAAAA,EAAAA,UAAgC,KAC7D,MAAMwhC,EAAejlB,EAAYwH,WAC9B5E,GAAeA,EAAWr4C,KAAOw6D,IAEpC,MAAO,IAAI/kB,EAAY7e,MAAM8jC,MAAkBjlB,EAAY7e,MAAM,EAAG8jC,GAAc,GACjF,CAACjlB,IAQFxpC,EAAAC,GANkCC,EAAAA,EAAAA,WAAoB,KACtD,MAAMwuD,EAAgB,CAAC,EAIvB,OAHAllB,EAAY3B,SAASuE,IACnBsiB,EAActiB,EAAWr4C,IAAOq6D,CAAkB,IAE7CM,CAAa,IACpB,GANKC,EAAU3uD,EAAA,GAAE4uD,EAAa5uD,EAAA,GA+B1B6uD,EAAexgB,IACnBugB,GAAeE,GAAaj9D,EAAAA,EAAA,GACvBi9D,GAAa,IAChB,CAACzgB,GAAe,CACdniB,WAAW,EACXm8B,UAAU,EACVgG,YAAa,MAEd,EAML,OAHArkD,QAAQgU,IAAIwwC,IAIV9vD,EAAAA,EAAAA,KAAAkC,EAAAA,SAAA,CAAA/B,SACG2vD,EAAuBn7D,KAAK+4C,IAC3B,MAAQr4C,EAAwCq4C,EAAxCr4C,GAAIo5C,EAAoCf,EAApCe,kBAAmB4hB,EAAiB3iB,EAAjB2iB,aACzB11D,EAAM,QAAS+yC,EAAaA,EAAW/yC,IAAM+yC,EAAW4iB,SACxDC,EAAU9hB,GAAmBpiC,WAAW,UAC9CmkD,EAA6CP,EAAW56D,GAAhDm4B,EAASgjC,EAAThjC,UAAWm8B,EAAQ6G,EAAR7G,SAAUgG,EAAWa,EAAXb,YAE7B,OACE3vD,EAAAA,EAAAA,KAACC,EAAS,CAAkCuJ,OAAQnU,IAAOw6D,EAAoB1vD,SAEvEwpD,GAEA1nD,EAAAA,EAAAA,MAAC8iB,EAAK,CAAA5kB,SAAA,CAAC,kDAELH,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,KAAGiE,KAAMosD,EAAcI,UAAQ,EAAAtwD,UAC7BH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACrH,SAAS,WAAW0D,OAAO,SAAQ5G,SAAC,uBAOhDowD,GAEAtuD,EAAAA,EAAAA,MAACkI,EAAMlK,UAAS,CAAAE,SAAA,EACdH,EAAAA,EAAAA,KAACI,EAAAA,EAAM,CAACoJ,OAAQgkB,EAAW7qB,KAAK,MAAM+tD,UAAQ,KAC9C1wD,EAAAA,EAAAA,KAACmK,EAAMmF,QAAO,CACZlF,IAAKzP,EACL6O,QAASgkB,EACTY,QAASA,IAAM+hC,EAAY96D,GAC3Bs7D,OAAQA,KAAMC,OApETjhB,EAoEyBt6C,OAnEhD66D,GAAeE,GAAaj9D,EAAAA,EAAA,GACvBi9D,GAAa,IAChB,CAACzgB,GAAe,CACdniB,WAAW,EACXm8B,UAAU,OALSha,KAoE8B,EACnClsC,QAASgE,EAAAA,SAOfzH,EAAAA,EAAAA,KAAC6wD,EAAI5wD,UAAS,CAAAE,UACZH,EAAAA,EAAAA,KAAA,OAAKyD,QAASgE,EAAAA,GAAgBtH,UAC5BH,EAAAA,EAAAA,KAAC8wD,EAAAA,GAAQ,CACPxiB,KAAM3zC,EACN6F,SACER,EAAAA,EAAAA,KAACI,EAAAA,EAAM,CACLsJ,MAAO,CAAEoP,UAAW,QACpBtP,QAAM,EACN7G,KAAK,MACL+tD,UAAQ,EACRjnD,OAAO,aAGXsnD,YAAaA,IAAMZ,EAAY96D,GAC/B27D,cAAgBC,GA/EdC,GAAGC,YAAkCxhB,KACzDugB,GAAeE,GAAaj9D,EAAAA,EAAA,GACvBi9D,GAAa,IAChB,CAACzgB,GAAe,CACdniB,WAAW,EACXm8B,UAAU,EACVgG,YAAawB,MAEd,EAuEuCD,CAAcD,EAAK57D,GAAK8K,UAE9CqtB,GACAt1B,MAAMC,KAAK,IAAID,MAAMy3D,IAAc,CAAC1yD,EAAG+oC,KACrChmC,EAAAA,EAAAA,KAACoxD,EAAAA,GAAI,CACH5wD,QAAQ,GACR6wD,WAAYrrB,EAAI,EAEhBsrB,uBAAuB,EACvBC,iBAAiB,EACjBR,YAAaA,IAAMZ,EAAY96D,IAH1B,kBAAkBA,UAAW2wC,EAAI,cApDxC,sBAAsB3wC,IA+D1B,KAGf,EAMP,MAAM4K,EAAYmE,EAAAA,GAAOC,GAAG;;;;;;;;;;IAUxB,EAAGmF,aAAcA,GAAU;EAGzBub,EAAQ3gB,EAAAA,GAAOC,GAAG;;;IAGpBC,EAAAA,GAAMuG;WACCtH,EAAAA,GAAOY;;EAIZgG,EAAQ,CACZlK,UAAWmE,EAAAA,GAAOC,GAAG;;;;;;;IAQrBiL,QAASlL,EAAAA,GAAOwG,GAAG;;;;;;MAMf,EAAGpB,aAAcA,GAAU;KAI3BqnD,EAAM,CACV5wD,UAAWmE,EAAAA,GAAOC,GAAG;;;;;;;KCxDvB,MAzIsCyuC,EACpChI,cACAiI,yBACAC,4BACAC,mBAEA,MAAM7wC,EAAS0oC,EAAY90C,OAAS,GAAuC,qBAA3B+8C,EAE1C3M,EAAaroB,IACjB,OAAQA,EAAMwqC,MACZ,IAAK,SACHtV,IACA,MACF,IAAK,YACHD,GAA2Bwe,GAAatM,KAAK9mC,IAAI,EAAGozC,EAAY,KAChE,MACF,IAAK,aACHxe,GAA2Bwe,GAAatM,KAAK/mC,IAAI2sB,EAAY90C,OAAS,EAAGw7D,EAAY,KAEzF,EAiBF,IAdAvoD,EAAAA,EAAAA,YAAU,KACJ7G,IAEFnB,SAASC,iBAAiB,UAAWklC,GAAW,GAEhDnlC,SAASwwD,cAAc,QAAS/nD,MAAM62B,SAAW,UAG5C,KACLt/B,SAAS2iB,oBAAoB,UAAWwiB,GAAW,GACnDnlC,SAASwwD,cAAc,QAAS/nD,MAAM62B,SAAW,OAAO,IAEzD,CAACn+B,KAECA,EAAQ,OAAO,KAEpB,MAAMsvD,EAAoB5mB,EAAYiI,GAEhC4e,EAAmBA,CAAC5zC,EAAmB6zC,KAC3C7zC,EAAMtW,kBACNurC,EAA0BD,EAAyB6e,EAAU,EAQvDnjB,EAAmDijB,EAAnDjjB,kBAAmBD,EAAgCkjB,EAAhCljB,cAAe6hB,EAAiBqB,EAAjBrB,aACpCv6D,EAAO,UAAW47D,EAAoBA,EAAkBhjD,MAAQgjD,EAAkBnjB,SAClFgiB,EAAU9hB,GAAmBpiC,WAAW,UAExCwlD,GACJ5vD,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACmnB,EAAU,CACT,gBACA,kBAAgB,6BAChB2qC,UAAW,EACX3mD,KAAK,YAEPnL,EAAAA,EAAAA,KAAC+xD,EAAO,CAAA5xD,UACN8B,EAAAA,EAAAA,MAACqN,EAAO,CAAC7L,QAASwvC,EAAc,cAAY,6BAA4B9yC,SAAA,EACtEH,EAAAA,EAAAA,KAACmR,EAAOgW,WAAU,CAAC1jB,QAASgE,EAAAA,GAAgBtH,UAC1C8B,EAAAA,EAAAA,MAACkP,EAAOlR,UAAS,CAAAE,SAAA,EACf8B,EAAAA,EAAAA,MAACkP,EAAO6gD,SAAS/xD,UAAS,CAAAE,SAAA,EACxBH,EAAAA,EAAAA,KAACmR,EAAO6gD,SAAStrD,KAAI,CAAAvG,SAAErK,KACvBmM,EAAAA,EAAAA,MAACkP,EAAO6gD,SAASjmC,KAAI,CAAA5rB,SAAA,EAClB8xD,EAAAA,EAAAA,IAAsBxjB,GAAmB,YAASyjB,EAAAA,EAAAA,IAAY1jB,UAGnEvsC,EAAAA,EAAAA,MAACkP,EAAOtE,QAAO,CAAA1M,SAAA,EACbH,EAAAA,EAAAA,KAAA,KAAGiE,KAAMosD,EAAcI,UAAQ,EAAAtwD,UAC7BH,EAAAA,EAAAA,KAACsH,EAAAA,GAAU,CACTjE,SAAS,WACTkE,QAAQ,cACR5E,KAAK,KACL4b,gBAAgB,cAGpBve,EAAAA,EAAAA,KAACsH,EAAAA,GAAU,CACTjE,SAAS,QACTkE,QAAQ,cACR5E,KAAK,KACL4b,gBAAgB,SAChB9a,QAASwvC,EACT,cAAY,0BAKpBjzC,EAAAA,EAAAA,KAACmyD,EAAK,CACJxuD,SAAS,OACTwM,SAAqC,IAA3B4iC,EACVtvC,QAAUsa,GAAsB4zC,EAAiB5zC,GAAQ,GAAG5d,UAE5DH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,eAAe6M,KAAK,UAEjC3C,EAAAA,EAAAA,KAACmyD,EAAK,CACJxuD,SAAS,QACTwM,SAAU4iC,IAA2BjI,EAAY90C,OAAS,EAC1DyN,QAAUsa,GAAsB4zC,EAAiB5zC,EAAO,GAAG5d,UAE3DH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,gBAAgB6M,KAAK,UAElC3C,EAAAA,EAAAA,KAAC4vD,EAA+B,CAC9B9kB,YAAaA,EACb+kB,oBAAqB6B,EAAkBr8D,KAExCy1C,EAAY90C,OAAS,IACpBgK,EAAAA,EAAAA,KAACwG,EAAU4rD,OAAM,CAAC7B,QAASA,EAAS9sD,QAASgE,EAAAA,GAAgBtH,SAC1D2qC,EAAYn2C,KAAI,CAAC+4C,EAAYyD,KAC5BnxC,EAAAA,EAAAA,KAACwwC,EAAAA,GAAO,CAENl7B,QAAS,UAAWo4B,EAAaA,EAAWh/B,MAAQg/B,EAAWa,SAC/D5qC,SAAS,MACT0uD,eAAe,EACfC,YAAY,EAAMnyD,UAElBH,EAAAA,EAAAA,KAACwG,EAAU+rD,IAAG,CACZnoD,IAAKsjC,EAAW8kB,cAChBtvB,QAASiO,IAAU4B,EACnBtvC,QAAUsa,GA9EC00C,EAAC10C,EAAmB20C,KAC/C30C,EAAMtW,kBACNurC,EAA0B0f,EAAgB,EA4EMD,CAAqB10C,EAAOozB,MATzD,sBAAsBzD,EAAWr4C,4BAoBtD,OAAO+M,EAASjB,EAAAA,aAAsB0wD,EAAO5wD,SAAS0xD,MAAQ,IAAI,EAKpE,MAAMxrC,EAAa/iB,EAAAA,GAAOC,GAAG;;;;;;;;;wCASWd,EAAAA,GAAOi8B,mBAAmBj8B,EAAAA,GAAOyE;;EAInE+pD,EAAU3tD,EAAAA,GAAOC,GAAG;;;;;;;;;;;EAapBiL,EAAUlL,EAAAA,GAAOC,GAAG;;;;;;;;EAUpB8M,EAAS,CACbgW,WAAY/iB,EAAAA,GAAOC,GAAG;;;;;;;;;;;0CAWkBd,EAAAA,GAAOi8B;IAE/Cv/B,UAAWmE,EAAAA,GAAOC,GAAG;;;;;IAMrB2tD,SAAU,CACR/xD,UAAWmE,EAAAA,GAAOC,GAAG;;;;;;eAMVd,EAAAA,GAAOY;MAElBuC,KAAMtC,EAAAA,GAAOC,GAAG;QACZC,EAAAA,GAAM8I;QACNjF,EAAAA,GAAOC;MAEX2jB,KAAM3nB,EAAAA,GAAOC,GAAG;;QAEZC,EAAAA,GAAM2W;OAGZpO,QAASzI,EAAAA,GAAOC,GAAG;;;KAMf8tD,EAAQ/tD,EAAAA,GAAOke,MAAM;;;IAGvB,EAAG3e,cAAe,GAAGA,gBAAuBA;;;;;;;;gBAQhCJ,EAAAA,GAAOY;;;gBAGPgE,EAAAA,GAAO2oC;;;;;;oCAMavtC,EAAAA,GAAOyE;;;IAGvC,EAAGmI,cAAeA,GAAY;EAG5B3J,EAAY,CAChB4rD,OAAQhuD,EAAAA,GAAOC,GAAG;;;;;;;;;;;;;MAad,EAAGksD,cACFA,GACD,qBACYhtD,EAAAA,GAAOyE;IASvBuqD,IAAKnuD,EAAAA,GAAOwG,GAAG;;;;kBAICrH,EAAAA,GAAOY;;;;;MAKnB,EAAG++B,aACHA,GACA,wDAE0B3/B,EAAAA,GAAOC;;;;;;itCC1ShC,SAASovD,IACd,MAAgDtxD,EAAAC,GAAZC,EAAAA,EAAAA,UAAS,CAAC,GAAE,GAAzCqxD,EAAUvxD,EAAA,GAAEwxD,EAAaxxD,EAAA,GAEhC,MAAO,CAAEuxD,aAAYE,QADLA,IAAMD,EAAc,CAAC,GAEvC,C,gjCCUO,SAASE,EAAkB39D,GAChC,MAAO,CAAC,eAAgBA,EAC1B,CAEO,SAAS49D,EAAa59D,GAM3B,MAA8DiM,EAAAC,GAA5BC,EAAAA,EAAAA,YAA4B,GAAvDm1C,EAASr1C,EAAA,GAAE4xD,EAAY5xD,EAAA,GACQK,EAAAJ,GAAZC,EAAAA,EAAAA,UAAS,IAAG,GAA/B2xD,EAAKxxD,EAAA,GAAEyxD,EAAQzxD,EAAA,GACwC2M,EAAA/M,GAA5BC,EAAAA,EAAAA,UAAyB,IAAG,GAAvD6xD,EAAS/kD,EAAA,GAAEglD,EAAYhlD,EAAA,GAmF9B,MAAO,CAAEqoC,YAAWwc,QAAOE,YAAWE,oBAjFhB5hC,EAAAA,EAAAA,GAAS,CAC7BxD,SAAU6kC,EAAkB39D,GAC5Bu8B,QAAS/iB,UACP,IAAKxZ,EACH,OAAO,KAGT,aADuBm+D,EAAAA,EAAAA,IAAQn+D,EAChB,EAEjB+4B,QAASA,KACPglC,EAAS,IACTE,EAAa,GAAG,EAElBvlC,UAAYzb,IACV,IAAKA,EAGH,OAFA8gD,EAAS,SACTE,EAAa,IAGf,MAAMptD,EAAOoM,EAASpM,KAChButD,EAAoBvtD,EAA2BnL,aACrDm4D,EAAa,CACX79D,GAAI6Q,EAAK7Q,GACTS,KAAMoQ,EAAKpQ,KACX8H,MAAOsI,EAAKtI,MACZ6H,WAAYS,EAAKT,WACjBg1B,SAAUv0B,EAAKu0B,SACfi5B,cAAeD,EAAiBC,cAChC34D,aAAc,CACZ1F,GAAIo+D,EAAiBp+D,GACrBqZ,MAAO+kD,EAAiB/kD,OAAS,GACjC5U,SAAU25D,EAAiB35D,UAAY,MAI3Cs5D,EAASK,EAAiBN,OAAS,IACnC,MAAMQ,EAAsB,GAExBF,EAAiBtvB,eACnBwvB,EAAI19D,KAAK,CACPZ,IAAK,EACLyE,SAAU25D,EAAiBrgC,YAAc,GACzC1kB,MAAO+kD,EAAiB/kD,OAAS,GACjCklD,SACEH,EAAiBI,uBAAyBJ,EAAiBK,oBACvD,GAAGL,EAAiBI,uBAAyB,SAC3CJ,EAAiBK,qBAAuB,WAE1CxtD,IAINmtD,EAAiBM,SAAS1+D,IAC5Bs+D,EAAI19D,KAAK,CACPZ,IAAK,EACLyE,SAAU25D,EAAiBM,QAAQC,cAAgB,GACnDtlD,MAAO+kD,EAAiB71B,qBAAuB61B,EAAiB/kD,OAAS,QAAKpI,EAC9EstD,SACEH,EAAiBM,QAAQE,YAAcR,EAAiBM,QAAQG,SAC5D,GAAGT,EAAiBM,QAAQE,YAAc,SACxCR,EAAiBM,QAAQG,UAAY,WAEvC5tD,IAIVqtD,EAAI19D,QACCw9D,EAAiBU,WAAWx/D,KAAKy/D,IAAS,CAC3C/+D,GAAI++D,EAAU/+D,GACdyE,SAAUs6D,EAAUt6D,UAAY,GAChC4U,MAAO0lD,EAAUC,QAAUD,EAAUE,gBAAkB,GACvDV,SACEQ,EAAUH,YAAcG,EAAUF,SAC9B,GAAGE,EAAUH,YAAc,SAASG,EAAUF,UAAY,WAC1D5tD,OAGVgtD,EAAaK,EAAI,IA7EbnmC,UAkFV,CAEO,SAAS+mC,EAAgBC,GAI9B,MAA0EziD,EAAAxQ,GAAlCC,EAAAA,EAAAA,UAA+B,IAAG,GAAnE7F,EAAYoW,EAAA,GAAE0iD,EAAe1iD,EAAA,GACpC2iD,EAAgC9B,IAAxBC,EAAU6B,EAAV7B,WAAYE,EAAO2B,EAAP3B,QAgBpB,OAdA9pD,EAAAA,EAAAA,YAAU,KACJurD,GACF,WACE,IACE,MACMG,SADqBrhD,EAAAA,EAAIC,IAAI,iCAAiCihD,MAC1CxlD,KAAKrT,aAC/B84D,EAAgBE,EAClB,CAAE,MAAO13D,GACPw3D,EAAgB,GAClB,CACD,EARD,EASF,GACC,CAACD,EAAoB3B,IAEjB,CAAEl3D,eAAco3D,UACzB,CAEO,SAAS6B,EAAYJ,GAI1B,MAA8DviD,EAAA1Q,GAA9BC,EAAAA,EAAAA,UAA2B,IAAG,GAAvD5F,EAAQqW,EAAA,GAAE4iD,EAAW5iD,EAAA,GAC5B6iD,EAAgClC,IAAxBC,EAAUiC,EAAVjC,WAAYE,EAAO+B,EAAP/B,QAgBpB,OAdA9pD,EAAAA,EAAAA,YAAU,KACJurD,GACF,WACE,IACE,MACMO,SADqBzhD,EAAAA,EAAIC,IAAI,6BAA6BihD,MACrCxlD,KAAKpT,SAChCi5D,EAAYE,EACd,CAAE,MAAO93D,GACP43D,EAAY,GACd,CACD,EARD,EASF,GACC,CAACL,EAAoB3B,IAEjB,CAAEj3D,WAAUm3D,UACrB,CAEO,SAASiC,EAAWR,GAIzB,MAA2DriD,EAAA5Q,GAA7BC,EAAAA,EAAAA,UAA0B,IAAG,GAApD9F,EAAOyW,EAAA,GAAE8iD,EAAU9iD,EAAA,GAC1B+iD,EAAgCtC,IAAxBC,EAAUqC,EAAVrC,WAAYE,EAAOmC,EAAPnC,QAgBpB,OAdA9pD,EAAAA,EAAAA,YAAU,KACJurD,GACF,WACE,IACE,MACMW,SADqB7hD,EAAAA,EAAIC,IAAI,4BAA4BihD,MACrCxlD,KAAKtT,QAC/Bu5D,EAAWE,EACb,CAAE,MAAOl4D,GACPg4D,EAAW,GACb,CACD,EARD,EASF,GACC,CAACT,EAAoB3B,IAEjB,CAAEn3D,UAASq3D,UACpB,CAEO,SAASqC,EACdZ,EACAa,GAAoB,GAEpB,MAA6E54C,EAAAlb,GAA3CC,EAAAA,EAAAA,UAAwC,IAAG,GAAtE/N,EAASgpB,EAAA,GAAE64C,EAAY74C,EAAA,GAqB9B,OAnBAxT,EAAAA,EAAAA,YAAU,KACJurD,GACF,WACE,IACE,MAAMr1C,QAAqB7L,EAAAA,EAAIC,IAAI,gCAAgCihD,KAC7De,EAAeF,EACjBl2C,EAAanQ,KAAKvb,UAClB0rB,EAAanQ,KAAKvb,UAAUoC,QAAQjB,GAAMA,EAAEopC,YAChDs3B,EAAaC,EACf,CAAE,MAAOzyD,GACP0P,EAAAA,EAAUC,UAAU3P,GAAI4Q,IACtBA,EAAKC,UAAU,uCAAuC,IAExD2hD,EAAa,GACf,CACD,EAbD,EAcF,GACC,CAACd,IAEG/gE,CACT,C,ovCCvHA,MApFoC+hE,EAAGpzD,SAAQC,cAC7C,MAAkDf,EAAAC,GAAtBC,EAAAA,EAAAA,UAAmB,IAAG,GAA3CmiC,EAAMriC,EAAA,GAAEopD,EAASppD,EAAA,GACwBK,EAAAJ,GAAZC,EAAAA,EAAAA,UAAS,IAAG,GAAzCmpD,EAAUhpD,EAAA,GAAEipD,EAAajpD,EAAA,GACU2M,EAAA/M,GAAZC,EAAAA,EAAAA,UAAS,IAAG,GAAnCqhC,EAAOv0B,EAAA,GAAEu8C,EAAUv8C,EAAA,GAC6ByD,EAAAxQ,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAhD+M,EAAYwD,EAAA,GAAEvD,EAAeuD,EAAA,GACsBE,EAAA1Q,GAAZC,EAAAA,EAAAA,UAAS,IAAG,GAAnDi0D,EAAexjD,EAAA,GAAEyjD,EAAkBzjD,EAAA,GAqC1C,OACEjS,EAAAA,EAAAA,KAACmC,EAAAA,EAAU,CACTC,OAAQA,EACRC,QAASA,EACTkK,oBAAoB,EACpB1O,MAAM,QACNyE,WAAW,yBAAwBnC,UAEnC8B,EAAAA,EAAAA,MAACqN,EAAO,CAAC,cAAY,iCAAgCnP,SAAA,EACnD8B,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,EACEH,EAAAA,EAAAA,KAACorD,EAAAA,GAAa,CACZhkD,QAAS,GACT7B,MAAOo+B,EAAOhvC,IAAIgc,EAAAA,IAClB9N,SAAU6nD,EACVtjB,SAAUwjB,EACV53C,YAAY,kBACZs7C,kBAAoB/8C,GAAkB,WAAWA,uBAE5B,IAAtBo5C,EAAW30D,SAAgBgK,EAAAA,EAAAA,KAAC+kB,EAAK,CAAA5kB,SAAEwqD,QAEtC3qD,EAAAA,EAAAA,KAACsrD,EAAQ,CACPt4C,YAAY,+BACZ6zB,KAAK,IACLthC,MAAOs9B,EACPhgC,SAAWC,GAAM+nD,EAAW/nD,EAAEE,OAAOuC,UAEvCtD,EAAAA,EAAAA,MAAC4N,EAAM,CAAA1P,SAAA,EACLH,EAAAA,EAAAA,KAAC+kB,EAAK,CAAA5kB,SAAEs1D,KACRz1D,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLzX,KAAK,SACL0P,KAAK,KACLwN,SAAU5B,GAAsC,IAAtBo8C,EAAW30D,QAAkC,IAAlB2tC,EAAO3tC,OAC5DyN,QAnEOoL,UACfL,GAAgB,GAChBknD,EAAmB,IACnB,KACEr+C,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBq+C,OAAQ,CAC7BhyB,SACAnsB,aAAc,8BACdqrB,UACA+yB,SAAU,eAGZ,MAAAC,QACQC,EAAAA,EAAAA,IAAiCnyB,EAAQd,GADzCkzB,EAAiBF,EAAjBE,kBAAmBC,EAAeH,EAAfG,gBAAiBC,EAAkBJ,EAAlBI,mBAGtCC,EAAmC,GACrCH,GAAmBG,EAAuBjgE,KAAK,GAAG8/D,WAClDC,GAAiBE,EAAuBjgE,KAAK,GAAG+/D,aAChDC,GACFC,EAAuBjgE,KAAK,GAAGggE,6BAEjC,MAAME,EAAe,iCAAiCD,EAAuBngE,KAAK,QAClFka,EAAAA,EAAMhB,QAAQknD,GAEd9zD,GACF,CAAE,MAAO+M,GACHA,EAAIkD,SACNojD,EAAmBtmD,EAAIkD,SAAStD,MAEhC0mD,EAAmB,0CAEvB,CAAC,QACClnD,GAAgB,EAClB,GAmC0BrO,SACnB,uBAKM,EAMjB,MAAMmP,EAAUlL,EAAAA,GAAOC,GAAG;;;;;EAOpB0gB,EAAQ3gB,EAAAA,GAAOC,GAAG;IACpBC,EAAAA,GAAM8I;WACC7J,EAAAA,GAAOS;;EAIZsnD,EAAWlnD,EAAAA,GAAO8rC,QAAQ;IAC5B5rC,EAAAA,GAAM8I;;;;sBAIY7J,EAAAA,GAAO6M;;;;MAIvB9L,EAAAA,GAAM8I;aACC7J,EAAAA,GAAOyD;;;EAKd6I,EAASzL,EAAAA,GAAOC,GAAG;;;;;yBCtFzB,MAxB4B+xD,EAAG3iD,UAAS4iD,+BAEpCp0D,EAAAA,EAAAA,MAAChC,EAAS,CAAAE,SAAA,EACRH,EAAAA,EAAAA,KAACiqC,EAAO,CAAA9pC,SAAC,uEACTH,EAAAA,EAAAA,KAAA,OAAAG,UACEH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACL/H,KAAK,KACL1P,KAAK,SACLwQ,QAAUX,KACRuU,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBC,MAAO,CAC5BqT,gBAAiB,sBACjBpT,aAAc,cACds+B,aAAcriC,EAAQtd,OAExBkgE,EAAyBvzD,EAAG2Q,GAAS,EAAK,EAC1CtT,SACH,cAUT,MAAMF,EAAYmE,EAAAA,GAAOC,GAAG;;;;sBAINd,EAAAA,GAAOwE;;;EAIvBkiC,EAAU7lC,EAAAA,GAAOC,GAAG;IACtBC,EAAAA,GAAMiU;;6DChDH,MAAM+9C,EAAiBznD,MAC5B20B,EACA+yB,EACAC,WAE2BljD,EAAAA,EAAI8L,KAC7Bq3C,EAAAA,IAAqC,CACnCphE,GAAImuC,IAEN,CACEkzB,cAAeF,EACfG,uBAAwBJ,KAIRvnD,K,shECGtB,MA+MM/O,EAAYmE,EAAAA,GAAOC,GAAG;;;EAKtByM,EAAM1M,EAAAA,GAAOC,GAAG;;;;;;;;;;EAYhB2M,EAAO5M,EAAAA,GAAOwG,GAAG;;;EAKjBgsD,EAAmBxyD,EAAAA,GAAOC,GAAG;;EAI7B8M,EAAS/M,EAAAA,GAAOC,GAAG;WACdd,EAAAA,GAAOyE;IACd1D,EAAAA,GAAMmiB;EAGJ8gB,EAAYnjC,EAAAA,GAAOC,GAAG;WACjBd,EAAAA,GAAOyD;IACd1C,EAAAA,GAAM+L;EAGJwmD,EAAiBzyD,EAAAA,GAAOC,GAAG;;kCAEC,EAAGqa,aAAcA;;;IAG/CzR,EAAAA,GAAkByc;;;EAKhB3Y,EAAS3M,EAAAA,GAAOC,GAAG;;;;;;;0BAOCd,EAAAA,GAAO6M;;IAE7B9L,EAAAA,GAAM8I;;;EAKJ0pD,EAAe1yD,EAAAA,GAAOke,MAAM;;;;;;;IAO9Bhe,EAAAA,GAAM+M;;WAEC9N,EAAAA,GAAOC;;;2BAGSD,EAAAA,GAAO88B;mCACC98B,EAAAA,GAAO88B;;;;aAI7B98B,EAAAA,GAAOyE;6BACSzE,EAAAA,GAAOyE;qCACCzE,EAAAA,GAAOyE;;;;aAI/BzE,EAAAA,GAAOyE;;;EAKd+uD,EAAkB3yD,EAAAA,GAAOC,GAAG;;;;;;EAQ5B2yD,EAAY5yD,EAAAA,GAAOC,GAAG;;;;;EAOtB4yD,EAAgB7yD,EAAAA,GAAOC,GAAG;IAC5BC,EAAAA,GAAMiU;EAGJ2+C,EAAoB9yD,EAAAA,GAAOC,GAAG;WACzBd,EAAAA,GAAOyD;IACd1C,EAAAA,GAAM8I;EAGV,MA/T4B+pD,EAAG90D,UAASD,aACtC,MAAOuqB,EAAiCprB,GAAjB6vB,EAAAA,EAAAA,KAAiB,GAArB,GACbpsB,GAAUC,EAAAA,EAAAA,MACVmyD,EAAmBzqC,EAAapZ,IAAI,gBAAkB,GAItD8jD,EAAuB1qC,EAAapZ,IAAI,QAAUoZ,EAAapZ,IAAI,SAAW,GAInFjS,EAAAC,GAFuBC,EAAAA,EAAAA,UACD,MAArB41D,EAA2B,gBAAkB,iBAC9C,GAFMxlD,EAAItQ,EAAA,GAAEuQ,EAAOvQ,EAAA,GAGqEK,EAAAJ,GAAnCC,EAAAA,EAAAA,UAAS,IAA0B,GAAlF81D,EAAmB31D,EAAA,GAAE41D,EAAsB51D,EAAA,GACgC2M,EAAA/M,GAAtBC,EAAAA,EAAAA,UAAmB,IAAG,GAA3Eg2D,EAAsBlpD,EAAA,GAAEmpD,EAAyBnpD,EAAA,GACVyD,EAAAxQ,GAAlBC,EAAAA,EAAAA,YAAkB,GAAvC0H,EAAM6I,EAAA,GAAE2lD,EAAS3lD,EAAA,GAC8CE,EAAA1Q,GAAxBC,EAAAA,EAAAA,WAAkB,GAAM,GAA/Dm2D,EAAe1lD,EAAA,GAAE2lD,EAAkB3lD,EAAA,GAC+BE,EAAA5Q,GAAzCC,EAAAA,EAAAA,UAAsC,IAAG,GAAlEq2D,EAAQ1lD,EAAA,GAAE2lD,EAAW3lD,EAAA,GAEtB4lD,EAAelpD,MAAOpQ,EAAKu5D,KAC/B,IACE,IAAK9uD,EACH,aAGI+uD,EAAAA,EAAAA,IAA0B/uD,EAAQzK,EAAKu5D,GAE7CF,GAAaI,IACX,MAAMC,EAAc,IAAID,GAElBE,EAAeD,EAAY7lB,WAAW+lB,GAAYA,EAAQ55D,MAAQA,IAOxE,OALA05D,EAAYC,GAAajlE,EAAAA,EAAA,GACpBglE,EAAYC,IAAa,IAC5BJ,YAGKG,CAAW,GAEtB,CAAE,MAAO/oD,GACPoD,EAAAA,EAAUC,UAAUrD,GAAMsE,IACxBA,EAAKC,UAAU,oCACfD,EAAKmlC,QAAQ,CACXwe,uBACAW,UACAv5D,OACA,GAEN,GAGI43D,GAA2BxnD,MAC/B/L,EACA2Q,EACA+iD,KAEA1zD,EAAEgM,iBAEEuoD,SACIf,EAAe7iD,EAAQpe,GAAIgiE,EAAsBb,GAIvDiB,EADEjB,EACwB,IAAIgB,EAAuB3hE,QAAQR,GAAOA,IAAOoe,EAAQpe,MAEzD,IAAImiE,EAAwB/jD,EAAQpe,IAChE,EA4BF,OAzBA4T,EAAAA,EAAAA,YAAU,KACR,WACE,GAAIouD,EAAsB,CACxB,MAAM/kD,QAAiBgmD,EAAAA,EAAAA,IAAyCjB,GAEhEO,EAAmBtlD,EAASimD,mBAC5Bb,EAAUplD,EAAS0b,SACnB8pC,EACExlD,EAASkmD,uBAAuB3iE,QAAQwiE,GAAiC,cAArBA,EAAQI,YAG1DnmD,EAASomD,sBAAsB1iE,QACjCuhE,EAAuBjlD,EAASomD,uBAChCjB,EACEnlD,EAASomD,sBACN7iE,QAAQ4d,IAAaA,EAAQijD,gBAC7B/hE,KAAK8e,GAAYA,EAAQpe,OAG9Bwc,EAAQ,gBAEZ,CACD,EArBD,EAqBI,GACH,CAACwlD,IAES,kBAATzlD,GAEA5R,EAAAA,EAAAA,KAACmC,EAAAA,GAAU,CACTE,QAASA,EACTD,OAAQA,EACRvE,MAAsC,IAA/By5D,EAAoBthE,OAAe,SAAW,QACrDgI,OAAO,OAAMmC,UAEb8B,EAAAA,EAAAA,MAAChC,EAAS,CAAAE,SAAA,EACR8B,EAAAA,EAAAA,MAAC6O,EAAG,CAAA3Q,SAAA,EACFH,EAAAA,EAAAA,KAACgR,EAAI,CAAC5G,IAAKyI,EAAUvI,IAAI,eACzBrI,EAAAA,EAAAA,MAAC20D,EAAgB,CAAAz2D,SAAA,EACfH,EAAAA,EAAAA,KAACunC,EAAS,CAAApnC,SAAC,+BACXH,EAAAA,EAAAA,KAACmR,EAAM,CAAAhR,SAAC,wDAEVH,EAAAA,EAAAA,KAAC+2D,EAAe,CAAA52D,SACb03D,EAASljE,KAAK0jE,IACbp2D,EAAAA,EAAAA,MAAC+0D,EAAS,CAAmBjwD,OAAO,UAAS5G,SAAA,EAC3CH,EAAAA,EAAAA,KAACu6B,EAAAA,GAAM,CACLt3B,QAASo1D,EAAQL,QACjBn1D,SAAUA,MACRwU,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBC,MAAO,CAC5BqT,gBAAiB,sBACjBpT,aAAc,mCACd/Y,IAAK45D,EAAQ55D,IACbu5D,SAAUK,EAAQL,UAEpBD,EAAaM,EAAQ55D,KAAM45D,EAAQL,QAAQ,EAE7CjxD,OAAO,aAET9E,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,EACEH,EAAAA,EAAAA,KAACi3D,EAAa,CAAA92D,SAAEk4D,EAAQ3pD,SACxB1O,EAAAA,EAAAA,KAACk3D,EAAiB,CAAA/2D,SAAEk4D,EAAQn+D,mBAhBhBm+D,EAAQ55D,aAsB9BuB,EAAAA,EAAAA,KAAC+Q,EAAM,CAAA5Q,UACLH,EAAAA,EAAAA,KAAC82D,EAAY,CACXrzD,QAASA,MACP4T,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBC,MAAO,CAC5BqT,gBAAiB,sBACjBpT,aAAc,gCAEhBqgD,EAAS1uB,SAASkvB,GAAYN,EAAaM,EAAQ55D,KAAK,IAAO,EAC/D0B,SACH,qDAUTH,EAAAA,EAAAA,KAACmC,EAAAA,GAAU,CACTE,QAASA,EACTD,OAAQA,EACRvE,MAAsC,IAA/By5D,EAAoBthE,OAAe,SAAW,QACrDgI,OAAO,OAAMmC,UAEb8B,EAAAA,EAAAA,MAAChC,EAAS,CAAAE,SAAA,EACR8B,EAAAA,EAAAA,MAAC6O,EAAG,CAAA3Q,SAAA,EACFH,EAAAA,EAAAA,KAACgR,EAAI,CAAC5G,IAAKyI,EAAUvI,IAAI,eACzBrI,EAAAA,EAAAA,MAAC20D,EAAgB,CAAAz2D,SAAA,EACfH,EAAAA,EAAAA,KAACunC,EAAS,CAAApnC,SAAC,iCACXH,EAAAA,EAAAA,KAACmR,EAAM,CAAAhR,SAAC,wEAEVH,EAAAA,EAAAA,KAAC62D,EAAc,CAACn4C,QAAwC,IAA/B44C,EAAoBthE,OAAe,EAAI,EAAEmK,SAC/Dm3D,EAAoB3iE,KAAK8e,GACxB+jD,EAAuBtrD,SAASuH,EAAQpe,KACtC2K,EAAAA,EAAAA,KAACo2D,EAAmB,CAElB3iD,QAASA,EACT4iD,yBAA0BA,IAFrB5iD,EAAQpe,KAKf2K,EAAAA,EAAAA,KAACmiD,EAAAA,EAAO,CAEN1uC,QAASA,EACThQ,QAAUX,GAAMuzD,GAAyBvzD,EAAG2Q,GAAS,GACrDmtC,6BAA2B,GAHtBntC,EAAQpe,YASvB4M,EAAAA,EAAAA,MAAC8O,EAAM,CAAA5Q,SAAA,CAAC,0EAENH,EAAAA,EAAAA,KAAC82D,EAAY,CACXrzD,QAASA,KACHk0D,EACF9lD,EAAQ,iBAGR7M,EAAQ/O,MAAK0iE,EAAAA,EAAAA,KAAsB,CAAEC,EAAG,oBAE1CvhD,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBC,MAAO,CAC5BqT,gBAAiB,sBACjBpT,aAAc,oCACd,EACFrX,SACH,sCAKM,E,6CC5LjB,OA1BmC04D,EACjCz2D,SACAC,UACAs0C,gBAaE32C,EAAAA,EAAAA,KAACqqD,GAAAA,EAAuB,CACtBjoD,OAAQA,EACRC,QAASA,EACTC,WAAW,0BACXgoD,UAAU,wCACVC,YAhBgBA,CAACztC,EAAe+lB,KAClC,MAAM7zB,EAAO,CACX8pD,aAAcniB,EAAUthD,GACxBynB,QACA+lB,WAGF,OAAOk2B,EAAAA,GAAAA,IAAsB/pD,EAAK,I,mjCCuLtC,OA/KgCgqD,EAC9B52D,SACAC,UACA42D,kBACAC,cACAC,eACAC,gCAA+B,MAE/B,IAAKh3D,IAAW62D,EAAiB,OAAO,KAExC,MAA8C33D,EAAAC,IAAZC,EAAAA,EAAAA,UAAS,IAAG,GAAvC63D,EAAS/3D,EAAA,GAAEg4D,EAAYh4D,EAAA,GACiCK,EAAAJ,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAxD+3D,EAAgB53D,EAAA,GAAEs5C,EAAmBt5C,EAAA,GAE5C63D,GAA4DvG,EAAAA,GAAAA,IAAagG,GAAjEtiB,EAAS6iB,EAAT7iB,UAAWwc,EAAKqG,EAALrG,MAAOE,EAASmG,EAATnG,UAAWE,EAAkBiG,EAAlBjG,mBAC/B53D,GAAe44D,EAAAA,GAAAA,IAAgB5d,GAAW57C,aAAa1F,IAAIsG,aAC3DC,GAAWg5D,EAAAA,GAAAA,IAAYje,GAAW57C,aAAa1F,IAAIuG,SACnDF,GAAUs5D,EAAAA,GAAAA,IAAWre,GAAW57C,aAAa1F,IAAIqG,QACjDjI,GAAY2hE,EAAAA,GAAAA,IAAaze,GAAW57C,aAAa1F,GAAI+jE,GAErDK,GAAez3D,EAAAA,GAAAA,KAAajP,GAAqBA,EAAM+K,OAAOE,SAC9DtI,GAAcsM,EAAAA,GAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAE/DgkE,GAAcnrC,EAAAA,EAAAA,UAClB,IACE,CACE,CACE7rB,MAAO,eACPsM,KAAMrT,GAER,CACE+G,MAAO,UACPsM,KAAMpT,GAER,CACE8G,MAAO,UACPsM,KAAMtT,GAER,CACEgH,MAAO,YACPsM,KAAMvb,IAERoC,QAAQ8jE,GAAQA,EAAI3qD,KAAKhZ,OAAS,KACtC,CAAC2F,EAAcC,EAAUF,EAASjI,KAGpCwV,EAAAA,EAAAA,YAAU,KACRqwD,EAAaI,EAAY,IAAIh3D,MAAM,GAClC,CAACg3D,IAEJ,MAAME,EAAOF,EAAY/kE,KAAKglE,IAAG,CAC/Bl7D,IAAKk7D,EAAIj3D,MACTA,MAAOi3D,EAAIj3D,MACXm3D,MAAOF,EAAI3qD,KAAKhZ,WAGlB,OAAK2gD,GAGH10C,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC64D,GAA0B,CACzBliB,UAAWA,EACXv0C,OAAQm3D,EACRl3D,QAASA,IAAM44C,GAAoB,MAErCj7C,EAAAA,EAAAA,KAACiiB,EAAAA,EAAc,CAAC7f,OAAQA,EAAQC,QAASA,EAAQlC,UAC/CH,EAAAA,EAAAA,KAACC,GAAS,CAAC,cAAY,6BAA4BE,SAChDozD,GACCvzD,EAAAA,EAAAA,KAACI,EAAAA,EAAM,CAACoJ,QAAM,EAACE,MAAO,CAAEyQ,IAAK,UAE7BlY,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACE8B,EAAAA,EAAAA,MAAC63D,GAAU,CAAA35D,SAAA,CACRw2C,IACC32C,EAAAA,EAAAA,KAAC+nC,GAAoB,CAAA5nC,UACnBH,EAAAA,EAAAA,KAACiG,EAAAA,GAAW,CAACtD,KAAK,KAAKuD,KAAMywC,OAG/ByiB,IACAn3D,EAAAA,EAAAA,MAAC4K,GAAO,CAAA1M,SAAA,EACJw2C,EAAU+c,gBACV1zD,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLzX,KAAK,SACL0P,KAAK,KACLU,SAAS,SACT8M,SAAUojD,EACVxsD,OAAO,aACPtD,QAASA,IAAM01D,IAAexiB,GAAWx2C,UAExCuM,EAAAA,GAAAA,GAAE,wCAGLhX,EAAYqF,aAAa4W,YACzB3R,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLzX,KAAK,SACL0P,KAAK,KACLU,SAAS,UACT0D,OAAO,aACPtD,QAASA,IAAMy1D,IAAcviB,GAC7B,cAAY,kCAAiCx2C,SAC9C,aAIHH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLzX,KAAK,SACL0P,KAAK,KACL4E,QAAQ,YACRlE,SAAS,QACT0D,OAAO,aACPtD,QAASA,IAAMw3C,GAAoB,GACnC,cAAY,gCAA+B96C,SAC5C,yBAMP8B,EAAAA,EAAAA,MAAC83D,GAAe,CAAA55D,SAAA,EACdH,EAAAA,EAAAA,KAACg6D,GAAK,CAAC,cAAY,QAAO75D,SAAEgzD,KAC5BnzD,EAAAA,EAAAA,KAACi6D,GAAQ,CAAA95D,SACNw2C,EAAUlc,SAAS9lC,KAAKivD,IACvB5jD,EAAAA,EAAAA,KAAC8hD,EAAAA,GAAG,CAEFxsC,QAASsuC,EACTjhD,KAAK,KACLkhD,MAAM,UACN,cAAY,eAJP,WAAWD,SAQrByP,EAAUr9D,OAAS,IAClBiM,EAAAA,EAAAA,MAACi4D,GAASj6D,UAAS,CAAAE,SAAA,CAAC,aAEjBkzD,EAAU1+D,KACRgP,GACCA,EAAS7J,WACPmI,EAAAA,EAAAA,MAACi4D,GAASC,oBAAmB,CAAAh6D,SAAA,EAC3BH,EAAAA,EAAAA,KAACk6D,GAASztD,MAAK,CAAAtM,SAAEwD,EAAS7J,YAC1BkG,EAAAA,EAAAA,KAAA,OAAAG,SACGwD,EAAS+K,QAAS1O,EAAAA,EAAAA,KAACk6D,GAASE,KAAI,CAAAj6D,SAAC,0BAEnCwD,EAASiwD,WAAY5zD,EAAAA,EAAAA,KAACk6D,GAASE,KAAI,CAAAj6D,SAAC,yBALJ,YAAYwD,EAAStO,YAWlE2K,EAAAA,EAAAA,KAACipB,EAAAA,GAAI,CACHowC,UAAWA,EACXC,aAAcA,EACdM,KAAMA,EACN7yD,OAAO,aAER2yD,EAAY/kE,KAAKglE,IAChB35D,EAAAA,EAAAA,KAACq6D,GAAQ,CACPr5C,SAAUq4C,IAAcM,EAAIj3D,MAE5B+2D,aAAcA,EAAat5D,SAE1Bw5D,EAAI3qD,KAAKra,KACP+4C,GACC2rB,IAAcM,EAAIj3D,QAChB1C,EAAAA,EAAAA,KAACikD,GAAAA,EAAqB,CAAqBC,aAAcxW,GAA7BA,EAAWr4C,OANxC,YAAYskE,EAAIj3D,wBApGhB,IAoHlB,EAMP,MAAMzC,GAAYmE,EAAAA,GAAOC,GAAG;IACxBC,EAAAA,GAAM8I;;;;;EAOJ0sD,GAAa11D,EAAAA,GAAOC,GAAG;;;;;EAOvB0jC,GAAuB3jC,EAAAA,GAAOC,GAAG;;EAIjCwI,GAAUzI,EAAAA,GAAOC,GAAG;;;EAKpB01D,GAAkB31D,EAAAA,GAAOC,GAAG;;;;;;EAQ5B21D,GAAQ51D,EAAAA,GAAOC,GAAG;;EAIlB41D,GAAW71D,EAAAA,GAAOC,GAAG;;;EAKrB61D,GAAW,CACfj6D,UAAWmE,EAAAA,GAAOC,GAAG;;IAGrB81D,oBAAqB/1D,EAAAA,GAAOC,GAAG;;IAG/BoI,MAAOrI,EAAAA,GAAOC,GAAG;MACbC,EAAAA,GAAM+M;IAEV+oD,KAAMh2D,EAAAA,GAAOsP,IAAI;aACNnQ,EAAAA,GAAO6rB;KAIdirC,GAAWj2D,EAAAA,GAAOC,GAAG;aACd,EAAG2c,cAAgBA,EAAW,OAAS;;;;gBAIpC,EAAGy4C,kBAAmBA,EAAe,IAAM;IACvDn1D,EAAAA,GAAM8I;;;;;;;sEC7QH,MAAMktD,EAA4B,E,oECAlC,MAAMlvD,EAAa,CACxBurC,UAAW,EACXtrC,QAAS,EACT0uB,iBAAkB,E,sHCuBpB,MAea3I,EAAkBA,KAC7B,MAAQlM,GAAWlZ,EAAAA,EAAAA,MAAXkZ,OACFlgB,GAAUC,EAAAA,EAAAA,MAUhB,MAAO,EATcspB,EAAAA,EAAAA,UAAQ,IAAM,IAAItJ,gBAAgBC,IAAS,CAACA,KACzCq1C,EAAAA,EAAAA,cACrBC,IACC,MAAMC,GArBgBC,EAqBqBF,EApBxC,IAAIv1C,gBACO,kBAATy1C,GAAqBxiE,MAAM++B,QAAQyjC,IAASA,aAAgBz1C,gBAC/Dy1C,EACAtkE,OAAOkoB,KAAKo8C,GAAMC,QAAO,CAACC,EAAWn8D,KACnC,MAAM8G,EAAQm1D,EAAKj8D,GACnB,OAAOm8D,EAAKC,OAAO3iE,MAAM++B,QAAQ1xB,GAASA,EAAM5Q,KAAK2D,GAAM,CAACmG,EAAKnG,KAAM,CAAC,CAACmG,EAAK8G,IAAQ,GACrF,MAPiBm1D,MAsBtB11D,EAAQ/O,KAAK,CAAEivB,OAAQu1C,EAAgB1nC,YAAa,GAEtD,CAAC/tB,IAGmC,EAQ3B81D,EAAiBA,KAC5B,MAAQ51C,GAAWlZ,EAAAA,EAAAA,MAAXkZ,OACR,OAAOqJ,EAAAA,EAAAA,UAAQ,IAAM,IAAItJ,gBAAgBC,IAAS,CAACA,GAAQ,C,yqEClD7D,MAAM61C,EAAsB,SAoE5B,IAlEyBvY,CAAChf,EAAmBw3B,GAA6B,KACxE,MAAMtlE,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAE/DoM,GAAWC,EAAAA,EAAAA,MACwCk5D,EAAA15D,GAAjB6vB,EAAAA,EAAAA,KAAiB,GAAlDzE,EAAYsuC,EAAA,GAAEC,EAAeD,EAAA,GAE9Bva,GAAmBhrD,EAAYqF,aAAaogE,sBAAwB,IAAIjvD,SAASs3B,GAEvF43B,GAA8BvtC,EAAAA,EAAAA,GAAY,CACxCC,WAAYA,KAAMutC,EAAAA,EAAAA,GAAc73B,GAChCzV,UAAYutC,IACVx5D,GACEoN,EAAAA,EAAAA,IAAc/b,EAAAA,EAAC,CAAC,EACXuC,GAAW,IACdqF,aAAY5H,EAAAA,EAAA,GACPuC,EAAYqF,cAAY,IAC3BogE,qBAAsB,IACjBzlE,EAAYqF,aAAaogE,qBAC5BG,EAAgBjmE,UAMxB4a,EAAAA,EAAMhB,SACJhN,EAAAA,EAAAA,MAAA,KAAA9B,SAAA,CAAG,iDACmDm7D,EAAgB5sD,MAAM,IAAE,KAC5E1O,EAAAA,EAAAA,KAACwK,EAAAA,GAAI,CAACC,GAAG,wBAAwBf,MAAO,CAAEwG,eAAgB,YAAa5M,MAAO,SAAUnD,SAAC,yCAI5F,EAEHiuB,QAASoE,EAAAA,KAzBHnE,EAAM+sC,EAAN/sC,OAAQb,EAAS4tC,EAAT5tC,WA4BhBvkB,EAAAA,EAAAA,YAAU,KAEN0jB,EAAapZ,IAAIwnD,KAAyB95C,OAAOuiB,KACjD9tC,EAAYL,IACXqrD,GACAsa,IAED3sC,EAAO,CAAC,GACR1B,EAAaqoB,OAAO+lB,GACpBG,EAAgBvuC,GAClB,GACC,IAgBH,MAAO,CAAE81B,oBAdmBA,KACtB/sD,EAAYyV,OAASwB,EAAAA,EAASC,SAAW8zC,GAAmBlzB,IAI5D93B,EAAYL,GACdg5B,EAAO,CAAC,IAER1B,EAAa2c,IAAI,SAAUroB,OAAOuiB,KAClCt4B,EAAAA,EAAAA,GAAiBpN,OAAOhE,SAASiS,SAAW,IAAM4gB,EAAaoG,YAC/DjxB,GAASye,EAAAA,EAAAA,IAAiB,CAAE5jB,MAAM,MACpC,EAG4B+jD,kBAAiB,C,oFC1E1C,MAAM6a,EAAaA,KACxB,MAAMC,GAAalqC,EAAAA,EAAAA,SAAO,GAM1B,OAJAroB,EAAAA,EAAAA,YAAU,KACRuyD,EAAWjqC,SAAU,CAAK,GACzB,IAEIiqC,EAAWjqC,OAAO,C,moCCN3B,MAAM1U,EAAuBA,CAC3B4+C,EAAe,MAOf,MAAgDn6D,EAAAC,GAAtBC,EAAAA,EAAAA,UAASi6D,GAAa,GAAzC3+C,EAAKxb,EAAA,GAAEyb,EAAQzb,EAAA,GAC8BK,EAAAJ,GAAtBC,EAAAA,EAAAA,UAAmB,IAAG,GAA7Ck6D,EAAO/5D,EAAA,GAAEg6D,EAAUh6D,EAAA,GACwC2M,EAAA/M,GAAtBC,EAAAA,EAAAA,UAAmB,IAAG,GAA3Do6D,EAActtD,EAAA,GAAEutD,EAAiBvtD,EAAA,GACyByD,EAAAxQ,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAA1Dwb,EAAiBjL,EAAA,GAAE+pD,EAAoB/pD,EAAA,IAE9C9I,EAAAA,EAAAA,YAAU,KACR,IAAI8yD,GAAY,EAChB,MAAMC,EAAkB,IAAIhtB,gBAU5B,MARA,WACE,MAAMhgC,OCpBsBH,WAMhC,IACE,MAAMyD,QAAiBmB,EAAAA,EAAQF,IAAI,qBAAsB,CAAE27B,OAAQ+sB,IACnE,OAAK3pD,EAMEA,EAAStD,KALP,CACLktD,cAAe,GACfC,gBAAiB,GAIvB,CAAE,MAAO/sD,GAMP,MALkB,iBAAdA,GAAKm5C,MAA4C,aAAjBn5C,GAAKyzB,SACvCrwB,EAAAA,EAAUC,UAAUrD,GAAMsE,IACxBA,EAAKC,UAAU,yBAAyB,IAGrC,CACLuoD,cAAe,GACfC,gBAAiB,GAErB,GDLuBC,CAAmBJ,EAAgB9sB,QACjD6sB,IACHJ,EAAW3sD,EAAKktD,eAChBL,EAAkB7sD,EAAKmtD,iBAE1B,EAND,GAQO,KACLJ,GAAY,EACZC,EAAgBxvB,OAAO,CACxB,GACA,KAEHvjC,EAAAA,EAAAA,YAAU,KACR,MAAMozD,EAAav/C,EAAMmD,MAAM,KAC/B67C,EACEO,EAAWrmE,OAAS,GAClB0lE,EAAQxvD,SAASmwD,EAAWA,EAAWrmE,OAAS,MAC/C4lE,EAAe1vD,SAAS4Q,EAAM0nB,eAClC,GACA,CAAC1nB,EAAO4+C,IAQX,MAAO,CACL5+C,QACAC,WACAC,oBACAC,cAVoBA,KACpB,MAAMq/C,GAAUrsC,EAAAA,EAAAA,GAAiB,KAAK,EAAMtjB,EAAAA,EAASC,SAAS,GAC9D9O,OAAOhE,SAASmK,KACd,uBAAuB6Y,KAAWw/C,EAAU,aAAaC,mBAAmBD,KAAa,GAAG,EAQ/F,C,4JEtDI,MAAMppE,EAAgC,gCAChCG,EAAkB,kBAElB6P,GAA4Bs5D,EAAAA,EAAAA,GAAuBtpE,GACnD6P,GAAgBy5D,EAAAA,EAAAA,GAAuBnpE,E,4eCF7C,MAAMgB,EAAoB,oBACpBC,EAAmB,mBACnBG,EAAiB,iBACjBC,EAAgB,gBAChBwB,EAAyB,yBAEzBpB,EAA6B,6BAC7BP,EAAmB,mBACnBC,EAAkB,kBAClBO,EAAuB,uBACvBC,EAAsB,sBACtBC,EAAmB,mBACnBC,EAAe,eACfC,EAAkC,kCAClCC,EAAuB,uBAGvBqnE,IADmBD,EAAAA,EAAAA,GAAuBnoE,IACxBmoE,EAAAA,EAAAA,GAAuBloE,IAOzCooE,IANgBF,EAAAA,EAAAA,GAAuB/nE,IACxB+nE,EAAAA,EAAAA,GAAuB9nE,IACf8nE,EAAAA,EAAAA,GAAuBtmE,IAChBsmE,EAAAA,EAAAA,GAAuB1nE,IACpC0nE,EAAAA,EAAAA,GAAuBjoE,IACxBioE,EAAAA,EAAAA,GAAuBhoE,IAClBgoE,EAAAA,EAAAA,GAAuBznE,IAC5C4nE,GAAoBH,EAAAA,EAAAA,GAAuBxnE,GAM3C29B,IALkB6pC,EAAAA,EAAAA,GAAuBvnE,IAC3BunE,EAAAA,EAAAA,GAAuBtnE,IACRsnE,EAAAA,EAAAA,GAAuBrnE,IAChCqnE,EAAAA,EAAAA,GAAuBpnE,GAEtBwnE,GACzB/tD,UACL,MAAMtb,OChC+Bsb,WAGvC,IAEE,aADuByE,EAAAA,EAAIC,IAAI,kBAAkBqpD,MACjC5tD,KAAKzb,YACvB,CAAE,MAAO8b,GACP,OACO,MADCA,EAAMiD,SAAS+N,SAInBpQ,EAAAA,EAAMZ,MAAM,8CACZmD,EAAAA,EAAUC,UAAUpD,GAAQqE,IAC1BA,EAAKC,UAAU,0BACfD,EAAKmlC,QAAQ,CACX+jB,qBACA,KAPG,IAWb,GDY6BC,CAA0BD,GAIrD,OAFA96D,EAAS26D,EAAgBlpE,IAElBA,CAAY,GAIVu3D,EAA0BgS,GAC9BjuD,UACL/M,EAAS46D,KAET,MAAQK,SAAwBC,EAAAA,EAAAA,IAAkBF,IAA1CC,cAGR,OAFAj7D,EAAS66D,EAAkBI,IAEpBA,CAAa,C,+9BE/CjB,MAAMllE,EAAsB,sBACtBC,EAAa,aACbO,EAAgB,gBAChBG,EAAc,cACdC,EAA6B,6BAC7BC,EAAoC,oCACpCC,EAAqC,qCACrCG,EAAqB,qBACrBE,EAAmB,mBACnBD,EAAqB,qBACrBE,EAAsB,sBACtBV,EAA0B,0BAC1BW,EAAgB,gBAChBC,EAAkB,kBAClBC,EAA+B,+BAC/BC,EAA2B,2BAC3BE,EAA4B,4BAC5BE,EAAuB,uBACvBI,EAAmB,mBACnBF,EAAwB,wBACxBQ,EAAuC,uCACvCE,EAAoB,oBACpBE,EAAyB,yBACzBC,EAA8B,8BAC9BC,EAAmB,mBACnBG,EAAoB,oBACpBE,EAAiC,iCAEjCmZ,GAAuBuoD,EAAAA,EAAAA,GAAuB3kE,GAI9ColE,IAHYT,EAAAA,EAAAA,GAAuB1kE,IACpB0kE,EAAAA,EAAAA,GAAuBnkE,IACzBmkE,EAAAA,EAAAA,GAAuBhkE,IACJgkE,EAAAA,EAAAA,GAC3C9jE,IAEWwkE,GAAiCV,EAAAA,EAAAA,GAC5C7jE,GAEWwkE,GAA0BX,EAAAA,EAAAA,GAAuB/jE,GAIjD2kE,IAHmBZ,EAAAA,EAAAA,GAAuB1jE,IACzB0jE,EAAAA,EAAAA,GAAuBxjE,IACrBwjE,EAAAA,EAAAA,GAAuBzjE,IACtByjE,EAAAA,EAAAA,GAAuBvjE,IAI3CokE,IAHeb,EAAAA,EAAAA,GAAuBtjE,IACrBsjE,EAAAA,EAAAA,GAAuBrjE,IACXqjE,EAAAA,EAAAA,GAAuBpjE,IACzBojE,EAAAA,EAAAA,GAAuBjkE,IASlD+kE,IARwBd,EAAAA,EAAAA,GAAuBnjE,IACtBmjE,EAAAA,EAAAA,GAAuBjjE,IAC3BijE,EAAAA,EAAAA,GAAuB/iE,IAC3B+iE,EAAAA,EAAAA,GAAuB3iE,IACnB2iE,EAAAA,EAAAA,GAAuB7iE,IACT6iE,EAAAA,EAAAA,GAC9CriE,IAE6BqiE,EAAAA,EAAAA,GAAuBniE,IACzCkjE,GAAsBf,EAAAA,EAAAA,GAAuBjiE,GAC7CijE,GAA2BhB,EAAAA,EAAAA,GAAuBhiE,GAKlDijE,IAJiBjB,EAAAA,EAAAA,GAAuB/hE,IACtB+hE,EAAAA,EAAAA,GAAuB5hE,IACZ4hE,EAAAA,EAAAA,GAAuB1hE,GAErColB,GACnBrR,UACL/M,EAASu7D,GAAyB,IAElC,IACE,MAAMl+C,QAAqB7L,EAAAA,EAAIC,IAAI,iBAAiB2M,KAEpD,GAAIf,EAAanQ,KAGf,OAFAlN,EAASs7D,EAAkBj+C,EAAanQ,KAAK3R,UAC7CyE,EAASu7D,GAAyB,IAC3Bl+C,EAAanQ,KAGtBlR,OAAOhE,SAASmK,MAAOyT,EAAAA,EAAAA,KACzB,CAAE,MAAOrI,GACP,GAA8B,MAA1BA,EAAMiD,SAAS+N,OA4BjB,MAAMhR,EA5B2B,CACjC,MAAMquD,EAAaC,OAAO,8CAE1B,GAAID,EAAY,CACd,MAAMv+C,QAAqB7L,EAAAA,EACxBC,IAAI,iBAAiB2M,IAAc,CAClCiG,OAAQ,CACNy3C,YAAaF,KAGhBxS,OAAO2S,IACN,GAAoC,MAAhCA,EAAYvrD,SAAS+N,OAIvB,MAAMw9C,EAHNC,MAAM,sBACNhgE,OAAOhE,SAASmK,MAAOyT,EAAAA,EAAAA,KAGzB,IAGJ,GAAIyH,GAAcnQ,KAAK3R,QAGrB,OAFAyE,EAASs7D,EAAkBj+C,EAAanQ,KAAK3R,UAC7CyE,EAASu7D,GAAyB,IAC3Bl+C,EAAanQ,KAAK3R,OAE7B,MACES,OAAOhE,SAASmK,MAAOyT,EAAAA,EAAAA,KAE3B,CAGF,IAISqmD,EAA4BA,IAChClvD,UACL,IACE,MAAMsQ,QAAqB6X,IAAAA,IAAU,0BAA2B,CAC9Dc,QAAS,CACPE,OAAQ,sBAIZl2B,EAASq7D,EAAwBh+C,EAAanQ,KAAKgvD,wBACrD,CAAE,MAAO5uD,GACP9D,QAAQgU,IAAIlQ,EACd,GAIS6uD,EAAmBA,CAACC,EAAiBC,IACzCtvD,UACL/M,EAASm7D,KAET,UACQ3pD,EAAAA,EAAI8L,KAAK,oBAAqB,CAClCg/C,iBAAkB,CAChBF,kBACAC,0BAIJr8D,EACEo7D,EAA+B,CAC7BtkE,WAAYulE,EACZtlE,WAAW,IAGjB,CAAE,MAAOuW,GACPtN,EACEo7D,EAA+B,CAC7BtkE,WAAYylE,cACZxlE,WAAW,IAGjB,GAISylE,EAAqBA,CAACJ,EAAiBC,IAC3CtvD,UACL/M,EAASm7D,KACT,MAAMtiE,EAAM,qBAAqBwjE,IAEjC,UACQ7qD,EAAAA,EAAI0hC,OAAOr6C,GAEjBmH,EACEo7D,EAA+B,CAC7BtkE,WAAYulE,EACZtlE,WAAW,IAGjB,CAAE,MAAOuW,GACPtN,EACEo7D,EAA+B,CAC7BtkE,WAAYulE,EACZtlE,WAAW,IAGjB,GAIS0lE,EAAoBA,CAACC,EAAgBrzD,IACzC0D,UACL/M,EAASy7D,GAAoB,IAC7B,IACE,MAAMp+C,QAAqB7L,EAAAA,EAAIC,IAAI,iBAAkB,CACnD4S,OAAQ,CACNs4C,gBAAiBD,EACjBrzD,UAGJrJ,EAASw7D,EAAgBn+C,EAAanQ,MACxC,CAAE,MAAOI,GACPtN,EAASy7D,GAAoB,GAC/B,CACAz7D,EAASy7D,GAAoB,GAAO,EAG3B95B,EAA0BU,GAC9Bt1B,UACL,MAAMsQ,QAAqB6X,IAAAA,IACzB,mBACA,CACE7Q,OAAQ,CAAEmd,aAAca,IAE1B,CACErM,QAAS,CACPE,OAAQ,sBAIdl2B,EAAS07D,EAAyBr+C,EAAanQ,MAAM,C,utBChNlD,MAAM9S,EAAmB,mBACnBC,EAAoB,oBACpBG,EAAc,cACdC,EAAe,eACfH,EAAmB,mBACnBC,EAAoB,oBACpBG,EAAe,eACfC,EAAgB,gBAChBC,EAAqB,qBACrBI,EAAwB,wBACxBE,EAAyB,yBACzBM,EAAoC,oCACpCC,EAAmC,mCACnCE,EAAmB,mBACnBC,EAAoB,oBACpBC,EAAuB,uBACvBT,EAAiC,iCAEjCgS,GAAiBstD,EAAAA,EAAAA,GAAuBtgE,GACxCwiE,GAAkBC,EAAAA,EAAAA,GAAqBxiE,GACvC84D,GAAauH,EAAAA,EAAAA,GAAuBlgE,GACpCsiE,GAAcD,EAAAA,EAAAA,GAAqBpiE,GACnCk4D,GAAkB+H,EAAAA,EAAAA,GAAuBpgE,GACzCyiE,GAAmBF,EAAAA,EAAAA,GAAqBtiE,GACxCw4D,GAAc2H,EAAAA,EAAAA,GAAuBhgE,GACrCsiE,GAAeH,EAAAA,EAAAA,GAAqBliE,GACpC8jB,GAAmBi8C,EAAAA,EAAAA,GAAuB9/D,GAS1CqiE,IARsBvC,EAAAA,EAAAA,GAAuB1/D,IACtB0/D,EAAAA,EAAAA,GAAuBx/D,IACbw/D,EAAAA,EAAAA,GAC5Cl/D,IAE2Ck/D,EAAAA,EAAAA,GAC3Cj/D,IAE4Bi/D,EAAAA,EAAAA,GAAuB/+D,IAExCuhE,IADkBxC,EAAAA,EAAAA,GAAuB9+D,IACpB8+D,EAAAA,EAAAA,GAAuB7+D,IAC5CshE,GAA8BzC,EAAAA,EAAAA,GAAuBt/D,GAErD0V,EAAmBA,CAACssD,GAAmB,IAC3CrwD,UAGL,GAFA/M,EAAS48D,MAEJ76D,IAAI4jB,gBAEP,OADA3lB,EAASoN,EAAe,CAAEnU,aAAc,CAAC,KAClC,CAAEA,aAAc,CAAC,GAG1B,MAAMiU,QAAawkD,EAAAA,EAAAA,IAAQ3vD,IAAI4jB,gBAAiBy3C,GAC1Ch5D,EAAO8I,GAAM9I,KAEnB,OAAKA,GAKLpE,EAASoN,EAAehJ,IACjBA,IALLpE,EAASoN,EAAe,CAAEnU,aAAc,CAAC,KAClC,CAAEA,aAAc,CAAC,GAIf,EAIFokE,EAAgBC,GACpBvwD,UACL/M,EAAS88D,KAET,MAAMz/C,QAAqB6X,IAAAA,IAAU,4BAA4BooC,IAAiB,CAChFtnC,QAAS,CACPE,OAAQ,sBAMZ,OAFAl2B,EAASmzD,EAAW91C,EAAanQ,KAAKtT,UAE/ByjB,EAAanQ,KAAKtT,OAAO,EAIvB2jE,EAAqBD,GACzBvwD,UACL/M,EAAS+8D,KAET,MAAM1/C,QAAqB6X,IAAAA,IAAU,iCAAiCooC,IAAiB,CACrFtnC,QAAS,CACPE,OAAQ,sBAMZ,OAFAl2B,EAAS2yD,EAAgBt1C,EAAanQ,KAAKrT,eAEpCwjB,EAAanQ,KAAKrT,YAAY,EAI5B2jE,EAAiBF,GACrBvwD,UACL/M,EAASg9D,KAET,MAAM3/C,QAAqB6X,IAAAA,IAAU,6BAA6BooC,IAAiB,CACjFtnC,QAAS,CACPE,OAAQ,sBAMZ,OAFAl2B,EAAS+yD,EAAY11C,EAAanQ,KAAKpT,WAEhCujB,EAAanQ,KAAKpT,QAAQ,EAwBxBw8B,EAAcA,IAClBvpB,UACL,MAAMsQ,QAAqB6X,IAAAA,IAAU,iBACrCl1B,EAASi9D,EAAe5/C,EAAanQ,KAAKuwD,cAAc,C,0GC3I5D,MAAQC,EAA8CvyD,EAAAA,GAA9CuyD,QAASC,EAAqCxyD,EAAAA,GAArCwyD,OAAQC,EAA6BzyD,EAAAA,GAA7ByyD,OAAQC,EAAqB1yD,EAAAA,GAArB0yD,iBAEpBvhE,EAA0B,0BAE1B+5B,EAAwBA,IAAOr2B,GAC1CA,EAAS,CACP7O,KAAMmL,EACNhL,QAAS,CACPyK,MAAOC,OAAOC,WACdC,OAAQF,OAAOG,YACf2hE,SAAU9hE,OAAOC,YAAc0hE,EAC/Bn8C,SAAUxlB,OAAOC,YAAc2hE,EAC/BG,UAAW/hE,OAAOC,YAAcyhE,EAChCM,kBAAmBhiE,OAAOC,YAAc4hE,I,wHCZ9C,MAGaI,EAAalxD,MAAOmxD,EAAQ9W,IACvCz1C,EAAAA,EAAQ2L,KAAK,qEAA0E4gD,IAAU,CAC/F9W,SACA52B,QAAS,CACP2tC,MAAMC,EAAAA,EAAAA,IAAU,iBAKTxtC,EAAoB7jB,UAC/B,MAAQiO,EAAuC+P,EAAvC/P,MAAOnnB,EAAgCk3B,EAAhCl3B,WAAYC,EAAoBi3B,EAApBj3B,UAAWuV,EAAS0hB,EAAT1hB,KAGtC,IAAI60D,EAAS,uCAUb,GARa,IAAT70D,EAEF60D,EAAS,uCACS,IAAT70D,IAET60D,EAAS,wCAITliE,OAAOhE,SAAS4yB,KAAKxgB,SAAS,kBAC9BpO,OAAOhE,SAAS4yB,KAAKxgB,SAAS,gBAE9B,IACE,MAAMg9C,EAAS,CACb,CAAEpzD,KAAM,QAASyP,MAAOuX,GACxB,CAAEhnB,KAAM,YAAayP,MAAO5P,GAC5B,CAAEG,KAAM,WAAYyP,MAAO3P,UAGvBmqE,EAAWC,EAAQ9W,EAC3B,CAAE,MAAO95C,GACP9D,QAAQ+D,MAAMD,EAChB,CACF,EAGWuD,EAAmB9D,UAC9B,MAAQiO,EAAU+P,EAAV/P,MAKR,GACEhf,OAAOhE,SAAS4yB,KAAKxgB,SAAS,kBAC9BpO,OAAOhE,SAAS4yB,KAAKxgB,SAAS,gBAE9B,IACE,MAAMg9C,EAAS,CAAC,CAAEpzD,KAAM,QAASyP,MAAOuX,UAElCijD,EATK,uCASc7W,EAC3B,CAAE,MAAO95C,GACP9D,QAAQ+D,MAAMD,EAChB,CACF,C,wKCxDK,MAAM+wD,EAA4BtxD,gBAGZyE,EAAAA,EAAIC,IAAI,0BAA0BrK,MACzC8F,KAGTipD,EAA4BppD,MAAO3F,EAAgBzK,EAAau5D,WACrE1kD,EAAAA,EAAI8sD,MAAM,0BAA0Bl3D,IAAU,CAClDzK,IAAKA,EACLu5D,QAASA,GACT,EAGSqI,EAAgCxxD,gBAGhByE,EAAAA,EAAIC,IAAI,kBAAkB+sD,gBACjCtxD,KAGTspD,EAA2CzpD,gBAG3ByE,EAAAA,EAAIC,KAAIgtD,EAAAA,EAAAA,KAAwCD,KACvDtxD,I,mOC3Bf,MAAMoR,EAAmBvR,MAC9B1Y,EACAunE,WAEuBjqD,EAAAA,EAAQF,IAAI,SAASpd,IAAQ,CAClDgwB,OAAQ,CACNq6C,cAAc,EACd5C,YAAaF,MAID1uD,KAGLyxD,EAAmC5xD,UAG9C,IAKE,aAJuB4E,EAAAA,EAAQF,IAAI,SAASiwB,IAAa,CACvDrd,OAAQ,CAAEu6C,OAAO,MAGH1xD,IAClB,CAAE,MACA,OAAO,IACT,GAGW2xD,EAAsB9xD,gBACV4E,EAAAA,EAAQF,IAAI,SAASJ,MAC5BnE,KAGL4xD,EAAoB/xD,UAG/B,IAAIyD,EAEJ,MAAMuuD,EAAgB,CACpBC,WAAYC,EAAQv4B,UACpBw4B,6BAA8BD,EAAQE,iBACtCvyD,MAAOqyD,EAAQryD,MACf9K,WAAYm9D,EAAQn9D,WACpBs9D,YAAaH,EAAQI,WACrBC,kBAAmBL,EAAQM,iBAC3BC,qBAAsBP,EAAQQ,oBAAoB5sE,KAAK6sE,IAAG,CACxDtnE,YAAasnE,EAAItnE,YACjBunE,kBAAmBD,EAAIE,qBAEzBC,wBAAwBC,EAAAA,EAAAA,GAAwBb,EAAQc,wBACxDC,cAAcF,EAAAA,EAAAA,GAAwBb,EAAQgB,YAC9C9zD,YAAa8yD,EAAQ9yD,YACrBE,mBAAoB4yD,EAAQ3yD,iBAC5B4zD,mBAAoBjB,EAAQkB,kBAC5BC,UAAWnB,EAAQ3a,SACnB+b,mBAAoBpB,EAAQkB,mBAAmB/1D,SAASk2D,EAAAA,GAAoBC,oBACxEtB,EAAQuB,kBACR,GACJC,KAAMxB,EAAQkB,mBAAmB/1D,SAASk2D,EAAAA,GAAoBI,MAAQzB,EAAQwB,KAAO,GACrFE,UAAW1B,EAAQ0B,UACnBC,qBAAsB3B,EAAQ4B,mBAC9BC,uBAAwB7B,EAAQ8B,qBAChCC,wBAAyB/B,EAAQgC,sBACjC/zD,KAAM+xD,EAAQ/xD,KACdg0D,cAAejC,EAAQkC,aACvBC,SAAUnC,EAAQmC,SAClBC,UAAWpC,EAAQqC,YACnBC,wBAAyBtC,EAAQuC,sBAAwBvC,EAAQwC,qBACjEC,yBAA0BzC,EAAQuC,sBAAwBvC,EAAQ0C,qBAClEC,kCACG3C,EAAQuC,sBAAwBvC,EAAQ4C,8BAC3CC,gBAAiB7C,EAAQuC,sBAAwBvC,EAAQ8C,cACzDC,uBAAwB/C,EAAQuC,qBAChCS,cAAehD,EAAQiD,cAGzB5tE,OAAOkoB,KAAKuiD,GAAe13B,SAAS1qC,IACA,kBAAvBoiE,EAAcpiE,KACvBoiE,EAAcpiE,GAAOoiE,EAAcpiE,GAAK8lC,OAC1C,IAGF,IAWE,OATEjyB,EADEyuD,EAAQ1rE,SACOoe,EAAAA,EAAQghC,IAAI,SAASssB,EAAQ1rE,KAAM,CAClD4uE,IAAKpD,UAGUptD,EAAAA,EAAQ2L,KAAK,QAAS,CACrC6kD,IAAKpD,IAIFvuD,EAAStD,IAClB,CAAE,MAAO/R,GACP,OAAO,IACT,GAGWinE,EAA2BA,CAACC,EAAOC,KAC9C3wD,EAAAA,EACGF,IAAI,gBAAgB4wD,SAAc,CACjCrsC,QAAS,CACPE,OAAQ,4BAEVqsC,aAAc,SAEfpZ,MAAM34C,IACL,GAAwB,MAApBA,EAAS+N,OACX,OAGF,MAAM1lB,EAAMmD,OAAO2uB,IAAI63C,gBACrB,IAAIC,KAAK,CAACjyD,EAAStD,MAAO,CACxB/b,KAAM,6EAIJovB,EAAOphB,SAASujE,cAAc,KACpCniD,EAAKpe,KAAOtJ,EACZ0nB,EAAKoiD,aAAa,WAAY,GAAGL,UACjCnjE,SAAS0xD,KAAK35B,YAAY3W,GAC1BA,EAAKsrB,QACLtrB,EAAKqiD,YAAYC,YAAYtiD,EAAK,GAClC,EAGOuiD,EAAkB/1D,MAC7B20B,GAEE1mB,QACAT,YACAE,qBAOqB9I,EAAAA,EAAQ2L,KAAK,SAASokB,aAAsB,CACjE1mB,QACAnnB,WAAY0mB,EACZzmB,UAAW2mB,KAGGvN,I,sWCrIX,MAAMguD,EAAoBnuD,gBAGR4E,EAAAA,EAAQF,IAAI,oBAAqB,CACtD4S,OAAQ,CACNsX,WAAYq/B,MAIA9tD,KAGL61D,EAA4Bh2D,MACvCzH,EAKA60D,KAEA,IAYE,aAXuBxoD,EAAAA,EAAQF,IAAI,yCAA0C,CAC3E27B,OAAQ+sB,EACR91C,OAAQ,CACN/e,QAAS,CACP09D,eAAgB19D,EAAQ29D,cACxBC,oBAAqB59D,EAAQ69D,kBAC7BC,oBAAqB99D,EAAQ+9D,uBAKnBn2D,IAClB,CAAE,MAAOK,GAOP,OANAmD,EAAAA,EAAUC,UAAUpD,GAAQqE,IAC1BA,EAAKC,UAAU,sCACfD,EAAKmlC,QAAQ,CACXzxC,QAAS4lC,KAAKo4B,UAAUh+D,IACxB,IAEG,CACLi+D,QAAS,GACTxL,MAAO,EAEX,GAGWyL,EAA+Bz2D,UAG1C,IAEE,aADuB4E,EAAAA,EAAQF,IAAI,mDACnBvE,KAAKu2D,eACvB,CAAE,MAAOl2D,GAIP,OAHAmD,EAAAA,EAAUC,UAAUpD,GAAQqE,IAC1BA,EAAKC,UAAU,wCAAwC,IAElD,CACLxF,mBAAoB,GAExB,GAGWq3D,EAAmB32D,UAC9B,IAIE,aAHuB4E,EAAAA,EAAQ2L,KAAK,oCAAqC,CACvE4O,QAAS9kB,KAEK8F,IAClB,CAAE,MAAOK,GAQP,OAPAY,EAAAA,EAAMZ,MAAMA,EAAMiD,SAAStD,KAAKK,OAChCmD,EAAAA,EAAUC,UAAUpD,GAAQqE,IAC1BA,EAAKC,UAAU,6BACfD,EAAKmlC,QAAQ,CACX3vC,OAAQA,EAAO6pB,YACf,IAEG,IACT,GAGW0yC,EAA2B52D,UACtC,IAIE,aAHuB4E,EAAAA,EAAQ2L,KAAK,6CAA8C,CAChF4O,QAAS9kB,KAEK8F,IAClB,CAAE,MAAOK,GAQP,OAPAY,EAAAA,EAAMZ,MAAMA,EAAMiD,SAAStD,KAAKK,OAChCmD,EAAAA,EAAUC,UAAUpD,GAAQqE,IAC1BA,EAAKC,UAAU,qCACfD,EAAKmlC,QAAQ,CACX3vC,OAAQA,EAAO6pB,YACf,IAEG,IACT,GAGW2yC,EAAiB72D,UAC5B,IAIE,aAHuB4E,EAAAA,EAAQ2L,KAAK,kCAAmC,CACrE4O,QAAS9kB,KAEK8F,IAClB,CAAE,MAAOK,GAQP,OAPAY,EAAAA,EAAMZ,MAAMA,EAAMiD,SAAStD,KAAKK,OAChCmD,EAAAA,EAAUC,UAAUpD,GAAQqE,IAC1BA,EAAKC,UAAU,2BACfD,EAAKmlC,QAAQ,CACX3vC,OAAQA,EAAO6pB,YACf,IAEG,IACT,GAGW4yC,EAAqB92D,UAChC,IAIE,aAHuB4E,EAAAA,EAAQ2L,KAAK,sCAAuC,CACzE4O,QAAS9kB,KAEK8F,IAClB,CAAE,MAAOK,GAQP,OAPAY,EAAAA,EAAMZ,MAAMA,EAAMiD,SAAStD,KAAKK,OAChCmD,EAAAA,EAAUC,UAAUpD,GAAQqE,IAC1BA,EAAKC,UAAU,+BACfD,EAAKmlC,QAAQ,CACX3vC,OAAQA,EAAO6pB,YACf,IAEG,IACT,GAGW6yC,EAAsB/2D,UAGjC,IAIE,aAHuB4E,EAAAA,EAAQ2L,KAAK,wCAAyC,CAC3E4O,QAAS9kB,KAEK8F,KAAK5I,KACvB,CAAE,MAAOiJ,GAQP,OAPAY,EAAAA,EAAMZ,MAAMA,EAAMiD,SAAStD,KAAKK,OAChCmD,EAAAA,EAAUC,UAAUpD,GAAQqE,IAC1BA,EAAKC,UAAU,gCACfD,EAAKmlC,QAAQ,CACX3vC,OAAQA,EAAO6pB,YACf,IAEG,IACT,GAGW8yC,EAAoCh3D,MAC/Ci3D,EACAC,KAEA,IAKE,aAJuBtyD,EAAAA,EAAQ2L,KAAK,iDAAkD,CACpF0mD,MACAE,wBAAyBD,KAEX/2D,IAClB,CAAE,MAAOlM,GAUP,OATAmN,EAAAA,EAAMZ,MAAMvM,EAAEwP,SAAStD,KAAKK,OACF,MAAtBvM,EAAEwP,SAAS+N,QACb7N,EAAAA,EAAUC,UAAU3P,GAAI4Q,IACtBA,EAAKC,UAAU,8CACfD,EAAKmlC,QAAQ,CACXitB,OACA,IAGC,IACT,GAGWG,EAAuBp3D,UAclC,MAAMsX,EAA8B,CAClC+/C,uBAAuB,EACvB9+D,QAAS,CACP++D,SAAU/+D,EAAQ8sC,QAAU,UAC5BkyB,YAAah/D,EAAQiqD,WACrBgV,cAAej/D,EAAQk/D,aACvBC,eAAgBn/D,EAAQo/D,cACxBC,wBAAyBr/D,EAAQs/D,sBACjCC,wBAAyBv/D,EAAQw/D,sBACjCC,kBAAmBz/D,EAAQ0/D,gBAC3BC,cAAe3/D,EAAQ4/D,aACvBlC,eAAgB19D,EAAQ29D,cACxBkC,uBAAwB7/D,EAAQ8/D,qBAChCC,kBAAmB//D,EAAQggE,mBAG3BhgE,EAAQigE,cACVlhD,EAAOmhD,aAAelgE,EAAQigE,aAQhC,aANuB5zD,EAAAA,EAAQF,KAC7Bg0D,EAAAA,EAAAA,OACA,CACEphD,YAGYnX,IAAI,EAmCT+pD,EAAwBlqD,SAIP4E,EAAAA,EAAQ2L,KAAK,yCAA0CpQ,E,gMC9Q9E,MAAMw4D,EAAuB34D,MAClCzH,EAOA60D,KAEA,IAcE,aAbuBxoD,EAAAA,EAAQF,IAAI,wBAAyB,CAC1D27B,OAAQ+sB,EACR91C,OAAQ,CACN/e,QAAS,CACPqgE,eAAgBrgE,EAAQsgE,cACxBC,YAAavgE,EAAQwgE,WACrBC,aAAczgE,EAAQ0gE,YACtBhD,eAAgB19D,EAAQ29D,cACxB5wB,QAAS/sC,EAAQ8sC,QAAU,YAKjBllC,IAClB,CAAE,MAAOlM,GAIP,OAHA0P,EAAAA,EAAUC,UAAU3P,GAAI4Q,IACtBA,EAAKC,UAAU,oCAAoC,IAE9C,CAAE0xD,QAAS,GAAIxL,MAAO,EAC/B,GAGWkO,EAAgCl5D,UAI3C,IAGE,aAFuB4E,EAAAA,EAAQF,IAAI,qCAEnBvE,IAClB,CAAE,MAAOlM,GAIP,OAHA0P,EAAAA,EAAUC,UAAU3P,GAAI4Q,IACtBA,EAAKC,UAAU,6CAA6C,IAEvD,CAAEq0D,cAAe,EAAGC,YAAa,EAC1C,GAGWC,EAA8Br5D,UACzC,IAGE,aAFuB4E,EAAAA,EAAQF,IAAI,kCAEnBvE,IAClB,CAAE,MAAOlM,GAIP,OAHA0P,EAAAA,EAAUC,UAAU3P,GAAI4Q,IACtBA,EAAKC,UAAU,2CAA2C,IAErD,CACLw0D,aAAc,GACdC,cAAe,GACf7C,gBAAiB,CACft3D,YAAa,GACbE,mBAAoB,IAG1B,GAGWk6D,EAAgCx5D,OAC3CiO,QACA+lB,cAKA,IAME,WALuBpvB,EAAAA,EAAQ2L,KAAK,8CAA+C,CACjFwkB,UAAW9mB,EACX+lB,aAGY7zB,KAAKC,QACjB,MAAM,IAAI8V,MAAM,yBAGlB,OAAO,CACT,CAAE,MAAOjiB,GAIP,OAHA0P,EAAAA,EAAUC,UAAU3P,GAAI4Q,IACtBA,EAAKC,UAAU,6CAA6C,KAEvD,CACT,GAGW20D,EAAoCz5D,OAC/C05D,YACAC,iBAKA,IAKE,aAJM/0D,EAAAA,EAAQ2L,KAAK,mDAAoD,CACrEqpD,YAAaF,EACbG,YAAaF,KAER,CACT,CAAE,MAAO1lE,GAIP,OAHA0P,EAAAA,EAAUC,UAAU3P,GAAI4Q,IACtBA,EAAKC,UAAU,iDAAiD,KAE3D,CACT,E,2GCnHK,MAAM0nD,EAAgBxsD,gBACJ4E,EAAAA,EAAQ2L,KAAK,kBAAmB,CACrD0kB,WAAYN,KAGEx0B,KAAK25D,iBAGVC,EAAkB/5D,gBACvB4E,EAAAA,EAAQ2L,KAAK,oBAAqB,CACtC0kB,WAAYN,GACZ,C,m6CCJG,MAAMjR,UAA6BxN,OAEnC,MAAMyuC,EAAU3kD,MACrB3F,EACAg2D,GAAmB,KAEnB,IAQE,OAPiBA,QACPzrD,EAAAA,EAAQF,IAAI,MAAO,CAEvB4S,OAAQ,CAAE0iD,UAAW70C,OAAO,IAAIuJ,eAE5B9pB,EAAAA,EAAQF,IAAI,UAAUrK,MAEhB8F,IAClB,CAAE,MAAOK,GACP,OAAQA,EAAMiD,UAAU+N,QACtB,KAAK,IACL,KAAK,IACH,MACF,QACmC,MAA7BviB,OAAOhE,SAASiS,WAClBT,QAAQ+D,MAAM,yCACdvR,OAAOhE,SAASmK,KAAO,KAG7B,OAAO,IACT,GAGWwT,EAAU5I,gBACf4E,EAAAA,EAAQuhC,OAAO,aAGrBl3C,OAAOhE,SAASmK,MAAOyT,EAAAA,EAAAA,KAAiB,EAG7B8vB,EAAS34B,OAASiO,QAAOJ,cACpCjJ,EAAAA,EAAQ2L,KAAK,iBAAkB,CAC7BlZ,KAAM,CACJ4W,QACAJ,cAIOosD,EAAWj6D,OACtBiO,QACAJ,WACAL,YACAE,WACApR,OACA49D,mBASAt1D,EAAAA,EAAQ2L,KAAK,SAAU,CACrBlZ,KAAM,CACJ4W,QACAJ,WACA/mB,WAAY0mB,EACZzmB,UAAW2mB,EACXpR,OACA69D,gBAAiBD,KAIVj2C,EAAejkB,WAC1BwI,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBu+B,QAAS,CAC9BjrB,gBAAiB,sBACjBq+C,WAEKx1D,EAAAA,EAAQuhC,OAAO,gBAGX7iB,EAAUA,EACrBrU,WACA0S,cACA4B,4BAA4B,KAC5BnI,eAAe,KACfkH,yBAAyB,SAQzB,IAAIniB,EAEJ,OAAQ8O,GACN,IAAK,YACH9O,EAAI7b,EAAAA,EAAAA,EAAA,CACF+1E,aAAc,EACdC,0BACE34C,EAAY44C,uBAAyBC,EAAAA,GACjC74C,EAAY84C,0BACZ94C,EAAY44C,qBAClBv+C,cAAeZ,EACflvB,aAAY5H,EAAA,CACVub,MAAO8hB,EAAYrlB,KACnB8C,YAAauiB,EAAYviB,YACzBE,mBAAoBqiB,EAAYpiB,kBAC5BoiB,GAAa4C,YAAc,CAC7BA,WAAY5C,GAAa4C,eAGxB5C,GAAa4C,YAAc,CAC9B2gC,QAAS,CACPC,aAAcxjC,EAAY6kB,YAC1B16C,IAAK4uE,UAAU/4C,EAAYg5C,YAC3BC,qBAAqB,KAGrBj5C,GAAak5C,cAAgB,CAC/BA,aAAcl5C,GAAak5C,eAC1B,CAAF,GACDC,8BAA+Bv3C,IAEjC,MACF,IAAK,UACHpjB,EAAI7b,EAAA,CACF+1E,aAAc,EACdC,0BACE34C,EAAY44C,uBAAyBC,EAAAA,GACjC74C,EAAY84C,0BACZ94C,EAAY44C,qBAClBv+C,cAAeZ,EACflvB,aAAc,CACZoQ,KAAMqlB,EAAYrlB,KAClBuD,MAAO8hB,EAAY9hB,MACnBP,mBAAoBqiB,EAAYpiB,kBAElC/Q,QAASmzB,EAAYnzB,SACjB8zB,GAA0B,CAAEy4C,yBAA0Bz4C,IAE5D,MACF,IAAK,QACHniB,EAAI7b,EAAA,CACF+1E,aAAc,EACdC,0BACE34C,EAAY44C,uBAAyBC,EAAAA,GACjC74C,EAAY84C,0BACZ94C,EAAY44C,qBAClBv+C,cAAeZ,EACflvB,aAAc,CACZoQ,KAAMqlB,EAAYrlB,KAClBioB,WAAY5C,EAAY4C,WACxBy2C,qBAAsBr5C,EAAYs5C,qBAAqB/zE,KAAK,KAC5DkY,YAAauiB,EAAYviB,cAEvBuiB,GAAak5C,cAAgB,CAC/BA,aAAcl5C,GAAak5C,eAKnC,OAAOj2D,EAAAA,EACJ2L,KAAK,cAAepQ,GACpBk8C,OAAO77C,IACN,MAAI2nB,IAAAA,aAAmB3nB,IAAsC,MAA5BA,GAAOiD,UAAU+N,OAC1C,IAAIkS,EAAqBljB,GAAOiD,UAAUtD,MAAM6zB,SAEhDxzB,CACR,IAED47C,MAAM34C,GAAQnf,EAAAA,EAAA,GAAWmf,EAAStD,KAAK9I,MAAI,IAAE6jE,aAAc,MAAM,EAGzDh7D,EAAqBA,CAChC7F,EACAuxB,IAEOhnB,EAAAA,EAAQghC,IAAI,UAAUvrC,IAAU,CACrC+E,YAAawsB,EAASxsB,YACtBE,mBAAoBssB,EAASrsB,mBAIpBsE,EAAoB7D,MAC/B3F,EACAiC,EACAqlB,KAEA,IAAI71B,EAAM,GAEV,OAAQwQ,GACN,KAAKwB,EAAAA,EAAS4C,UACZ5U,EAAM,sBAAsBuO,IAC5B,MACF,KAAKyD,EAAAA,EAASC,QACZjS,EAAM,qBAAqB61B,EAAYn7B,KACvC,MACF,KAAKsX,EAAAA,EAASoK,iBACZpc,EAAM,wBAAwB61B,EAAYn7B,KAS9C,aALuBoe,EAAAA,EAAQghC,IAAI95C,EAAGxH,EAAAA,EAAA,GACjCq9B,GAAW,IACdxC,QAAS9kB,MAGK8F,KAAK9I,IAAI,EAGd8J,EAA0B9G,GAC9BuK,EAAAA,EAAQghC,IAAI,UAAUvrC,IAAU,CACrCiG,sBAAsB,IAIb25C,EAAoBj6C,gBACzB4E,EAAAA,EAAQ2L,KAAK,sCAAuC,CAAEtC,SAAQ,EAGzD8rC,EAAa/5C,gBACV4E,EAAAA,EAAQ2L,KAAK,qBAAsB,CAAE4qD,kBAAmB3gB,KAAqBr6C,KACxFC,O,qEClOE,IAAKg7D,EAAoB,SAApBA,GAAoB,OAApBA,EAAoB,kBAApBA,EAAoB,gBAApBA,EAAoB,gBAApBA,EAAoB,YAApBA,EAAoB,oBAApBA,CAAoB,K,qICJzB,IAAKC,EAAc,SAAdA,GAAc,OAAdA,EAAAA,EAAc,eAAdA,EAAAA,EAAc,yBAAdA,EAAAA,EAAc,6BAAdA,EAAAA,EAAc,uBAAdA,EAAAA,EAAc,mBAAdA,EAAAA,EAAc,uBAAdA,CAAc,MAgBY9zE,OAAOqa,OAAOy5D,GAAgBrP,OAClEzkE,OAAOqa,OAAOw5D,EAAAA,IAOT,IAAKE,EAAsB,SAAtBA,GAAsB,OAAtBA,EAAAA,EAAsB,iBAAtBA,EAAAA,EAAsB,yBAAtBA,EAAAA,EAAsB,yBAAtBA,EAAAA,EAAsB,6BAAtBA,EAAAA,EAAsB,uBAAtBA,EAAAA,EAAsB,uBAAtBA,EAAAA,EAAsB,2CAAtBA,EAAAA,EAAsB,+CAAtBA,EAAAA,EAAsB,yCAAtBA,CAAsB,MAY3B,MAAMvjB,EAA8B,CACzC,EAAG,4BACH,EAAG,sBACH,EAAG,gCACH,EAAG,8BACH,EAAG,oCACH,EAAG,uCACH,EAAG,sBACH,EAAG,wBACH,EAAG,oB,qEC3CE,IAAKwjB,EAAa,SAAbA,GAAa,OAAbA,EAAa,oBAAbA,EAAa,yDAAbA,EAAa,uDAAbA,CAAa,K,4FCFlB,IAAKrrB,EAAQ,SAARA,GAAQ,OAARA,EAAQ,gCAARA,EAAQ,8BAARA,EAAQ,0CAARA,EAAQ,4CAARA,EAAQ,sCAARA,EAAQ,4BAARA,EAAQ,4CAARA,EAAQ,4CAARA,CAAQ,MAcb,MAAMsrB,EAAmD,CAC9D,CAACtrB,EAASurB,gBAAiB,SAC3B,CAACvrB,EAASwrB,eAAgB,QAC1B,CAACxrB,EAASyrB,qBAAsB,cAChC,CAACzrB,EAAS0rB,sBAAuB,eACjC,CAAC1rB,EAAS2rB,mBAAoB,YAC9B,CAAC3rB,EAASC,cAAe,OACzB,CAACD,EAAS4rB,4BAA6B,qBACvC,CAAC5rB,EAAS6rB,uBAAwB,gB,4FCxB7B,IAAKC,EAAoB,SAApBA,GAAoB,OAApBA,EAAoB,0CAApBA,EAAoB,8BAApBA,EAAoB,4CAApBA,CAAoB,MAMpBC,EAAmB,SAAnBA,GAAmB,OAAnBA,EAAmB,4DAAnBA,EAAmB,sEAAnBA,EAAmB,4CAAnBA,EAAmB,4BAAnBA,EAAmB,0BAAnBA,CAAmB,K,4FCFxB,MAAM5/D,EAAmBA,CAACvQ,EAAMmD,OAAOhE,SAASmK,KAAMkH,EAAiB,MAC3C,MAA7BrN,OAAOhE,SAASiS,UAClBg/D,WAAWlxC,QAAQ,UAAU1uB,IAAQxQ,EAAK,KAAM,IAClD,EAGWs1B,EAAmBA,CAC9B+6C,EACAC,GAAa,EACb9/D,EAAiB,GACjB+/D,GAAiB,KAGjB,MAAM5O,EAAUyO,WAAW9rD,QAAQ,UAAU9T,MAAW4/D,WAAW9rD,QAAQ,WAC3E,GAAIq9C,EAAS,CASX,GARI2O,IAEFF,WAAW7rD,WAAW,UAAW,KACjC6rD,WAAW7rD,WAAW,WAAY,KAClC6rD,WAAW7rD,WAAW,WAAY,KAClC6rD,WAAW7rD,WAAW,WAAY,OAG/BgsD,EACH,OAAO5O,EAGLx+D,OAAOhE,SAASmK,OAASq4D,EAC3BxiE,SAAS4J,SAET5F,OAAOhE,SAASmK,KAAOq4D,CAE3B,MAAW4O,IACTptE,OAAOhE,SAASmK,KAAO+mE,EACzB,C,wRC9BFn9D,IAAAA,OAAa,MACbA,IAAAA,OAAas9D,KACbt9D,IAAAA,OAAau9D,KACbv9D,IAAAA,OAAaw9D,KACbx9D,IAAAA,OAAay9D,KACbz9D,IAAAA,OAAa09D,EAAAA,GAEN,MAAM/9D,EAAiBw2C,GACrBn2C,IAAMm2C,GAAMtrB,KAAK6E,KAAKiuC,MAAO,QAGzBC,EAAqBA,CAACC,EAAgBC,KACjD,IAAIC,EAAc,GACdF,GAASC,EACXC,EAAc/9D,IAAM,GAAG89D,KAAQD,IAAS,WAAWE,cAC1CF,IACTE,EAAc/9D,IAAM,QAAQ69D,IAAS,WAAWE,eAGlD,MAAMC,EAA6B,GACnC,IAAK,IAAI7lC,EAAI,EAAGA,GAAK4lC,EAAa5lC,GAAK,EACrC6lC,EAAiB51E,KAAK+vC,GAGxB,OAAO6lC,EAAiBl3E,KAAKm3E,IACpB,CACLppE,MAAOue,OAAO6qD,GACdvmE,MAAO0b,OAAO6qD,MAEhB,EAGSC,EAA2Cl+D,IAAAA,cAAoBlZ,KAAI,CAAC+2E,EAAOv6B,KAC/E,CACLzuC,MAAOgpE,EACPnmE,MAAO0b,OAAOkwB,EAAQ,OAIpB66B,EAAwB,GAC9B,IAAK,IAAIhmC,GAAI,IAAIzI,MAAO0uC,cAAejmC,EAAI,KAAMA,GAAK,EACpDgmC,EAAY/1E,KAAK+vC,GAEZ,MAAMkmC,EAA0CF,EAAYr3E,KAAKg3E,IAC/D,CACLjpE,MAAOue,OAAO0qD,GACdpmE,MAAO0b,OAAO0qD,OAILQ,EAAsBA,CAACnoB,EAAcl2C,IACzCD,IAAMm2C,GAAMooB,GAAG,oBAAoBt+D,OAAOA,E,2IClD5C,MAAMylC,EAAmBA,EAC9BnqC,gBACAjT,WAKA,OAAQiT,GACN,KAAKghE,EAAAA,EAAciC,SACjB,OAAOC,EAAAA,EAAAA,KAAcn2E,GACvB,KAAKi0E,EAAAA,EAAcmC,6BACjB,OAAOC,EAAAA,EAAAA,KAAkCr2E,GAC3C,KAAKi0E,EAAAA,EAAcqC,4BACjB,OAAO9mD,EAAAA,EAAAA,KAAiCxvB,GAC1C,SACEw0B,EAAAA,EAAAA,GAAavhB,GACjB,EAGWsjE,EAAqC,CAChD,CAAC7mD,EAAAA,GAAgBwQ,KAAM+zC,EAAAA,EAAciC,SACrC,CAACxmD,EAAAA,GAAgBC,oBAAqBskD,EAAAA,EAAcqC,4BACpD,CAAC5mD,EAAAA,GAAgB0Q,qBAAsB6zC,EAAAA,EAAcmC,6B,2pCCDhD,MAAMI,EAA8Bl5D,GACzB,OAAZA,GACG,wBAAyBA,EAGrB+xC,EAAmE,CAC9E,CAAC3/B,EAAAA,GAAgByQ,WAAY,YAC7B,CAACzQ,EAAAA,GAAgBwQ,KAAM,cACvB,CAACxQ,EAAAA,GAAgB0Q,qBAAsB,cACvC,CAAC1Q,EAAAA,GAAgBC,oBAAqB,uBAG3Bg5B,EAA4BA,CACvC54C,EACAuN,KAEA,MAAMm5D,OAA+BtmE,IAArBmN,EAAQo5D,WAA2Bp5D,EAAQo5D,SAE3D,GAAI3mE,EAAKiF,OAASwB,EAAAA,EAASC,QAAS,CAClC,MAAAkgE,EAA8C5mE,EAAKnL,aAA3Cwb,EAAOu2D,EAAPv2D,QAASzJ,EAAQggE,EAARhgE,SAAUkJ,EAAc82D,EAAd92D,eACrB+2D,EAAYx2D,IAAYy2D,EAAAA,EAAmBC,QAC3CC,EAAaz5D,EAAQ8nC,mBAAqB11B,EAAAA,GAAgByQ,UAEhE,GAAIxpB,IAAaigE,GAAaH,GAAWM,GACvC,OAAIl3D,EACK+oC,EAAAA,EAASyrB,oBAEXzrB,EAAAA,EAASwrB,aAEpB,CAEA,OACErkE,EAAK82B,MAAM1N,MACRnkB,GACwB,YAAvBA,EAAKozB,eACLpzB,EAAKgiE,cAAgB15D,EAAQpe,IAC7Bu3E,KAAazhE,EAAKrV,OAASipD,EAAAA,EAAS0rB,yBACrC30E,MAAQ,IAAI,EAINs3E,EAAmBA,CAC9BlnE,EAIAuN,KAKA,IAAKvN,IAASuN,EAAS,OAAO,EAE9B,MAAA3I,EAA0C5E,EAAKnL,aAAvCwb,EAAOzL,EAAPyL,QAASzJ,EAAQhC,EAARgC,SAAU2wB,EAAU3yB,EAAV2yB,WACrB4vC,EAAqBnnE,EAAKiF,OAASwB,EAAAA,EAASC,SAAW6G,EAAQpW,QAAQhI,KAAOooC,EAC9EsvC,EAAYx2D,IAAYy2D,EAAAA,EAAmBC,QAC3CL,OAA+BtmE,IAArBmN,EAAQo5D,WAA2Bp5D,EAAQo5D,SACrDK,EAAaz5D,EAAQ8nC,mBAAqB11B,EAAAA,GAAgByQ,UAEhE,SAAI+2C,GAAsBvgE,IAAaigE,GAAaH,GAAWM,KAIxD52D,QACLpQ,EAAK82B,MAAM5wB,MACRjB,GACwB,YAAvBA,EAAKozB,eACLpzB,EAAKgiE,cAAgB15D,EAAQpe,KAC5Bu3E,EACGzhE,EAAKrV,OAASipD,EAAAA,EAAS0rB,qBACvBt/D,EAAKrV,OAASipD,EAAAA,EAASC,cACvB7zC,EAAKrV,OAASipD,EAAAA,EAAS2rB,mBACvBv/D,EAAKrV,OAASipD,EAAAA,EAAS4rB,4BACvBx/D,EAAKrV,OAASipD,EAAAA,EAAS6rB,yBAEhC,EAGUjvB,EAAyBA,CACpCz1C,EAMAuN,KAKA,MAAAw5C,EAA0C/mD,EAAKnL,aAAvCwb,EAAO02C,EAAP12C,QAASzJ,EAAQmgD,EAARngD,SAAU2wB,EAAUwvB,EAAVxvB,WAE3B,IACGv3B,KACC,OAAQA,KACTuN,GACDvN,EAAKiF,OAASwB,EAAAA,EAASC,SACvB6G,EAAQpW,QAAQhI,KAAOooC,EAEvB,OAAO,EAGT,MAAMsvC,EAAYx2D,IAAYy2D,EAAAA,EAAmBC,QAC3CL,OAA+BtmE,IAArBmN,EAAQo5D,WAA2Bp5D,EAAQo5D,SACrDK,EAAaz5D,EAAQ8nC,mBAAqB11B,EAAAA,GAAgByQ,UAEhE,SAAIxpB,KAAaigE,GAAaH,GAAWM,KAIlC52D,QACLpQ,EAAK82B,MAAM5wB,MACRjB,GACwB,YAAvBA,EAAKozB,eACLpzB,EAAKgiE,cAAgB15D,EAAQpe,KAC5Bu3E,EACGzhE,EAAKrV,OAASipD,EAAAA,EAAS0rB,qBACvBt/D,EAAKrV,OAASipD,EAAAA,EAASC,gBAEhC,EAGUsuB,EAA0BA,CACrC53E,EACA+d,IAKI,cAAe/d,EAAYqF,cAE3B+jD,EAA0BppD,EAAqC+d,KAC/DsrC,EAAAA,EAAS6rB,sBAOF2C,EAAyBA,EACpC/pC,YACAgqC,OACAC,cAMAD,EAAK33E,QAAQuyC,GACXA,EAAOpL,MAAM1N,MACVnkB,GACwB,YAAvBA,EAAKozB,eAA+BpzB,EAAKgiE,cAAgB3pC,GAAar4B,EAAKrV,OAAS23E,MAI/EC,EACXj6D,IAEA,MAAM8qC,EAAoB9qC,EAAQ+qC,oBAC5BmvB,EAAsBpvB,EAAkB1oD,QAC3C6oD,GAAaA,EAASvzC,OAASwB,EAAAA,EAASC,SAAW8xC,EAAS3jD,aAAaib,iBAEtE43D,EAAqBrvB,EAAkB1oD,QAC1C6oD,GACCA,EAASvzC,OAASwB,EAAAA,EAASC,SAC3B8xC,EAAS3jD,aAAa+R,WACrB4xC,EAAS3jD,aAAaib,iBAErB63D,GAAQlvB,EAAAA,EAAAA,GACZ4uB,EAAuB,CACrB/pC,UAAW/vB,EAAQpe,GACnBm4E,KAAMjvB,EACNkvB,SAAU1uB,EAAAA,EAASC,gBAGjB8uB,GAAanvB,EAAAA,EAAAA,GACjB4uB,EAAuB,CACrB/pC,UAAW/vB,EAAQpe,GACnBm4E,KAAMjvB,EACNkvB,SAAU1uB,EAAAA,EAAS2rB,qBAGjBqD,GAAgBpvB,EAAAA,EAAAA,GACpB4uB,EAAuB,CACrB/pC,UAAW/vB,EAAQpe,GACnBm4E,KAAMjvB,EACNkvB,SAAU1uB,EAAAA,EAAS6rB,yBAGjBoD,GAAqBrvB,EAAAA,EAAAA,GACzB4uB,EAAuB,CACrB/pC,UAAW/vB,EAAQpe,GACnBm4E,KAAMjvB,EACNkvB,SAAU1uB,EAAAA,EAAS4rB,8BAGjBsD,GAAetvB,EAAAA,EAAAA,GACnB4uB,EAAuB,CACrB/pC,UAAW/vB,EAAQpe,GACnBm4E,KAAMjvB,EACNkvB,SAAU1uB,EAAAA,EAAS0rB,wBAIvB,OAAOyD,EAAAA,EAAAA,QACL,IACMz6D,EAAQo5D,SACR,IAAIgB,KAAUC,KAAeC,KAAkBC,GAC/CC,KACDL,KACAD,IAEJjvB,GAAaA,EAASrpD,KACvB42B,MAAM,EAAG,EAAE,EAGF62B,EAAqBA,CAChCrvC,EACA06D,GAAiB,KAEjB,OAAQ16D,GAAS8nC,kBACf,KAAK11B,EAAAA,GAAgByQ,UACnB,MAAO,YAAY7iB,EAAQpW,QAAQ6iB,aAErC,KAAK2F,EAAAA,GAAgBwQ,IACnB,MACE,aAAa5iB,EAAQgqC,aAAa2wB,wBAA0B,aAAa36D,EAAQtd,QAChFsd,EAAQmqD,cAAgBuQ,EACrB,IAAIE,EAAAA,MAAqB56D,EAAQmqD,cACjC,IAGR,KAAK/3C,EAAAA,GAAgB0Q,oBACnB,MAAO,oBAAoB9iB,EAAQtd,OAErC,KAAK0vB,EAAAA,GAAgBC,mBACnB,OAAOJ,EAAAA,EAAAA,KAAwBjS,EAAQtd,MAEzC,QACE,MAAM,IAAI4uB,MAAM,6BAA6BtR,GAAS8nC,oBAE1D,EAGW/nC,EAAyBA,CACpCC,EAKArM,KAEOknE,EAAAA,EAAAA,KACLl4C,EAAAA,GAA4B3iB,EAAQ8nC,kBACpC9nC,EAAQtd,KACRsd,EAAQmqD,Y,+VAAWzqE,CAAA,CAEb,CAACk7E,EAAAA,IAAoB56D,EAAQmqD,aAC1Bx2D,GAELA,GAWKy0C,EACXpoC,IAEA,IAAKA,EAAQgqC,YAAY8wB,cAAgB96D,EAAQgqC,YAAYwD,SAC3D,OAAIxtC,EAAQukD,QAAgBlc,EAAAA,GAAwBC,OAC7CD,EAAAA,GAAwB0yB,OAGjC,MAAMC,EACJn4D,QAAQ7C,EAAQgqC,YAAY8wB,cAC5B1gE,MAAQ6gE,SAASj7D,EAAQgqC,YAAY8wB,aAAe,GAChDI,EACJr4D,QAAQ7C,EAAQgqC,YAAYwD,WAAapzC,MAAQ+gE,QAAQn7D,EAAQgqC,YAAYwD,UAAY,GAE3F,OAAIwtB,EAA2B3yB,EAAAA,GAAwB+F,YACnDpuC,EAAQukD,QACN2W,EAAuB7yB,EAAAA,GAAwB+yB,aACvC/yB,EAAAA,GAAwBC,OAC/BD,EAAAA,GAAwB0yB,MAAM,EAmB1BM,EAAoCr7D,IAQ/C,IAxBqCA,KAOrC,MAAMs7D,EAAgC,IAAIxxC,KAAK,aAE/C,OACE,IAAIA,KAAK9pB,EAAQklB,YAAc,IAAMo2C,GACrC,IAAIxxC,KAAK9pB,EAAQgqC,aAAa8wB,aAAe,IAAMQ,GACnD,IAAIxxC,KAAK9pB,EAAQgqC,aAAawD,UAAY,IAAM8tB,CAA6B,EAa5EC,CAAuBv7D,KACvBA,EAAQgqC,aAAawD,UACtB,IAAI1jB,KAAS,IAAIA,KAAK9pB,EAAQgqC,aAAawD,UAE3C,OAAOguB,EAAAA,GAA8BC,eAGvC,IAAKz7D,EAAQ07D,kBAAmB,OAAOF,EAAAA,GAA8BG,eAErE,MAAMC,GAAoB7hE,EAAAA,EAAAA,IAAciG,EAAQ07D,mBAEhD,OAAIE,EAAoB,EAAUJ,EAAAA,GAA8BK,cAC5DD,EAAoB,EAAUJ,EAAAA,GAA8BM,qBACzDN,EAAAA,GAA8BO,eAAe,EAGzCC,EACXh8D,IAEA,IAAKA,EAAS,OAAO,EAErB,IAAKA,EAAQgqC,YAAa,OAAO,EAEjC,GAAIhqC,EAAQ8nC,mBAAqB11B,EAAAA,GAAgByQ,UAAW,OAAO,EAEnE,MAKQi4C,EALY96D,EAAQgqC,YAKpB8wB,YAER,QAAKA,GAEE,IAAIhxC,KAAKgxC,GAAe,IAAIhxC,KAAKA,KAAKmyC,IAAI,KAAM,EAAG,GAAG,EAGlDC,EAA0BA,EACrCC,WACAC,SACAjxB,WAOAgxB,EAAShxB,MAAK,CAACruC,EAAGsuC,KAChB,MAAMixB,EAAUj0B,EAA2BtrC,GACrCw/D,EAAUl0B,EAA2BgD,GAGrCmxB,EAAiB3vD,GACrB2T,OAAO+7C,IAAY1vD,GAAU2T,OAAO87C,IAAYzvD,GAE5C4vD,EAAgBJ,EAAOhxB,EAAExpD,IAAMw6E,EAAOt/D,EAAElb,IAExC66E,EACJ,IAAI3yC,KAAKhtB,EAAEktC,YAAY8wB,aAAc4B,UACrC,IAAI5yC,KAAKshB,EAAEpB,YAAY8wB,aAAc4B,UAEjCC,EACJ,IAAI7yC,KAAKshB,EAAEpB,YAAYwD,UAAWkvB,UAAY,IAAI5yC,KAAKhtB,EAAEktC,YAAYwD,UAAWkvB,UAElF,OAAQvxB,GACN,KAAKlC,EAAAA,GAAO2zB,UACV,OACGL,EAAcl0B,EAAAA,GAAwBC,SACrCi0B,EAAcl0B,EAAAA,GAAwB+F,cACtCmuB,EAAcl0B,EAAAA,GAAwB+yB,eACtCmB,EAAcl0B,EAAAA,GAAwB0yB,SACtCyB,IACCH,IAAYh0B,EAAAA,GAAwB+F,YACjCquB,EACAE,KACN,EAEJ,KAAK1zB,EAAAA,GAAO4zB,YACV,OAAQJ,GAAqBD,EAC/B,KAAKvzB,EAAAA,GAAO6zB,SACV,OACGP,EAAcl0B,EAAAA,GAAwBC,SACrCi0B,EAAcl0B,EAAAA,GAAwB+F,cACtCmuB,EAAcl0B,EAAAA,GAAwB+yB,eACtCmB,EAAcl0B,EAAAA,GAAwB0yB,UACrCsB,IAAYh0B,EAAAA,GAAwB+F,YACjCquB,EACAE,IACJH,IACF,EAEJ,SACEtlD,EAAAA,EAAAA,GAAai0B,GACjB,GACA,C,qCCzbG,SAASj0B,EAAa6lD,GAC3B,MAAM,IAAIzrD,MAAM,wBAAwByrD,IAC1C,C,6GCCO,MAAM7xB,EAA0BA,CACrCv4C,EACAqqE,EAA0C,WAEnCrqE,EAAMw4C,MAAK,CAACruC,EAAGsuC,IACb7qB,OAAO1d,QAAQuoC,EAAEjhD,QAAQ6yE,GAAW91E,MAAQq5B,OAAO1d,QAAQ/F,EAAE3S,QAAQ6yE,GAAW91E,O,+4CCuB3F,MAAM+1E,EAAsB,SACtBC,EAA6B,gBAC7BC,EAA6B,gBAEpB,SAASC,GAAyB,aAC/CvK,EAAY,gBACZwK,EAAe,mBACfC,EAAkB,sBAClBC,EAAqB,mBACrBC,EAAkB,sBAClBC,EAAqB,OACrBh9B,EAAM,UACN8H,EAAS,WACTm1B,IAEA,MAAqD7vE,EAAAC,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAA9C4vE,EAAW9vE,EAAA,GAAE+vE,EAAc/vE,EAAA,GACgBK,EAAAJ,GAAZC,EAAAA,EAAAA,UAAS,IAAG,GAA3C8vE,EAAW3vE,EAAA,GAAE4vE,EAAc5vE,EAAA,GAE5B2hB,GAAWthB,EAAAA,EAAAA,KAAajP,GAAqBA,EAAM+K,OAAOwlB,WAEzDqJ,EAAiCprB,GAAjB6vB,EAAAA,EAAAA,KAAiB,GAArB,GACbpsB,GAAUC,EAAAA,EAAAA,MACVusE,GAAUjW,EAAAA,EAAAA,MAEhBtyD,EAAAA,EAAAA,YAAU,KACR,GAAIuoE,EAAJ,CAIE,GAHI7kD,EAAa0c,IAAIqnC,IACnBI,EAAgBnkD,EAAapZ,IAAIm9D,GAAsBzwD,MAAM,MAE3D0M,EAAa0c,IAAIsnC,GAA6B,CAChD,MAAMc,EAAe9kD,EAAapZ,IAAIo9D,GAA6B1wD,MAAM,KACzE+wD,EAAsBS,EACxB,CACA,GAAI9kD,EAAa0c,IAAIunC,GAA6B,CAChD,MAAM5M,EAAer3C,EAAapZ,IAAIq9D,GAA6B3wD,MAAM,KACzEixD,EAAsBlN,EACxB,CAEF,MAEIsC,EAAatwE,OAAQ22B,EAAa2c,IAAIonC,EAAqBpK,EAAavwE,KAAK,MAC5E42B,EAAaqoB,OAAO07B,GACrBK,EAAmB/6E,OACrB22B,EAAa2c,IAAIqnC,EAA4BI,EAAmBh7E,KAAK,MAClE42B,EAAaqoB,OAAO27B,GACrBM,EAAmBj7E,OACrB22B,EAAa2c,IAAIsnC,EAA4BK,EAAmBl7E,KAAK,MAClE42B,EAAaqoB,OAAO47B,GAEzB5rE,EAAQuiB,QAAQ,CAAErC,OAAQyH,EAAaoG,YAAa,GACnD,CAACuzC,EAAcwK,EAAiBC,EAAoBC,IAEvD,MAAMU,EAAqBA,KACzBH,EAAe,IACfT,EAAgB,IAChBE,EAAsB,IACtBE,EAAsB,GAAG,EAGrBS,EAAsBrL,EAAa3xE,KAAK4Q,IAAK,CAAQA,QAAO7C,MAAO6C,MAEnEqsE,GACJ5xE,EAAAA,EAAAA,KAAC6uB,EAAAA,EAAc,CACbtpB,MAAO+rE,EACPzuE,SAAU0uE,EACV3iE,SAAWrJ,IACJA,IACLurE,EAAgB,IAAIxK,EAAc/gE,IAClCgsE,EAAe,IAAG,EAEpBv+D,YAAY,2BACZ82C,WAAY,OAIV+nB,EACJvL,EAAatwE,OAAS,GACpBgK,EAAAA,EAAAA,KAAA,OAAK0J,MAAO,CAAEoP,UAAW,IAAK3Y,UAC5BH,EAAAA,EAAAA,KAAC8xE,EAAAA,GAAU,CACT1qE,QAASuqE,EACTI,eAAgBzL,EAChBzjE,SAAW4N,GAAWqgE,EAAgBrgE,GAAU,IAChDkJ,IAAI,UACJq4D,SAAO,MAGT,KAWAC,EACHC,GAAsCpvE,IACjCA,EAAEE,OAAOC,QACXiuE,GAAuBiB,GAAS,IAAIA,EAAMD,KAE1ChB,GAAuBiB,GAASA,EAAKt8E,QAAQ5C,GAASA,IAASi/E,KACjE,EAGEE,GACJpyE,EAAAA,EAAAA,KAAAkC,EAAAA,SAAA,CAAA/B,SAuCG0kB,EAAAA,GAAcwtD,kCACbryE,EAAAA,EAAAA,KAACsyE,EAAAA,GAAa,CAAC5vE,MAAM,oBAAmBvC,UACtC8B,EAAAA,EAAAA,MAACy0C,EAAAA,GAAiB,CAAC,cAAY,0BAAyBv2C,SAAA,EACtDH,EAAAA,EAAAA,KAACyC,EAAAA,GAAQ,CACP8vE,WAAYjvD,EACZ5gB,OAAO1C,EAAAA,EAAAA,KAACwyE,EAAa,CAACC,WAAYnvD,EAASnjB,SAAC,aAC5CyC,UAAWquE,EAAmB/kE,SAASwmE,EAAAA,GAAoBC,UAC3D9vE,SAAUovE,EAAwBS,EAAAA,GAAoBC,UACtDhwE,KAAK,QAEP3C,EAAAA,EAAAA,KAACyC,EAAAA,GAAQ,CACP8vE,WAAYjvD,EACZ5gB,OAAO1C,EAAAA,EAAAA,KAACwyE,EAAa,CAACC,WAAYnvD,EAASnjB,SAAC,yBAC5CyC,UAAWquE,EAAmB/kE,SAASwmE,EAAAA,GAAoBE,sBAC3D/vE,SAAUovE,EAAwBS,EAAAA,GAAoBE,sBACtDjwE,KAAK,QAEP3C,EAAAA,EAAAA,KAACyC,EAAAA,GAAQ,CACP8vE,WAAYjvD,EACZ5gB,OAAO1C,EAAAA,EAAAA,KAACwyE,EAAa,CAACC,WAAYnvD,EAASnjB,SAAC,cAC5CyC,UAAWquE,EAAmB/kE,SAASwmE,EAAAA,GAAoBG,WAC3DhwE,SAAUovE,EAAwBS,EAAAA,GAAoBG,WACtDlwE,KAAK,cAQjB,OAAI2gB,GAEArhB,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACiiB,EAAAA,GAAc,CACb7f,OAAQgvE,EACR/uE,QAASA,IAAMgvE,GAAe,GAC9B9kE,oBAAkB,EAClB2V,UAAU,SACV4wD,mBACE9yE,EAAAA,EAAAA,KAACsH,EAAAA,GAAU,CACTjE,SAAS,QACTV,KAAK,KACL4E,QAAQ,SACR9D,QAASA,IAAM4tE,GAAe,GAC9B9yD,gBAAgB,SAChB,cAAY,eACZxX,OAAO,eAEV5G,UAED8B,EAAAA,EAAAA,MAAC8wE,EAAK,CAAA5yE,SAAA,EACJ8B,EAAAA,EAAAA,MAAC2sB,EAAAA,GAAe,CAAAzuB,SAAA,CACbiyE,GACDpyE,EAAAA,EAAAA,KAACsyE,EAAAA,GAAa,CAAC5vE,MAAM,UAASvC,UAC5BH,EAAAA,EAAAA,KAAC02C,EAAAA,GAAiB,CAAC,cAAY,aAAYv2C,SACxC46C,EAAgBpmD,KAAKioD,IACpB58C,EAAAA,EAAAA,KAACyC,EAAAA,GAAQ,CAEP8vE,WAAYjvD,EACZ5gB,OAAO1C,EAAAA,EAAAA,KAACwyE,EAAa,CAACC,WAAYnvD,EAASnjB,SAAEy8C,EAAOl6C,QACpDE,UAAWsxC,EAAO3uC,QAAUq3C,EAAOr3C,MACnC1C,SAAWC,GAAMA,EAAEE,OAAOC,SAAW+4C,EAAUY,GAC/Cj6C,KAAK,KACL1P,KAAK,SANA,QAAQ2pD,EAAOr3C,gBAW5BvF,EAAAA,EAAAA,KAACgzE,EAAAA,GAAkB,CAACvvE,QAASiuE,QAE/BzvE,EAAAA,EAAAA,MAACgxE,EAAW,CAAA9yE,SAAA,EACVH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACnD,QAAQ,QAAQ9D,QAASA,IAAM4tE,GAAe,GAAOlxE,SAAC,YAG9D8B,EAAAA,EAAAA,MAACyI,EAAAA,GAAM,CAACnD,QAAQ,UAAU9D,QAASA,IAAM4tE,GAAe,GAAOlxE,SAAA,CAAC,QACxDgxE,EAAW,6BAKzBlvE,EAAAA,EAAAA,MAAA,OAAKyH,MAAO,CAAEqP,aAAc,IAAK5Y,SAAA,EAC/B8B,EAAAA,EAAAA,MAACixE,EAAe,CAAA/yE,SAAA,EACdH,EAAAA,EAAAA,KAAA,OAAK0J,MAAO,CAAE7L,MAAO,QAASsC,SAAEyxE,KAChC5xE,EAAAA,EAAAA,KAACsH,EAAAA,GAAU,CACTjE,SAAS,gBACTkE,QAAQ,SACRC,aAAa,OACb/D,QAASA,IAAM4tE,GAAe,QAGjCQ,SAMP5vE,EAAAA,EAAAA,MAAC2sB,EAAAA,GAAe,CAAAzuB,SAAA,EACd8B,EAAAA,EAAAA,MAACqwE,EAAAA,GAAa,CAAC5vE,MAAM,SAASywE,YAAY,WAAUhzE,SAAA,CACjDyxE,EACAC,KAEFO,GACDpyE,EAAAA,EAAAA,KAACgzE,EAAAA,GAAkB,CAACvvE,QAASiuE,MAGnC,CAEA,MAAMwB,EAAkB9uE,EAAAA,GAAOC,GAAG;;;;;;EAQ5B0uE,EAAQ3uE,EAAAA,GAAOC,GAAG;;;;IAIpBuqB,EAAAA;;;;;EAOEqkD,EAAc7uE,EAAAA,GAAOC,GAAG;;;;;0BAKJd,EAAAA,GAAO2N;EAG3BshE,EAAgBpuE,EAAAA,GAAOC,GAAG;;;;;IAK5B,EAAGouE,gBACHA,GACA;kgCCrSG,IAAK/1B,EAAM,SAANA,GAAM,OAANA,EAAM,sBAANA,EAAM,0BAANA,EAAM,oBAANA,CAAM,MAKX,MAAM3B,EAAkB,CAC7B,CAAEx1C,MAAOm3C,EAAO2zB,UAAW3tE,MAAO,eAClC,CAAE6C,MAAOm3C,EAAO4zB,YAAa5tE,MAAO,kBACpC,CAAE6C,MAAOm3C,EAAO6zB,SAAU7tE,MAAO,aAK7B0wE,EAAiB,WA+KvB,MA7K0BC,EAAGC,iBAAgBC,wBAC3C,MAAiFjyE,EAAAC,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAA1EgyE,EAAyBlyE,EAAA,GAAEmyE,EAA4BnyE,EAAA,GACOK,EAAAJ,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAA9DkyE,EAAmB/xE,EAAA,GAAEgyE,EAAsBhyE,EAAA,GAEwC2M,EAAA/M,GAA9DC,EAAAA,EAAAA,UAA2Cu5C,EAAgB,IAAG,GAAnF7G,EAAM5lC,EAAA,GAAE0tC,EAAS1tC,EAAA,GACsCyD,EAAAxQ,GAAtBC,EAAAA,EAAAA,UAAmB,IAAG,GAAvD8kE,EAAYv0D,EAAA,GAAE++D,EAAe/+D,EAAA,GAC+CE,EAAA1Q,GAA/BC,EAAAA,EAAAA,UAA4B,IAAG,GAA5EuvE,EAAkB9+D,EAAA,GAAE++D,EAAqB/+D,EAAA,GACuCE,EAAA5Q,GAAnCC,EAAAA,EAAAA,UAAgC,IAAG,GAAhFyvE,EAAkB9+D,EAAA,GAAE++D,EAAqB/+D,EAAA,GAC1CyhE,EAAa,CAACtN,EAAcyK,EAAoBE,GAEhD3tD,GAAWthB,EAAAA,EAAAA,KAAajP,GAAqBA,EAAM+K,OAAOwlB,WAC1D5tB,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAE/D27B,GAAcC,EAAAA,EAAAA,QAA8B,MAE5CxvB,GAAWC,EAAAA,EAAAA,MAGX8xE,EAAuD,SADrBtyE,GAAjB6vB,EAAAA,EAAAA,KAAiB,GAArB,GACkB7d,IAAI6/D,GACnCU,EACJD,GAA6D,SAA1C70D,cAAcC,QAAQm0D,IAA8B19E,EAAYL,IAErF4T,EAAAA,EAAAA,YAAU,KACH4qE,GAGD70D,eAAiBA,aAAaC,QAAQm0D,IACxCp0D,aAAa6a,QAAQu5C,EAAgB,OAAO,GAC7C,CAACS,IAEJ,MAAAniD,IAA4BC,EAAAA,EAAAA,GAC1B,CAAC,4BAA6BiiD,IAC9B,KACEG,EAAAA,EAAAA,IAAuB,CACrBzN,eACAyK,qBACAE,wBAEJ,CACE7iD,QAASoE,EAAAA,GACTzE,UAAWA,IAAMwlD,EAAkB,KAV/BvkE,GAAI0iB,GAAJ1iB,KAAMwe,GAASkE,GAATlE,UAaRoiD,GAAW5gE,IAAM4gE,UAAY,GAC7BoE,GAAgBhlE,IAAM6gE,QAAU,CAAC,EACjCsB,GAAavB,GAAS55E,QAE5BiT,EAAAA,EAAAA,YAAU,KACJnP,SAASorB,OAAOhZ,SAAS,iBAAmBpS,SAASorB,OAAOhZ,SAAS,SACvEunE,GAA6B,GAE3B35E,SAASorB,OAAOhZ,SAAS,mBAC3BynE,GAAuB,EACzB,GACC,KAEH1qE,EAAAA,EAAAA,YAAU,KACJ+qB,OAAOm9C,IAAc,GACvB9/C,EAAYE,SAASC,eAAe,CAAEC,SAAU,UAClD,GACC,CAAC6hD,IAEJ,MAAMW,GAjE4B,IAiETX,EAAiB,GACpCY,GAAYD,GAlEgB,IAoElCtE,EAAAA,EAAAA,IAAwB,CAAEC,YAAUC,OAAQmE,GAAep1B,KAAM1K,EAAO3uC,QAExE,MAAM/O,IACJwJ,EAAAA,EAAAA,KAAC6wE,EAAwB,CACvBvK,aAAcA,EACdwK,gBAAiBA,EACjBC,mBAAoBA,EACpBC,sBAAuBA,EACvBC,mBAAoBA,EACpBC,sBAAuBA,EACvBh9B,OAAQA,EACR8H,UAAWA,EACXm1B,WAAYA,KAIhB,OACElvE,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACmC,EAAAA,GAAU,CACTE,QAASA,KACPsxE,GAAuB,EAAM,EAE/BvxE,OAAQsxE,EACR71E,MAAM,QAAOsC,UAEbH,EAAAA,EAAAA,KAACm0E,EAAAA,EAAkB,CACjBvlE,SAAUA,KACR+kE,GAAuB,EAAM,OAInC3zE,EAAAA,EAAAA,KAACm3D,EAAAA,GAAmB,CAClB/0D,OAAQoxE,EACRnxE,QAASA,IAAMoxE,GAA6B,MAE9CxxE,EAAAA,EAAAA,MAAChC,EAAS,CAAAE,SAAA,EACNmjB,IACArhB,EAAAA,EAAAA,MAAC4tB,EAAW,CAAA1vB,SAAA,CAAC,2CAEXH,EAAAA,EAAAA,KAAA,SAAM,8DAIViC,EAAAA,EAAAA,MAACmyE,EAAAA,EAAO,CAAAj0E,SAAA,EACNH,EAAAA,EAAAA,KAACq0E,EAAAA,GAAY,CAAAl0E,SAAE3J,MACfyL,EAAAA,EAAAA,MAACqyE,EAAAA,GAAa,CAAAn0E,SAAA,EACZ8B,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACImjB,IACAtjB,EAAAA,EAAAA,KAACu0E,EAAY,CAAAp0E,UACX8B,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,CAAK,YAEHH,EAAAA,EAAAA,KAAC28C,EAAAA,GAAkB,CACjBv1C,QAAS2zC,EACTx1C,MAAO2uC,EACPrxC,SAAUm5C,EACV30C,uBAAuB,eAK9Bic,GAAY9sB,MAEdg3B,IACCxtB,EAAAA,EAAAA,KAACI,EAAAA,EAAM,CAACoJ,QAAM,EAACC,OAAO,WAAWC,MAAO,CAAEoP,UAAW,QAErD7W,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAA,OAAK8zB,IAAKzC,EAAYlxB,SACnByvE,GAAS55E,OAAS,GACjBgK,EAAAA,EAAAA,KAAC62D,EAAc,CAAC,cAAY,gBAAe12D,SACxCyvE,GAAS3jD,MAAMgoD,GAAiBC,IAAWv/E,KAAK8e,IAC/CzT,EAAAA,EAAAA,KAACmiD,EAAAA,EAAO,CAEN1uC,QAASA,EACT4uC,SAAUvkD,OAAOhE,SAASiS,SAAWjO,OAAOhE,SAASorB,QAFhDzR,EAAQpe,SAOnB4M,EAAAA,EAAAA,MAACuyE,EAAkB,CAAAr0E,SAAA,EACjB8B,EAAAA,EAAAA,MAACwyE,EAAe,CAAAt0E,SAAA,EACdH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,SAASwN,MAAOC,EAAAA,GAAOyD,cAAe,yBAGnDhH,EAAAA,EAAAA,KAAC00E,EAAa,CAAAv0E,SAAC,oEAMrBH,EAAAA,EAAAA,KAAC20E,EAAAA,GAAU,CACTC,YAAatB,EACbuB,eAAiBxjB,GACfyiB,EACIP,EAAkBliB,GAClBvvD,GAASye,EAAAA,EAAAA,IAAiB,CAAE5jB,MAAM,KAExCm4E,WAAY5vB,KAAK6vB,KAAK/gD,OAAOm9C,IApKX,IAqKlBr4D,UAAU,uBAOrB,EAQA,MAAM7Y,EAAYmE,EAAAA,GAAOC,GAAG;;;;;IAK/B4I,EAAAA,GAAkB6M;;;EAIT+V,EAAczrB,EAAAA,GAAOknB,EAAE;IAChChnB,EAAAA,GAAMmiB;;IAENxZ,EAAAA,GAAkB6M;;;EAIhB+8C,EAAiBzyD,EAAAA,GAAOC,GAAG;;;;;IAK7B4I,EAAAA,GAAkBmyC;;;IAGlBnyC,EAAAA,GAAkB+nE;;;IAGlB/nE,EAAAA,GAAkByc;;;EAIhB6qD,EAAenwE,EAAAA,GAAOC,GAAG;;;;;;;;;;;MAWzBC,EAAAA,GAAM8I;;EAGNonE,EAAqBpwE,EAAAA,GAAOC,GAAG;;;;;;EAO/BowE,EAAkBrwE,EAAAA,GAAOC,GAAG;;;;EAK5BqwE,EAAgBtwE,EAAAA,GAAOC,GAAG;IAC5BC,EAAAA,GAAM8I;WACC7J,EAAAA,GAAOyD;;IAEdiG,EAAAA,GAAkB6M;;;4xCC5Qf,MAAMs6D,EAAUhwE,EAAAA,GAAOC,GAAG;;;;IAI7B4I,EAAAA,GAAkBD;;;;EAMTqnE,EAAejwE,EAAAA,GAAOC,GAAG;;;;IAIlC4I,EAAAA,GAAkBD;;;EAKTsnE,EAAgBlwE,EAAAA,GAAOC,GAAG;;EAQ1BuqB,EAAkBxqB,EAAAA,GAAOC,GAAG;;;;;;;;;;IAUrC4I,EAAAA,GAAkBD;;;;EAMTslE,EAAgBA,EAC3B5vE,QACAywE,cAAc,WACd8B,cACA90E,eAOA,MAAkDmB,EAAAC,GAAdC,EAAAA,EAAAA,WAAS,GAAK,GAA3CwhC,EAAU1hC,EAAA,GAAE8iD,EAAa9iD,EAAA,GAChC,OACEW,EAAAA,EAAAA,MAACizE,EAAsB,CAAClyC,WAAYA,EAAW7iC,SAAA,EAC7C8B,EAAAA,EAAAA,MAACuN,EAAK,CACJzI,OAAQosE,EACR8B,YAAaA,EACbxxE,QAASA,IAAMwxE,GAAe7wB,GAAephB,GAAY7iC,SAAA,CAExDuC,EACAuyE,IAAej1E,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAMktC,EAAa,aAAe,qBAE1DhjC,EAAAA,EAAAA,KAACm1E,EAAuB,CAACnyC,WAAYA,EAAW7iC,SAAEA,MAC3B,EAIvB+0E,EAAyB9wE,EAAAA,GAAOC,GAAG;oBACrB,EAAG2+B,gBAAkBA,EAAa,OAAS;6BAClCz/B,EAAAA,GAAOsE;EAG9B2H,EAAQpL,EAAAA,GAAOC,GAAG;;;;YAIZ,EAAG0C,YAAaA,GAAU;IAClCzC,EAAAA,GAAM+L;;;MAGJ,EAAG4kE,iBAAkBA,GAAe;;EAIpCE,EAA0B/wE,EAAAA,GAAOC,GAAG;YAC9B,EAAG2+B,gBAAkBA,EAAa,OAAS;;EAQ1C0T,EAAoBtyC,EAAAA,GAAOC,GAAG;;;;EAM9B2uE,EAAqBA,EAAGvvE,cACnCxB,EAAAA,EAAAA,MAACmzE,EAAAA,GAAiB,CAACniF,KAAK,SAASwQ,QAASA,EAAQtD,SAAA,EAChDH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,UAAUiR,OAAO,iBAAiBzD,MAAOC,EAAAA,GAAOC,YAAa,kB,srCC1GrE,MAAM6xE,EAAiB,CAAC,uBAAwB,MAAO,MAAO,cACxDC,EAAwBD,EAAe1gF,IAAIgc,EAAAA,IAC3C4kE,EAAqBF,EAAe1gF,KAAKyO,IAAI,CACxDV,MAAOU,EACPmC,MAAOnC,MAmIT,KAhIA,UAA0B,YAAEotB,EAAW,eAAEC,EAAc,4BAAEwD,IACvD,MAAQuhD,EAAuDhlD,EAAvDglD,cAAerqE,EAAwCqlB,EAAxCrlB,KAAM8C,EAAkCuiB,EAAlCviB,YAAaG,EAAqBoiB,EAArBpiB,iBAEpCqnE,EAAiB3yE,IACrB2tB,GAAgBilD,GAAcviF,EAAAA,EAAA,GACzBuiF,GAAc,IACjBrgC,YAAavyC,EAAEE,OAAOuC,SACrB,EA6BL,OAlBA0D,EAAAA,EAAAA,YAAU,KACHgrB,IACLxD,GAAgBilD,GAAcviF,EAAAA,EAAA,GACzBuiF,GAAc,IACjBznE,YAAagmB,EAA4BhmB,YACzCG,iBAAkB6lB,EAA4B9lB,uBAG3C8lB,EAA4B0hD,0BAE/BF,EAAc,CAAEzyE,OAAQ,CAAEuC,MAAO0uB,EAA4Bn6B,YAC7D22B,GAAgBilD,GAAcviF,EAAAA,EAAA,GACzBuiF,GAAc,IACjBvqE,KAAM8oB,EAA4BvlB,WAEtC,GACC,KAGDzM,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACmqC,EAAAA,GAAU,CACTC,cAAe9zB,QAAQ2d,GAA6B0hD,yBACpDvyE,MACEpD,EAAAA,EAAAA,KAAAkC,EAAAA,SAAA,CAAA/B,SAAE,iKAKJlN,KAAK,QACL8T,OAAO,WACPwS,QAAQ,OAEVtX,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,kBACjBH,EAAAA,EAAAA,KAAC6vC,EAAAA,GAAS,CACR78B,YAAY,qBACZnQ,SAAU4yE,EACVlwE,MAAOirB,GAAa6kB,aAAe,GACnC,cAAY,6CAGhBpzC,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,sBACjBH,EAAAA,EAAAA,KAAC8S,EAAAA,GAAoB,CACnB8iE,gBAAc,EACd5iE,YAAY,mBACZzN,MAAOiwE,EACPpuE,QAASyuE,EAAAA,GACThzE,SAAW+5C,GACTnsB,GAAgBilD,GAAcviF,EAAAA,EAAA,GACzBuiF,GAAc,IACjBF,cAAe54B,EACf8sB,cAAcoM,EAAAA,EAAAA,IAAmBl5B,OAGrC,cAAY,2CAGhB36C,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,qBACjBH,EAAAA,EAAAA,KAAC6vC,EAAAA,GAAS,CACR78B,YAAY,4BACZnQ,SAtEsBC,IAC5B2tB,GAAgBilD,GAAcviF,EAAAA,EAAA,GACzBuiF,GAAc,IACjBlM,WAAY1mE,EAAEE,OAAOuC,SACpB,EAmEGA,MAAOirB,GAAag5C,YAAc,GAClC,cAAY,0CACZztD,OAAQ,CACN,CACE4tC,SACErzC,QAAQka,GAAag5C,YAAYxzE,WAAY+/E,EAAAA,EAAAA,IAAWvlD,GAAag5C,YACvEvtD,aAAc,mCAKtBha,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,6BACjBH,EAAAA,EAAAA,KAAC6vC,EAAAA,GAAS,CACR78B,YAAY,uBACZnQ,SAAWC,GACT2tB,GAAgBilD,GAAcviF,EAAAA,EAAA,GACzBuiF,GAAc,IACjBvqE,KAAMrI,EAAEE,OAAOuC,UAGnBA,MAAO4F,EACP,cAAY,qCAGhBlJ,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,uDACjBH,EAAAA,EAAAA,KAACyP,EAAAA,EAAgB,CACfC,YAAY,aACZC,WAAW,YACXpK,MAAO0I,GAAe,GACtBpL,SAAW4jC,GAAchW,EAAct9B,EAAAA,EAAC,CAAC,EAAIq9B,GAAW,IAAEviB,YAAaw4B,WAG3ExkC,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,6BACjBH,EAAAA,EAAAA,KAACyP,EAAAA,EAAgB,CACfC,YAAY,oBACZC,WAAW,YACXpK,MAAO6I,GAAoB,GAC3BvL,SAAW4jC,GAAchW,EAAct9B,EAAAA,EAAC,CAAC,EAAIq9B,GAAW,IAAEpiB,iBAAkBq4B,YAKtF,C,6pECjIA,MAKMuvC,EAAsB5/E,OAAOqa,OAAOC,EAAAA,GAAa/b,KAAKyO,IAAI,CAC9DV,MAAOU,EACPmC,MAAOnC,MA8HT,IA3HA,UAAwB,YAAEotB,EAAW,eAAEC,EAAc,MAAE3T,EAAK,mBAAEm5D,EAAqB,KACjF,MAAQ9qE,EAA2BqlB,EAA3BrlB,KAAMiD,EAAqBoiB,EAArBpiB,iBAEP8nE,EAAqC30E,GAAnB40E,EAAAA,EAAAA,MAAmB,GAAvB,GAiCrB,OA/BAltE,EAAAA,EAAAA,YAAU,KAGR,WACE,MAAMmtE,OAnBoBvnE,WAC9B,MAAMsQ,QAAqB7L,EAAAA,EAAIC,IAAI,kCAAmC,CAAE4S,OAAQ,CAAErJ,WAClF,OAAOqC,EAAanQ,MAAMqnE,qBAAuB,EAAE,EAiBdC,CAAwBx5D,GACzD,GAAIs5D,EAAmBpgF,OAAQ,CAC7B,MAAMugF,EAAmBH,EAAmB,GAC5C3lD,EAAct9B,EAAAA,EAAC,CAAC,EACXq9B,GAAW,IACdnzB,QAASk5E,IAEb,CACD,EATD,EASI,GACH,KAmBDt0E,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACE8B,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,sBAChB81E,EAAmBjgF,OAAS,GAC3BgK,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAO,CAAC73B,KAAK,OAAOsS,MAAO0wE,EAAoBnkB,UAAW,EAAG0kB,OAAK,EAACC,UAAQ,KAE5Ez2E,EAAAA,EAAAA,KAAC8S,EAAAA,GAAoB,CACnB8iE,gBAAc,EACd5iE,YAAY,uCACZ0jE,aAAW,EACXtvE,QAAS8uE,EACTrzE,SA5BY4yE,CAAC3yE,EAAG2jC,KACE,kBAAtBA,GAAWzzC,QAAoD,kBAAtByzC,GAAWzzC,QACtDy9B,EAAct9B,EAAAA,EAAC,CAAC,EACXq9B,GAAW,IACdnzB,QAASyF,EAAEyC,QAEf,EAuBQA,OAAOoL,EAAAA,EAAAA,IAAmB6f,EAAYnzB,SACtC,cAAY,+CAIjBmzB,EAAYnzB,UACV64E,EAAevhF,KAAI,EAAG4Q,WAAYA,IAAO2G,SAASskB,EAAYnzB,WAC7D4E,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,0BACjBH,EAAAA,EAAAA,KAAC6vC,EAAAA,GAAS,CACR78B,YAAY,iCACZnQ,SA/BkBC,IAC5B2tB,GAAgBilD,GAAcviF,EAAAA,EAAA,GACzBuiF,GAAc,IACjBlM,WAAY1mE,EAAEE,OAAOuC,SACpB,EA4BOA,MAAOirB,GAAag5C,YAAc,GAClC,cAAY,wCACZztD,OAAQ,CACN,CACE4tC,SACErzC,QAAQka,GAAag5C,YAAYxzE,WAChC+/E,EAAAA,EAAAA,IAAWvlD,GAAag5C,YAC3BvtD,aAAc,mCAM1Bha,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,sDACjBH,EAAAA,EAAAA,KAAC8S,EAAAA,GAAoB,CACnBE,YAAY,mBACZ5L,QAAS4uE,EACTnzE,SAAWC,GACT2tB,GAAgBilD,GAAcviF,EAAAA,EAAA,GACzBuiF,GAAc,IACjBvqE,MAAM2qE,EAAAA,EAAAA,IAAmBhzE,OAG7ByC,OAAOoL,EAAAA,EAAAA,IAAmBxF,GAC1B,cAAY,gCAGhBlJ,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,6BACjBH,EAAAA,EAAAA,KAAC6vC,EAAAA,GAAS,CACRtqC,MAAOirB,EAAY9hB,OAAS,GAC5BsE,YAAY,uBACZnQ,SAAWC,IACT2tB,EAAct9B,EAAAA,EAAC,CAAC,EACXq9B,GAAW,IACd9hB,MAAO5L,EAAEE,OAAOuC,QAChB,EAEJwW,OAAQ,CACN,CACE4tC,SAAUn5B,EAAY9hB,OAAO1Y,OAAS2gF,EAAAA,GACtC16D,aAAc,+BAA+B06D,EAAAA,kBAGjDC,iBAAe,EACf,cAAY,2CAGhB30E,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,6BACjBH,EAAAA,EAAAA,KAACyP,EAAAA,EAAgB,CACfC,YAAY,oBACZC,WAAW,UACXpK,MAAO6I,GAAoB,GAC3BvL,SAAW4jC,GAAchW,EAAct9B,EAAAA,EAAC,CAAC,EAAIq9B,GAAW,IAAEpiB,iBAAkBq4B,YAKtF,C,woCCNA,IAhIA,UAAkC,YAAEjW,EAAW,eAAEC,EAAc,uBAAEomD,EAAyB,KACxF,MAAcC,GAAsBnlD,EAAAA,EAAAA,GAAS,CAC3CxD,SAAU,CAAC,kBACXyD,QAASA,KAAMmlD,EAAAA,EAAAA,MACfC,OAAShoE,GAASA,EAAKra,IAAIgc,EAAAA,MAHrB3B,MAMR/F,EAAAA,EAAAA,YAAU,KACH6tE,IACD,gBAAiBtmD,GACrBC,EAAct9B,EAAAA,EAAC,CAAC,EACXq9B,GAAW,IACdviB,YAAa6oE,GAAmBniF,IAAImhF,EAAAA,OACpC,GACD,CAACgB,IAEJ,MAAQ1jD,EAAiE5C,EAAjE4C,WAAY6jD,EAAqDzmD,EAArDymD,qBAAsBzB,EAA+BhlD,EAA/BglD,cAAevnE,EAAgBuiB,EAAhBviB,YAyCzD,OACEhM,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACE8B,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,yBAChB02E,EAAuB7gF,OAAS,GAC/BgK,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAO,CAAC73B,KAAK,OAAOsS,MAAOsxE,EAAwB/kB,UAAW,EAAG0kB,OAAK,EAACC,UAAQ,KAEhFx0E,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACk3E,EAAAA,GAAkB,CACjB3xE,OAAOoL,EAAAA,EAAAA,IAAmByiB,GAC1BvwB,SAxCyBgM,UACnC,IAAK+tC,EAAQ,OAEb,MAIQu6B,SAJmB7jE,EAAAA,EAAIC,IAAI,4BAA6B,CAC9D4S,OAAQ,CAAErwB,MAAMggF,EAAAA,EAAAA,IAAmBl5B,OAGA5tC,KAA7BmoE,YAER1mD,EAAct9B,EAAAA,EAAC,CAAC,EACXq9B,GAAW,IACd4C,YAAY0iD,EAAAA,EAAAA,IAAmBl5B,GAC/Bq6B,qBAAsBE,IACtB,EA4BQ,cAAY,qCAEdl1E,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,CAAC,UACL,KACRH,EAAAA,EAAAA,KAAA,KACEiE,KAAK,wFACLjB,OAAO,SAAQ7C,SAChB,yCAEI,IAAI,4CAMf82E,GAA0D,IAAlCJ,EAAuB7gF,SAC/CiM,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,0BACjBH,EAAAA,EAAAA,KAAC8S,EAAAA,GAAoB,CACnBE,YAAY,mBACZzN,MAAOiwE,EACPpuE,QAASyuE,EAAAA,GACThzE,SAAW+5C,GACTnsB,GAAgBilD,GAAcviF,EAAAA,EAAA,GACzBuiF,GAAc,IACjBF,cAAe54B,EACf8sB,cAAcoM,EAAAA,EAAAA,IAAmBl5B,OAGrC,cAAY,4CAIlB36C,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,wDACjB8B,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAmB,CAAA3qB,SAAA,EAClBH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAc,CAAA3qB,UACbH,EAAAA,EAAAA,KAACyC,EAAAA,GAAQ,CACPC,MAAM,kBACNE,UAAWqL,GAAajY,SAAW8gF,GAAmB9gF,OACtD6M,SAjEkBkb,IACxBA,EAAM/a,OAAOC,QACfwtB,EAAct9B,EAAAA,EAAC,CAAC,EACXq9B,GAAW,IACdviB,YAAa6oE,GAAmBniF,KAAKioD,GAAWA,GAAQr3C,WAG1DkrB,EAAct9B,EAAAA,EAAC,CAAC,EACXq9B,GAAW,IACdviB,YAAa,KAEjB,EAuDUtL,KAAK,SAGRm0E,GAAmBniF,KAAKioD,IACvB58C,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAc,CAAA3qB,UACbH,EAAAA,EAAAA,KAACyC,EAAAA,GAAQ,CACPC,MAAOk6C,GAAQl6C,MACfE,UAAWqL,GAAa/B,SAAS0wC,GAAQr3C,OACzC1C,SAAUA,KAAMu0E,OAnGH7xE,EAmGqBq3C,GAAQr3C,WAlGtDkrB,EAAct9B,EAAAA,EAAC,CAAC,EACXq9B,GAAW,IACdviB,YAAaA,EAAY/B,SAAS3G,GAC9B0I,EAAYpY,QAAQyC,GAAMA,IAAMiN,IAChC,IAAI0I,EAAa1I,MALEA,KAmGoC,EACjD5C,KAAK,QALYi6C,GAAQr3C,iBAazC,C,6pCC9HO,MAAM8xE,EAAyBC,EAAAA,GAAgB3iF,IAAIgc,EAAAA,IA8J1D,IA5JA,UAAsC,YACpC6f,EAAW,eACXC,EAAc,uBACdomD,EAAyB,GAAE,4BAC3B5iD,IAOA,MAAQb,EACN5C,EADM4C,WAAY6jD,EAClBzmD,EADkBymD,qBAAsB9rE,EACxCqlB,EADwCrlB,KAAM8C,EAC9CuiB,EAD8CviB,YAAaG,EAC3DoiB,EAD2DpiB,iBAAkBonE,EAC7EhlD,EAD6EglD,cAGzE+B,EAA+B1oE,UACnC,IAAK+tC,EAAQ,OAEb,MAGQu6B,SAHmB7jE,EAAAA,EAAIC,IAAI,4BAA6B,CAC9D4S,OAAQ,CAAErwB,MAAMggF,EAAAA,EAAAA,IAAmBl5B,OAEA5tC,KAA7BmoE,YAER1mD,GAAgBilD,GAAcviF,EAAAA,EAAA,GACzBuiF,GAAc,IACjBtiD,YAAY0iD,EAAAA,EAAAA,IAAmBl5B,GAC/Bq6B,qBAAsBE,KACrB,GAILluE,EAAAA,EAAAA,YAAU,KACHgrB,IACLxD,GAAgBilD,GAAcviF,EAAAA,EAAA,GACzBuiF,GAAc,IACjBznE,YAAagmB,EAA4BhmB,YACzCG,iBAAkB6lB,EAA4B9lB,uBAG5C8lB,EAA4B0hD,0BAE9B4B,GAA6B5mE,EAAAA,EAAAA,IAAmBsjB,EAA4Bn6B,WAC5E22B,GAAgBilD,GAAcviF,EAAAA,EAAA,GACzBuiF,GAAc,IACjBvqE,KAAM8oB,EAA4BvlB,WAEtC,GACC,IAEH,MAAM8oE,EAAmClhE,QACvC2d,IAAgCA,EAA4B0hD,yBAG9D,OACE1zE,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACmqC,EAAAA,GAAU,CACTC,cAAeotC,EACfp0E,MACEnB,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,CAAK,kGAEK,KACRH,EAAAA,EAAAA,KAAA,KACEiE,KAAK,wFACLjB,OAAO,SAAQ7C,SAChB,yCAEI,IAAI,8CAIblN,KAAK,QACL8T,OAAO,WACPwS,QAAQ,OAEVtX,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,yBAChB02E,EAAuB7gF,OAAS,GAC/BgK,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAO,CAAC73B,KAAK,OAAOsS,MAAOsxE,EAAwB/kB,UAAW,EAAG0kB,OAAK,EAACC,UAAQ,KAEhFx0E,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACk3E,EAAAA,GAAkB,CACjB3xE,OAAOoL,EAAAA,EAAAA,IAAmByiB,GAC1BvwB,SAAU00E,EACV,cAAY,yCAEZC,IACAv1E,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,CAAC,UACL,KACRH,EAAAA,EAAAA,KAAA,KACEiE,KAAK,wFACLjB,OAAO,SAAQ7C,SAChB,yCAEI,IAAI,4CAOjB82E,GAA0D,IAAlCJ,EAAuB7gF,SAC/CiM,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,0BACjBH,EAAAA,EAAAA,KAAC8S,EAAAA,GAAoB,CACnB8iE,gBAAc,EACd5iE,YAAY,mBACZzN,MAAOiwE,EACPpuE,QAASyuE,EAAAA,GACThzE,SAAW+5C,GACTnsB,GAAgBilD,GAAcviF,EAAAA,EAAA,GACzBuiF,GAAc,IACjBF,cAAe54B,EACf8sB,cAAcoM,EAAAA,EAAAA,IAAmBl5B,OAGrC,cAAY,gDAIlB36C,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,sDACjBH,EAAAA,EAAAA,KAAC8S,EAAAA,GAAoB,CACnBE,YAAY,mBACZ5L,QAASiwE,EACTx0E,SAAWC,GACT2tB,GAAgBilD,GAAcviF,EAAAA,EAAA,GACzBuiF,GAAc,IACjBvqE,MAAM2qE,EAAAA,EAAAA,IAAmBhzE,OAG7ByC,OAAOoL,EAAAA,EAAAA,IAAmBxF,GAC1B,cAAY,gCAGhBlJ,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,uDACjBH,EAAAA,EAAAA,KAACyP,EAAAA,EAAgB,CACfC,YAAY,aACZC,WAAW,YACXpK,MAAO0I,GAAe,GACtBpL,SAAW4jC,GAAchW,EAAct9B,EAAAA,EAAC,CAAC,EAAIq9B,GAAW,IAAEviB,YAAaw4B,WAG3ExkC,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,SAAC,6BACjBH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAkB,CAAA3qB,SAAC,oCACpBH,EAAAA,EAAAA,KAACyP,EAAAA,EAAgB,CACfC,YAAY,oBACZC,WAAW,YACXpK,MAAO6I,GAAoB,GAC3BvL,SAAW4jC,GAAchW,EAAct9B,EAAAA,EAAC,CAAC,EAAIq9B,GAAW,IAAEpiB,iBAAkBq4B,YAKtF,C,iuCCxJO,MAAMkwC,EAA8B,GAE9BtN,EAAyC,yBAChDoO,EAAoC,CACxC,gCACA,sDACA,kDACA,uDACA,wDACA,6CACApO,GACA10E,IAAIgc,EAAAA,IA8JN,KA5JcojB,EACZjW,WACAkV,gBACAlG,SACA0D,cACAC,iBACAvqB,OACAqI,eACA0lB,kCAEA,MACE52B,EAYEmzB,EAZFnzB,QACA8N,EAWEqlB,EAXFrlB,KACAuD,EAUE8hB,EAVF9hB,MACA2mC,EASE7kB,EATF6kB,YACAm0B,EAQEh5C,EARFg5C,WACAE,EAOEl5C,EAPFk5C,aACAz7D,EAMEuiB,EANFviB,YACAG,EAKEoiB,EALFpiB,iBACAglB,EAIE5C,EAJF4C,WAEA6jD,GAEEzmD,EAHFs5C,oBAGEt5C,EAFFymD,sBACA7N,EACE54C,EADF44C,qBAGF,IAAIj5D,EAAW5B,EACE,oBAAbuP,IACF3N,MAAe9S,GAAWqR,GAASA,EAAM1Y,QAAU2gF,IACpC,sBAAb74D,IACF3N,MACEklC,IACA0gC,EAAAA,EAAAA,IAAWvM,IACXE,GACAv+D,GACA8C,GAAajY,QACboY,GAAkBpY,SAEL,2BAAb8nB,IACF3N,MAAeijB,GAAcnlB,GAAajY,SAAWihF,GAAwBvN,KAC9D,uBAAb5rD,IACF3N,MACEijB,GACAjoB,GACA8C,GAAajY,QACboY,GAAkBpY,SACjBihF,GAAwBvN,KAS7B,IAAIgO,EAAiB,GACjBC,EAAc,GAClB,GAAI1jD,EACFyjD,EAAiB,+BACjBC,EAAc,qFAGd,OADAD,EAAiB,4BACT55D,GACN,IAAK,qBACL,IAAK,oBACH65D,EACE,0FACF,MACF,IAAK,kBACHA,EAAc,2DACd,MACF,IAAK,yBACHA,EAAc,4EAKpB,OACE33E,EAAAA,EAAAA,KAACC,EAAS,CAAC23E,QAAS3jD,EAA4B9zB,UAC9C8B,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAe,CAACjtB,MAAM,QAAOsC,SAAA,EAC5BH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAY,CAACC,WAAY2sD,EAAgB1sD,QAAS2sD,IACrC,oBAAb75D,IACC9d,EAAAA,EAAAA,KAAC63E,EAAAA,EAAmB,CAClBrnD,YAAaA,EACbC,eAAgBA,EAChB3T,MAAO5W,EAAK4W,QAGF,sBAAbgB,IACC9d,EAAAA,EAAAA,KAAC83E,EAAAA,GAAqB,CACpBtnD,YAAaA,EACbC,eAAgBA,EAChBwD,4BAA6BA,IAGnB,2BAAbnW,IACC9d,EAAAA,EAAAA,KAAC+3E,EAAAA,EAA6B,CAC5BvnD,YAAaA,EACbC,eAAgBA,IAGN,uBAAb3S,IACC9d,EAAAA,EAAAA,KAACg4E,EAAAA,EAAiC,CAChCxnD,YAAaA,EACbC,eAAgBA,EAChBwD,4BAA6BA,KAGjChyB,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAa,CAAA3qB,SAAA,EACZH,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAe,CAAA3qB,UACbuM,EAAAA,EAAAA,GAAE,iEAEL1M,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAkB,CAAA3qB,SAAC,cACpBH,EAAAA,EAAAA,KAAC8S,EAAAA,GAAoB,CACnBE,aAAatG,EAAAA,EAAAA,GAAE,oEACfurE,iBAAkB10E,EAAAA,GAAO6rB,YACzBhoB,QAASqwE,EACT50E,SAAW+5C,GACTnsB,EAAct9B,EAAAA,EAAC,CAAC,EAAIq9B,GAAW,IAAE44C,sBAAsB0M,EAAAA,EAAAA,IAAmBl5B,MAE5Er3C,OAAOoL,EAAAA,EAAAA,IAAmBy4D,KAE3BA,IAAyBC,IACxBpnE,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAC6vC,EAAAA,GAAS,CACR78B,YAAY,kBACZilE,iBAAkB10E,EAAAA,GAAO6rB,YACzB7pB,MAAOirB,EAAY84C,0BACnBzmE,SAAWC,IACT2tB,EAAct9B,EAAAA,EAAC,CAAC,EAAIq9B,GAAW,IAAE84C,0BAA2BxmE,EAAEE,OAAOuC,QAAQ,EAE/EqxE,iBAAe,WAKvB52E,EAAAA,EAAAA,KAAC8qB,EAAAA,GAAU,KACX7oB,EAAAA,EAAAA,MAAC6oB,EAAAA,GAAiB,CAAA3qB,SAAA,EAChBH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACzX,KAAK,SAASsU,QAAQ,QAAQ1J,MAAM,QAAQ4F,QAASA,IAAMqpB,EAAO,SAAS3sB,SAAC,UAGpFH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLzX,KAAK,SACLkd,SAAUA,EACV1M,QAhGSsmB,IAC0BiJ,EAA1B,oBAAblV,EAAqD,UACxC,2BAAbA,EAA4D,QAC3C,aA8Fb,cAAY,uCACZjgB,MAAM,QAAOsC,SACd,2BAKK,EAKhB,MAAMF,EAAYmE,EAAAA,GAAOC,GAAG;;;;IAIxB,EAAGuzE,aAAcA,GAAU;;IAE3B3qE,EAAAA,GAAkBD;;;;wjCCrLtB,MAAQA,EAAuBC,EAAAA,GAAvBD,mBAEK6mB,EAAgBzvB,EAAAA,GAAOC,GAAG;;WAE5B,EAAGxG,WAAYA,GAAS;IAC/ByG,EAAAA,GAAM8I;;IAEN,EAAGwE,OAAMgmE,YACA,IAAThmE,GAAcgmE,EACV,kGAKA;;IAEJ5qE;;;;EAUG,SAAS2hB,GAAW,QAAE3D,EAAO,WAAED,IACpC,OACE9oB,EAAAA,EAAAA,MAACi2E,EAAmB,CAAA/3E,SAAA,EAClBH,EAAAA,EAAAA,KAACm4E,EAAc,CAAAh4E,SAAE4qB,KACjB/qB,EAAAA,EAAAA,KAACo4E,EAAW,CAAAj4E,SAAE6qB,MAGpB,CACA,MAAMktD,EAAsB9zE,EAAAA,GAAOC,GAAG;;;EAIhC8zE,EAAiB/zE,EAAAA,GAAOknB,EAAE;;WAErB/nB,EAAAA,GAAOyD;IACd1C,EAAAA,GAAM+L;EAEJ+nE,EAAch0E,EAAAA,GAAOurB,EAAE;;WAElBpsB,EAAAA,GAAOyE;IACd1D,EAAAA,GAAMmiB;EAyCG6iC,GAtCYllD,EAAAA,GAAOC,GAAG;;;;IAI/B,EAAGuzE,YAAaA,GAAU;WACnBr0E,EAAAA,GAAOyE;IACd,EAAGqwE,WAAaA,EAAQ/zE,EAAAA,GAAMsjC,mBAAqBtjC,EAAAA,GAAMyI;;EAInC3I,EAAAA,GAAOC,GAAG;;WAEzBd,EAAAA,GAAOC;IACdc,EAAAA,GAAMgM;;;;;;;EASmBlM,EAAAA,GAAOC,GAAG;;;;;GAOfD,EAAAA,EAAAA,IAAO0C,EAAAA,EAAK;;WAEzBvD,EAAAA,GAAOC;;;;;EAOSY,EAAAA,GAAOC,GAAG;;;;;;;GAQxBklD,EAAgBnlD,EAAAA,GAAOC,GAAG;IACnCC,EAAAA,GAAM+L;;;WAGC9M,EAAAA,GAAOyE;EAELswE,GAAmBl0E,EAAAA,EAAAA,IAAOmlD,EAAc;IACjDjlD,EAAAA,GAAM2W;;WAEC1X,EAAAA,GAAOyD;EAGLuxE,EAAWn0E,EAAAA,GAAOC,GAAG;;6BAELd,EAAAA,GAAOsE;;EAqBvByJ,IAjBkBlN,EAAAA,EAAAA,IAAOo0E,EAAAA,EAAY;;;;IAI9Cl0E,EAAAA,GAAM8I;;;;;;IAMNJ;;;;kBAIczJ,EAAAA,GAAOsE;EAGJzD,EAAAA,GAAOmN,KAAK;WACrB3c,GAAOA,EAAE6jF,KAAQ,MAAU;;;;IAInCn0E,EAAAA,GAAM8I;WACC7J,EAAAA,GAAOyE;sBACK+C,GAAWA,EAAMsE,MAAQ9L,EAAAA,GAAOS,IAAMT,EAAAA,GAAO6rB;;;IAGhE,EAAGonD,WACHA,GACA,kBACWjzE,EAAAA,GAAOyD,8DAEIzD,EAAAA,GAAOsE;;;;aAMpBtE,EAAAA,GAAOyD;;GAuCPkgB,IAlCkB9iB,EAAAA,EAAAA,IAAOylD,EAAAA,EAAe;;;;;oBAKjCtmD,EAAAA,GAAO4U;4BACC5U,EAAAA,GAAOC;;eAEpBD,EAAAA,GAAOyE;;qBAEDzE,EAAAA,GAAOyE;;;0BAGFzE,EAAAA,GAAOC;;;;;;iCAMAD,EAAAA,GAAOC;;;iCAGPD,EAAAA,GAAOC;;;;sBAIlBD,EAAAA,GAAOC;;;sBAGNuH,GAAUA,EAAMsE,OAAS9L,EAAAA,GAAOS;;;EAK5BI,EAAAA,GAAOC,GAAG;IACjCC,EAAAA,GAAM2W;;;;WAIC1X,EAAAA,GAAOyD;GAyELwK,GAtEkBpN,EAAAA,GAAOsP,IAAI;IACtCpP,EAAAA,GAAM8I;;;WAGC7J,EAAAA,GAAOC;;;;;EAOKY,EAAAA,GAAOC,GAAG;YACpB0G,GAAWA,EAAM/M,OAAS,GAAG+M,EAAM/M,WAAa;;GAIvCoG,EAAAA,EAAAA,IAAOs0E,EAAAA,EAAQ;;EAIf9gE,EAAAA,GAAWC,OAAO,CACtC8gE,mBAAoB,CAClB1gE,OAAQ,aAAa1U,EAAAA,GAAOC,YAC5BF,MAAOC,EAAAA,GAAOC,UACd4V,UAAW,OACXG,QAAS,UACTzB,QAAS,OACTO,eAAgB,SAChBnY,UAAW,SACX6G,OAAQ,UACRgH,gBAAiB,GAAGxK,EAAAA,GAAOY,oBAE7Bm3B,W,+VAAUnoC,CAAA,CACRmQ,MAAOC,EAAAA,GAAOY,MACdiU,YAAa,QACVE,EAAAA,GAASpQ,UAEdszB,eAAgB,CACd53B,WAAYL,EAAAA,GAAOC,WAErB43B,YAAa,CACX7hB,QAAS,OACTP,cAAe,OACfP,aAAc,OAEhByiB,gBAAiB,CACf1hB,OAAQ,KAEVqjB,YAAa,CACXl5B,SAAU,cAIoBS,EAAAA,EAAAA,IAAOmiC,EAAAA,EAAS;IAC9Cv5B;;;EAKwB5I,EAAAA,GAAOC,GAAG;;;EAKbD,EAAAA,GAAOmM,CAAC;;;;EAMFnM,EAAAA,GAAOC,GAAG;;;;;;GAqC5BqyC,GA7BkBtyC,EAAAA,GAAOC,GAAG;IACrCC,EAAAA,GAAMuG;IACN,EAAGkO,kBAAmBA,GAAgB,kBAAkBA;EAG1B3U,EAAAA,GAAOC,GAAG;;;;;;;;;;;;;EAedD,EAAAA,GAAOC,GAAG;IACpCC,EAAAA,GAAMiyC;EAGyBnyC,EAAAA,GAAOC,GAAG;WAClCd,EAAAA,GAAOyD;IACd1C,EAAAA,GAAMuG;EAGuBzG,EAAAA,GAAOC,GAAG;;;;;GAO9Bu0E,EAAex0E,EAAAA,GAAOC,GAAG;;imCC5QtC,IAtCmBw0E,EAAGjqE,WAAUS,QAAOypE,kBACrC,MAAoCx3E,EAAAC,GAAZC,EAAAA,EAAAA,UAAS,IAAG,GAA7B+mD,EAAIjnD,EAAA,GAAEknD,EAAOlnD,EAAA,GAC6BK,EAAAJ,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAA1CgsB,EAAS7rB,EAAA,GAAE8rB,EAAY9rB,EAAA,GAE9B,OACEM,EAAAA,EAAAA,MAAChC,EAAS,CACR2O,SAAUC,UACR/L,EAAEgM,iBACF2e,GAAa,SACP7e,EAAS25C,GACf96B,GAAa,EAAM,EACnBttB,SAAA,CAED24E,IACC72E,EAAAA,EAAAA,MAACgoC,EAAO,CAAA9pC,SAAA,CACL24E,EAAYnqE,aAAa,4BAA0BmqE,EAAYC,cAAc,QAGlF/4E,EAAAA,EAAAA,KAAC6vC,EAAAA,GAAS,CACRtqC,MAAOgjD,EACP1lD,SAAWC,GAAM0lD,EAAQ1lD,EAAEE,OAAOuC,OAClC7C,OACET,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,OAAO6M,KAAK,KAAKW,MAAOC,EAAAA,GAAOyE,MAAOjB,OAAO,gBAAgB,6CAI5EuvC,UAAWhyC,EAAAA,GAAM+M,WACjB2B,YAAY,iBACZ+I,OAAQ,CAAC,CAAE4tC,SAAUrzC,QAAQjH,GAAQ4M,aAAc5M,OAErDrP,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACzX,KAAK,SAASkd,SAAUqd,EAAUrtB,SAAC,aAGjC,EAMhB,MAAMF,EAAYmE,EAAAA,GAAOwM,IAAI;;;;;;;sBAOPrN,EAAAA,GAAO4U;;gBAEbhQ,EAAAA,GAAO6wE;EAGjB/uC,EAAU7lC,EAAAA,GAAOurB,EAAE;;IAErBrrB,EAAAA,GAAMuG;iGCuEV,IAhIoBouE,EAAGC,SAAWC,eAAcC,eAC9C,IAAI1qE,EAAmB,GAEvB,OAAQyqE,GACN,KAAKE,EAAAA,GAAeC,cAClB5qE,GACEzM,EAAAA,EAAAA,MAACwK,EAAK,CAAAtM,SAAA,EACJH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,SAASiR,OAAO,cAAc,mBAI7C,MACF,KAAKsyE,EAAAA,GAAeE,aAClB7qE,GACEzM,EAAAA,EAAAA,MAACwK,EAAK,CAAAtM,SAAA,EACJH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,UAAUiR,OAAO,cAAc,kBAI9C,MACF,KAAKsyE,EAAAA,GAAeG,SAClB9qE,GACEzM,EAAAA,EAAAA,MAACwK,EAAK,CAAAtM,SAAA,EACJH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,OAAOiR,OAAO,cAAc,cAI3C,MACF,KAAKsyE,EAAAA,GAAehX,mBAClB3zD,GACEzM,EAAAA,EAAAA,MAACwK,EAAK,CAAAtM,SAAA,EACJH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,UAAUiR,OAAO,cAAc,wBAI9C,MACF,KAAKsyE,EAAAA,GAAe7W,KAClB9zD,GACEzM,EAAAA,EAAAA,MAACwK,EAAK,CAAAtM,SAAA,EACJH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,UAAUiR,OAAO,cAAc,+BAI9C,MACF,KAAKsyE,EAAAA,GAAeI,WAClB/qE,GACEzM,EAAAA,EAAAA,MAACwK,EAAK,CAAAtM,SAAA,EACJH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,UAAUiR,OAAO,cAAc,gBAI9C,MACF,KAAKsyE,EAAAA,GAAeK,QAClBhrE,GACEzM,EAAAA,EAAAA,MAACwK,EAAK,CAAAtM,SAAA,EACJH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,UAAUiR,OAAO,cAAc,kBAI9C,MACF,KAAKsyE,EAAAA,GAAeM,UAClBjrE,GACEzM,EAAAA,EAAAA,MAACwK,EAAK,CAAAtM,SAAA,EACJH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,YAAYiR,OAAO,cAAc,eAIhD,MACF,KAAKsyE,EAAAA,GAAeO,WAClBlrE,GACEzM,EAAAA,EAAAA,MAACwK,EAAK,CAAAtM,SAAA,EACJH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,SAASiR,OAAO,cAAc,gBAI7C,MACF,KAAKsyE,EAAAA,GAAeQ,qBAClBnrE,GACEzM,EAAAA,EAAAA,MAACwK,EAAK,CAAAtM,SAAA,EACJH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,aAAaiR,OAAO,cAAc,4BAIjD,MACF,KAAKsyE,EAAAA,GAAeS,uBAClBprE,GACEzM,EAAAA,EAAAA,MAACwK,EAAK,CAAAtM,SAAA,EACJH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,YAAYiR,OAAO,cAAc,4BAIhD,MACF,KAAKsyE,EAAAA,GAAeU,KAClBrrE,GACEzM,EAAAA,EAAAA,MAACwK,EAAK,CAAAtM,SAAA,EACJH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,OAAOiR,OAAO,cAAc,UAI3C,MACF,KAAKsyE,EAAAA,GAAeW,wBAClBtrE,GACEzM,EAAAA,EAAAA,MAACwK,EAAK,CAAAtM,SAAA,EACJH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,eAAeiR,OAAO,cAAc,6BAInD,MACF,KAAKsyE,EAAAA,GAAeY,mBAClBvrE,GACEzM,EAAAA,EAAAA,MAACwK,EAAK,CAAAtM,SAAA,EACJH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,UAAUiR,OAAO,cAAc,wBAI9C,MACF,QACE2H,EAAQ,GAGZ,OACEzM,EAAAA,EAAAA,MAAChC,EAAS,CAAAE,SAAA,CACPuO,EACA0qE,IACS,EAMhB,MAAMn5E,EAAYmE,EAAAA,GAAOC,GAAG;sBACNd,EAAAA,GAAO6M;sBACP7M,EAAAA,GAAOY;WAClBZ,EAAAA,GAAOyE;;;IAGd1D,EAAAA,GAAM8I;;;EAIJX,EAAQrI,EAAAA,GAAOC,GAAG;;;IAGpBC,EAAAA,GAAM+L;;WAEC9M,EAAAA,GAAOyE;mKC7IH,SAASkyE,GAAS,kBAC/BjY,EAAiB,gBACjBkY,EAAe,oBACfC,EAAmB,aACnBj8B,GAAe,EAAI,cACnBC,GAAgB,IAEhB,GAAI6jB,EAAkBjsE,OAASmkF,EAAgBnkF,OAASokF,EAAoBpkF,SAAW,EACrF,OAAO,KAGT,MAAMqkF,EAAyBpY,EAAkBpsE,QAAQykF,GACvDlkF,OAAOqa,OAAO2xD,EAAAA,IAAqBl2D,SAASouE,KAG9C,OACEr4E,EAAAA,EAAAA,MAACs4E,EAAiB,CAACn8B,cAAeA,EAAcj+C,SAAA,EAC9CH,EAAAA,EAAAA,KAACiqC,EAAO,CAAC50C,GAAG,QAAO8K,SAAC,0BACnB6zB,OAAOqmD,EAAuBrkF,QAAU,IACvCiM,EAAAA,EAAAA,MAACu4E,EAAc,CAAAr6E,SAAA,EACbH,EAAAA,EAAAA,KAACy6E,EAAU,CAAAt6E,SAAC,kCACZH,EAAAA,EAAAA,KAAC06E,EAAiB,CAAC,cAAY,yBAAwBv6E,SACpDk6E,EAAuB1lF,KAAK2lF,IAC3Bt6E,EAAAA,EAAAA,KAAC8hD,EAAAA,GAAG,CAEFxsC,QAASqlE,EAAAA,GAAyBL,GAClC33E,KAAK,MAFA23E,WAQbH,GAAiBnkF,OAAS,GAAKokF,GAAqBpkF,OAAS,KAC7DiM,EAAAA,EAAAA,MAACu4E,EAAc,CAAAr6E,SAAA,EACbH,EAAAA,EAAAA,KAACy6E,EAAU,CAAAt6E,SAAC,eACZ8B,EAAAA,EAAAA,MAAC24E,EAAiB,CAACz8B,aAAcA,EAAc,cAAY,eAAch+C,SAAA,CACtEg6E,EAAgBxlF,KAAKukF,IACpBl5E,EAAAA,EAAAA,KAACi5E,EAAAA,EAAW,CAAoDC,QAASA,GAAvD,GAAGA,EAAQC,gBAAgBD,EAAQE,aAEtDgB,EAAoBzlF,KAAKukF,IACxBl5E,EAAAA,EAAAA,KAACi5E,EAAAA,EAAW,CAAoDC,QAASA,GAAvD,GAAGA,EAAQC,gBAAgBD,EAAQE,qBAOnE,CAEA,MAAMmB,EAAoBn2E,EAAAA,GAAOC,GAAG;;IAEhC,EAAG+5C,mBAAoBA,GAAiB;;IAExCnxC,EAAAA,GAAkB+nE;;;EAIhBwF,EAAiBp2E,EAAAA,GAAOC,GAAG;;;EAI3Bq2E,EAAoBt2E,EAAAA,GAAOC,GAAG;;;;;EAMvBu2E,EAAoBx2E,EAAAA,GAAOC,GAAG;;;;;IAKvC,EAAG85C,kBACHA,GACA,WACIlxC,EAAAA,GAAkB+nE;EAKpB/qC,EAAU7lC,EAAAA,GAAOC,GAAG;IACtBC,EAAAA,GAAMyI;;;;;EAMJ0tE,EAAar2E,EAAAA,GAAOC,GAAG;;;IAGzBC,EAAAA,GAAM+L;;oSC9FK,SAASwqE,GAAkB,WAAEntC,EAAU,QAAEjqC,IACtD,MAAQiL,EAA4Cg/B,EAA5Ch/B,MAAO8/B,EAAqCd,EAArCc,cAAeC,EAAsBf,EAAtBe,kBAExBqsC,GAAW5oB,EAAAA,EAAAA,IAAY1jB,GACvBv7C,GAAOg/D,EAAAA,EAAAA,IAAsBxjB,GAEnC,OACExsC,EAAAA,EAAAA,MAAChC,EAAS,CAACwD,QAASA,EAAQtD,SAAA,EAC1BH,EAAAA,EAAAA,KAAA,OAAAG,UACEH,EAAAA,EAAAA,KAAC8G,EAAAA,EAAI,CAAChR,KAAK,aAAa6M,KAAK,KAAKW,MAAOC,EAAAA,GAAOyD,YAAaD,OAAO,SAEtE9E,EAAAA,EAAAA,MAAC8pB,EAAI,CAAA5rB,SAAA,EACHH,EAAAA,EAAAA,KAAC0G,EAAI,CAAAvG,SAAEuO,KACPzM,EAAAA,EAAAA,MAAC84E,EAAI,CAAA56E,SAAA,CACFlN,EAAK,WAAS6nF,UAKzB,CAEA,MAAMp0E,EAAOtC,EAAAA,GAAOC,GAAG;IACnBC,EAAAA,GAAM4D;IACNC,EAAAA,GAAOshC;EAGLxpC,EAAYmE,EAAAA,GAAOC,GAAG;;;;;;;;gBAQZd,EAAAA,GAAOwE;;;;kBAILxE,EAAAA,GAAO4U;MACnBzR;;;;EAMAqlB,EAAO3nB,EAAAA,GAAOC,GAAG;;;;EAMjB02E,EAAO32E,EAAAA,GAAOC,GAAG;IACnBC,EAAAA,GAAM2W;IACN9S,EAAAA,GAAOC;WACA7E,EAAAA,GAAO49C;kgCCtDH,SAAS65B,GAA4B,QAAEhwD,EAAO,YAAE8f,EAAc,KAC3E,MAA4FxpC,EAAAC,GAAlBC,EAAAA,EAAAA,YAAkB,GAArF2wC,EAA6B7wC,EAAA,GAAE8wC,EAAgC9wC,EAAA,GAWtE,OAA2B,IAAvBwpC,EAAY90C,OAAqB,MAGnCiM,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC8yC,EAAAA,EAA6B,CAC5BhI,YAA+C,OAAlCqH,EAAyCrH,EAAc,GACpEiI,uBAAwBZ,EACxBa,0BAA2BZ,EAC3Ba,aAZeA,KACnBb,OAAiC9rC,EAAU,IAaxC0kB,GACDhrB,EAAAA,EAAAA,KAACwvC,EAAoB,CAAArvC,SAClB2qC,EAAYn2C,KAAK+4C,IAChB1tC,EAAAA,EAAAA,KAAC66E,EAAiB,CAEhBntC,WAAYA,EACZjqC,QAASA,IAzBEksC,KACnB,MAAMwB,EAAQrG,EAAYwH,WAAW5E,GAAeA,EAAWr4C,KAAOs6C,IACtEyC,EAAiCjB,EAAM,EAuBhB1G,CAAYiD,EAAWr4C,KAFjCq4C,EAAWr4C,UAQ5B,CAEA,MAAMm6C,EAAuBprC,EAAAA,GAAOC,GAAG;;;;+pCCrBvC,MArB6B42E,KAC3B,MAAyD35E,EAAAC,GAArBC,EAAAA,EAAAA,UAAS,aAAY,GAAlDsoD,EAAUxoD,EAAA,GAAE45E,EAAa55E,EAAA,GAUhC,OACEW,EAAAA,EAAAA,MAAChC,EAAS,CAAAE,SAAA,CAAC,0CAETH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACzX,KAAK,SAASwQ,QAXHoL,UACrB,MAAMlU,EAAMmD,OAAOhE,SAASmK,WACtB6vC,UAAUC,UAAUC,UAAUr5C,GAEpCugF,EAAc,WACdjtD,YAAW,IAAMitD,EAAc,cAAc,IAAK,EAMDr9E,MAAM,QAAOsC,SACzD2pD,MAEO,EAMhB,MAAM7pD,EAAYmE,EAAAA,GAAOC,GAAG;;;;;;sBAMNd,EAAAA,GAAOyE;IACzB1D,EAAAA,GAAMiU;;WAEChV,EAAAA,GAAOY;;skCCtBlB,MAAMg3E,EAAa,CACjB,0CACA,uDACA,mEA0JF,MAvJ0BC,EAAG3nE,UAASpR,UAASD,SAAQmoD,kBACrD,MAAMzoD,GAAWC,EAAAA,EAAAA,MACXrM,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAEvB4L,EAAAC,GAAZC,EAAAA,EAAAA,UAAS,IAAG,GAAvC6a,EAAS/a,EAAA,GAAEgb,EAAYhb,EAAA,GACcK,EAAAJ,GAAZC,EAAAA,EAAAA,UAAS,IAAG,GAArC+a,EAAQ5a,EAAA,GAAE6a,EAAW7a,EAAA,GACU2M,EAAA/M,GAAZC,EAAAA,EAAAA,UAAS,IAAG,GAA/Bsb,EAAKxO,EAAA,GAAEyO,EAAQzO,EAAA,GAEgByD,EAAAxQ,GAAZC,EAAAA,EAAAA,UAAS,IAAG,GAA/B6N,EAAK0C,EAAA,GAAEq1B,EAAQr1B,EAAA,GACiCE,EAAA1Q,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAhD+M,EAAY0D,EAAA,GAAEzD,EAAeyD,EAAA,GAC2CE,EAAA5Q,GAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAxE65E,EAAwBlpE,EAAA,GAAEmpE,EAA2BnpE,EAAA,GAEtD+qB,EAAoBxnC,GAAayV,OAASwB,EAAAA,EAASoK,iBACzD,IAAI1T,EAAqB,UACrBoL,EAAS,gBACT8sE,EAAY,sEACZC,EAAU,gBACVt+C,IACF75B,EAAW,QACXoL,EAAS,oBACT8sE,EACE,wGACFC,EAAU,SA+BZ,OAAIH,GAEAr7E,EAAAA,EAAAA,KAACmC,EAAAA,GAAU,CAACC,OAAQA,EAAQC,QAASA,EAASxE,MAAM,QAAOsC,UACzD8B,EAAAA,EAAAA,MAACO,EAAY,CAAArC,SAAA,EACX8B,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,EACEH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAACxD,MAAOC,EAAAA,GAAOqmB,MAAO7iB,OAAO,SAASjR,KAAK,UAAU6M,KAAK,QAC/D3C,EAAAA,EAAAA,KAACmR,GAAM,CAAAhR,SAAC,mBAEV8B,EAAAA,EAAAA,MAACm9B,GAAS,CAAAj/B,SAAA,CAAC,+DACqD,KAC5DzK,EAAYL,IAAM,iDAEpBK,EAAYL,KACZ4M,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACy7E,GAAU,CAAAt7E,SACRg7E,EAAWxmF,KAAI,CAACkqB,EAAUmnB,KAEvB/jC,EAAAA,EAAAA,MAACy5E,GAAW,CAAAv7E,SAAA,EACVH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,WAAWwN,MAAOC,EAAAA,GAAOC,aACpCxD,EAAAA,EAAAA,KAAC27E,GAAU,CAAAx7E,SAAE0e,MAFG,YAAYmnB,UAOpChmC,EAAAA,EAAAA,KAAA,OAAAG,UACEH,EAAAA,EAAAA,KAAC0K,EAAAA,EAAM,CACL3D,OAAO,WACPtD,QAASA,KACP3B,GAASye,EAAAA,EAAAA,IAAiB,CAAE5jB,MAAM,IAAQ,EAC1CwD,SACH,8BAYbH,EAAAA,EAAAA,KAACmC,EAAAA,GAAU,CAACC,OAAQA,EAAQC,QAASA,EAASxE,MAAM,QAAOsC,UACzD8B,EAAAA,EAAAA,MAACO,EAAY,CAAArC,SAAA,EACXH,EAAAA,EAAAA,KAACkH,GAAa,CAAA/G,UACV+8B,IAAqBl9B,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAACC,OAAO,cAAcjR,KAAMuN,EAAUV,KAAK,UAEzE3C,EAAAA,EAAAA,KAACmR,GAAM,CAAAhR,SAAEsO,KACTzO,EAAAA,EAAAA,KAACo/B,GAAS,CAAAj/B,SAAEo7E,KACZt5E,EAAAA,EAAAA,MAAC6c,GAAI,CAAClQ,SA7ESC,UACnB,IAGE,GAFA/L,GAAGgM,iBAECouB,EAGF,OAFAqtB,SACAloD,IAMF,GAFAmM,GAAgB,IAEX9Y,EAAYL,MAAQ4oB,IAAAA,QAAkBnB,KAAUoB,EAAAA,EAAAA,IAAkBpB,IAErE,YADAsqB,EAAS,mDAIX,MAAMh0C,EAAUsC,EAAYL,GAAK,CAAC,EAAI,CAAEgnB,YAAWE,WAAUO,eACvD8nD,EAAAA,EAAAA,IAAgBnxD,EAAQpe,GAAIjC,GAElCkoF,GAA4B,EAC9B,CAAE,MAAOlsE,GACPg4B,EAASh4B,EAAIyzB,QACf,CAAC,QACCr0B,GAAgB,EAClB,GAoDiCrO,SAAA,EACzBzK,EAAYL,KACZ4M,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACE8B,EAAAA,EAAAA,MAAC25E,GAAoB,CAAAz7E,SAAA,EACnBH,EAAAA,EAAAA,KAAC6vC,EAAAA,GAAS,CACR+mC,iBAAe,EACf/zE,SAAWC,GAAMwZ,EAAaxZ,EAAEE,OAAOuC,OACvCyN,YAAY,aACZzN,MAAO8W,KAETrc,EAAAA,EAAAA,KAAC6vC,EAAAA,GAAS,CACR+mC,iBAAe,EACf/zE,SAAWC,GAAM0Z,EAAY1Z,EAAEE,OAAOuC,OACtCyN,YAAY,YACZzN,MAAOgX,QAGXvc,EAAAA,EAAAA,KAAC6vC,EAAAA,GAAS,CACR9zB,OAAQ,CACN,CACE4tC,SAAUt6C,EAAMrZ,OAAS,EACzBimB,aAAc5M,IAGlBunE,iBAAe,EACf/zE,SAAWC,GAAMia,EAASja,EAAEE,OAAOuC,OACnCyN,YAAY,gBACZzN,MAAOuX,QAIb9c,EAAAA,EAAAA,KAAC0K,EAAAA,EAAM,CACLyF,UACIza,EAAYL,KACU,IAArBgnB,EAAUrmB,QAAoC,IAApBumB,EAASvmB,QAAiC,IAAjB8mB,EAAM9mB,SAC5DuY,EAEFlL,SAAUA,EACVpQ,KAAK,SACL4K,MAAM,OAAMsC,SAEXq7E,WAII,EAMV,MAAMh5E,EAAe4B,EAAAA,GAAOC,GAAG;;;;;;;;;;;;EAchC6C,GAAgB9C,EAAAA,GAAOC,GAAG;;EAI1B8M,GAAS/M,EAAAA,GAAO0rB,EAAE;;;IAGpBxrB,EAAAA,GAAMsjC;EAGJxI,GAAYh7B,EAAAA,GAAOy3E,EAAE;;;;;WAKhBt4E,EAAAA,GAAOyD;;IAEd1C,EAAAA,GAAMgM;EAGJwO,GAAO1a,EAAAA,GAAOwM,IAAI;;;;;;EAQlBgrE,GAAuBx3E,EAAAA,GAAOC,GAAG;;;;EAMjCo3E,GAAar3E,EAAAA,GAAOC,GAAG;;;;;;;EASvBq3E,GAAct3E,EAAAA,GAAOC,GAAG;;;;;WAKnBd,EAAAA,GAAOyE;;IAEd1D,EAAAA,GAAM8I;EAGJuuE,GAAav3E,EAAAA,GAAOxP,CAAC;;;;;;yICvO3B,MAqCMknF,GAAwBr9E,IAC5B,OAAQA,EAAI+lC,eACV,IAAK,SACH,OACEviC,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC+7E,GAAgB,CAAC3xE,IAAK4xE,KAAkB,sBAG/C,IAAK,OACH,OACE/5E,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC+7E,GAAgB,CAAC3xE,IAAK6xE,KAAQ,IAAEx9E,KAGvC,IAAK,UACH,OACEwD,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC+7E,GAAgB,CAAC3xE,IAAK8xE,KAAW,IAAEz9E,KAG5C,EAmBI09E,IAAgBC,EAAAA,GAAAA,KAhBAC,EAAG54E,cACvBzD,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACzX,KAAK,SAAS4K,MAAM,OAAO0J,QAAQ,YAAY9D,QAASA,EAASJ,SAAS,WAAUlD,SAAC,sBAKvEm8E,EAAGn8E,eACzBH,EAAAA,EAAAA,KAACu8E,GAAgB,CAAAp8E,SACdA,EAASxL,KAAK0tB,IACbriB,EAAAA,EAAAA,KAACw8E,GAAoB,CAAAr8E,UAClBs8E,EAAAA,EAAAA,cAAap6D,EAAM,GAAIy5D,GAAqBz5D,EAAK5jB,OADzB4jB,EAAK5jB,WAStC,OA9E4Bi+E,EAAG14B,OAAMt1C,QAAOxU,kBAC1C,IAAK8pD,EAAM,OAAO,KAElB,MAAM24B,GAAerrD,EAAAA,EAAAA,QAA8B,MAU7CsrD,EAAY/uE,KAAMm2C,GAAM64B,QAAQ,OAChCC,EAAUjvE,KAAM+uE,GAAWG,IAAI,EAAG,OAAOF,QAAQ,OAEvD,OACE78E,EAAAA,EAAAA,KAACC,GAAS,CAAC6zB,IAAK6oD,EAAcr2C,OAZbd,KACbm3C,EAAaprD,SACftD,YAAW,MACR0uD,EAAaprD,SAASpxB,SAAS,GAAGA,SAAS,IAAyBwtC,OAAO,GAC3E,IACL,EAOiDxtC,UAC/CH,EAAAA,EAAAA,KAACm8E,GAAa,CACZp+D,MAAO,CACLrP,QACAxU,cACA05D,SAAU,GACVopB,YAAanvE,KAAMivE,GAAShvE,OAAO,YACnCmvE,cAAepvE,KAAM+uE,GAAW9uE,OAAO,aAEzCovE,MAAO,CAACC,GAAAA,GAAYC,OAAQD,GAAAA,GAAYE,QAASF,GAAAA,GAAYG,SAErD,EAoDhB,MAAMr9E,GAAYmE,EAAAA,GAAOC,GAAG;;EAGtBk4E,GAAmBn4E,EAAAA,GAAOimC,EAAE;;sBAEZ9mC,EAAAA,GAAOY;;;;;;;;;;;;IAYzB8I,EAAAA,GAAkB6M;;;;;EAMhB0iE,GAAuBp4E,EAAAA,GAAOm5E,EAAE;;;;;;;kBAOpBh6E,EAAAA,GAAO4U;;;;aAIZ5U,EAAAA,GAAOyE;;;;;;;;;;;;;EAcd+zE,GAAmB33E,EAAAA,GAAOwG,GAAG;;sgCC/GnC,MAAQmxC,GAA8C6F,EAAAA,GAA9C7F,OAAQ8F,GAAsCD,EAAAA,GAAtCC,YAAagtB,GAAyBjtB,EAAAA,GAAzBitB,aAAcL,GAAW5sB,EAAAA,GAAX4sB,OAwP3C,OAhPwBgP,EAAG/pE,UAAS2S,YAAW60B,0BAC7C,MAA6D35C,EAAAC,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAtD45C,EAAe95C,EAAA,GAAE+5C,EAAkB/5C,EAAA,GACmCK,EAAAJ,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAtEi8E,EAAuB97E,EAAA,GAAE+7E,EAA0B/7E,EAAA,GAEpDsiE,EAAMxwD,EAAQgqC,YAEd/nD,GAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAE/DoM,GAAWC,EAAAA,EAAAA,MACXiD,GAAUC,EAAAA,EAAAA,MACT0nB,EAAiCprB,IAAjB6vB,EAAAA,EAAAA,KAAiB,GAArB,IAEnBnoB,EAAAA,EAAAA,YAAU,KAC0B,SAA9B0jB,EAAapZ,IAAI,UAAqBg3C,GAAa,GACtD,IAEH,MAAMozB,EAAoB9uE,WACxBwI,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBC,MAAO,CAC5BC,aAAc,2BAGhB,MAAMomE,GAAYpqE,EAAAA,GAAAA,IAAuBC,GAEnCgoC,EACJ,iBAAkBhoC,EAAQpW,SAAWoW,EAAQpW,QAAQsR,cAAczC,SAAS,QAE9E,GAAIxW,EAAYL,GACd,GAAIomD,EAAQ,OACce,EAAAA,GAAAA,IAAqB/oC,EAAQpe,IAGnD2P,EAAQ/O,KAAK2nF,GAEbviC,GAAmB,EAEvB,MACEr2C,EAAQ/O,KAAK2nF,QAGXniC,GACFvwC,EAAAA,GAAAA,MAEAA,EAAAA,GAAAA,GAAiB0yE,GAGnB97E,GACEye,EAAAA,EAAAA,IAAiB,CACf5jB,MAAM,EACNrB,eAAgB,eAGtB,EAGFinD,GAAiDC,EAAAA,GAAAA,GAAiB/uC,EAAQpe,IAAlEotD,EAAmBF,EAAnBE,oBAAqB/B,EAAe6B,EAAf7B,gBAEvBsC,EAAeA,MACnB3rC,EAAAA,EAAAA,IAAM,4BAA6B,CACjCwmE,mBAAoBnoF,EAAYyV,OAASwB,EAAAA,EAASoK,mBAGpD0rC,GAAqB,EAGjB8H,EAAcA,MAClBlzC,EAAAA,EAAAA,IAAM,4BAEF3hB,EAAYL,GACd4lD,GAAoB,GAEpBn5C,GAASye,EAAAA,EAAAA,IAAiB,CAAE5jB,MAAM,EAAMrB,eAAgB,cAC1D,EAGIwiF,EAAqBA,MACzBzmE,EAAAA,EAAAA,IAAM,gCACNqmE,GAA2B,EAAK,EAG5BK,GAAYp8B,EAAAA,EAAAA,IAAaluC,GAE/B,IAAI4M,EAAoB4jD,EAAIhjB,WAC1Bh/C,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACg+E,EAAAA,EAAY,CAACj3E,OAAO,cAAc,eAAYolE,EAAAA,GAAAA,IAAoBlI,EAAIhjB,SAAU,aAGjF88B,IAAclP,IAAgBkP,IAAcvP,GAC9CnuD,GACEpe,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAACC,OAAO,YAAYjR,KAAK,UAAU6M,KAAK,OAAO,eAG/Co7E,IAAcl8B,KACvBxhC,EAAS,gBAAgBxS,KAAMo2D,EAAIsK,aAAe,GAAGzgE,OAAO,aAG9D,MAAMmwE,EAAuC,IAArBvoF,EAAYyV,KAE9B+yE,EAAoC,KAAnBxoF,EAAYL,GAE7B8oF,EACJJ,IAAchiC,IAAWgiC,IAAclP,IAAgBp7D,EAAQukD,SAAYkmB,EAEvEE,EAAwB9nE,QAC5B5gB,EAAYqF,aAAatH,WAAW67B,MACjCyO,GAAaA,EAAS+F,aAAerwB,EAAQpe,KAAO0oC,EAASC,aAIlE,IAAIhT,EAAU,oBACVizD,IACEE,EACFnzD,EAAU,kBACD+yD,IAAcl8B,KACvB72B,EAAU,uBAId,IAAIqzD,EAA8C,KAC9CC,GACFt+E,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACrH,SAAS,QAAQ0D,OAAO,WAAWtD,QAAS8mD,EAAat3D,KAAK,SAAQkN,SAAC,UA4EjF,OAxEKsT,EAAQpW,QAAQkhF,WAcVJ,EACTE,GACEr+E,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACL,cAAY,kCACZrH,SAAU+6E,IAA0BF,EAAiB,YAAc,aACnEz6E,QAASk6E,EACT1qF,KAAK,SAAQkN,SAEZi+E,IAA0BF,EAAiB,oBAAsB,eAG7DH,IAAcl8B,GACvBw8B,EAAyB39B,GACvBz+C,EAAAA,EAAAA,MAACu8E,GAAqB,CAAAr+E,SAAA,EACpBH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAACxD,MAAOC,EAAAA,GAAOqmB,MAAO7iB,OAAO,YAAYjR,KAAK,YAAY,yBAIjEkK,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACrH,SAAS,OAAO0D,OAAO,WAAWtD,QAASu/C,EAAc/vD,KAAK,SAAQkN,SAAC,cAIxE49E,IAAclP,IAAgBkP,IAAcvP,KACrD6P,GACEr+E,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACrH,SAAS,QAAQI,QAAS8mD,EAAat3D,KAAK,SAAQkN,SAAC,WArC/Dk+E,GACEr+E,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLrH,SAAS,oBACTI,QAASA,IACP,QAASgQ,EAAQpW,SACjBoW,EAAQpW,QAAQ1C,KAChBmD,OAAOnB,KAAK8W,EAAQpW,QAAQ1C,IAAK,UAEnC1H,KAAK,SAAQkN,SACd,cAkCD8jE,EAAI5iB,WACF08B,IAAchiC,GAChB17B,GACEpe,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACg+E,EAAAA,EAAY,CAACj3E,OAAO,YAAW5G,UAC9BH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAACxD,MAAOC,EAAAA,GAAOY,MAAOrO,KAAK,UAAU6M,KAAK,SAClC,iCAIVo7E,IAAclP,IAAgBp7D,EAAQukD,UAC/ChtC,EAAU,gBACV3K,EAAS,4CACTg+D,GACEr+E,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACrH,SAAS,UAAUI,QAASq6E,EAAoB7qF,KAAK,SAAQkN,SAAC,kBAIxEm+E,EAA0BD,KAI9Bp1E,EAAAA,EAAAA,YAAU,KACJg7D,EAAI5iB,UAAY08B,IAAclP,IAAgBp7D,EAAQukD,SACxD0lB,GAA2B,EAC7B,GACC,CAACzZ,EAAI5iB,SAAU08B,KAGhB97E,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACs8C,EAAAA,EAAS,CAACl6C,OAAQg5C,EAAiB/4C,QAASA,IAAMg5C,GAAmB,MACtEr7C,EAAAA,EAAAA,KAACo7E,EAAiB,CAChBh5E,OAAQq7E,EACRp7E,QAASA,IAAMq7E,GAA2B,GAC1CnzB,YAAaA,EACb92C,QAASA,KAEXxR,EAAAA,EAAAA,MAAChC,GAAS,CAACg9B,UAAgC,IAArBvnC,EAAYyV,KAAWhL,SAAA,EAC3CH,EAAAA,EAAAA,KAACiqC,GAAO,CAAA9pC,SAAE6qB,KACR5E,IAAapmB,EAAAA,EAAAA,KAAC+gD,GAAM,CAAA5gD,SAAEkgB,IACvB49D,EAAkBI,EAAyBC,EAC3CL,IACCh8E,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACI49E,IAAcl8B,IAAes8B,KAC7Bn+E,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACLrH,SAAS,QACT0D,OAAQ,UAAUg3E,IAAcl8B,IAAek8B,IAAchiC,GAAS,OAAS,IAC/Et4C,QAAS8mD,EACThjD,QAAQ,YACRtU,KAAK,SAAQkN,SACd,WAID49E,IAAcl8B,IAAek8B,IAAchiC,MAC3C/7C,EAAAA,EAAAA,KAAC08E,GAAmB,CAClB14B,KAAM+5B,IAAcl8B,GAAcoiB,EAAIsK,YAActK,EAAIhjB,SACxD/mD,YAAa,iCACX+pE,EAAI7gB,aAAaljC,YAAc,aAC7BzM,EAAQtd,YAAWsoF,EAAAA,EAAAA,IAAexa,EAAIrgE,cAC1C8K,MAAO,YAAYqvE,IAAcl8B,GAAc,cAAgB,eAC7DpuC,EAAQ/E,kBAOnB,EAMP,MAAMzO,GAAYmE,EAAAA,GAAOC,GAAG;;;;sBAINd,EAAAA,GAAOC;;;oBAGT,EAAGy5B,eAAiBA,EAAY,OAAS;EAEvDgN,GAAU7lC,EAAAA,GAAOC,GAAG;IACtBC,EAAAA,GAAMyI;;EAGJg0C,GAAS38C,EAAAA,GAAOC,GAAG;;;;;IAKrBC,EAAAA,GAAMgM;EAEJkuE,GAAwBp6E,EAAAA,GAAOC,GAAG;;;;WAI7Bd,EAAAA,GAAOqmB;IACdtlB,EAAAA,GAAMgM;;kBCpQV,OAhC6BouE,EAAGjrE,cAC9B,MAAMgnB,EAAW,IAAIhnB,EAAQtF,sBAAuBsF,EAAQxF,aAE5D,OACEjO,EAAAA,EAAAA,KAACC,GAAS,CAAAE,SACPs6B,EAASzkC,OAAS,IACjBiM,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,EACEH,EAAAA,EAAAA,KAACiqC,GAAO,CAAA9pC,SAAC,iCACT8B,EAAAA,EAAAA,MAAC08E,GAAI,CAAAx+E,SAAA,CACFs6B,EAASxO,MAAM,EAAGquC,GAAAA,GAA2B3lE,KAAKivD,IACjD5jD,EAAAA,EAAAA,KAAC8hD,EAAAA,GAAG,CAAexsC,QAASsuC,EAASjhD,KAAK,KAAKkhD,MAAM,WAA3CD,KAEXnpB,EAASzkC,OAASskE,GAAAA,IACjBt6D,EAAAA,EAAAA,KAAC4+E,EAAAA,GAAU,CACT12D,KAAMuS,EAASxO,MAAMquC,GAAAA,GAA2B3lE,KAAKivD,IACnD5jD,EAAAA,EAAAA,KAAC8hD,EAAAA,GAAG,CAAexsC,QAASsuC,EAASjhD,KAAK,KAAKkhD,MAAM,WAA3CD,KACTzjD,UAEHH,EAAAA,EAAAA,KAAC8hD,EAAAA,GAAG,CACFxsC,QAAYmlB,EAASzkC,OAASskE,GAAAA,EAArB,QACT33D,KAAK,KACLkhD,MAAM,qBAOR,EAMhB,MAAM5jD,GAAYmE,EAAAA,GAAOC,GAAG;;sBAENd,EAAAA,GAAO2N;;EAGvB+4B,GAAU7lC,EAAAA,GAAOC,GAAG;;IAEtBC,EAAAA,GAAM+L;EAEJsuE,GAAOv6E,EAAAA,GAAOC,GAAG;;;;;;;8ECVvB,OAlCyBw6E,EAAGnhB,iBAOxB19D,EAAAA,EAAAA,KAAA,OAAAG,UACEH,EAAAA,EAAAA,KAACmqC,EAAAA,GAAU,CACTC,eAAa,EACb00C,UAAQ,EACRjhF,MAAM,oBACN5K,KAAK,mBACLsmB,QAAQ,YACRxS,OAAO,YACP3D,MACEnB,EAAAA,EAAAA,MAAChC,GAAS,CAAAE,SAAA,EACRH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,OAAOwN,MAAOC,EAAAA,GAAOu3C,WAAY/zC,OAAO,cAAc,iEAEjE/G,EAAAA,EAAAA,KAACmD,EAAAA,GAAU,CACTC,KAAK,gBACLC,SAAS,OACTsH,aAAa,OACblH,QAtBWoL,gBACfilC,UAAUC,UAAUC,UAAU0pB,GACpCztD,GAAAA,EAAMhB,QAAQ,+BAA+B,EAqBnC3L,MAAOC,EAAAA,GAAOu3C,WACd/zC,OAAO,yBAWrB,MAAM9G,GAAYmE,EAAAA,GAAOC,GAAG;;;;shCCArB,MAAMgqE,GAAoB,cAoYjC,OAlYgBtoD,EAAGK,aAAY,EAAO24D,iBAAgB5gC,gBAAe,MACnE,MAAgD78C,EAAAC,IAAdC,EAAAA,EAAAA,WAAS,GAAK,GAAzCgsB,EAASlsB,EAAA,GAAEmsB,EAAYnsB,EAAA,GACkEK,EAAAJ,IAAlEC,EAAAA,EAAAA,UAAyBu9E,GAAmB,CAAC,GAAqB,GAAzFtrE,EAAO9R,EAAA,GAAEq9E,EAAUr9E,EAAA,GACqC2M,EAAA/M,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAxD+3D,EAAgBjrD,EAAA,GAAE2sC,EAAmB3sC,EAAA,GACWyD,EAAAxQ,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAhDu2C,EAAYhmC,EAAA,GAAEyjC,EAAezjC,EAAA,GAEyBE,EAAA1Q,IAAfC,EAAAA,EAAAA,WAAS,GAAM,GAAtDy9E,EAAehtE,EAAA,GAAEitE,EAAkBjtE,EAAA,GACgBE,EAAA5Q,IAAZC,EAAAA,EAAAA,UAAS,IAAG,GAAnD29E,EAAehtE,EAAA,GAAEitE,EAAkBjtE,EAAA,GAItCsK,EAAAlb,IAHsDC,EAAAA,EAAAA,YAGtD,GAHG69E,EAAqB5iE,EAAA,GAAE6iE,EAAwB7iE,EAAA,GAKhDwnD,GAAO8a,GAAkBtrE,GAASgqC,YAClCpgD,EAAUoW,EAAQpW,QAElBkiF,GAAmBjuD,EAAAA,EAAAA,QAAuB,MAC1C57B,IAAcsM,EAAAA,EAAAA,KAAajP,GAAqBA,EAAMmM,SAASxJ,cAE/DoM,IAAWC,EAAAA,EAAAA,MACjBy9E,IAAoCpsE,EAAAA,EAAAA,KAA5B8M,GAAUs/D,GAAVt/D,WAAYu/D,GAAWD,GAAXC,YACdz6E,IAAUC,EAAAA,EAAAA,MACRo9C,GAAar9C,GAAQlL,SAArBuoD,SACD11B,GAAiCprB,IAAjB6vB,EAAAA,EAAAA,KAAiB,GAArB,GACbsuD,GAAkB/yD,GAAapZ,IAAI86D,IAEnCsR,GAAe9wE,UACnB,IAEE,IAAKuX,IAAc24D,EAAgB,CACjC,MAAiBa,SAAqBx/D,EAAAA,EAAAA,IAAiBF,GAAYqoC,GAAQm3B,KAAnEjsE,QAuCR,OArCKmsE,EAAWvqF,IACd2P,GAAQ/O,KAAK,KAGfgL,SAASyN,MAAQ,GAAGkxE,EAAWlxE,WAAWkxE,EAAWniC,YAAY2F,aAAattD,cAE9EgM,IAAS8Q,EAAAA,EAAAA,QAETyE,EAAAA,EAAAA,IAAMC,EAAAA,EAAiBkJ,KAAM,CAC3BsjB,WAAY87C,EAAWvqF,GACvBooD,YAAa,CACXoiC,eAAgBD,EAAWvqF,GAC3BkmD,iBAAkBqkC,EAAWrkC,kBAE/B3wB,gBAAiB,YAGf+B,GAAapZ,IAAI,UACnBtD,EAAAA,EAAMhB,SACJhN,EAAAA,EAAAA,MAAA,KAAA9B,SAAA,CAAG,yCAEDH,EAAAA,EAAAA,KAACwK,EAAAA,GAAI,CAACC,GAAG,gBAAgBf,MAAO,CAAEwG,eAAgB,YAAa5M,MAAO,SAAUnD,SAAC,iBAE1E,QAMTooD,IACF57B,GAAa2c,IAAI+kC,GAAmB9lB,GACpCvjD,GAAQuiB,QAAQ,CAAErC,OAAQyH,GAAaoG,cAEzCmsD,GAAmB,GAEnBF,EAAWY,QACXnyD,GAAa,EAEf,CAGA,GAAIrH,IAAc24D,EAAgB,CAChC,MAAMe,EAAuBC,KAAKN,IAEjBG,SAAqBx/D,EAAAA,EAAAA,IAAiB0/D,EAAsBL,KAArEhsE,QAQR,OANKmsE,EAAWvqF,IACd2P,GAAQ/O,KAAK,KAGf+oF,EAAWY,QACXnyD,GAAa,EAEf,CAGIrH,GAAa24D,GACftxD,GAAa,EAEjB,CAAE,MAAO3qB,GACmB,MAAtBA,EAAEwP,SAAS+N,SACT4+D,EACFG,EAAmB,2BAEnBF,GAAmB,GACnBI,EAAyBx8E,EAAEwP,SAAStD,OAG1C,GA2BF,IAxBA/F,EAAAA,EAAAA,YAAU,KACR02E,IAAc,GACb,KAEHK,EAAAA,EAAAA,kBAAgB,KACd,IAAIC,EAEJ,MAAMC,EAAiBA,KACQ,QAAzBpiF,OAAOhE,SAASutB,MAAkBk4D,EAAiBhuD,QACrDguD,EAAiBhuD,QAAQC,eAAe,CAAEC,SAAU,WAEpDwuD,EAAmBE,sBAAsBD,EAC3C,EAKF,OAFAA,IAEO,KACDD,GACFG,qBAAqBH,EACvB,CACD,GACA,CAACV,IAEAN,EACF,OACEj/E,EAAAA,EAAAA,KAAC64E,GAAAA,EAAU,CACTjqE,SAAU+wE,GACVtwE,MAAO8vE,EACPrG,YAAauG,IAKnB,GAAI7xD,EACF,OAAOxtB,EAAAA,EAAAA,KAACI,EAAAA,EAAM,CAACqJ,OAAO,aAGxB,MAAM42E,IACJ1+B,EAAAA,EAAAA,IAAaluC,KAAamuC,EAAAA,GAAUitB,cAAgB5K,EAAIqc,sBACpDl6B,GAAW6d,EAAI/B,WAAYqe,EAAAA,EAAAA,IAAsBtc,EAAI/B,WAAa,KAElEse,IACHp6D,GACD3S,EAAQ2H,WAAWqlE,MACnBhtE,EAAQmqD,cACPloE,GAAYyV,OAASwB,EAAAA,EAASC,SAAWlX,GAAYoX,UAElD4zE,GAAiBjtE,GAASy6B,cAAgB6wC,GAAgB7wC,aAEhE,OACEjsC,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC2iC,EAAAA,EAAW,CACVhmC,KAAM48D,EACN/1B,UAAW/vB,EAAQpe,GACnBiT,WAAYA,IAAM2yC,GAAoB,GACtC1X,qBAAsBA,IAAMtzB,EAAAA,EAAMhB,QAAQ,eAC1C6zB,cAAc,GACdO,UAAU,2BACVuC,YAAa,gCACU,IAArBlwC,GAAYyV,KAAa,UAAY,cAEvC06B,eAAgB,QACO,IAArBnwC,GAAYyV,KAAa,UAAY,uEAEvC46B,cAAe,GAAGrwC,GAAYC,cAAcD,GAAYE,mDACxDwtC,aAAa,aAEdhd,IAAc24D,IAAkB/+E,EAAAA,EAAAA,KAACi7E,EAAoB,IACrDuF,KAA8BxgF,EAAAA,EAAAA,KAAC6+E,GAAgB,CAACnhB,WAAYjqD,EAAQmqD,eACrE37D,EAAAA,EAAAA,MAAChC,GAAS,CAACmmB,UAAWA,EAAW+3B,aAAcA,EAAc,cAAY,gBAAeh+C,SAAA,CACrF0kB,EAAAA,GAAcmW,yBACb/4B,EAAAA,EAAAA,MAAC0+E,GAAc,CAAAxgF,SAAA,EACXimB,IACAnkB,EAAAA,EAAAA,MAAC20C,EAAAA,GAAQ,CACPnsC,GAAI43C,KAAY3qC,EAAAA,EAAAA,IAAgB,YAChC43B,KAAMhrC,EAAAA,GAAMgM,SACZvJ,OAAO,WAAU5G,SAAA,EAEjBH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,eAAeiR,OAAO,eAAe,4BAIpD/G,EAAAA,EAAAA,KAAC4gF,EAAAA,EAAiB,CAACntE,QAASA,EAAS2S,UAAWA,QAGlDpmB,EAAAA,EAAAA,KAAC6gF,GAAa,CACZz6D,UAAWA,EACXo5B,mBAAoBykB,EAAI7gB,aAAa3D,cAAc9kD,KAAOmmF,EAAoB3gF,UAE9E8B,EAAAA,EAAAA,MAAC8+E,GAAW,CAAC5iC,aAAcA,EAAah+C,SAAA,CACrCimB,GACCpmB,EAAAA,EAAAA,KAAA,UAEAiC,EAAAA,EAAAA,MAAC20C,EAAAA,GAAQ,CAACnsC,GAAI43C,KAAY3qC,EAAAA,EAAAA,IAAgB,YAAa43B,KAAMhrC,EAAAA,GAAMgM,SAASnQ,SAAA,EAC1EH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,eAAeiR,OAAO,eAAe,4BAIpD9E,EAAAA,EAAAA,MAAC++E,GAAY,CAAA7gF,SAAA,EACXH,EAAAA,EAAAA,KAAC4/C,GAAgB,CAACzB,aAAcA,EAAc,cAAY,eAAch+C,SACrEugF,IACCz+E,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,CACG9C,EAAQ6qC,eAAiB,kBAAkB,YAC5CloC,EAAAA,EAAAA,KAACihF,EAAAA,EAAU,CACT79E,KAAK,kEACL89E,SAAS,cACTC,QAAQ,6EAIZ,iBAAkB9jF,IAChB4E,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,CACG9C,EAAQqrC,QAAQ/tC,MACfqF,EAAAA,EAAAA,KAACuoC,GAAa,CAACn+B,IAAK/M,EAAQqrC,OAAO/tC,IAAK2P,IAAI,kBAE9CtK,EAAAA,EAAAA,KAAC42C,EAAAA,GAAQ,CAACnsC,GAAI,YAAYpN,EAAQ6iB,aAAcovB,KAAMhrC,EAAAA,GAAM+L,WAAWlQ,SACpE9C,EAAQsR,eAEVtR,EAAQyiD,sBAAwBC,GAAAA,GAA0BC,WACzDhgD,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,WAAWiR,OAAO,YAAYzD,MAAOC,EAAAA,GAAOC,kBAMjExD,EAAAA,EAAAA,KAACyM,GAAK,CAAC0xC,aAAcA,EAAc,cAAY,YAAWh+C,SACvDsT,EAAQ/E,SAEX1O,EAAAA,EAAAA,KAACohF,GAAW,CAAAjhF,SACTsT,EAAQ2H,WAAWimE,MAClBp/E,EAAAA,EAAAA,MAAC20C,EAAAA,GAAQ,CACPnsC,GAAI,aAAaw5D,EAAI7gB,aAAaljC,aAClCovB,KAAMhrC,EAAAA,GAAMg9E,WAAWnhF,SAAA,EAEvBH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CACHhR,MAAMyrF,EAAAA,EAAAA,IAAkBtd,EAAI7gB,aAAaljC,YACzCnZ,OAAO,cAERk9D,EAAI7gB,aAAattD,mBAQhCmM,EAAAA,EAAAA,MAACk3C,GAAW,CAACgF,aAAcA,EAAah+C,SAAA,EACtC8B,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,CACGkgF,KACCp+E,EAAAA,EAAAA,MAACs6C,GAAW,CAAC4B,aAAcA,EAAah+C,SAAA,EACtC8B,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,EACEH,EAAAA,EAAAA,KAACiqC,GAAO,CAAA9pC,SAAC,gDACT8B,EAAAA,EAAAA,MAAA,OAAA9B,SAAA,CAAK,mCAC8B,KAC/BugF,IAAkB,iBAAkBrjF,EAClCA,EAAQsR,aACR,cAAc,WAItB3O,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CACL7M,MAAM,cACN4F,QAASA,KACP87E,EAAiBhuD,SAASC,eAAe,CAAEC,SAAU,WACjDwyC,EAAIqc,uBAA8C,IAArB5qF,GAAYyV,MAC3CqqC,GAAgB,EAClB,EACAr1C,SACH,0BAKLH,EAAAA,EAAAA,KAACiqC,GAAO,CAAA9pC,UAAEuM,EAAAA,GAAAA,GAAE,yCACZ1M,EAAAA,EAAAA,KAAA,OAAK,cAAY,iBAAgBG,UAC9B8+C,EAAAA,EAAAA,KAAmBuiC,EAAAA,EAAAA,IAAoBvd,EAAIrgE,gBAE9C5D,EAAAA,EAAAA,KAACiqC,GAAO,CAAA9pC,UAAEuM,EAAAA,GAAAA,GAAE,0CACZ1M,EAAAA,EAAAA,KAACyhF,GAAe,CAAC,cAAY,kBAAiBthF,UAC3C8+C,EAAAA,EAAAA,IAAmBglB,EAAI/C,gBAE1BlhE,EAAAA,EAAAA,KAACg7E,EAA2B,CAC1BhwD,SAAShrB,EAAAA,EAAAA,KAACy6E,GAAU,CAAAt6E,UAAEuM,EAAAA,GAAAA,GAAE,yCACxBo+B,YAAar3B,EAAQiuE,sBAGtBprE,QAAQ7C,EAAQ2tD,mBAAmBprE,UAClCiM,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACy6E,GAAU,CAAAt6E,UAAEuM,EAAAA,GAAAA,GAAE,oDACf1M,EAAAA,EAAAA,KAACyhF,GAAe,CAAC,cAAY,4BAA2BthF,UACrD8+C,EAAAA,EAAAA,IACCxrC,EAAQ2tD,kBAAkBzsE,KAAKgtF,GAAa,KAAKA,EAAS7rF,SAAQC,KAAK,YAK9EugB,QAAQ7C,EAAQ6tD,sBAAsBtrE,UACrCiM,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACy6E,GAAU,CAAAt6E,UAAEuM,EAAAA,GAAAA,GAAE,qDACf1M,EAAAA,EAAAA,KAACyhF,GAAe,CAAC,cAAY,6BAA4BthF,UACtD8+C,EAAAA,EAAAA,IACCxrC,EAAQ6tD,qBACL3sE,KAAKitF,GAAgB,KAAKA,EAAY1nF,gBACtCnE,KAAK,aAMdkuE,EAAItC,wBAAwB3rE,QAAU,GAAK,IAC3CiM,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACy6E,GAAU,CAAAt6E,UAAEuM,EAAAA,GAAAA,GAAE,qDACf1M,EAAAA,EAAAA,KAACyhF,GAAe,CAAC,cAAY,gCAA+BthF,UACzD8+C,EAAAA,EAAAA,IAAmBglB,EAAItC,8BAI5BsC,EAAInC,cAAc9rE,QAAU,GAAK,IACjCiM,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAACy6E,GAAU,CAAAt6E,UAAEuM,EAAAA,GAAAA,GAAE,2CACf1M,EAAAA,EAAAA,KAACyhF,GAAe,CAAC,cAAY,mBAAkBthF,UAC5C8+C,EAAAA,EAAAA,IAAmBglB,EAAInC,mBAI7B1b,IACCnkD,EAAAA,EAAAA,MAAC4/E,GAAa,CAAA1hF,SAAA,EACZ8B,EAAAA,EAAAA,MAACw4E,GAAU,CAAAt6E,SAAA,EACRuM,EAAAA,GAAAA,GAAE,gCACH1M,EAAAA,EAAAA,KAAC8hD,EAAAA,GAAG,CACFxsC,SACErT,EAAAA,EAAAA,MAAC6/E,GAAa,CAAA3hF,SAAA,CACXimD,GAAS,KAAOA,GAAS,GACtB,SAASA,GAAS,KAClB,UAAUA,GAAS,MAAMA,GAAS,MACtCpmD,EAAAA,EAAAA,KAACwwC,EAAAA,GAAO,CACNl7B,QAAQ,2JACR9N,aAAa,QAAOrH,UAEpBH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,OAAO6M,KAAK,KAAKW,MAAOC,EAAAA,GAAO6rB,mBAIhDzsB,KAAK,KACLoE,OAAO,mBAGX/G,EAAAA,EAAAA,KAACmmD,EAAAA,EAAI,CAACC,SAAUA,QAEhB,MACJpmD,EAAAA,EAAAA,KAACk6E,GAAAA,EAAQ,CACPjY,kBAAmBgC,EAAIjC,oBAAsB,GAC7CmY,gBAAiB1mE,EAAQsuE,iBACzB3H,oBAAqB3mE,EAAQuuE,sBAC7B7jC,aAAcA,KAEduiC,KAAkB1gF,EAAAA,EAAAA,KAACk+C,GAAAA,EAAY,CAACzqC,QAASA,EAAS0qC,aAAcA,IACjE8lB,EAAIqc,wBACHtgF,EAAAA,EAAAA,KAACg7C,EAAAA,EAAiB,CAChBvnC,QAASA,EACTqgB,IAAKyrD,EACLxnC,aAAcA,EACdvC,gBAAiBA,EACjByF,oBAAqBA,QAI3Bh5C,EAAAA,EAAAA,MAACggF,GAAW,CAAA9hF,SAAA,EACVH,EAAAA,EAAAA,KAACw9E,GAAe,CACd/pE,QAASA,EACT2S,UAAWA,EACX60B,oBAAqBA,KAEvBj7C,EAAAA,EAAAA,KAAC0+E,GAAoB,CAACjrE,QAASA,IAC9BA,EAAQ2H,WAAWimE,MAAOrhF,EAAAA,EAAAA,KAACu9C,GAAAA,EAAW,CAAC9pC,QAASA,eAItD,EAMoBrP,EAAAA,GAAOmM,CAAC;IAC/BjM,EAAAA,GAAMiU;WACChV,EAAAA,GAAOY;;;;aAILZ,EAAAA,GAAOY;;GAGDC,EAAAA,EAAAA,IAAOoG,EAAAA,GAAK;IAC3BlG,EAAAA,GAAMiU;WACChV,EAAAA,GAAOY;;;aAGLZ,EAAAA,GAAOY;;EAdpB,MAiBMlE,GAAYmE,EAAAA,GAAOC,GAAG;oBACR,EAAG+hB,eAAiBA,EAAY,OAAS;IACzD,EAAG+3B,mBAAoBA,GAAgB,UAAUlxC,EAAAA,GAAkBi1E;EAEjErB,GAAgBz8E,EAAAA,GAAOC,GAAG;;;oBAGZ,EAAGm7C,wBAAyBA;IAC5C,EAAGp5B,eAAgBA,GAAa,eAAe7iB,EAAAA,GAAOgoB;;EAGpDw1D,GAAc38E,EAAAA,GAAOC,GAAG;;;;;;;IAO1B,EAAG85C,kBACHA,GACA,WACIlxC,EAAAA,GAAkB6M;EAKpBknE,GAAe58E,EAAAA,GAAOC,GAAG;;;;;EAMzBu7C,GAAmBx7C,EAAAA,GAAOC,GAAG;;;;IAI/BC,EAAAA,GAAM+L;IACN,EAAG8tC,kBACHA,GACA,WACIlxC,EAAAA,GAAkB6M;EAKpByuB,GAAgBnkC,EAAAA,GAAOwG,GAAG;;;;;IAK5BtG,EAAAA,GAAM2W;EAEJxO,GAAQrI,EAAAA,GAAOC,GAAG;IACpBC,EAAAA,GAAM69E;;;IAGN,EAAGhkC,kBACHA,GACA,WACIlxC,EAAAA,GAAkB+nE,4EAGlB/nE,EAAAA,GAAkByc,wEAGlBzc,EAAAA,GAAkB6M,iCAChBxV,EAAAA,GAAMsjC;EAIVw5C,GAAch9E,EAAAA,GAAOC,GAAG;;;;;EAMxBk4C,GAAcn4C,EAAAA,GAAOC,GAAG;;;;;gBAKdd,EAAAA,GAAOw5C;;;IAGnBz4C,EAAAA,GAAMuG;IACN,EAAGszC,kBACHA,GACA,WACIlxC,EAAAA,GAAkB+nE,gIAKlB/nE,EAAAA,GAAkBmyC;EAKpBjG,GAAc/0C,EAAAA,GAAOC,GAAG;;;;;;MAMxBC,EAAAA,GAAMuG;;;IAGR,EAAGszC,kBACHA,GACA,WACIlxC,EAAAA,GAAkB+nE,6DAGlB/nE,EAAAA,GAAkByc,uIAKlBzc,EAAAA,GAAkB6M;EAKpBmoE,GAAc79E,EAAAA,GAAOC,GAAG;;;;EAKxB4lC,GAAU7lC,EAAAA,GAAOC,GAAG;IACtBC,EAAAA,GAAMyI;;;;;EAMJ0tE,GAAar2E,EAAAA,GAAOC,GAAG;;;IAGzBC,EAAAA,GAAM+L;;EAGJoxE,GAAkBr9E,EAAAA,GAAOC,GAAG;;;;EAMrBw9E,GAAgBz9E,EAAAA,GAAOC,GAAG;;;;;EAM1By9E,GAAgB19E,EAAAA,GAAOC,GAAG;;;;EAOjCs8E,GAAiBv8E,EAAAA,GAAOC,GAAG;kBACf4I,EAAAA,GAAkBE;0BACV5J,EAAAA,GAAO4U;IAC7BlL,EAAAA,GAAkB6M;;;sFCnmBtB,MAaMuM,EAAUjiB,EAAAA,GAAOC,GAAG;;sBAEJd,EAAAA,GAAO+iB;;EAIvB7Z,EAAQrI,EAAAA,GAAOC,GAAG;IACpBC,EAAAA,GAAMiiB;WACChjB,EAAAA,GAAOyE;EAGZwe,EAAWpiB,EAAAA,GAAOC,GAAG;IACvBC,EAAAA,GAAMmiB;WACCljB,EAAAA,GAAOyE;EAGZuC,EAAOnG,EAAAA,GAAOC,GAAG;IACnBC,EAAAA,GAAMuG;WACCtH,EAAAA,GAAOyE;;;EAKlB,IApCoB4f,KAEhB5nB,EAAAA,EAAAA,KAAC2mB,EAAAA,GAAa,CAACC,eAAe,EAAKzmB,UACjC8B,EAAAA,EAAAA,MAACokB,EAAO,CAAAlmB,SAAA,EACNH,EAAAA,EAAAA,KAACyM,EAAK,CAAAtM,SAAC,UACPH,EAAAA,EAAAA,KAACwmB,EAAQ,CAAArmB,SAAC,6DACVH,EAAAA,EAAAA,KAACuK,EAAI,CAAApK,SAAC,wEACNH,EAAAA,EAAAA,KAAC0K,EAAAA,GAAM,CAACjH,QAASA,IAAMuB,QAAQ+hB,IAAI,GAAG5mB,SAAC,gB,iIC0E/C,KApE6BiiF,EAC3BhgF,SACAwlE,aACAya,gBACAva,cACAwa,iBACAvd,gBACAwd,uBAEA,MAAAC,GAKIC,EAAAA,EAAAA,KAHFC,GAD2BF,EAA3Bh1D,UACWg1D,EAAXE,aACAC,EAAYH,EAAZG,aACAC,EAAcJ,EAAdI,eASIC,EAAejb,EAAW5xE,OAAS8xE,EAAY9xE,OAAS+uE,EAAc/uE,OAE5E,OAAKoM,GAGHH,EAAAA,EAAAA,MAAChC,EAAS,CAAAE,SAAA,EACR8B,EAAAA,EAAAA,MAAC09C,EAAM,CAAAx/C,SAAA,EACLH,EAAAA,EAAAA,KAAC8iF,EAAAA,EAAmB,CAClBpgF,MAAM,iBACNG,SAAWC,GAAMu/E,EAAcv/E,GAC/ByC,MAAOqiE,EACPxgE,QAASs7E,KAEX1iF,EAAAA,EAAAA,KAAC8iF,EAAAA,EAAmB,CAClBpgF,MAAM,QACNG,SAAWC,GAAMw/E,EAAex/E,GAChCyC,MAAOuiE,EACP1gE,QAASu7E,KAEX3iF,EAAAA,EAAAA,KAAC8iF,EAAAA,EAAmB,CAClBpgF,MAAM,WACNG,SAAWC,GAAMy/E,EAAiBz/E,GAClCyC,MAAOw/D,EACP39D,QAASw7E,QAGb3gF,EAAAA,EAAAA,MAAC8gF,EAAa,CAAA5iF,SAAA,EACZH,EAAAA,EAAAA,KAACo1E,EAAiB,CAACniF,KAAK,SAASwQ,QAjCbu/E,KACxBX,EAAc,IACdC,EAAe,IACfC,EAAiB,GAAG,EA8B4CpiF,SACzD0iF,EAAe,IACd5gF,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAA/B,SAAA,EACEH,EAAAA,EAAAA,KAAC8G,EAAAA,GAAI,CAAChR,KAAK,UAAUiR,OAAO,cAAczD,MAAOC,EAAAA,GAAOC,YAAa,0BAK3EvB,EAAAA,EAAAA,MAACghF,EAAc,CAAA9iF,SAAA,CAAC,yBAEdH,EAAAA,EAAAA,KAACknB,EAAW,CAACj0B,KAAK,SAASwQ,QAASA,IAAM3F,OAAOnB,KAAK,WAAY,UAAUwD,SAAC,yBAnCjE,IAwCN,EAMhB,MAAMF,EAAYmE,EAAAA,GAAOC,GAAG;;;;;sBAKNd,EAAAA,GAAOwE;;EAIhB43C,EAASv7C,EAAAA,GAAOC,GAAG;;;;;IAK5B4I,EAAAA,GAAkBD;;;;EAKhB+1E,EAAgB3+E,EAAAA,GAAOC,GAAG;;;;EAMnB+wE,EAAoBhxE,EAAAA,GAAOke,MAAM;;;WAGnC/e,EAAAA,GAAOC;;;IAGdc,EAAAA,GAAMgM;EAEG2yE,EAAiB7+E,EAAAA,GAAOC,GAAG;;WAE7Bd,EAAAA,GAAOyD;IACd1C,EAAAA,GAAM8I;EAEG8Z,EAAc9iB,EAAAA,GAAOke,MAAM;WAC7B/e,EAAAA,GAAOyD;;;;;koCCzHX,MAAM+zC,EAAkB,CAC7B,CACEx1C,MAAO,OACP7C,MAAO,QAET,CACE6C,MAAO,iBACP7C,MAAO,qBAIE+/E,EAAoBA,KAM/B,MAAgDnhF,EAAAC,GAAdC,EAAAA,EAAAA,WAAS,GAAK,GAAzCgsB,EAASlsB,EAAA,GAAEmsB,EAAYnsB,EAAA,GACsCK,EAAAJ,GAA9BC,EAAAA,EAAAA,UAA2B,IAAG,GAA7DkhF,EAAW/gF,EAAA,GAAEuhF,EAAcvhF,EAAA,GACoC2M,EAAA/M,GAA9BC,EAAAA,EAAAA,UAA2B,IAAG,GAA/DmhF,EAAYr0E,EAAA,GAAE60E,EAAe70E,EAAA,GAC2CyD,EAAAxQ,GAAnCC,EAAAA,EAAAA,UAAgC,IAAG,GAAxEohF,EAAc7wE,EAAA,GAAEqxE,EAAiBrxE,EAAA,GA0BxC,OAxBA9I,EAAAA,EAAAA,YAAU,KACR,WACE,MAAM+F,QAAak5D,EAAAA,EAAAA,MACnBkb,EAAkB,CAChB,CACE1gF,MAAO,cACP0E,QAAS4H,EAAKu2D,gBAAgBt3D,YAAYtZ,IAAIgc,EAAAA,KAEhD,CACEjO,MAAO,YACP0E,QAAS4H,EAAKu2D,gBAAgBp3D,mBAAmBxZ,IAC/Cgc,EAAAA,OAKN,MAAQw3D,EAAgCn5D,EAAhCm5D,aAAcC,EAAkBp5D,EAAlBo5D,cACtB8a,EAAe/a,EAAaxzE,IAAIgc,EAAAA,KAChCwyE,EAAgB/a,EAAczzE,IAAIgc,EAAAA,KAElC8c,GAAa,EACd,EApBD,EAoBI,GACH,IAEI,CACLD,YACAk1D,cACAC,eACAC,iBACD,C,6ICxDI,IAAKS,EAAW,SAAXA,GAAW,OAAXA,EAAW,oBAAXA,EAAW,uBAAXA,EAAW,gCAAXA,EAAW,wCAAXA,EAAW,2CAAXA,EAAW,8CAAXA,EAAW,+CAAXA,EAAW,4BAAXA,CAAW,MAWXC,EAAY,SAAZA,GAAY,OAAZA,EAAY,yBAAZA,EAAY,4CAAZA,EAAY,oDAAZA,EAAY,qDAAZA,EAAY,yCAAZA,EAAY,kDAAZA,EAAY,4DAAZA,EAAY,kDAAZA,EAAY,wBAAZA,CAAY,MAYZC,EAAW,SAAXA,GAAW,OAAXA,EAAW,4CAAXA,EAAW,sCAAXA,EAAW,4CAAXA,EAAW,gCAAXA,EAAW,gCAAXA,CAAW,MAQXxjC,EAAyB,SAAzBA,GAAyB,OAAzBA,EAAyB,sBAAzBA,EAAyB,kBAAzBA,EAAyB,oBAAzBA,CAAyB,K","sources":["webpack://halo/./app/client/src/redux/reducers/adminReducer.ts","webpack://halo/./app/client/src/redux/reducers/companyReducer.ts","webpack://halo/./app/client/src/redux/reducers/defaultReducer.jsx","webpack://halo/./app/client/src/redux/reducers/profileReducer.jsx","webpack://halo/./app/client/src/redux/reducers/windowDimensionsReducer.jsx","webpack://halo/./app/client/src/redux/reducers/index.jsx","webpack://halo/./app/client/src/redux/rootReducer.ts","webpack://halo/./app/client/src/redux/store.ts","webpack://halo/./app/client/packs/app.tsx","webpack://halo/./app/client/src/components/MasqueradeBar/MasqueradeBar.tsx","webpack://halo/./app/client/src/components/Messenger/MessengerHeader.tsx","webpack://halo/./app/client/src/components/Messenger/ParticipantsInfoModal.tsx","webpack://halo/./app/client/src/components/Messenger/Messenger.tsx","webpack://halo/./app/client/src/components/MobileRestricted/MobileRestricted.tsx","webpack://halo/./app/client/src/components/MobileRestricted/index.ts","webpack://halo/./app/client/src/components/PrivateRoute.tsx","webpack://halo/./app/client/src/components/PrivateSponsorRoute.tsx","webpack://halo/./app/client/src/components/SubscriptionWarning/SubscriptionEndedModal.tsx","webpack://halo/./app/client/src/components/SubscriptionWarning/SubscriptionWarning.tsx","webpack://halo/./app/client/src/components/TaxonomyUpdateModal/TaxonomyUpdateModal.tsx","webpack://halo/./app/client/src/components/TaxonomyUpdateModal/index.ts","webpack://halo/./app/client/src/components/modals/SSOSponsorOnboardingModal.tsx","webpack://halo/./app/client/src/routes/SubmitProposalRedirect.tsx","webpack://halo/./app/client/src/utils/ScrollToTop.ts","webpack://halo/./app/client/src/components/Navbar/NavbarDropdownMenu.tsx","webpack://halo/./app/client/src/components/LoginSignUpModal/LoginModal.styles.jsx","webpack://halo/./app/client/src/components/LoginSignUpModal/SignUpModal.tsx","webpack://halo/./app/client/src/components/LoginSignUpModal/LoginSignUpModal.tsx","webpack://halo/./app/client/src/components/LoginSignUpModal/index.jsx","webpack://halo/./app/client/src/components/Navbar/NavbarLink.tsx","webpack://halo/./app/client/src/components/Navbar/ScientistNavbarLinks.tsx","webpack://halo/./app/client/src/components/Navbar/LoggedOutNavbarLinks.tsx","webpack://halo/./app/client/src/components/Navbar/MobileMenu.tsx","webpack://halo/./app/client/src/components/Navbar/SponsorNavbarLinks.tsx","webpack://halo/./app/client/src/components/Navbar/UniversityAdminNavbarLinks.tsx","webpack://halo/./app/client/src/components/Navbar/navbarLists.ts","webpack://halo/./app/client/src/components/Navbar/Navbar.tsx","webpack://halo/./app/client/src/routes/notification_campaign_routes.tsx","webpack://halo/./app/client/src/routes/opportunity_routes.tsx","webpack://halo/./app/client/src/routes/request_for_expert_routes.tsx","webpack://halo/./app/client/src/routes/rfp_routes.tsx","webpack://halo/./app/client/src/views/StatusPages/401.tsx","webpack://halo/./app/client/src/views/StatusPages/403.tsx","webpack://halo/./app/client/src/views/ErrorBoundary/ErrorBoundaryFallback.tsx","webpack://halo/./app/client/src/views/ErrorBoundary/ErrorBoundary.tsx","webpack://halo/./app/client/src/requests/googleScholarAuthors.ts","webpack://halo/./app/client/src/views/Onboarding/Progress.tsx","webpack://halo/./app/client/src/views/Onboarding/Step2/Step2.tsx","webpack://halo/./app/client/src/views/Onboarding/Step3aGoogleScholar/AuthorCard.tsx","webpack://halo/./app/client/src/views/Onboarding/Step3aGoogleScholar/Step3aGoogleScholar.tsx","webpack://halo/./app/client/src/views/Onboarding/Step4/Step4NextStep.tsx","webpack://halo/./app/client/src/views/Onboarding/Step4/Step4.tsx","webpack://halo/./app/client/src/views/Onboarding/OnboardingContainer.tsx","webpack://halo/./app/client/src/App.tsx","webpack://halo/./app/client/src/components/FeatureRequestButton/FeatureRequestButton.tsx","webpack://halo/./app/client/src/components/Footer/Footer.tsx","webpack://halo/./app/client/src/components/InviteModal/InviteModal.styles.jsx","webpack://halo/./app/client/src/components/InviteModal/InviteModal.jsx","webpack://halo/./app/client/src/components/InviteModal/index.jsx","webpack://halo/./app/client/src/components/LoginSignUpModal/LoginModal.tsx","webpack://halo/./app/client/src/components/Messenger/Conversation/Participants.tsx","webpack://halo/./app/client/src/utils/ably.ts","webpack://halo/./app/client/src/components/Messenger/Conversation/AttachmentsInfoModal.tsx","webpack://halo/./app/client/src/components/Messenger/Conversation/MessageCompose.tsx","webpack://halo/./app/client/src/components/Messenger/Conversation/MessageList.tsx","webpack://halo/./app/client/src/components/Messenger/Conversation/Conversation.tsx","webpack://halo/./app/client/src/components/modals/RfpQuestionSubmittedModal.tsx","webpack://halo/./app/client/src/requests/requestComments.ts","webpack://halo/./app/client/src/components/RequestDiscussion/tooltipContent.tsx","webpack://halo/./app/client/src/components/RequestDiscussion/RequestDiscussionSubmitForm.tsx","webpack://halo/./app/client/src/components/RequestDiscussion/RequestDiscussionEditForm.tsx","webpack://halo/./app/client/src/components/RequestDiscussion/RequestComment.tsx","webpack://halo/./app/client/src/components/RequestDiscussion/RequestDiscussion.tsx","webpack://halo/./app/client/src/components/RequestFAQs/faqs.ts","webpack://halo/./app/client/src/components/RequestFAQs/RequestFAQs.tsx","webpack://halo/./app/client/src/components/RequestPageComponents/AboutCompany.tsx","webpack://halo/./app/client/src/components/RequestPageComponents/RequestPageBanner.tsx","webpack://halo/./app/client/src/components/RfpCard/RfpCardFooter.tsx","webpack://halo/./app/client/src/components/RfpCard/RfpCard.tsx","webpack://halo/./app/client/src/components/SSOEnabledHint/SSOEnabledHint.tsx","webpack://halo/./app/client/src/components/ScientistContribution/ScientistContribution.tsx","webpack://halo/./app/client/src/components/TRLs/TRLs.tsx","webpack://halo/./app/client/src/components/UserVerificationCode/ResendConfirmationModal.tsx","webpack://halo/./app/client/src/components/UserVerificationCode/UserVerificationCode.tsx","webpack://halo/./app/client/src/components/library/Inputs/SearchBarInput.tsx","webpack://halo/./app/client/src/components/library/ModalBases/ShareWithinCompanyModal.tsx","webpack://halo/./app/client/src/components/libraryOld/SelectionMenus/Dropdown.styles.js","webpack://halo/./app/client/src/components/libraryOld/SelectionMenus/Dropdown.jsx","webpack://halo/./app/client/src/components/modals/FuelModal.tsx","webpack://halo/./app/client/src/components/modals/KeywordSignUpModal.tsx","webpack://halo/./app/client/src/components/modals/MessageAttachmentGalleryModal/MessageAttachmentGalleryPreview.tsx","webpack://halo/./app/client/src/components/modals/MessageAttachmentGalleryModal/MessageAttachmentGalleryModal.tsx","webpack://halo/./app/client/src/hooks/useEffectRefresh.ts","webpack://halo/./app/client/src/components/modals/ScientistQuickViewModal/hooks.ts","webpack://halo/./app/client/src/components/modals/InviteNetworkScientistModal.tsx","webpack://halo/./app/client/src/components/RfpCard/UnsubscribedRfpCard.tsx","webpack://halo/./app/client/src/requests/user_request_preferences.ts","webpack://halo/./app/client/src/components/modals/RfpUnsubscribeModal.tsx","webpack://halo/./app/client/src/components/modals/SponsorShareScientistModal.tsx","webpack://halo/./app/client/src/components/modals/ScientistQuickViewModal/ScientistQuickViewModal.tsx","webpack://halo/./app/client/src/constants/requests.ts","webpack://halo/./app/client/src/constants/users.ts","webpack://halo/./app/client/src/hooks/router.ts","webpack://halo/./app/client/src/hooks/useFollowRequest.tsx","webpack://halo/./app/client/src/hooks/useIsMount.ts","webpack://halo/./app/client/src/hooks/useSSOSensitiveEmail.ts","webpack://halo/./app/client/src/requests/sso.ts","webpack://halo/./app/client/src/redux/actions/adminActions.ts","webpack://halo/./app/client/src/redux/actions/companyActions.ts","webpack://halo/./app/client/src/requests/subscriptions.ts","webpack://halo/./app/client/src/redux/actions/defaultActions.jsx","webpack://halo/./app/client/src/redux/actions/profileActions.ts","webpack://halo/./app/client/src/redux/actions/windowDimensionsActions.jsx","webpack://halo/./app/client/src/requests/hubspot.js","webpack://halo/./app/client/src/requests/notifications.ts","webpack://halo/./app/client/src/requests/rfps.ts","webpack://halo/./app/client/src/requests/sponsors.ts","webpack://halo/./app/client/src/requests/universities.ts","webpack://halo/./app/client/src/requests/userFollowedRequests.tsx","webpack://halo/./app/client/src/requests/users.tsx","webpack://halo/./app/client/src/tsTypes/__generated__/enums/proposal_review_status.ts","webpack://halo/./app/client/src/tsTypes/proposals.ts","webpack://halo/./app/client/src/tsTypes/proposaly.ts","webpack://halo/./app/client/src/tsTypes/roles.ts","webpack://halo/./app/client/src/tsTypes/universityProfiles.ts","webpack://halo/./app/client/src/utils/authUtils.ts","webpack://halo/./app/client/src/utils/dateUtils.ts","webpack://halo/./app/client/src/utils/proposalyUtils.ts","webpack://halo/./app/client/src/utils/requestUtils.ts","webpack://halo/./app/client/src/utils/tsUtils.ts","webpack://halo/./app/client/src/utils/userUtils.ts","webpack://halo/./app/client/src/views/Marketplace/RespondToRequestsFilters.tsx","webpack://halo/./app/client/src/views/Marketplace/RespondToRequests.tsx","webpack://halo/./app/client/src/views/Marketplace/sharedFilterStyles.tsx","webpack://halo/./app/client/src/views/Onboarding/Step3/CompanyScientist.tsx","webpack://halo/./app/client/src/views/Onboarding/Step3/CompanySponsor.tsx","webpack://halo/./app/client/src/views/Onboarding/Step3/ResearchInstitutionAdmin.jsx","webpack://halo/./app/client/src/views/Onboarding/Step3/ResearchInstitutionScientist.tsx","webpack://halo/./app/client/src/views/Onboarding/Step3/Step3.jsx","webpack://halo/./app/client/src/views/Onboarding/StepStyles.tsx","webpack://halo/./app/client/src/views/RFPPage/AccessCode.tsx","webpack://halo/./app/client/src/views/RFPPage/BenefitCard.tsx","webpack://halo/./app/client/src/views/RFPPage/Benefits.tsx","webpack://halo/./app/client/src/components/library/Attachments/RequestAttachment.tsx","webpack://halo/./app/client/src/components/library/Attachments/RequestAttachmentsContainer.tsx","webpack://halo/./app/client/src/views/RFPPage/PreviewRfpPageBanner.tsx","webpack://halo/./app/client/src/components/modals/JoinWaitlistModal.tsx","webpack://halo/./app/client/src/views/RFPPage/AddToCalendarButton.tsx","webpack://halo/./app/client/src/views/RFPPage/RfpCtaContainer.tsx","webpack://halo/./app/client/src/views/RFPPage/RfpKeywordsContainer.tsx","webpack://halo/./app/client/src/views/RFPPage/AccessCodeBanner.tsx","webpack://halo/./app/client/src/views/RFPPage/RfpPage.tsx","webpack://halo/./app/client/src/views/StatusPages/404.tsx","webpack://halo/./app/client/src/views/UniversityTeam/UniversityTeamSearch.tsx","webpack://halo/./app/client/src/views/UniversityTeam/searchOptions.ts","webpack://halo/./app/client/src/tsTypes/companies.js.erb"],"sourcesContent":["import { SET_IS_ABSOLUTE, SET_SHOULD_SHOW_PRODUCT_TOURS } from \"@redux/actions/adminActions\";\nimport { Reducer } from \"redux\";\n\ninterface AdminReducer {\n shouldShowProductTours: boolean;\n isAbsolute: boolean;\n}\n\nconst initialState: AdminReducer = {\n shouldShowProductTours: false,\n isAbsolute: false,\n};\n\nconst adminReducer: Reducer = (state = initialState, action) => {\n switch (action.type) {\n case SET_SHOULD_SHOW_PRODUCT_TOURS:\n return {\n ...state,\n shouldShowProductTours: action.payload,\n };\n case SET_IS_ABSOLUTE:\n return {\n ...state,\n isAbsolute: action.payload,\n };\n default:\n return state;\n }\n};\n\nexport default adminReducer;\n","import { CompanyMember } from \"@tsTypes/index\";\nimport { ShowSubscription } from \"@tsTypes/subscriptions/show\";\nimport { Reducer } from \"redux\";\nimport {\n LOADING_MESSAGES,\n LOAD_COMPANY_MEMBERS,\n LOAD_PROPOSALS,\n LOAD_SUBSCRIPTION,\n LOAD_USER_FOLLOW,\n SET_COMPANY_MEMBERS,\n SET_MESSAGES,\n SET_PROPOSALS,\n SET_PROPOSAL_AS_SEEN,\n SET_PROPOSAL_DASHBOARD_RFP,\n SET_PROPOSAL_MATERIALS,\n SET_SUBSCRIPTION,\n SET_USER_FOLLOW,\n SET_VIEW_AS_COMPANY_SUPER_ADMIN,\n} from \"../actions/companyActions\";\n\ninterface CompanyState {\n isLoadingSubscription: boolean;\n subscription: ShowSubscription | null;\n loadingProposals: boolean;\n proposals: any[];\n proposalDashboardRequest: any;\n userFollow: boolean;\n loadingUserFollow: boolean;\n researchAreaHeadline: string;\n researchAreaImageUrl: string;\n loadingCompanyMembers: boolean;\n companyMembers: CompanyMember[];\n loadingMessages: boolean;\n messages: any[];\n viewAsCompanySuperAdmin: boolean;\n}\n\nconst initialState: CompanyState = {\n isLoadingSubscription: false,\n subscription: null,\n loadingProposals: false,\n proposals: [],\n proposalDashboardRequest: {},\n userFollow: false,\n loadingUserFollow: false,\n researchAreaHeadline: \"\",\n researchAreaImageUrl: \"\",\n loadingCompanyMembers: false,\n companyMembers: [],\n loadingMessages: false,\n messages: [],\n viewAsCompanySuperAdmin: false,\n};\n\nconst companyReducer: Reducer = (state = initialState, action) => {\n switch (action.type) {\n case LOAD_SUBSCRIPTION:\n return {\n ...state,\n isLoadingSubscription: true,\n };\n case SET_SUBSCRIPTION:\n return {\n ...state,\n subscription: action.payload,\n isLoadingSubscription: false,\n };\n case LOAD_USER_FOLLOW:\n return {\n ...state,\n loadingUserFollow: true,\n };\n case SET_USER_FOLLOW:\n return {\n ...state,\n userFollow: action.payload,\n loadingUserFollow: false,\n };\n case LOAD_PROPOSALS:\n return {\n ...state,\n loadingProposals: true,\n };\n case SET_PROPOSALS:\n return {\n ...state,\n proposals: action.payload.map((p) => {\n p.loadingMaterials = true;\n return p;\n }),\n loadingProposals: false,\n };\n case SET_PROPOSAL_DASHBOARD_RFP:\n return {\n ...state,\n proposalDashboardRequest: action.payload,\n };\n case LOAD_COMPANY_MEMBERS:\n return {\n ...state,\n loadingCompanyMembers: true,\n };\n case SET_COMPANY_MEMBERS:\n return {\n ...state,\n companyMembers: action.payload,\n loadingCompanyMembers: false,\n };\n case LOADING_MESSAGES:\n return {\n ...state,\n loadingMessages: true,\n };\n case SET_MESSAGES:\n return {\n ...state,\n loadingMessages: false,\n messages: action.payload,\n };\n case SET_VIEW_AS_COMPANY_SUPER_ADMIN:\n return {\n ...state,\n viewAsCompanySuperAdmin: action.payload,\n };\n case SET_PROPOSAL_AS_SEEN:\n return {\n ...state,\n proposals: state.proposals.map((p) => {\n if (p.id == action.payload.proposalId) {\n p.seen = true;\n\n const seen_by = p?.seen_by || [];\n\n const fullName =\n action.payload.currentUser?.first_name + \" \" + action.payload.currentUser?.last_name;\n\n if (seen_by.filter((name) => name.join(\" \") === fullName).length === 0) {\n p?.seen_by.push([\n action.payload.currentUser?.first_name,\n action.payload.currentUser?.last_name,\n ]);\n }\n\n return p;\n }\n return p;\n }),\n };\n case SET_PROPOSAL_MATERIALS:\n return {\n ...state,\n proposals: state.proposals.map((p) => {\n if (p.slug === action.payload.slug) {\n Object.assign(p, {\n ...action.payload.materials,\n loadingMaterials: false,\n });\n return p;\n }\n return p;\n }),\n };\n default:\n return state;\n }\n};\n\nexport default companyReducer;\n","import {\n ADD_FILTER,\n FINISH_FOLLOW_UNFOLLOW_RFP_PROGRAM,\n LOADING_CURRENT_COMPANY,\n LOAD_CURRENT_RFP,\n LOAD_DELETE_COMPANY_INTEREST_PARTNER,\n REMOVE_FILTER,\n SEARCH_TERM,\n SET_COMPANIES,\n SET_COMPANY_INFO,\n SET_COMPANY_INTEREST,\n SET_COMPANY_LOGO,\n SET_COMPANY_VIDEO,\n SET_CURRENT_COMPANY,\n SET_FOLLOWED_REQUESTS_INFO,\n SET_FOUNDATIONS,\n SET_GOVERNMENT_ORGANIZATIONS,\n SET_INVITED_USERS,\n SET_LAST_VIEWED_RFP_IDENTIFIER,\n SET_LOAD_COMPANY_INFO,\n SET_LOAD_COMPANY_INTEREST,\n SET_LOAD_COMPANY_PARTNER,\n SET_LOAD_INVITED_USERS,\n SET_UNIVERSITY_TEAM_MEMBERS,\n SHOW_ERROR_BOUNDARY,\n START_FOLLOW_UNFOLLOW_RFP_PROGRAM,\n UPDATE_CURRENT_RFP,\n UPDATE_RESULT_LIST,\n} from \"../actions/defaultActions\";\n\nconst initialState = {\n showErrorBoundary: false,\n filters: {},\n searchTerm: \"\",\n isUpdatingToggleRFP: {},\n isUpdatingFollowedCompanies: {},\n isUpdatingResearchFollows: false,\n followedRequestsInfo: [],\n followedCompanies: {},\n resultList: [],\n companies: [],\n foundations: [],\n government_organizations: [],\n followedRfpPrograms: {},\n currentCompany: {},\n currentRFP: {},\n loadingCurrentCompany: false,\n loadingCurrentRFP: false,\n loadingInvitedUsers: false,\n invitedUsers: [],\n universityTeamMembers: {},\n lastViewedRfpIdentifier: \"\",\n};\n\nconst defaultReducer = (state = initialState, action) => {\n switch (action.type) {\n case SHOW_ERROR_BOUNDARY:\n return {\n ...state,\n showErrorBoundary: action.payload,\n };\n case ADD_FILTER:\n const newFilters = state.filters[action.payload.filterType] || [];\n newFilters.push(action.payload.filterValue);\n return {\n ...state,\n filters: {\n ...state.filters,\n [action.payload.filterType]: Array.from(new Set(newFilters)),\n },\n };\n case REMOVE_FILTER:\n return {\n ...state,\n filters: {\n ...state.filters,\n [action.payload.filterType]: state.filters[action.payload.filterType].filter(\n (v) => v !== action.payload.filterValue\n ),\n },\n };\n case LOADING_CURRENT_COMPANY:\n return {\n ...state,\n loadingCurrentCompany: action.payload,\n };\n case SEARCH_TERM:\n return {\n ...state,\n searchTerm: action.payload,\n };\n case SET_FOLLOWED_REQUESTS_INFO:\n return {\n ...state,\n followedRequestsInfo: action.payload,\n };\n case START_FOLLOW_UNFOLLOW_RFP_PROGRAM:\n return {\n ...state,\n isUpdatingResearchFollows: true,\n };\n case FINISH_FOLLOW_UNFOLLOW_RFP_PROGRAM:\n return {\n ...state,\n isUpdatingResearchFollows: false,\n followedRfpPrograms: {\n ...state.followedRfpPrograms,\n [action.payload.rfpProgram]: action.payload.following,\n },\n };\n case UPDATE_RESULT_LIST:\n return {\n ...state,\n resultList: action.payload,\n };\n case UPDATE_CURRENT_RFP:\n return {\n ...state,\n currentRFP: action.payload,\n loadingCurrentRFP: false,\n };\n case LOAD_CURRENT_RFP:\n return {\n ...state,\n loadingCurrentRFP: true,\n };\n case SET_CURRENT_COMPANY:\n return {\n ...state,\n currentCompany: action.payload,\n };\n case SET_COMPANIES:\n return {\n ...state,\n companies: action.payload,\n };\n case SET_FOUNDATIONS:\n return {\n ...state,\n foundations: action.payload,\n };\n case SET_GOVERNMENT_ORGANIZATIONS:\n return {\n ...state,\n government_organizations: action.payload,\n };\n case SET_LOAD_COMPANY_PARTNER:\n return {\n ...state,\n loadingCompanyPartner: action.payload,\n };\n case SET_LOAD_COMPANY_INTEREST:\n return {\n ...state,\n loadingCompanyInterest: action.payload,\n };\n case SET_COMPANY_INTEREST:\n return {\n ...state,\n currentCompany: {\n ...state.currentCompany,\n company_research_interests: action.payload,\n },\n loadingCompanyInterest: false,\n };\n case SET_LOAD_COMPANY_INFO:\n return {\n ...state,\n loadingCompanyInfo: action.payload,\n };\n case SET_COMPANY_INFO:\n return {\n ...state,\n currentCompany: {\n ...state.currentCompany,\n location: action.payload.location,\n employee_count: action.payload.employee_count,\n rd_spend_amount: action.payload.rd_spend_amount,\n company_type: action.payload.company_type,\n description: action.payload.description,\n },\n loadingCompanyInfo: false,\n };\n case LOAD_DELETE_COMPANY_INTEREST_PARTNER:\n return {\n ...state,\n loadingDeleteCompanyInterestPartner: action.payload,\n };\n case SET_INVITED_USERS:\n return {\n ...state,\n invitedUsers: action.payload.invited_users,\n loadingInvitedUsers: false,\n };\n case SET_LOAD_INVITED_USERS:\n return {\n ...state,\n loadingInvitedUsers: action.payload,\n };\n case SET_UNIVERSITY_TEAM_MEMBERS:\n return {\n ...state,\n universityTeamMembers: action.payload,\n };\n case SET_COMPANY_LOGO:\n return {\n ...state,\n currentCompany: {\n ...state.currentCompany,\n logo: {\n url: action.payload,\n },\n },\n };\n case SET_COMPANY_VIDEO:\n return {\n ...state,\n currentCompany: {\n ...state.currentCompany,\n video: {\n url: action.payload,\n },\n },\n };\n case SET_LAST_VIEWED_RFP_IDENTIFIER:\n return {\n ...state,\n lastViewedRfpIdentifier: action.payload,\n };\n default:\n return state;\n }\n};\nexport default defaultReducer;\n","import _ from \"lodash\";\nimport {\n FINISH_DELETE_PROPOSAL,\n FINISH_FOLLOW_UNFOLLOW_COMPANY,\n LOADING_RESEARCH_INTEREST_FOLLOWS,\n LOAD_CURRENT_USER,\n LOAD_FUNDINGS,\n LOAD_PATENTS,\n LOAD_PUBLICATIONS,\n SET_CURRENT_USER,\n SET_FUNDINGS,\n SET_PATENTS,\n SET_PROPOSAL_EVAL,\n SET_PUBLICATIONS,\n SET_UNREAD_COUNT,\n START_DELETE_PROPOSAL,\n TOGGLE_LOGIN_MODAL,\n UPDATE_PROFILE_IMAGE,\n UPDATE_RESEARCH_INTEREST_FOLLOWS,\n} from \"../actions/profileActions\";\n\nconst initialState = {\n currentUser: {\n profile_info: {},\n },\n loadingCurrentUser: false,\n loadingPatents: false,\n loadingPublications: false,\n loadingFundings: false,\n loginModalOpen: false,\n loginModalLanding: \"signup\", // or \"login\"\n previousAction: \"\",\n currentPatentId: null,\n currentPublicationId: null,\n currentFundingId: null,\n patents: [],\n publications: [],\n fundings: [],\n loadingResearchInterestFollows: false,\n unreadCount: 0,\n proposalEval: {},\n};\n\nconst profileReducer = (state = initialState, action) => {\n let newObj;\n switch (action.type) {\n case SET_CURRENT_USER:\n return {\n ...state,\n currentUser: action.payload,\n loadingCurrentUser: false,\n };\n case LOAD_CURRENT_USER:\n return {\n ...state,\n loadingCurrentUser: true,\n };\n case SET_PUBLICATIONS:\n return {\n ...state,\n publications: action.payload,\n loadingPublications: false,\n };\n case LOAD_PUBLICATIONS:\n return {\n ...state,\n loadingPublications: true,\n };\n case SET_PATENTS:\n return {\n ...state,\n patents: action.payload,\n loadingPatents: false,\n };\n case LOAD_PATENTS:\n return {\n ...state,\n loadingPatents: true,\n };\n case SET_FUNDINGS:\n return {\n ...state,\n fundings: action.payload,\n loadingFundings: false,\n };\n case LOAD_FUNDINGS:\n return {\n ...state,\n loadingFundings: true,\n };\n case TOGGLE_LOGIN_MODAL:\n return {\n ...state,\n loginModalOpen: action.payload.open,\n previousAction: action.payload.previousAction,\n prePopulatedSignupEmail: action.payload.prePopulatedSignupEmail,\n loginModalLanding: action.payload.landing ?? \"signup\",\n };\n case START_DELETE_PROPOSAL:\n return {\n ...state,\n deletingProposal: true,\n };\n case FINISH_DELETE_PROPOSAL:\n newObj = _.merge({}, state);\n if (action.payload && action.payload.proposalId) {\n newObj.currentUser.proposals = _.filter(\n newObj.currentUser.proposals,\n (p) => p.id !== action.payload.proposalId\n );\n }\n return {\n ...newObj,\n deletingProposal: false,\n };\n case FINISH_FOLLOW_UNFOLLOW_COMPANY:\n return {\n ...state,\n currentUser: {\n ...state.currentUser,\n profile_info: {\n ...state.currentUser.profile_info,\n followed_companies_info: action.payload.isFollowing\n ? [...state.currentUser.profile_info.followed_companies_info, action.payload.company]\n : state.currentUser.profile_info.followed_companies_info.filter(\n (company) => company.id !== action.payload.company.id\n ),\n },\n },\n };\n case LOADING_RESEARCH_INTEREST_FOLLOWS:\n return {\n ...state,\n loadingResearchInterestFollows: action.payload,\n };\n case UPDATE_RESEARCH_INTEREST_FOLLOWS:\n return {\n ...state,\n currentUser: {\n ...state.currentUser,\n profile_info: {\n ...state.currentUser.profile_info,\n followed_research_interests: action.payload,\n },\n },\n loadingResearchInterestFollows: false,\n };\n case SET_UNREAD_COUNT:\n return {\n ...state,\n unreadCount: action.payload,\n };\n case SET_PROPOSAL_EVAL:\n return {\n ...state,\n proposalEval: action.payload,\n };\n case UPDATE_PROFILE_IMAGE:\n return {\n ...state,\n currentUser: {\n ...state.currentUser,\n image: action.payload,\n },\n };\n default:\n return state;\n }\n};\nexport default profileReducer;\n","import { UPDATE_WINDOW_DIMENSION } from \"../actions/windowDimensionsActions\";\n\nconst initialState = {\n width: window.innerWidth,\n height: window.innerHeight,\n scrollPercent: 0,\n};\n\nexport const windowDimensionReducer = (state = initialState, action) => {\n switch (action.type) {\n case UPDATE_WINDOW_DIMENSION:\n return {\n ...state,\n ...action.payload,\n };\n default:\n return state;\n }\n};\n\nexport default windowDimensionReducer;\n","import adminReducer from \"./adminReducer\";\nimport companyReducer from \"./companyReducer\";\nimport defaultReducer from \"./defaultReducer\";\nimport messengerReducer from \"./messengerReducer\";\nimport profileReducer from \"./profileReducer\";\nimport windowDimensionsReducer from \"./windowDimensionsReducer\";\n\nexport default {\n defaultReducer,\n profileReducer,\n messengerReducer,\n companyReducer,\n windowDimensionsReducer,\n adminReducer,\n};\n","import { combineReducers } from \"redux\";\nimport { PersistConfig, persistReducer } from \"redux-persist\";\nimport storage from \"redux-persist/lib/storage\";\n\nimport reducers from \"./reducers\";\n\nconst {\n defaultReducer,\n profileReducer,\n companyReducer,\n windowDimensionsReducer,\n messengerReducer,\n adminReducer,\n} = reducers;\n\nconst defaultConfig = {\n key: \"defaultReducer\",\n storage: storage,\n blacklist: [\"filters\", \"searchTerm\", \"researchFollows\"],\n};\n\nconst profilesConfig = {\n key: \"profileReducer\",\n storage: storage,\n whitelist: [\"currentUser\"],\n};\n\nconst messengerConfig: PersistConfig = {\n key: \"messengerReducer\",\n storage: storage,\n};\n\nconst rootReducer = combineReducers({\n defaultReducer: persistReducer(defaultConfig, defaultReducer),\n profiles: persistReducer(profilesConfig, profileReducer),\n messenger: persistReducer(messengerConfig, messengerReducer),\n company: companyReducer,\n window: windowDimensionsReducer,\n admin: adminReducer,\n});\n\n// Redux persist\nconst persistConfig = {\n key: \"root\",\n storage,\n blacklist: [\"defaultReducer\", \"profiles\", \"window\", \"company\"],\n};\n\nconst persistedReducer = persistReducer(persistConfig, rootReducer);\n\nexport default persistedReducer;\n","import { applyMiddleware, compose, createStore } from \"redux\";\nimport { persistStore } from \"redux-persist\";\nimport thunkMiddleware from \"redux-thunk\";\n\nimport rootReducer from \"./rootReducer\";\n\n// Redux DevTools\nconst composeEnhancers = (window as any).__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;\nconst enhancer = composeEnhancers(applyMiddleware(thunkMiddleware));\n\nexport const store = createStore(rootReducer, enhancer);\n\n(window as any).store = store;\n\nexport const persistor = persistStore(store);\n\nexport type RootState = ReturnType;\nexport type AppDispatch = typeof store.dispatch;\n","// Run this example by adding <%= javascript_pack_tag 'hello_react' %> to the head of your layout file,\n// like app/views/layouts/application.html.erb. All it does is render
Hello React
at the bottom\n// of the page.\n\nimport ReactDOM from \"react-dom\";\nimport { Provider } from \"react-redux\";\nimport { withRouter } from \"react-router\";\nimport { Route, BrowserRouter as Router } from \"react-router-dom\";\nimport { PersistGate } from \"redux-persist/integration/react\";\nimport { Container, Loader } from \"semantic-ui-react\";\n\nimport App from \"../src/App\";\nimport { persistor, store } from \"../src/redux/store\";\n\nconst LoaderContainer = () => (\n \n \n \n);\n\nconst Root = () => (\n \n } persistor={persistor}>\n window.scrollTo(0, 0)}>\n \n \n \n \n);\n\ndocument.addEventListener(\"DOMContentLoaded\", () => {\n ReactDOM.render(, document.getElementById(\"full-container\"));\n});\n","import { BlankModal, Checkbox, TextButton } from \"@components/library\";\nimport { COLORS, FONTS } from \"@constants\";\nimport { setIsAbsolute, setShouldShowProductTours } from \"@redux/actions/adminActions\";\nimport { RootState } from \"@redux/store\";\nimport { useState } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport styled from \"styled-components\";\n\nexport default function MasqueradeBar() {\n const [isOptionsOpen, setIsOptionsOpen] = useState(false);\n const [requiresRefresh, setRequiresRefresh] = useState(false);\n\n const dispatch = useDispatch();\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n const shouldShowProductTours = useSelector(\n (state: RootState) => state.admin.shouldShowProductTours\n );\n const isAbsolute = useSelector((state: RootState) => state.admin.isAbsolute);\n\n return (\n <>\n setIsOptionsOpen(false)}\n width=\"400px\"\n headerText=\"Masquerade options\"\n subHeaderText=\"Changes are applied immediately.\"\n >\n \n {\n dispatch(setIsAbsolute(e.target.checked));\n }}\n />\n {\n dispatch(setShouldShowProductTours(e.target.checked));\n setRequiresRefresh(true);\n }}\n />\n {requiresRefresh && (\n window.location.reload()}\n />\n )}\n \n \n \n Masquerading as {currentUser.first_name} {currentUser.last_name} (ID: {currentUser.id})\n
|
\n \n \n \n
|
\n setIsOptionsOpen(true)}\n />\n \n \n );\n}\n\nconst Container = styled.div`\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 20px;\n\n width: 100%;\n z-index: 100000;\n text-align: center;\n\n background: ${({ background }) => background};\n color: white;\n\n position: ${({ position }) => position};\n top: 0;\n\n ${FONTS.SEMIBOLD_3};\n`;\n\nconst ModalContent = styled.div`\n padding: 20px;\n display: flex;\n flex-direction: column;\n gap: 20px;\n`;\n","import {\n Icon,\n IconButton,\n MoreActionsDropdown,\n MultiUserPreview,\n Thumbnail,\n UserPreview,\n} from \"@components/library\";\nimport type { ExtendedDropdownOption } from \"@components/library/Dropdowns/DropdownOption\";\nimport { COLORS, FONTS, STYLES } from \"@constants\";\nimport {\n clearMessengerState,\n setHasUnreadMessage,\n setIsMessengerExpanded,\n setIsMessengerMinimized,\n setIsMessengerOpen,\n} from \"@redux/actions/messengerActions\";\nimport { InboxMessageThread, MessageRecipient } from \"@tsTypes/index\";\nimport { Dispatch, SetStateAction } from \"react\";\nimport { batch, useDispatch } from \"react-redux\";\nimport { useHistory } from \"react-router-dom\";\nimport styled, { css } from \"styled-components\";\n\ninterface Props {\n recipient: MessageRecipient;\n messengerThread?: InboxMessageThread;\n proposalTitle?: string | null;\n isMessengerMinimized: boolean;\n isMessengerExpanded: boolean;\n hasUnreadMessage: boolean;\n setIsParticipantsModalOpen: Dispatch>;\n}\n\nconst MessengerHeader = ({\n recipient,\n proposalTitle,\n isMessengerMinimized,\n messengerThread,\n isMessengerExpanded,\n hasUnreadMessage,\n setIsParticipantsModalOpen,\n}: Props) => {\n const history = useHistory();\n const dispatch = useDispatch();\n\n const toggleMinimizeMessenger = () => {\n // if user opens messenger mark as read\n if (isMessengerMinimized) dispatch(setHasUnreadMessage(false));\n // reduce size of messenger window if minimized\n if (isMessengerExpanded) dispatch(setIsMessengerExpanded(false));\n dispatch(setIsMessengerMinimized(!isMessengerMinimized));\n };\n\n const handleCloseMessenger = (e: Event) => {\n e.stopPropagation();\n batch(() => {\n dispatch(setIsMessengerOpen(false));\n dispatch(clearMessengerState());\n });\n };\n\n const noThreadMoreActionsOptions: ExtendedDropdownOption[] = [\n {\n // expand if reduced and reduce if expanded\n value: \"EXPAND_OR_REDUCE\",\n label: isMessengerExpanded ? \"Reduce\" : \"Expand\",\n onSelect: () => dispatch(setIsMessengerExpanded(!isMessengerExpanded)),\n iconName: isMessengerExpanded ? \"Reduce\" : \"Expand\",\n },\n {\n value: \"VIEW_PROFILE\",\n label: `Visit ${recipient.name}'s profile`,\n onSelect: () => history.push(`/profile/${recipient.profile_id}`),\n iconName: \"Profile\",\n },\n ];\n const moreActionsOptions: ExtendedDropdownOption[] = [\n ...noThreadMoreActionsOptions,\n {\n value: \"OPEN_IN_INBOX\",\n label: \"Open in Inbox\",\n onSelect: () => history.push(`/inbox?thread_id=${messengerThread?.id}`),\n iconName: \"Open in a new tab\",\n },\n {\n value: \"WHO_CAN_SEE_THIS_CONVERSATION\",\n label: `Who can see this conversation`,\n onSelect: () => setIsParticipantsModalOpen(true),\n iconName: \"Employees\",\n },\n ];\n\n let participants;\n if (!messengerThread) {\n participants = [recipient];\n } else if (\"proposal\" in messengerThread) {\n participants = [\n messengerThread.scientist_user,\n ...((\"company_members\" in messengerThread && messengerThread.company_members) || []),\n ];\n } else {\n participants = messengerThread.recipients;\n }\n\n const IS_SINGLE_PARTICIPANT = participants.length <= 2;\n\n const userPreview = IS_SINGLE_PARTICIPANT ? (\n \n ) : (\n \n );\n\n return (\n \n {isMessengerMinimized ? (\n \n \n {IS_SINGLE_PARTICIPANT && (\n {recipient.name}\n )}\n {hasUnreadMessage && }\n \n ) : (\n
\n {userPreview}\n {proposalTitle && (\n \n \n {proposalTitle}\n \n )}\n
\n )}\n \n {!isMessengerMinimized && (\n <>\n \n \n \n \n \n )}\n \n \n \n );\n};\n\nexport default MessengerHeader;\n\nconst HeaderContainer = styled.div`\n width: 100%;\n display: flex;\n justify-content: space-between;\n position: relative;\n padding: ${({ isMessengerMinimized }) => (isMessengerMinimized ? \"8px\" : \"12px 8px 12px 12px\")};\n border: 0px solid ${COLORS.NEUTRAL_200};\n box-shadow: 0px 4px 3px -2px rgba(0, 115, 200, 0.1);\n border-radius: 12px 12px 0px 0px;\n ${({ isMessengerMinimized }) =>\n isMessengerMinimized &&\n css`\n &:hover {\n background: ${COLORS.NEUTRAL_50};\n cursor: pointer;\n }\n `}\n`;\n\nconst IconContainer = styled.div`\n display: flex;\n height: 24px;\n`;\n\nconst FlexContainer = styled.div`\n display: flex;\n align-items: center;\n`;\n\nconst Name = styled.div`\n width: max-content;\n max-width: ${({ hasUnreadMessage }) => (hasUnreadMessage ? \"93px\" : \"115px\")};\n margin-left: 8px;\n color: ${COLORS.BLACK};\n ${FONTS.TAG_SEMIBOLD_1};\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n\nconst UnreadDot = styled.div`\n width: 8px;\n height: 8px;\n border-radius: 50%;\n background-color: ${COLORS.RED};\n margin-left: 8px;\n`;\nconst ProposalTitleContainer = styled.div`\n display: flex;\n margin-left: ${({ isMulti }) => (isMulti ? \"60\" : \"44\")}px;\n margin-top: 8px;\n`;\nconst ProposalTitle = styled.div`\n color: ${COLORS.NEUTRAL_500};\n ${FONTS.MEDIUM_3};\n ${STYLES.ONE_LINE}\n`;\n","import { BlankModal } from \"@components/library\";\nimport styled from \"styled-components\";\nimport Participants from \"./Conversation/Participants\";\n\nconst ParticipantsInfoModal = ({ messengerThread, isOpen, closeModal }) => {\n return (\n \n \n \n \n \n );\n};\n\nexport default ParticipantsInfoModal;\n\nconst Container = styled.div`\n padding: 20px;\n min-height: 450px;\n display: flex;\n flex-direction: column;\n`;\n","import Conversation from \"@components/Messenger/Conversation\";\nimport { COLORS, STYLES } from \"@constants\";\nimport {\n fetchCurrentThreadByParticipants,\n fetchCurrentThreadByProposal,\n} from \"@redux/actions/messengerActions\";\nimport { RootState } from \"@redux/store\";\nimport { useEffect, useState } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { Action } from \"redux\";\nimport { ThunkDispatch } from \"redux-thunk\";\nimport { Loader } from \"semantic-ui-react\";\nimport styled from \"styled-components\";\nimport MessengerHeader from \"./MessengerHeader\";\nimport ParticipantsInfoModal from \"./ParticipantsInfoModal\";\n\nconst Messenger = () => {\n const [isParticipantsModalOpen, setIsParticipantsModalOpen] = useState(false);\n\n const dispatch = useDispatch>();\n\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n const messengerData = useSelector((state: RootState) => state.messenger.messengerData);\n const isMessengerOpen = useSelector((state: RootState) => state.messenger.isMessengerOpen);\n const isMessengerThreadLoading = useSelector(\n (state: RootState) => state.messenger.isMessengerThreadLoading\n );\n const isMessengerMinimized = useSelector(\n (state: RootState) => state.messenger.isMessengerMinimized\n );\n const isMessengerExpanded = useSelector(\n (state: RootState) => state.messenger.isMessengerExpanded\n );\n const hasUnreadMessage = useSelector((state: RootState) => state.messenger.hasUnreadMessage);\n const messengerThread = useSelector((state: RootState) => state.messenger.messengerThread);\n const messengerOffsetRight = useSelector(\n (state: RootState) => state.messenger.messengerOffsetRight\n );\n\n useEffect(() => {\n (async () => {\n if (!messengerData.recipient) return;\n\n const userId: number = messengerData.recipient.id;\n const { proposalyId, proposalyType } = messengerData;\n\n if (proposalyId && proposalyType) {\n await dispatch(fetchCurrentThreadByProposal(userId, proposalyType, proposalyId));\n } else {\n await dispatch(fetchCurrentThreadByParticipants(currentUser.id, userId));\n }\n })();\n }, [messengerData]);\n\n if (!isMessengerOpen) return null;\n\n if (isMessengerThreadLoading && isMessengerOpen) {\n return (\n \n \n \n );\n }\n\n return (\n <>\n setIsParticipantsModalOpen(false)}\n />\n \n \n \n \n \n \n \n );\n};\n\nexport default Messenger;\n\nconst MessengerContainer = styled.div`\n display: flex;\n flex-direction: ${({ isMessengerMinimized }) => (isMessengerMinimized ? \"row\" : \"column\")};\n background: ${COLORS.WHITE};\n border: 1px solid ${COLORS.NEUTRAL_200};\n box-shadow: ${STYLES.SHADOW_C};\n border-radius: 12px 12px 0px 0px;\n width: ${({ isMessengerMinimized, isMessengerExpanded }) => {\n if (isMessengerMinimized) {\n return \"216px\";\n }\n if (isMessengerExpanded) {\n return \"600px\";\n }\n return \"426px\";\n }};\n height: ${({ isMessengerMinimized, isMessengerExpanded }) => {\n if (isMessengerMinimized) {\n return \"52px\";\n }\n if (isMessengerExpanded) {\n return \"725px\";\n }\n return \"570px\";\n }};\n position: fixed;\n max-height: calc(100% - 115px);\n right: calc(0% + ${({ messengerOffsetRight }) => messengerOffsetRight}px);\n bottom: 0px;\n z-index: 500;\n margin-left: 16px;\n transition-timing-function: cubic-bezier(0, 0, 0.2, 1);\n transition-duration: 167ms;\n transition-property: width, height;\n transition: right 0.25s ease-out;\n`;\nconst ConversationContainer = styled.div`\n overflow: hidden;\n position: relative;\n flex: 1 0 0px;\n display: flex;\n height: 266px;\n`;\n","import { Link } from \"react-router-dom\";\nimport styled from \"styled-components\";\n\nimport { Button } from \"@components/library\";\nimport { COLORS, FONTS } from \"@constants\";\n\nimport macbook from \"src/views/AboutUs/images/macbook.png\";\n\ninterface Props {\n breakpoint: string;\n children: any;\n}\n\nconst MobileRestricted = ({ breakpoint, children }: Props) => {\n return (\n \n {children}\n \n \"Marketplace\"\n \n Access Halo on a larger screen\n
\n to enjoy the full experience\n
\n \n \n Go home\n \n \n
\n
\n );\n};\n\nexport default MobileRestricted;\n\nconst Children = styled.div``;\n\nconst Restriction = styled.div``;\n\nconst Controller = styled.div`\n ${Children} {\n display: unset;\n }\n ${Restriction} {\n display: none;\n }\n @media screen and (max-width: ${({ breakpoint }) => breakpoint}) {\n ${Children} {\n display: none;\n }\n ${Restriction} {\n display: flex;\n flex-direction: column;\n align-items: center;\n margin-top: 15vh;\n gap: 40px;\n }\n }\n`;\n\nconst Image = styled.img`\n width: 333px;\n`;\n\nconst Text = styled.div`\n ${FONTS.REGULAR_1}\n color: ${COLORS.NEUTRAL_500};\n text-align: center;\n`;\n","import MobileRestricted from \"./MobileRestricted\";\n\nexport default MobileRestricted;\n","import { RootState } from \"@redux/store\";\nimport { setPrevUrlCookie } from \"@utils/authUtils\";\nimport { useSelector } from \"react-redux\";\nimport { Route } from \"react-router-dom\";\n\nconst PrivateRoute = ({ ...props }) => {\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n\n if (!currentUser.id) {\n setPrevUrlCookie(window.location.href);\n window.location.href = \"/login\";\n }\n\n return currentUser.id ? : null;\n};\n\nexport default PrivateRoute;\n","import { RootState } from \"@redux/store\";\nimport { setPrevUrlCookie } from \"@utils/authUtils\";\nimport { useSelector } from \"react-redux\";\nimport { Redirect } from \"react-router-dom\";\nimport { USER_ROLES } from \"src/constants/users\";\nimport PrivateRoute from \"./PrivateRoute\";\n\nconst PrivateSponsorRoute = ({ ...props }) => {\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n\n if (!currentUser.id) {\n setPrevUrlCookie(window.location.href);\n window.location.href = \"/login\";\n }\n\n if (currentUser.role !== USER_ROLES.sponsor) {\n console.warn(\"User %o attempted to access sponsor-only route.\", currentUser);\n return ;\n }\n\n return ;\n};\n\nexport default PrivateSponsorRoute;\n","import { Button } from \"@components/library\";\nimport BlankModal, { BlankModalProps } from \"@components/library/ModalBases/BlankModal\";\nimport { COLORS, FONTS } from \"@constants\";\nimport { RootState } from \"@redux/store\";\nimport { UserRole } from \"@tsTypes/users\";\nimport { t } from \"@utils/i18n\";\nimport { Dispatch, SetStateAction, useEffect } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { Link, useHistory, useLocation } from \"react-router-dom\";\nimport styled from \"styled-components\";\n\ninterface Props extends BlankModalProps {\n setIsSubscriptionEndedModalOpen: Dispatch>;\n bannerMessage: string;\n}\n\nconst BLOCKED_PATHS = [\"/proposal_library\"];\nconst EXTENDED_ACCESS_PATHS = [\"/review_system\", \"/proposal\"];\n\nconst SubscriptionEndedModal = ({\n isOpen,\n onClose,\n setIsSubscriptionEndedModalOpen,\n bannerMessage,\n}: Props) => {\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n const subscription = useSelector((state: RootState) => state.company.subscription);\n\n const { pathname } = useLocation();\n const history = useHistory();\n\n const isBlockedPage =\n BLOCKED_PATHS.includes(pathname) ||\n (!subscription?.has_extension &&\n EXTENDED_ACCESS_PATHS.some((path) => pathname.startsWith(path)));\n\n useEffect(() => {\n setIsSubscriptionEndedModalOpen(isBlockedPage);\n }, [isBlockedPage]);\n\n return (\n \n \n {bannerMessage}\n {t([\n \"components.subscription_warning.modal\",\n currentUser.role === UserRole.SPONSOR ? \"sponsor\" : \"expert\",\n ])}\n \n {currentUser.profile_info.is_admin && (\n \n \n \n )}\n {isBlockedPage && (\n history.push(\"/reviewer_dashboard\")}\n >\n Go to dashboard\n \n )}\n \n \n \n );\n};\n\nexport default SubscriptionEndedModal;\n\nconst Container = styled.div`\n display: flex;\n flex-direction: column;\n color: ${COLORS.BLACK};\n padding: 60px 60px 48px;\n ${FONTS.REGULAR_1};\n`;\nconst Title = styled.div`\n ${FONTS.HEADING_4_SEMIBOLD};\n margin-bottom: 20px;\n`;\nconst Buttons = styled.div`\n display: flex;\n gap: 32px;\n margin: 32px auto 0;\n`;\n","import { Button, Icon } from \"@components/library\";\nimport { COLORS, FONTS, WINDOW_DIMENSIONS } from \"@constants\";\nimport { RootState } from \"@redux/store\";\nimport { daysUntilDate } from \"@utils/dateUtils\";\nimport { t } from \"@utils/i18n\";\nimport dayjs from \"dayjs\";\nimport { useEffect, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport styled from \"styled-components\";\nimport SubscriptionEndedModal from \"./SubscriptionEndedModal\";\n\nconst { TABLET_MEDIA_QUERY } = WINDOW_DIMENSIONS;\n\nconst SUBSCRIPTION_ENDING_WARNING_DAYS = 60;\n\nconst SubscriptionWarning = () => {\n const [isSubscriptionEndedModalOpen, setIsSubscriptionEndedModalOpen] = useState(false);\n\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n const subscription = useSelector((state: RootState) => state.company.subscription);\n\n const daysUntilSubscriptionEnds = daysUntilDate(subscription?.end_at);\n\n useEffect(() => {\n setIsSubscriptionEndedModalOpen(daysUntilSubscriptionEnds < 0);\n }, [daysUntilSubscriptionEnds]);\n\n if (\n !subscription?.end_at ||\n daysUntilSubscriptionEnds > SUBSCRIPTION_ENDING_WARNING_DAYS ||\n subscription?.has_upcoming_subscription\n )\n return null;\n\n const isAdmin = currentUser.profile_info.is_admin;\n const bannerMessage = t(\n [\n \"components.subscription_warning\",\n daysUntilSubscriptionEnds < 0 ? \"ended\" : \"ending_soon\",\n isAdmin ? \"admin\" : \"non_admin\",\n ],\n {\n subscriptionEndDate: dayjs(subscription?.end_at).format(\"MMMM D, YYYY\"),\n }\n );\n\n return (\n <>\n {daysUntilSubscriptionEnds < 0 && (\n setIsSubscriptionEndedModalOpen(false)}\n setIsSubscriptionEndedModalOpen={setIsSubscriptionEndedModalOpen}\n bannerMessage={bannerMessage}\n />\n )}\n \n \n {bannerMessage}\n {isAdmin && (\n \n \n \n )}\n \n \n );\n};\n\nconst SubscriptionEndBanner = styled.div`\n display: flex;\n align-items: center;\n height: 60px;\n width: 100%;\n margin: 0px;\n padding: 0 ${WINDOW_DIMENSIONS.PAGE_SIDE_PADDING}px;\n background-color: ${COLORS.RED};\n color: ${COLORS.WHITE};\n ${FONTS.REGULAR_2};\n\n & > a {\n margin-left: auto;\n }\n\n ${TABLET_MEDIA_QUERY} {\n width: 100%;\n height: 80px;\n left: 0;\n padding: 0 18px;\n }\n`;\n\nexport default SubscriptionWarning;\n","import { useState } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport styled from \"styled-components\";\n\nimport toast from \"@components/Toast\";\nimport { Button } from \"@components/library\";\nimport KeywordsDropdown from \"@components/library/Dropdowns/KeywordsDropdown/KeywordsDropdown\";\nimport BlankModal, { BlankModalProps } from \"@components/library/ModalBases/BlankModal\";\nimport { COLORS, FONTS } from \"@constants\";\nimport { setCurrentUser } from \"@redux/actions/profileActions\";\nimport { RootState } from \"@redux/store\";\nimport { skipUpdateUserKeywords, updateUserKeywords } from \"@requests/users\";\nimport { UserRole } from \"@tsTypes/users\";\n\nconst TaxonomyUpdateModal = ({ isOpen, onClose }: BlankModalProps) => {\n if (!isOpen) return null;\n\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n const dispatch = useDispatch();\n\n const [disciplines, setDisciplines] = useState(currentUser.disciplines);\n const [areasOfExpertise, setAreasOfExpertise] = useState(\n currentUser.areas_of_expertise\n );\n const [isSubmitting, setIsSubmitting] = useState(false);\n\n const onSkip = () => {\n try {\n skipUpdateUserKeywords(currentUser.id);\n } catch (err) {\n console.error(err);\n }\n onClose();\n toast.success(\n

\n You can always update your expertise in{\" \"}\n \n Account Settings\n \n .\n

\n );\n };\n\n const handleSubmit = async (e) => {\n e.preventDefault();\n setIsSubmitting(true);\n try {\n const response = await updateUserKeywords(currentUser.id, {\n disciplines,\n areasOfExpertise,\n });\n if (response.data.success) {\n dispatch(\n setCurrentUser({\n ...currentUser,\n disciplines,\n areas_of_expertise: areasOfExpertise,\n has_updated_taxonomy: true,\n })\n );\n onClose();\n }\n } catch (err) {\n console.error(err);\n }\n setIsSubmitting(false);\n };\n\n const header =\n currentUser.role === 0\n ? `${currentUser.first_name}, it's time for a keyword checkup`\n : `${currentUser.first_name}, what is your expertise?`;\n const title =\n currentUser.role === 0\n ? \"We made some changes to our taxonomy\"\n : `We want to help R&D teams collaborate, and we made some changes to our taxonomy`;\n const text =\n currentUser.role === 0\n ? \"Please take a second and update your keywords so we can better recommend opportunities that will interest you.\"\n : `Please take a second and add or update relevant keywords to your profile so R&D teams across ${\n currentUser.profile_info?.company_name ?? \"your company\"\n } can find you.`;\n\n return (\n \n
\n \n {title}\n {text}\n {currentUser.role === UserRole.SCIENTIST && (\n <>\n \n \n \n )}\n \n \n \n
\n
{currentUser.role === 1 && Skip for now}
\n \n Update\n \n
\n
\n \n );\n};\n\nexport default TaxonomyUpdateModal;\n\nconst Content = styled.div`\n padding: 20px;\n`;\n\nconst Footer = styled.div`\n padding: 16px 20px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-top: 16px;\n border-top: 1px solid ${COLORS.NEUTRAL_300};\n`;\n\nconst Title = styled.div`\n ${FONTS.SEMIBOLD_1}\n`;\n\nconst Text = styled.div`\n ${FONTS.REGULAR_1}\n`;\n\nconst Label = styled.div`\n ${FONTS.MEDIUM_2}\n margin: 40px 0 8px;\n`;\nconst SkipLink = styled.a`\n ${FONTS.REGULAR_2}\n color: ${COLORS.NEUTRAL_500};\n text-decoration: underline;\n margin-top: -0.5em;\n\n &:hover {\n color: ${COLORS.BLACK};\n cursor: pointer;\n }\n`;\n","import TaxonomyUpdateModal from \"./TaxonomyUpdateModal\";\nexport default TaxonomyUpdateModal;\n","import { useEffect, useState } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport styled from \"styled-components\";\n\nimport { COLORS, FONTS } from \"@constants\";\nimport { fetchCurrentUser } from \"@redux/actions/profileActions\";\nimport { RootState } from \"@redux/store\";\nimport { getCompany } from \"@requests/companies\";\nimport { updateUserKeywords, updateUserProfile } from \"@requests/users\";\nimport { SponsorRole } from \"@tsTypes/sponsorProfiles\";\nimport { getOptionFromValue } from \"@utils/dropdownUtils\";\nimport { USER_ROLES } from \"src/constants/users\";\n\nimport { BlankModal, Button, SingleSelectDropdown, TextButton } from \"@components/library\";\nimport { DropdownOption } from \"@components/library/Dropdowns/DropdownOption\";\nimport KeywordsDropdown from \"@components/library/Dropdowns/KeywordsDropdown/KeywordsDropdown\";\nimport { BlankModalProps } from \"@components/library/ModalBases/BlankModal\";\n\nimport haloLogo from \"@images/logos/halo_logo.svg\";\nimport { sponsorOnboarded } from \"@requests/hubspot\";\nimport { ShowCompany } from \"@tsTypes/index\";\nimport appsignal from \"@utils/appsignal\";\nimport { t } from \"@utils/i18n\";\n\nconst SPONSOR_ROLES_DROPDOWN_OPTIONS = Object.values(SponsorRole).map(\n getOptionFromValue\n) as DropdownOption[];\n\nconst SSOSponsorOnboardingModal = ({ isOpen, onClose }: BlankModalProps) => {\n const dispatch = useDispatch();\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n const isCommenter = currentUser.profile_info.commenter;\n\n const [step, setStep] = useState<1 | 2>(1);\n const [company, setCompany] = useState({} as ShowCompany);\n const [isSubmitting, setIsSubmitting] = useState(false);\n\n const [title, setTitle] = useState(currentUser.profile_info.title);\n const [role, setRole] = useState(currentUser.profile_info.role);\n const [areasOfExpertise, setAreasOfExpertise] = useState(\n currentUser.areas_of_expertise\n );\n\n const handleSubmit = async (e) => {\n e.preventDefault();\n e.stopPropagation();\n\n setIsSubmitting(true);\n\n try {\n if (step === 1) {\n await updateUserProfile(currentUser.id, USER_ROLES.sponsor, {\n ...currentUser.profile_info,\n title,\n role,\n });\n\n sponsorOnboarded(currentUser);\n\n dispatch(fetchCurrentUser());\n\n setStep(2);\n } else {\n const response = await updateUserKeywords(currentUser.id, {\n disciplines: [],\n areasOfExpertise,\n });\n\n if (response.data.success) {\n dispatch(fetchCurrentUser());\n }\n\n onClose();\n }\n } catch (err) {\n appsignal.sendError(err);\n } finally {\n setIsSubmitting(false);\n }\n };\n\n const handleSkip = (e) => {\n e.preventDefault();\n onClose();\n };\n\n useEffect(() => {\n (async () => {\n try {\n if (!currentUser?.profile_info?.company_identifier) {\n return;\n }\n\n const response = await getCompany(currentUser.profile_info.company_identifier);\n\n setCompany(response.company);\n } catch (err) {\n appsignal.sendError(err);\n }\n })();\n }, [currentUser]);\n\n if (!company?.id) return null;\n\n return (\n \n \n \n \n \n \n {(() => {\n switch (step) {\n case 1:\n return (\n <>\n \n
\n {t(\n [\n \"components.modals.sso_sponsor_onboarding_modal\",\n isCommenter ? \"commenter_header\" : \"normal_header\",\n ],\n { company_name: company.company_name }\n )}\n
\n {\n if (newOption) {\n setRole(newOption.value);\n }\n }}\n placeholder=\"Select your role\"\n isPortal={true}\n />\n
\n What’s your job title?\n {\n setTitle(e.target.value);\n }}\n autoComplete=\"off\"\n data-testid=\"scinet-signup-title-input\"\n placeholder=\"Enter your job title\"\n />\n
\n
\n \n \n \n \n );\n case 2:\n return (\n <>\n \n
\n Thanks for creating an account.\n
\n Complete your profile so other teams at {company.company_name} can find you.\n
\n
\n \n \n
\n
\n \n \n \n \n \n );\n default:\n return null;\n }\n })()}\n
\n \n );\n};\n\nconst Container = styled.form`\n ${FONTS.REGULAR_2};\n b {\n ${FONTS.BOLD_2};\n }\n`;\n\nconst Top = styled.div`\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n width: 100%;\n\n padding: 16px 32px;\n\n border-bottom: 1px solid ${COLORS.NEUTRAL_200};\n`;\n\nconst Bottom = styled.div`\n display: flex;\n flex-direction: column;\n gap: 16px;\n\n width: 100%;\n\n padding: 24px 32px;\n\n ${FONTS.REGULAR_2};\n\n border-bottom: 1px solid ${COLORS.NEUTRAL_200};\n`;\n\nconst Logo = styled.img`\n height: 32px;\n`;\n\nconst CompanyLogo = styled.img`\n box-sizing: border-box;\n\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n\n padding: 8px;\n\n width: 64px;\n height: 64px;\n\n border: 1px solid ${COLORS.NEUTRAL_250};\n border-radius: 12px;\n\n object-fit: contain;\n`;\n\nconst Header = styled.div`\n ${FONTS.HEADING_5_MEDIUM}\n\n margin: 0 0 24px;\n`;\n\nconst Title = styled.label`\n display: flex;\n flex-direction: column;\n\n width: 100%;\n margin: 0 0 10px;\n\n ${FONTS.SEMIBOLD_2};\n`;\n\nconst Input = styled.input`\n height: 36px;\n width: 100%;\n padding: 10px;\n\n border: solid 1px ${COLORS.NEUTRAL_300};\n ${({ error }) => error && `border: solid 1px ${COLORS.RED};`}\n border-radius: 6px;\n\n ${FONTS.REGULAR_2}\n`;\n\nconst ButtonContainer = styled.div`\n display: flex;\n justify-content: flex-end;\n align-items: center;\n gap: 24px;\n\n width: 100%;\n\n padding: 16px 32px;\n`;\n\nconst Label = styled.div`\n ${FONTS.MEDIUM_2}\n`;\n\nexport default SSOSponsorOnboardingModal;\n","import toast from \"@components/Toast\";\nimport api from \"@requests/request\";\nimport appsignal from \"@utils/appsignal\";\nimport { requestProposalUrlPath } from \"@utils/requestUtils\";\nimport { useEffect } from \"react\";\nimport { useHistory, useParams } from \"react-router-dom\";\n\n// Redirects from old url /submit_proposal/:request_slug to /submit/:request_type/:request_slug\nexport default function SubmitProposalRedirect() {\n const { rfp_identifier: requestSlug } = useParams();\n const history = useHistory();\n\n useEffect(() => {\n (async () => {\n try {\n const response = await api.get(`/requests/${requestSlug}`);\n history.push(requestProposalUrlPath(response.data.request));\n } catch (err) {\n console.error(err);\n toast.error(\n \"Sorry! We couldn't find the request you're looking for. Please visit the My Proposals page to see your proposals.\"\n );\n history.push(\"/404\");\n appsignal.sendError(err, (span) => {\n span.setAction(\"SubmitProposalRedirect#useEffect\");\n });\n }\n })();\n }, [requestSlug]);\n\n return null;\n}\n","import { useEffect } from \"react\";\nimport { useLocation } from \"react-router-dom\";\n\nexport default function ScrollToTop({ children }) {\n const { pathname } = useLocation();\n\n useEffect(() => {\n window.scrollTo(0, 0);\n }, [pathname]);\n\n return children;\n}\n","import { Icon } from \"@components/library\";\nimport { AdminTag, LicenseTag, SuperAdminTag } from \"@components/library/Tags/users\";\nimport { COLORS, JS_FONTS, WINDOW_DIMENSIONS } from \"@constants\";\nimport { setShowErrorBoundary } from \"@redux/actions/defaultActions\";\nimport { RootState } from \"@redux/store\";\nimport { signOut } from \"@requests/users\";\nimport { marketplacePath } from \"@routes/utils\";\nimport { SegmentEventName } from \"@tsTypes/__generated__/enums\";\nimport { UserRole } from \"@tsTypes/users\";\nimport { track } from \"@utils/appUtils\";\nimport { t } from \"@utils/i18n\";\nimport { StyleSheet, css } from \"aphrodite\";\nimport { useState } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useHistory } from \"react-router-dom\";\nimport { Button, Popup } from \"semantic-ui-react\";\nimport styled from \"styled-components\";\n\nconst NavbarDropdownMenu = () => {\n const [isMenuOpen, setIsMenuOpen] = useState(false);\n\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n const showErrorBoundary = useSelector(\n (state: RootState) => state.defaultReducer.showErrorBoundary\n );\n\n const history = useHistory();\n const dispatch = useDispatch();\n\n const navigate = (to: string) => {\n if (!showErrorBoundary) {\n history.push(to);\n } else {\n dispatch(setShowErrorBoundary(false));\n window.location.href = to;\n }\n };\n\n const navigateToLogout = async () => {\n await signOut();\n // This needs to use window.location.href instead of history.push to prevent\n // accessing the previous session via the browser cache\n window.location.href = marketplacePath();\n };\n\n const navigateToProfile = () => {\n navigate(`/profile/${currentUser.first_name}-${currentUser.last_name}-${currentUser.id}`);\n setIsMenuOpen(false);\n };\n\n const navigateToAccount = () => {\n navigate(\"/account\");\n setIsMenuOpen(false);\n };\n\n const navigateToDashboard = () => {\n navigate(\"/reviewer_dashboard\");\n setIsMenuOpen(false);\n };\n\n const navigateToPublicProfile = async () => {\n navigate(\n `/profile/${currentUser.first_name}-${currentUser.last_name}-${currentUser.id}?public=true`\n );\n setIsMenuOpen(false);\n };\n\n const navigateToCompanyProfile = () => {\n navigate(`/company/${currentUser.profile_info.company_identifier}`);\n setIsMenuOpen(false);\n };\n\n const navigateToInbox = () => {\n navigate(\"/inbox\");\n setIsMenuOpen(false);\n };\n\n const navigateToUniversityProposalLibrary = () => {\n navigate(\"/university_dashboard/proposals\");\n setIsMenuOpen(false);\n };\n\n const currentPFPic = currentUser?.image?.medium?.url;\n\n return (\n \n {!currentPFPic ? (\n \n {currentUser.first_name?.[0]?.toUpperCase()}\n {currentUser.last_name?.[0]?.toUpperCase()}\n \n ) : (\n \n )}\n
\n \n
\n
\n \n
\n \n }\n on=\"click\"\n basic\n className={`${css(styles.Navbar_accountPopup)} transition-fadein`}\n hideOnScroll\n hoverable\n position=\"bottom right\"\n open={isMenuOpen}\n onOpen={() => setIsMenuOpen(true)}\n onClose={() => setIsMenuOpen(false)}\n content={\n setIsMenuOpen(true)}\n onMouseLeave={() => setIsMenuOpen(false)}\n >\n
\n
\n {!currentPFPic ? (\n
\n {currentUser?.first_name?.[0]?.toUpperCase()}\n {currentUser?.last_name?.[0]?.toUpperCase()}\n
\n ) : (\n \n )}\n
\n
\n
\n {currentUser.first_name} {currentUser.last_name}\n {currentUser.role === UserRole.SPONSOR &&\n currentUser.profile_info?.is_super_admin && (\n \n \n \n )}\n
\n
\n {currentUser.role === UserRole.SPONSOR\n ? currentUser.profile_info.company_name\n : currentUser.profile_info.title}\n
\n {currentUser.role === UserRole.SCIENTIST && (\n \n Edit Profile\n
\n )}\n {currentUser.role === UserRole.SPONSOR && (\n \n {Boolean(currentUser.profile_info?.license) && (\n \n )}\n {currentUser.profile_info?.is_admin && }\n \n )}\n
\n \n \n {currentUser.role === UserRole.SPONSOR && !currentUser.profile_info.commenter ? (\n \n ) : null}\n {currentUser.role === UserRole.SCIENTIST && currentUser.profile_info.is_expert && (\n \n {t(\"components.navbar.links.expert_dashboard\")}\n \n )}\n {currentUser.id &&\n currentUser.role !== UserRole.UNIVERSITY_ADMIN &&\n !(currentUser.role === UserRole.SPONSOR && !currentUser.profile_info.verified) && (\n \n Inbox\n \n )}\n {currentUser.role === UserRole.SCIENTIST && (\n \n Edit Profile\n \n )}\n {currentUser.role === UserRole.SPONSOR && (\n \n )}\n {currentUser.role === UserRole.UNIVERSITY_ADMIN && (\n \n View Proposals\n \n )}\n {\n track(SegmentEventName.Click, {\n ui_component: \"Navbar Help Center\",\n });\n window.location.href = \"https://knowledge.halo.science/\";\n }}\n className={css(styles.Navbar_button)}\n >\n Help Center\n \n {currentUser.role === UserRole.SCIENTIST && (\n \n View Public Profile\n \n )}\n \n \n }\n />\n );\n};\n\nexport default NavbarDropdownMenu;\n\nconst ProfileTags = styled.div`\n display: flex;\n align-items: center;\n gap: 4px;\n margin-top: 8px;\n`;\nconst SuperAdminTagContainer = styled.span`\n display: inline-block;\n position: relative;\n left: 4px;\n top: 2px;\n width: 20px;\n pointer-events: none;\n`;\nconst { TABLET_MEDIA_QUERY } = WINDOW_DIMENSIONS;\nconst styles = StyleSheet.create({\n Navbar_menuWrap: {\n display: \"flex\",\n alignItems: \"center\",\n marginLeft: 24,\n border: \"none\",\n background: \"none\",\n outline: \"none\",\n [TABLET_MEDIA_QUERY]: {\n marginLeft: \"auto\",\n },\n },\n Navbar_menuProfilePic: {\n height: \"36px\",\n width: \"36px\",\n color: COLORS.BLACK,\n backgroundColor: COLORS.NEUTRAL_100,\n marginRight: \"5px\",\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n ...JS_FONTS.MEDIUM_1,\n cursor: \"pointer\",\n borderRadius: \"50%\",\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"center center\",\n backgroundSize: \"cover\",\n [TABLET_MEDIA_QUERY]: {\n display: \"none\",\n },\n },\n Navbar_icon: {\n cursor: \"pointer\",\n [TABLET_MEDIA_QUERY]: {\n display: \"none\",\n },\n },\n Navbar_iconMobile: {\n display: \"none\",\n [TABLET_MEDIA_QUERY]: {\n display: \"block\",\n fontSize: \"1.2em\",\n },\n },\n Navbar_accountPopup: {\n marginTop: \"15px\",\n marginBottom: \"0px\",\n paddingBottom: \"0px\",\n paddingLeft: \"0px\",\n paddingRight: \"0px\",\n border: \"none\",\n minWidth: \"300px\",\n [TABLET_MEDIA_QUERY]: {\n boxShadow: \"28px 15px 24px rgba(0, 0, 0, 0.15)\",\n width: \"100%\",\n maxWidth: \"100%\",\n left: 0,\n },\n },\n Navbar_accountPopupContainer: {\n width: \"300px\",\n padding: `10px 0px 0`,\n zIndex: 2000,\n [TABLET_MEDIA_QUERY]: {\n width: \"100%\",\n paddingTop: 0,\n paddingRight: \"32px\",\n paddingBottom: \"25px\",\n paddingLeft: \"32px\",\n },\n },\n Navbar_popupContainer: {\n display: \"flex\",\n marginBottom: \"8px\",\n [TABLET_MEDIA_QUERY]: {\n display: \"none\",\n },\n },\n Navbar_profilePicContainer: {\n width: \"35%\",\n },\n Navbar_regularProfilePic: {\n height: \"80px\",\n width: \"80px\",\n color: COLORS.BLACK,\n backgroundColor: COLORS.NEUTRAL_100,\n marginLeft: \"20px\",\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n ...JS_FONTS.HEADING_2_SEMIBOLD,\n borderRadius: \"50%\",\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"center center\",\n backgroundSize: \"cover\",\n },\n Navbar_popupProfilePic: {\n height: \"80px\",\n width: \"80px\",\n backgroundColor: COLORS.NEUTRAL_100,\n marginLeft: \"20px\",\n borderRadius: \"50%\",\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"center center\",\n backgroundSize: \"cover\",\n },\n Navbar_popupRightPanel: {\n marginLeft: \"20px\",\n width: \"65%\",\n marginTop: \"8px\",\n marginRight: \"20px\",\n },\n Navbar_popupName: {\n gap: \"6px\",\n color: COLORS.BLACK,\n ...JS_FONTS.MEDIUM_2,\n textTransform: \"capitalize\",\n },\n Navbar_popupPosition: {\n ...JS_FONTS.MEDIUM_3,\n color: COLORS.BLACK,\n },\n Navbar_profileButton: {\n cursor: \"pointer\",\n ...JS_FONTS.MEDIUM_2,\n color: COLORS.HALO_BLUE,\n },\n Navbar_inbox: {\n display: \"none\",\n [TABLET_MEDIA_QUERY]: {\n display: \"unset\",\n },\n },\n Navbar_buttonEditProfile: {\n display: \"none\",\n [TABLET_MEDIA_QUERY]: {\n display: \"block\",\n },\n },\n Navbar_button: {\n padding: \"15px 20px\",\n backgroundColor: COLORS.WHITE,\n borderBottom: `1px solid ${COLORS.NEUTRAL_200}`,\n ...JS_FONTS.MEDIUM_2,\n color: COLORS.NEUTRAL_500,\n width: \"300px\",\n borderRadius: \"0px\",\n marginRight: \"0\",\n textAlign: \"left\",\n [TABLET_MEDIA_QUERY]: {\n width: \"100%\",\n paddingLeft: 0,\n paddingRight: 0,\n color: COLORS.BLACK,\n ...JS_FONTS.REGULAR_2,\n },\n \":hover\": {\n backgroundColor: COLORS.NEUTRAL_50,\n },\n },\n Navbar_signOutButton: {\n padding: \"15px 20px\",\n ...JS_FONTS.MEDIUM_2,\n backgroundColor: COLORS.WHITE,\n color: COLORS.NEUTRAL_500,\n marginBottom: \"0px\",\n width: \"300px\",\n borderRadius: \"0px\",\n marginRight: \"0\",\n textAlign: \"left\",\n [TABLET_MEDIA_QUERY]: {\n width: \"100%\",\n paddingLeft: 0,\n paddingRight: 0,\n color: COLORS.BLACK,\n ...JS_FONTS.REGULAR_2,\n },\n \":hover\": {\n backgroundColor: COLORS.NEUTRAL_50,\n },\n },\n});\n","import { COLORS, JS_FONTS, WINDOW_DIMENSIONS } from \"@constants\";\nimport { StyleSheet } from \"aphrodite\";\n\nconst { MOBILE_MEDIA_QUERY } = WINDOW_DIMENSIONS;\n\nconst styles = StyleSheet.create({\n LoginModal_modal: {\n borderRadius: \"3px\",\n padding: \"30px 30px 14px\",\n },\n LoginModal_innerContainer: {\n backgroundColor: \"white\",\n },\n LoginModal_logoContainer: {\n marginTop: \"8px\",\n textAlign: \"center\",\n },\n LoginModal_closeicon: {\n position: \"absolute\",\n top: \"24px\",\n right: \"24px\",\n },\n LoginModal_hero: {\n marginTop: \"15px\",\n },\n LoginModal_headline: {\n color: COLORS.BLACK,\n ...JS_FONTS.HEADING_4_SEMIBOLD,\n marginBottom: \"5px\",\n textAlign: \"center\",\n },\n LoginModal_subheadline: {\n color: COLORS.BLACK,\n ...JS_FONTS.REGULAR_2,\n textAlign: \"center\",\n },\n LoginModal_subheadline_rfp: {\n color: COLORS.BLACK,\n textAlign: \"center\",\n \":nth-child(2)\": {\n ...JS_FONTS.REGULAR_1,\n marginBottom: \"12px\",\n },\n \":last-child\": {\n color: COLORS.NEUTRAL_500,\n ...JS_FONTS.REGULAR_2,\n marginBottom: \"8px\",\n },\n },\n LoginModal_innerLeftPane: {\n width: \"50%\",\n display: \"inline-block\",\n verticalAlign: \"top\",\n padding: \"20px 5px 0\",\n ...JS_FONTS.MEDIUM_2,\n [MOBILE_MEDIA_QUERY]: {\n width: \"100%\",\n margin: \"auto\",\n padding: \"15px 0 0\",\n },\n },\n LoginModal_modalText: {\n color: COLORS.BLACK,\n ...JS_FONTS.REGULAR_2,\n width: \"90%\",\n marginBottom: \"15px\",\n display: \"flex\",\n [MOBILE_MEDIA_QUERY]: {\n marginBottom: \"10px\",\n \":last-child\": {\n marginBottom: \"5px\",\n },\n },\n },\n LoginModal_lineItem: {\n marginLeft: \"5px\",\n },\n LoginModal_innerRightPane: {\n width: \"50%\",\n display: \"inline-block\",\n padding: \"5px 0 0\",\n [MOBILE_MEDIA_QUERY]: {\n width: \"100%\",\n margin: \"auto\",\n },\n },\n LoginModal_innerRightPane_rfp: {\n padding: \"5px 0 0\",\n margin: \"0 auto\",\n },\n LoginModal_formField: {\n marginTop: \"15px\",\n marginBottom: \"15px\",\n \":first-child\": {\n margin: \"0\",\n },\n },\n LoginModal_inputField: {\n width: \"100%\",\n border: `1px solid ${COLORS.NEUTRAL_200}`,\n padding: \"4px 12px\",\n borderRadius: \"4px\",\n height: \"48px\",\n ...JS_FONTS.REGULAR_3,\n },\n LoginModal_nameField: {\n margin: \"0\",\n width: \"48%\",\n display: \"inline-block\",\n \":first-child\": {\n margin: \"0 4% 0 0\",\n },\n },\n LoginModal_placeholderText: {\n marginBottom: \"10px\",\n ...JS_FONTS.REGULAR_3,\n visibility: \"hidden\",\n textAlign: \"center\",\n },\n LoginModal_errorMessage: {\n marginBottom: \"10px\",\n color: \"orange\",\n ...JS_FONTS.REGULAR_3,\n textAlign: \"center\",\n },\n LoginModal_errorField: {\n border: \"solid 1px orange\",\n },\n LoginModal_alreadyHaveAccount: {\n textAlign: \"center\",\n display: \"inline-block\",\n ...JS_FONTS.MEDIUM_2,\n width: \"100%\",\n color: COLORS.BLACK,\n },\n LoginModal_signInLink: {\n marginLeft: \"7px\",\n ...JS_FONTS.REGULAR_2,\n display: \"inline-block\",\n color: COLORS.BLACK,\n cursor: \"pointer\",\n textDecoration: \"underline\",\n },\n LoginModal_forgotPasswordContainer: {\n textAlign: \"center\",\n marginTop: \"14px\",\n },\n LoginModal_footerText: {\n color: COLORS.BLACK,\n ...JS_FONTS.REGULAR_3,\n },\n LoginModal_forgotPassword: {\n textDecoration: \"underline\",\n color: COLORS.BLACK,\n ...JS_FONTS.REGULAR_3,\n marginBottom: \"3px\",\n },\n LoginModal_horizontalRule: {\n marginTop: \"14px\",\n marginBottom: \"12px\",\n },\n});\n\nexport default styles;\n","import { SSOEnabledHint } from \"@components/SSOEnabledHint\";\nimport { Button, Icon, IconButton } from \"@components/library\";\nimport { COLORS, FONTS } from \"@constants\";\nimport { useSSOSensitiveEmail } from \"@hooks/useSSOSensitiveEmail\";\nimport haloLogo from \"@images/logos/halo_logo.svg\";\nimport api from \"@requests/request\";\nimport { RfpPageRequest } from \"@tsTypes/index\";\nimport { identify, track, usedPersonalEmail } from \"@utils/appUtils\";\nimport { setPrevUrlCookie } from \"@utils/authUtils\";\nimport { css } from \"aphrodite\";\nimport { Dispatch, SetStateAction, useEffect, useState } from \"react\";\nimport { Form, Grid } from \"semantic-ui-react\";\nimport styled from \"styled-components\";\nimport Validator from \"validator\";\nimport styles from \"./LoginModal.styles\";\nimport { ModalType } from \"./LoginSignUpModal\";\n\ninterface Props {\n onClose: () => void;\n previousAction: string;\n setModalType: Dispatch>;\n currentRFP?: RfpPageRequest;\n}\n\nconst SignUpModal = ({ onClose, previousAction, setModalType, currentRFP }: Props) => {\n const [errors, setErrors] = useState({});\n const [errorMessage, setErrorMessage] = useState(\"\");\n const [isSubmitting, setIsSubmitting] = useState(false);\n const [hasSubmitted, setHasSubmitted] = useState(false);\n\n const [firstName, setFirstName] = useState(\"\");\n const [lastName, setLastName] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n const { email, setEmail, isEmailSSOEnabled, redirectToSSO } = useSSOSensitiveEmail(\"\");\n const [shouldShowSSO, setShouldShowSSO] = useState(isEmailSSOEnabled);\n\n const easyApply = previousAction === \"easy apply\";\n const isRfpPage = window.location.pathname.includes(\"/research/\") && currentRFP;\n const isProposalPage = window.location.pathname.startsWith(\"/proposal/\");\n const isMarketplace = window.location.pathname.startsWith(\"/marketplace\");\n\n let signupHeadline = \"Move Science Forward\";\n let signupSubtitle = \"Find funding opportunities from industry and bring your ideas to life\";\n let lineItemsHeader = \"\";\n let lineItems = [\n \"Submit a proposal in less than an hour\",\n \"Receive feedback directly from the industry contact\",\n \"Get discovered by industry partners looking for your expertise\",\n ];\n if (isMarketplace) {\n signupHeadline = \"Explore more opportunities\";\n signupSubtitle = \"Create a free account to access our full selection of opportunities\";\n lineItemsHeader = \"Account benefits:\";\n lineItems = [\n \"Get discovered by industry partners seeking your expertise\",\n \"Get matched to opportunities that suit your profile\",\n \"Submit proposals in less than an hour\",\n \"Receive feedback directly from industry contacts\",\n ];\n }\n\n const isScientist = !isProposalPage;\n const isCompany = isProposalPage;\n\n let userType = \"\";\n if (isScientist) {\n userType = \"sci\";\n } else if (isCompany) {\n userType = \"spo\";\n } else {\n userType = \"adm\";\n }\n\n useEffect(() => {\n const event = `${userType}-create account-start`;\n const type = `modal-${previousAction}`;\n\n track(event, { type });\n }, [userType, previousAction]);\n\n useEffect(() => {\n setHasSubmitted(false);\n }, [firstName, lastName, email, password]);\n\n useEffect(() => {\n if (isEmailSSOEnabled) setShouldShowSSO(true);\n }, [isEmailSSOEnabled]);\n\n const handleRegister = async () => {\n setIsSubmitting(true);\n setHasSubmitted(true);\n setErrors({});\n\n if (shouldShowSSO) {\n if (!isEmailSSOEnabled) {\n setErrorMessage(\"Your email/company is not enabled to use SSO.\");\n setIsSubmitting(false);\n return;\n }\n\n redirectToSSO();\n return;\n }\n\n if (invalidSubmit()) {\n setIsSubmitting(false);\n return;\n }\n\n let originalReferrerId;\n if (localStorage?.getItem(\"original_referrer_id\")) {\n originalReferrerId = localStorage.getItem(\"original_referrer_id\");\n localStorage.removeItem(\"original_referrer_id\");\n }\n\n try {\n const responseJson = await api.post(\"/users\", {\n user: {\n email,\n password,\n first_name: firstName,\n last_name: lastName,\n ...(isCompany && { company: true }),\n },\n });\n\n if (isRfpPage) {\n if (easyApply && currentRFP.slug) {\n setPrevUrlCookie(`/submit/request_for_proposal/${currentRFP.slug}`, 0);\n } else {\n setPrevUrlCookie();\n }\n }\n\n const user = responseJson.data;\n identify(user);\n await track(`${userType}-create account-complete`, {\n type: `modal-${previousAction}`,\n });\n\n if (originalReferrerId) {\n window.location.href = `/redirect_login?referrer_id=${originalReferrerId}`;\n } else {\n window.location.href = \"/redirect_login\";\n }\n } catch (error) {\n setIsSubmitting(false);\n console.log(error);\n if (error.response.data.errors.email[0].indexOf(\"already been taken\") > -1) {\n setErrorMessage(\"That email has already been taken.\");\n } else if (\n error.response.data.errors.email[0].indexOf(\"must be a company or university email\") > -1\n ) {\n setErrorMessage(\"Please use company or university email.\");\n } else {\n setErrorMessage(\"Something went wrong. Please try again.\");\n }\n\n setErrors(error.response.data.errors);\n }\n };\n\n const handleLogin = () => {\n if (isRfpPage && easyApply && currentRFP.slug) {\n setPrevUrlCookie(`/submit/request_for_proposal/${currentRFP.slug}`);\n }\n setModalType(\"login\");\n };\n\n const invalidSubmit = () => {\n if (Validator.isEmpty(firstName) || Validator.isEmpty(lastName) || Validator.isEmpty(email)) {\n setErrorMessage(\"Please fill in all fields before continuing.\");\n return true;\n } else if (!Validator.isEmail(email)) {\n setErrorMessage(\"Please enter a valid email address.\");\n return true;\n } else if (usedPersonalEmail(email)) {\n setErrorMessage(`Please use company ${!isCompany ? \"or university \" : \"\"}email.`);\n return true;\n } else if (!Validator.isLength(password, { min: 8, max: 30 })) {\n setErrorMessage(\"Passwords must be between 8-30 characters long.\");\n return true;\n }\n };\n\n const hasErrors =\n hasSubmitted && (errorMessage.length > 0 || Object.keys(errors || {}).length > 0);\n\n return (\n
\n
\n \n
\n
\n \n \n \n
\n \n \n \n
\n
{signupHeadline}
\n
{signupSubtitle}
\n {isScientist && isRfpPage && (\n
\n This opportunity is for Halo members only. Please create an account to continue.\n
\n )}\n
\n {lineItems.length > 0 && (\n
\n

{lineItemsHeader}

\n {lineItems.map((lineItem) => {\n return (\n
\n \n {\" \"}\n \n
{lineItem}
\n
\n );\n })}\n
\n )}\n
\n \n {errorMessage ? errorMessage : \"Placeholder Text\"}\n
\n
\n
\n {(!shouldShowSSO || firstName || lastName) && (\n <>\n \n setFirstName(e.target.value)}\n placeholder=\"First Name\"\n value={firstName}\n />\n \n \n setLastName(e.target.value)}\n placeholder=\"Last Name\"\n value={lastName}\n />\n \n \n )}\n \n setEmail(e.target.value)}\n placeholder={isCompany ? \"Company Email\" : \"Company or University Email\"}\n value={email}\n />\n \n {shouldShowSSO ? (\n <>\n \n \n \n \n Continue\n \n {\n if (isEmailSSOEnabled) setEmail(\"\");\n setShouldShowSSO(false);\n }}\n >\n Use email/password instead\n \n \n ) : (\n <>\n \n 30) &&\n styles.LoginModal_errorField\n )}\n data-testid=\"signup-form-password-input\"\n name=\"password\"\n onChange={(e) => setPassword(e.target.value)}\n placeholder=\"Password\"\n type=\"password\"\n value={password}\n />\n \n \n Create Account\n \n \n setShouldShowSSO(true)}>\n Sign in with SSO\n \n \n \n )}\n \n
\n
\n By signing up you agree to the{\" \"}\n
\n \n Terms of Service\n \n {\" & \"}\n \n Privacy Policy\n \n
\n
\n
\n
\n
\n Already have an account?\n \n
\n Sign in\n
\n
\n
\n \n \n \n \n );\n};\n\nexport default SignUpModal;\n\nconst SSOHintContainer = styled.div`\n display: flex;\n justify-content: center;\n margin: 20px;\n`;\n\nconst SSOToggleContainer = styled.div`\n display: flex;\n justify-content: center;\n margin-top: 10px;\n`;\n\nconst SSOToggle = styled.div`\n display: flex;\n align-items: center;\n gap: 4px;\n\n text-decoration: underline;\n color: ${COLORS.BLACK};\n ${FONTS.REGULAR_2}\n\n &:hover {\n cursor: pointer;\n color: ${COLORS.BLUE_900};\n }\n`;\n","import { toggleLoginModal } from \"@redux/actions/profileActions\";\nimport { RootState } from \"@redux/store\";\nimport { getRfpForRfpPage } from \"@requests/rfps\";\nimport { css } from \"aphrodite\";\nimport { useEffect, useState } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { Modal } from \"semantic-ui-react\";\n\nimport { SegmentEventName } from \"@tsTypes/__generated__/enums\";\nimport { RfpPageRequest } from \"@tsTypes/index\";\nimport { track } from \"@utils/appUtils\";\nimport LoginModal from \"./LoginModal\";\nimport styles from \"./LoginModal.styles\";\nimport SignUpModal from \"./SignUpModal\";\n\nexport type ModalType = \"signup\" | \"login\";\n\nfunction LoginSignUpModal() {\n const [modalType, setModalType] = useState(\"signup\");\n const [currentRFP, setCurrentRFP] = useState();\n\n const loginModalOpen = useSelector((state: RootState) => state.profiles.loginModalOpen);\n const previousAction = useSelector((state: RootState) => state.profiles.previousAction);\n const loginModalLanding = useSelector((state: RootState) => state.profiles.loginModalLanding);\n\n const dispatch = useDispatch();\n\n useEffect(() => {\n (async () => {\n const isRfpPage =\n window.location.pathname.includes(\"/research/\") &&\n window.location.pathname.split(\"/\").length > 3;\n\n if (isRfpPage) {\n const identifier = window.location.pathname.split(\"/\").at(-1);\n try {\n const { request } = await getRfpForRfpPage(identifier!);\n setCurrentRFP(request);\n } catch (e) {\n if (e.response.status === 401) {\n console.error(\"Waiting for access code\");\n return;\n }\n throw e;\n }\n }\n })();\n }, []);\n\n useEffect(() => {\n setModalType(loginModalLanding as ModalType);\n }, [loginModalLanding]);\n\n const modalWidth = () => {\n if (modalType === \"signup\") {\n return \"720px\";\n }\n return \"450px\";\n };\n\n const closeLoginModal = () => {\n dispatch(toggleLoginModal({ open: false }));\n };\n\n if (loginModalOpen) {\n track(SegmentEventName.View, {\n ui_component: \"Login Modal\",\n });\n }\n\n return (\n \n
\n {modalType === \"signup\" && (\n \n )}\n {modalType === \"login\" && }\n
\n \n );\n}\n\nexport default LoginSignUpModal;\n","import LoginSignUpModal from \"./LoginSignUpModal\";\n\nexport default LoginSignUpModal;\n","import { InfoTag } from \"@components/library\";\nimport { COLORS, FONTS } from \"@constants\";\nimport { setShowErrorBoundary } from \"@redux/actions/defaultActions\";\nimport { RootState } from \"@redux/store\";\nimport { ReactNode } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { NavLink, useLocation } from \"react-router-dom\";\nimport styled from \"styled-components\";\n\ninterface Props {\n to: string;\n children: ReactNode;\n asAnchor?: boolean;\n withNewTag?: boolean;\n \"data-testid\"?: string;\n activeStylesMatchType?: \"startsWith\" | \"exact\";\n}\n\nfunction NavbarLink({\n to,\n children,\n asAnchor = false,\n withNewTag = false,\n \"data-testid\": dataTestId,\n activeStylesMatchType = \"exact\",\n}: Props) {\n const showErrorBoundary = useSelector(\n (state: RootState) => state.defaultReducer.showErrorBoundary\n );\n\n const dispatch = useDispatch();\n const { pathname } = useLocation();\n\n const handleClick = () => {\n if (showErrorBoundary) {\n dispatch(setShowErrorBoundary(false));\n window.location.href = to;\n }\n };\n\n let isActive = false;\n if (activeStylesMatchType === \"startsWith\") {\n isActive = String(pathname).startsWith(to) && !showErrorBoundary;\n } else if (activeStylesMatchType === \"exact\") {\n isActive = String(pathname) === to && !showErrorBoundary;\n }\n\n return (\n \n \n {children}\n {withNewTag && (\n \n NEW\n \n )}\n \n \n );\n}\n\nexport default NavbarLink;\n\nconst Container = styled.div`\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100%;\n padding: 6px 16px 0;\n border-bottom: 3px solid ${({ isActive }) => (isActive ? COLORS.HALO_BLUE : \"transparent\")};\n`;\nconst Link = styled(NavLink)`\n display: flex;\n align-items: center;\n ${FONTS.MEDIUM_2};\n color: ${COLORS.BLACK};\n &:hover,\n &:focus {\n color: ${COLORS.HALO_BLUE};\n text-decoration: none;\n }\n ${({ $isActive }) =>\n $isActive &&\n `\n color: ${COLORS.HALO_BLUE};\n text-decoration: none;\n `}\n`;\n","import NavbarLink from \"@components/Navbar/NavbarLink\";\nimport { InfoTag } from \"@components/library\";\nimport { COLORS } from \"@constants\";\nimport { RootState } from \"@redux/store\";\nimport { marketplacePath } from \"@routes/utils\";\nimport { t } from \"@utils/i18n\";\nimport { useSelector } from \"react-redux\";\nimport styled from \"styled-components\";\n\nconst ScientistNavbarLinks = () => {\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n const unreadCount = useSelector((state: RootState) => state.profiles.unreadCount);\n\n return (\n \n {t(\"components.navbar.links.marketplace\")}\n \n {t(\"components.navbar.links.my_proposals\")}\n \n {currentUser.profile_info.is_expert && (\n {t(\"components.navbar.links.expert_dashboard\")}\n )}\n \n {t(\"components.navbar.links.inbox\")}\n {unreadCount > 0 && (\n \n {unreadCount}\n \n )}\n \n \n );\n};\n\nexport default ScientistNavbarLinks;\n\n// For use in LoggedOutNavbarLinks, ScientistNavbarLinks, SponsorNavbarLinks, and UniversityAdminNavbarLinks\n// Note: This needs to be exported from one of the above components and will not work if exported from Navbar.tsx\nexport const UserLinks = styled.div`\n display: flex;\n gap: 16px;\n height: 100%;\n margin-left: auto;\n`;\n","import NavbarLink from \"@components/Navbar/NavbarLink\";\nimport { marketplace_path } from \"@routes/routes\";\nimport { t } from \"@utils/i18n\";\nimport styled from \"styled-components\";\nimport { UserLinks } from \"./ScientistNavbarLinks\";\n\nconst LoggedOutNavbarLinks = () => {\n return (\n \n \n {t(\"components.navbar.links.marketplace\")}\n \n \n {t(\"components.navbar.links.blog\")}\n \n \n {t(\"components.navbar.links.scientists\")}\n \n \n );\n};\n\nexport default LoggedOutNavbarLinks;\n\nconst Container = styled(UserLinks)`\n margin-left: 36px;\n`;\n","import { Button, Icon } from \"@components/library\";\nimport SlideModalBase, { SlideModalBaseProps } from \"@components/library/ModalBases/SlideModalBase\";\nimport { COLORS } from \"@constants\";\nimport { RootState } from \"@redux/store\";\nimport { marketplacePath } from \"@routes/utils\";\nimport { useSelector } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport styled from \"styled-components\";\n\nconst MobileMenu = ({ isOpen, onClose }: SlideModalBaseProps) => {\n if (!isOpen) return null;\n\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n\n const links: { name: string; isCurrentPage: boolean; to?: string; as?: string; href?: string }[] =\n [\n {\n name: \"Marketplace\",\n to: marketplacePath(),\n isCurrentPage: window.location.pathname.startsWith(\"/marketplace\"),\n },\n {\n name: \"Blog\",\n as: \"a\",\n href: \"/blog\",\n isCurrentPage: window.location.pathname.startsWith(\"/blog\"),\n },\n {\n name: \"For Scientists\",\n to: \"/scientists\",\n isCurrentPage: window.location.pathname.startsWith(\"/scientists\"),\n },\n ];\n\n return (\n \n \n \n \n \n \n {links.map((link) => (\n \n {link.name}\n \n ))}\n \n {!currentUser.id && (\n \n \n \n )}\n \n \n );\n};\n\nexport default MobileMenu;\n\nconst Container = styled.div`\n position: relative;\n padding: 40px;\n`;\nconst CloseButton = styled.button`\n position: absolute;\n top: 40px;\n right: 32px;\n border: none;\n background-color: transparent;\n`;\nconst NavLinks = styled.div`\n display: flex;\n flex-direction: column;\n gap: 24px;\n`;\nconst NavLink = styled(Link)`\n font-size: 18px;\n font-weight: 600;\n line-height: 1.7;\n color: ${({ isCurrentPage }) => (isCurrentPage ? COLORS.HALO_BLUE : COLORS.BLACK)};\n &:hover {\n color: ${COLORS.HALO_BLUE};\n text-decoration: none;\n }\n`;\n","import NavbarLink from \"@components/Navbar/NavbarLink\";\nimport { InfoTag, TextButton } from \"@components/library\";\nimport { COLORS } from \"@constants\";\nimport { RootState } from \"@redux/store\";\nimport { scientistNetworkName, t } from \"@utils/i18n\";\nimport { useSelector } from \"react-redux\";\nimport { NavLink } from \"react-router-dom\";\nimport styled from \"styled-components\";\nimport { UserLinks } from \"./ScientistNavbarLinks\";\n\nconst SponsorNavbarLinks = () => {\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n const unreadCount = useSelector((state: RootState) => state.profiles.unreadCount);\n const subscription = useSelector((state: RootState) => state.company.subscription);\n const lastViewedRfpIdentifier = useSelector(\n (state: RootState) => state.defaultReducer.lastViewedRfpIdentifier\n );\n\n if (!currentUser.profile_info.verified && !currentUser.profile_info.is_admin)\n return ;\n\n const showBackToProposalReviewDashboard =\n currentUser.profile_info.verified &&\n currentUser.profile_info.commenter &&\n !location.pathname.startsWith(\"/review_system\");\n\n return (\n \n {showBackToProposalReviewDashboard && (\n \n \n \n )}\n {!currentUser.profile_info.commenter && (\n \n {t(\"components.navbar.links.reviewer_dashboard\")}\n \n )}\n {subscription?.features.proposal_library && (\n \n {t(\"components.navbar.links.proposal_library\")}\n \n )}\n {subscription?.features.company_scientist_network && (\n {scientistNetworkName(subscription)}\n )}\n {currentUser.profile_info.verified && (\n \n {t(\"components.navbar.links.my_team\")}\n \n )}\n {currentUser.profile_info.verified && !currentUser.profile_info.commenter && (\n \n {t(\"components.navbar.links.inbox\")}\n {unreadCount > 0 && (\n \n {unreadCount}\n \n )}\n \n )}\n \n );\n};\n\nexport default SponsorNavbarLinks;\n\nconst Container = styled(UserLinks)`\n ${({ showBackToProposalReviewDashboard }) => showBackToProposalReviewDashboard && `width: 100%;`}\n`;\nconst ButtonLink = styled(NavLink)`\n display: flex;\n align-items: center;\n height: 100%;\n margin-right: auto;\n &:hover {\n text-decoration: none;\n }\n`;\n","import NavbarLink from \"@components/Navbar/NavbarLink\";\nimport { marketplacePath } from \"@routes/utils\";\nimport { t } from \"@utils/i18n\";\nimport { UserLinks } from \"./ScientistNavbarLinks\";\n\nconst UniversityAdminNavbarLinks = () => {\n return (\n \n {t(\"components.navbar.links.marketplace\")}\n \n {t(\"components.navbar.links.university_proposals\")}\n \n \n {t(\"components.navbar.links.university_team\")}\n \n \n );\n};\n\nexport default UniversityAdminNavbarLinks;\n","export const NAVBAR_HIDDEN_PATHS = [\n \"/submit/\",\n \"/preview-rfp/\",\n \"/get-started\",\n \"/login\",\n \"/onboarding\",\n \"/review_system\",\n \"/opportunities\",\n];\n\nexport const NAVBAR_BORDER_PATHS = [\n \"/inbox\",\n \"/account\",\n \"/reviewer_dashboard\",\n \"/reviewer_dashboard/teams\",\n \"/reviewer_dashboard/proposals\",\n \"/proposal_library\",\n \"/network\",\n \"/startup_program\",\n \"/request_for_experts\",\n];\n","import NavbarDropdownMenu from \"@components/Navbar/NavbarDropdownMenu\";\nimport { Button, GradientButton, Icon } from \"@components/library\";\nimport haloLogo from \"@images/logos/halo_logo.svg\";\nimport { RootState } from \"@redux/store\";\nimport { marketplacePath } from \"@routes/utils\";\nimport { UserRole } from \"@tsTypes/users\";\nimport { useEffect, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { Link, useLocation } from \"react-router-dom\";\nimport { COLORS, WINDOW_DIMENSIONS } from \"src/constants\";\nimport styled from \"styled-components\";\nimport LoginSignUpModal from \"../LoginSignUpModal\";\nimport LoggedOutNavbarLinks from \"./LoggedOutNavbarLinks\";\nimport MobileMenu from \"./MobileMenu\";\nimport ScientistNavbarLinks from \"./ScientistNavbarLinks\";\nimport SponsorNavbarLinks from \"./SponsorNavbarLinks\";\nimport UniversityAdminNavbarLinks from \"./UniversityAdminNavbarLinks\";\nimport { NAVBAR_BORDER_PATHS, NAVBAR_HIDDEN_PATHS } from \"./navbarLists\";\n\nconst Navbar = () => {\n const [isSticky, setIsSticky] = useState(false);\n const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false);\n\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n const isTablet = useSelector((state: RootState) => state.window.isTablet);\n\n const { pathname } = useLocation();\n\n const isUserLoggedOut = !currentUser.id;\n\n // Make nav bar sticky on main pages when user is logged out\n const isLandingPage = pathname === \"/\" || pathname.startsWith(\"/scientists\");\n const isInMarketplaceRelatedPage =\n pathname.startsWith(\"/marketplace\") ||\n pathname.startsWith(\"/research\") ||\n pathname.startsWith(\"/company\");\n\n const handleScroll = () => {\n if (isUserLoggedOut && window.scrollY >= 720 && (isLandingPage || isInMarketplaceRelatedPage)) {\n setIsSticky(true);\n } else if (window.scrollY === 0) {\n setIsSticky(false);\n }\n };\n\n useEffect(() => {\n window.addEventListener(\"scroll\", handleScroll);\n return () => {\n window.removeEventListener(\"scroll\", handleScroll);\n };\n }, [pathname]);\n\n if (NAVBAR_HIDDEN_PATHS.some((path) => pathname !== \"/\" && pathname.startsWith(path))) {\n return null;\n }\n\n const hasBorder = NAVBAR_BORDER_PATHS.some(\n (path) => pathname !== \"/\" && pathname.startsWith(path)\n );\n\n // Currently this is essentially only used for when a user is logged out. Eventually this\n // should be consolidated with NavbarDropdownMenu.tsx, designs pending\n const showMobileMenuButton =\n pathname === \"/\" ||\n pathname.startsWith(\"/about\") ||\n pathname.startsWith(\"/scientists\") ||\n pathname.startsWith(\"/unsubscribe\") ||\n (!currentUser.id && isInMarketplaceRelatedPage);\n\n return (\n <>\n \n setIsMobileMenuOpen(false)} />\n \n \n {isTablet && showMobileMenuButton && (\n setIsMobileMenuOpen(true)}>\n \n \n )}\n {isUserLoggedOut ? (\n \n \n \n ) : (\n \n \n \n )}\n {(() => {\n if (isTablet) return null;\n if (isUserLoggedOut) return ;\n if (currentUser.role === UserRole.SCIENTIST) return ;\n if (currentUser.role === UserRole.SPONSOR) return ;\n if (currentUser.role === UserRole.UNIVERSITY_ADMIN)\n return ;\n })()}\n {isUserLoggedOut ? (\n \n {!isTablet && (\n \n \n \n )}\n \n Join now\n \n \n ) : (\n \n )}\n \n \n \n );\n};\n\nexport default Navbar;\n\nconst Container = styled.div`\n display: flex;\n align-items: center;\n position: ${({ isSticky }) => (isSticky ? \"sticky\" : \"static\")};\n top: ${({ isSticky }) => (isSticky ? 0 : \"-84px\")};\n height: 84px;\n width: 100%;\n padding: 0 ${WINDOW_DIMENSIONS.PAGE_SIDE_PADDING}px;\n background-color: ${COLORS.WHITE};\n border-bottom: 1px solid ${({ hasBorder }) => (hasBorder ? COLORS.NEUTRAL_200 : \"transparent\")};\n z-index: 100;\n transition: top 0.3s ease;\n ${WINDOW_DIMENSIONS.TABLET_MEDIA_QUERY} {\n padding: 0 24px;\n }\n ${WINDOW_DIMENSIONS.MOBILE_MEDIA_QUERY} {\n padding: 0 16px 0 10px;\n }\n`;\nconst Links = styled.div`\n display: flex;\n align-items: center;\n width: 100%;\n height: 100%;\n margin: 0 auto;\n`;\nconst Logo = styled.img`\n height: 32px;\n margin-right: 24px;\n margin-left: 8px;\n`;\nconst SignInButtons = styled.div`\n display: flex;\n margin-left: auto;\n & a:hover {\n text-decoration: none;\n }\n`;\nconst OpenMobileMenuButton = styled.button`\n border: none;\n background-color: transparent;\n &:focus {\n outline: none;\n }\n`;\n","import { lazyWithRetry } from \"@utils/appUtils\";\nimport { Route } from \"react-router-dom\";\nimport {\n notification_campaigns_unsubscribe_path,\n resume_outreach_notification_campaigns_path,\n} from \"./routes.js\";\nimport { formatPathForRouter } from \"./utils\";\n\nconst UnsubscribePage = lazyWithRetry(\n () => import(\"../views/NotificationCampaigns/Unsubscribe/UnsubscribePage\")\n);\nconst ResumeOutreachPage = lazyWithRetry(\n () => import(\"../views/NotificationCampaigns/ResumeOutreach/ResumeOutreachPage\")\n);\n\nconst routes = [\n ,\n ,\n];\n\nexport default routes;\n","import PrivateSponsorRoute from \"@components/PrivateSponsorRoute\";\nimport { FEATURE_FLAGS } from \"@constants\";\nimport { lazyWithRetry } from \"@utils/appUtils\";\nimport { RequestType } from \"src/App\";\nimport { edit_opportunity_path, new_opportunity_path } from \"./routes\";\n\nconst RfpRequestForm = lazyWithRetry(() => import(\"../views/RfpRequestForm\"));\n\nconst renderForm = (props) => {\n if (!FEATURE_FLAGS.RFP_FORM_V2) {\n throw new Error(\"RFP_FORM_V2 is not enabled.\");\n }\n const searchParams = new URLSearchParams(props.location.search);\n const request_type = searchParams.get(\"type\");\n switch (request_type) {\n case RequestType.REQUEST_FOR_PROPOSAL:\n return ;\n default:\n console.error(\"Unexpected request_type: %s.\", request_type);\n }\n};\n\nconst routes = [\n \n {renderForm}\n ,\n \n {renderForm}\n ,\n];\n\nexport default routes;\n","import { RequestableType } from \"@tsTypes/requests\";\nimport { lazyWithRetry } from \"@utils/appUtils\";\nimport { Route } from \"react-router-dom\";\nimport { request_for_expert_path, request_for_expert_proposal_path } from \"./routes.js\";\nimport { formatPathForRouter } from \"./utils\";\n\nconst RfePage = lazyWithRetry(() => import(\"../views/RequestForExpertsPage\"));\nconst ProposalPage = lazyWithRetry(() => import(\"../views/ProposalPage\"));\n\nconst routes = [\n ,\n \n \n ,\n];\n\nexport default routes;\n","import { lazyWithRetry } from \"@utils/appUtils\";\nimport { Redirect, Route } from \"react-router-dom\";\nimport { seo_request_for_proposal_path } from \"./routes.js\";\nimport { formatPathForRouter } from \"./utils\";\n\nconst RfpPage = lazyWithRetry(() => import(\"../views/RFPPage\"));\n\nconst routes = [\n (\n \n )}\n />,\n ,\n \n \n ,\n];\n\nexport default routes;\n","import { Button, PageContainer } from \"@components/library\";\nimport { COLORS, FONTS } from \"@constants\";\nimport { login_path } from \"@routes/routes\";\nimport styled from \"styled-components\";\n\nconst Unauthorized401 = () => {\n return (\n \n \n 401.\n Sorry, you don’t have access to this page.\n You can check the URL for typos or errors, or try logging in.\n \n \n \n );\n};\n\nconst BlueBox = styled.div`\n padding: 64px;\n background-color: ${COLORS.BLUE_LIGHT_100};\n border-radius: 8px;\n`;\n\nconst Title = styled.div`\n ${FONTS.HEADING_JUMBO}\n color: ${COLORS.BLACK}\n`;\n\nconst Subtitle = styled.div`\n ${FONTS.HEADING_3_REGULAR}\n color: ${COLORS.BLACK}\n`;\n\nconst Text = styled.div`\n ${FONTS.REGULAR_1}\n color: ${COLORS.BLACK}\n margin-top: 8px;\n margin-bottom: 56px;\n`;\n\nexport default Unauthorized401;\n","import { Button, PageContainer } from \"@components/library\";\nimport { COLORS, FONTS } from \"@constants\";\nimport styled from \"styled-components\";\n\nconst Forbidden403 = () => {\n return (\n \n \n 403.\n Sorry, you don’t have access to this page.\n \n You can check the URL for typos or errors, or try logging in with a different account.\n \n \n \n \n );\n};\n\nconst BlueBox = styled.div`\n padding: 64px;\n background-color: ${COLORS.BLUE_LIGHT_100};\n border-radius: 8px;\n`;\n\nconst Title = styled.div`\n ${FONTS.HEADING_JUMBO}\n color: ${COLORS.BLACK}\n`;\n\nconst Subtitle = styled.div`\n ${FONTS.HEADING_3_REGULAR}\n color: ${COLORS.BLACK}\n`;\n\nconst Text = styled.div`\n ${FONTS.REGULAR_1}\n color: ${COLORS.BLACK}\n margin-top: 8px;\n margin-bottom: 56px;\n`;\n\nexport default Forbidden403;\n","import NavBar from \"@components/Navbar\";\nimport { Button } from \"@components/library\";\nimport { COLORS, FONTS } from \"@constants\";\nimport backgroundImage from \"@images/backgrounds/inbox-background.svg\";\nimport haloLogo from \"@images/logos/halo_logo.svg\";\nimport { setShowErrorBoundary } from \"@redux/actions/defaultActions\";\nimport { ReactNode, useEffect } from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport styled from \"styled-components\";\nimport NotFound404 from \"../StatusPages\";\nimport Unauthorized401 from \"../StatusPages/401\";\nimport Forbidden403 from \"../StatusPages/403\";\n\nconst ErrorBoundaryFallback = ({ error }: { error: any }) => {\n const dispatch = useDispatch();\n\n useEffect(() => {\n dispatch(setShowErrorBoundary(true));\n }, []);\n\n // NOTE: (justinpchang) If ChunkLoadError, attempt to refresh the page once to refresh JS cache.\n if (error.name === \"ChunkLoadError\") {\n if (!window.location.hash.endsWith(\"refresh\")) {\n window.location.replace(window.location + \"#refresh\");\n window.location.reload();\n }\n }\n\n let showNavBar = gon?.current_user_id;\n let innerComponent: ReactNode | null = null;\n let alignItems = \"center\";\n if (error.isAxiosError) {\n const status = error.response.status;\n showNavBar = true;\n alignItems = \"normal\";\n if (status === 401) {\n innerComponent = ;\n } else if (status === 404) {\n innerComponent = ;\n } else if (status === 403) {\n innerComponent = ;\n }\n } else {\n innerComponent = (\n <>\n Oh dear! Something went wrong\n \n "I was taught that the way of progress was neither swift nor easy."\n

- Marie Curie

\n
\n \n \n \n \n Having trouble?  \n Contact us\n \n \n \n );\n }\n\n return (\n \n {showNavBar ? : }\n {innerComponent}\n \n );\n};\n\nconst Container = styled.div`\n display: flex;\n flex-direction: column;\n align-items: ${({ $alignItems }) => $alignItems};\n color: ${COLORS.BLACK};\n`;\n\nconst Logo = styled.img`\n position: absolute;\n margin: 60px auto 0;\n`;\n\nconst Title = styled.div`\n ${FONTS.HEADING_2_SEMIBOLD};\n margin-bottom: 30px;\n margin-top: 150px;\n`;\n\nconst Quote = styled.div`\n display: flex;\n flex-direction: column;\n margin-bottom: 25px;\n ${FONTS.REGULAR_1};\n\n p {\n margin-top: 10px;\n }\n`;\n\nconst ContactLink = styled.div`\n ${FONTS.REGULAR_2};\n margin: 24px 0 4px;\n\n a {\n text-decoration: underline;\n color: ${COLORS.BLACK};\n &:hover {\n color: ${COLORS.HALO_BLUE};\n }\n }\n`;\n\nconst Background = styled.div`\n width: 100%;\n height: 660px;\n background-image: url(${({ img }) => img});\n background-size: contain;\n`;\n\nexport default ErrorBoundaryFallback;\n","import { ErrorBoundary as AppsignalErrorBoundary } from \"@appsignal/react\";\nimport { useSelector } from \"react-redux\";\n\nimport { RootState } from \"@redux/store\";\nimport appsignal from \"@utils/appsignal\";\nimport ErrorBoundaryFallback from \"./ErrorBoundaryFallback\";\n\nconst ErrorBoundary = ({ children }) => {\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n\n return (\n }\n tags={{ userId: currentUser?.id, userEmail: currentUser?.email }}\n >\n {children}\n \n );\n};\n\nexport default ErrorBoundary;\n","import { google_scholar_authors_path } from \"@routes/routes\";\nimport { GoogleScholarAuthor } from \"@tsTypes/google_scholar_authors\";\nimport request from \"./request\";\n\nexport const getGoogleScholarAuthors = async (): Promise => {\n const response = await request.get(google_scholar_authors_path());\n return response.data.authors;\n};\n\nexport const getGoogleScholarAuthor = async (\n authorId: string\n): Promise<{\n user_id: number;\n}> => {\n const response = await request.post(\n google_scholar_authors_path(),\n { author_id: authorId },\n { timeout: 10000 }\n );\n return response.data;\n};\n","import { ProgressStep } from \"@components/library\";\nimport { COLORS, WINDOW_DIMENSIONS } from \"@constants\";\nimport { t } from \"@utils/i18n\";\nimport styled from \"styled-components\";\n\ninterface Props {\n completionState: {\n step1: boolean;\n step2: boolean;\n step3a: boolean;\n step3b: boolean;\n };\n}\n\nconst i18nPrefix = \"pages.onboarding_container.progress\";\n\nexport function Progress({ completionState: { step1, step2, step3b } }: Props) {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n}\nconst Tabs = styled.div`\n width: 100%;\n display: flex;\n gap: 8px;\n margin-bottom: 72px;\n padding: 0 50px;\n\n ${WINDOW_DIMENSIONS.TABLET_LANDSCAPE_MEDIA_QUERY} {\n padding: 0 10px;\n }\n`;\n\nconst Tab = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n width: 100%;\n`;\n\nconst TabUnderline = styled.div`\n width: 100%;\n height: 5px;\n background: ${({ isCurrent }) => {\n if (isCurrent) return COLORS.BLUE_LIGHT_500;\n return COLORS.NEUTRAL_200;\n }};\n border-radius: 4px;\n &:after {\n display: block;\n content: \"\";\n height: 5px;\n width: ${({ isCurrent }) => (isCurrent ? \"50%\" : \"100%\")};\n background: ${({ isCurrent, isComplete }) => {\n if (isCurrent) return COLORS.HALO_BLUE;\n if (isComplete) return COLORS.GREEN;\n return COLORS.NEUTRAL_200;\n }};\n }\n`;\n","import { Button } from \"@components/library\";\nimport { COLORS, FEATURE_FLAGS, FONTS } from \"@constants\";\nimport { signOut } from \"@requests/users\";\nimport { SegmentEventName } from \"@tsTypes/__generated__/enums\";\nimport { track } from \"@utils/appUtils\";\nimport { assertAbsurd } from \"@utils/tsUtils\";\nimport { useEffect } from \"react\";\nimport styled from \"styled-components\";\nimport { UserDetailedType, UserInfo } from \"../OnboardingContainer\";\nimport * as S from \"../StepStyles\";\n\ninterface Props {\n values: UserInfo;\n setWork: (v?: string) => void;\n setRole: (v?: string) => void;\n setDetailedType: (v?: UserDetailedType) => void;\n onContinue: () => void;\n}\n\nfunction Step2({ values, setWork, setRole, setDetailedType, onContinue }: Props) {\n const { work, role, detailedType } = values;\n\n useEffect(() => {\n switch (detailedType) {\n case UserDetailedType.COMPANY_SPONSOR:\n case UserDetailedType.VENTURE_CAPITAL_SPONSOR:\n case UserDetailedType.GOVERNMENT_SPONSOR:\n setRole(\"company-sponsor\");\n break;\n case UserDetailedType.UNIVERSITY_SCIENTIST:\n setRole(\"research-scientist\");\n break;\n case UserDetailedType.STARTUP_SCIENTIST:\n case UserDetailedType.SUPPLIER:\n case UserDetailedType.CONSULTANT:\n setRole(\"company-scientist\");\n break;\n case UserDetailedType.UNIVERSITY_ADMINISTRATOR:\n setRole(\"research-administrator\");\n break;\n case undefined:\n break;\n default:\n assertAbsurd(detailedType);\n }\n\n if (detailedType) {\n track(SegmentEventName.Click, {\n react_component: \"Onboarding - Step2\",\n ui_component: \"Detailed type selection\",\n detailed_type: detailedType,\n });\n }\n }, [detailedType]);\n\n return (\n \n \n Research Institutions\n \n setDetailedType(UserDetailedType.UNIVERSITY_SCIENTIST)}\n >\n I’m a researcher at a university, lab, or institute\n \n setDetailedType(UserDetailedType.UNIVERSITY_ADMINISTRATOR)}\n >\n I’m an administrator at a university\n \n \n Private Sector\n \n setDetailedType(UserDetailedType.COMPANY_SPONSOR)}\n >\n I’m in corporate R&D, looking to post partnering requests\n \n setDetailedType(UserDetailedType.STARTUP_SCIENTIST)}\n data-testid=\"startup-scientist-radio-button\"\n >\n I’m at a startup, looking to submit proposals or apply to programs\n \n setDetailedType(UserDetailedType.SUPPLIER)}\n >\n I’m at a supplier or corporation, looking to submit proposals\n \n setDetailedType(UserDetailedType.CONSULTANT)}\n >\n I’m at a consultancy, looking to submit proposals\n \n \n \n {FEATURE_FLAGS.SIGN_OUT_ON_ONBOARDING && (\n {\n await signOut();\n }}\n >\n Sign Out\n \n )}\n \n Continue\n \n \n \n );\n}\n\nexport default Step2;\n\nconst ButtonContainer = styled.div<{ work?: string }>`\n margin-top: ${({ work }) => (work ? \"40px\" : \"0px\")};\n`;\n\nconst OptionsHeading = styled.h2`\n margin: 0 0 16px;\n ${FONTS.SEMIBOLD_1}\n`;\n\nconst OptionsContainer = styled.div`\n display: flex;\n gap: 32px;\n flex-wrap: wrap;\n margin-bottom: 56px;\n`;\n\nconst Option = styled.div<{ selected?: boolean }>`\n flex-shrink: 0;\n width: 288px;\n padding: 16px;\n border: 1px solid ${COLORS.NEUTRAL_250};\n border-radius: 6px;\n cursor: pointer;\n ${FONTS.REGULAR_1}\n\n ${({ selected }) =>\n selected &&\n `\n border: 1px solid ${COLORS.HALO_BLUE};\n background: ${COLORS.BLUE_LIGHT_300};\n color: ${COLORS.BLUE_650};\n `}\n`;\n","import { Icon, ProfilePicture } from \"@components/library\";\nimport { COLORS, FONTS, STYLES, WINDOW_DIMENSIONS } from \"@constants\";\nimport { GoogleScholarAuthor } from \"@tsTypes/google_scholar_authors\";\nimport styled from \"styled-components\";\n\ninterface Props {\n author: GoogleScholarAuthor;\n isSelected: boolean;\n onSelect: (id: number) => void;\n}\n\nconst VISIBLE_PUBLICATION_COUNT = 3;\n\nexport function AuthorCard({ author, isSelected, onSelect }: Props) {\n return (\n onSelect(author.id)}>\n \n \n

{author.name}

\n

{author.title}

\n
{author.location}
\n
\n \n {author.publications.slice(0, VISIBLE_PUBLICATION_COUNT).map((publication) => (\n \n \n {publication.title}\n \n ))}\n \n
\n );\n}\n\nconst Info = styled.div`\n * {\n margin: 0;\n color: inherit;\n ${STYLES.ONE_LINE_ALT}\n }\n h3 {\n ${FONTS.SEMIBOLD_1}\n }\n h4 {\n ${FONTS.MEDIUM_2}\n }\n h5 {\n ${FONTS.REGULAR_2}\n color: ${COLORS.NEUTRAL_500};\n }\n`;\n\nconst Publications = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: center;\n gap: 8px;\n`;\n\nconst Card = styled.div`\n display: grid;\n grid-template-columns: 50px 200px 1fr;\n grid-gap: 16px;\n\n width: 100%;\n height: 137px;\n padding: 24px;\n border-radius: 4px;\n cursor: pointer;\n\n ${({ isSelected }) =>\n isSelected\n ? `\n background: ${COLORS.BLUE_LIGHT_50};\n border: 1px solid ${COLORS.HALO_BLUE};\n color: ${COLORS.HALO_BLUE};\n `\n : `\n background: ${COLORS.WHITE};\n border: 1px solid ${COLORS.NEUTRAL_250};\n color: ${COLORS.BLACK};\n `}\n\n ${WINDOW_DIMENSIONS.TABLET_MEDIA_QUERY} {\n display: flex;\n flex-wrap: wrap;\n height: fit-content;\n\n & > ${ProfilePicture} {\n flex-basis: 50px;\n }\n & > ${Info} {\n flex-basis: calc(100% - 50px - 16px);\n }\n & > ${Publications} {\n flex-basis: 100%;\n }\n }\n`;\n\nconst Publication = styled.div`\n display: grid;\n grid-template-columns: auto 1fr;\n grid-gap: 11px;\n max-width: 100%;\n\n color: ${COLORS.NEUTRAL_500};\n ${FONTS.MEDIUM_2}\n\n & > span {\n ${STYLES.ONE_LINE_ALT}\n }\n`;\n","import toast from \"@components/Toast\";\nimport { Button, InfoTag } from \"@components/library\";\nimport { SearchBarInput } from \"@components/library/Inputs/SearchBarInput\";\nimport { COLORS, FONTS, WINDOW_DIMENSIONS } from \"@constants\";\nimport { getGoogleScholarAuthor } from \"@requests/googleScholarAuthors\";\nimport { useMutation, useQueryClient } from \"@tanstack/react-query\";\nimport { SegmentEventName } from \"@tsTypes/__generated__/enums\";\nimport { GoogleScholarAuthor } from \"@tsTypes/google_scholar_authors\";\nimport { track } from \"@utils/appUtils\";\nimport appsignal from \"@utils/appsignal\";\nimport Fuse from \"fuse.js\";\nimport { Dispatch, SetStateAction, useEffect, useMemo, useState } from \"react\";\nimport { Loader } from \"semantic-ui-react\";\nimport styled from \"styled-components\";\nimport { UserInfo } from \"../OnboardingContainer\";\nimport { StepHeader } from \"../StepStyles\";\nimport { AuthorCard } from \"./AuthorCard\";\n\ninterface Props {\n userInfo: UserInfo;\n onContinue: (step: string) => void;\n onBack: (step: string) => void;\n authors: GoogleScholarAuthor[];\n selectedAuthorId: number | null;\n setSelectedAuthorId: Dispatch>;\n numDisplayed: number;\n setNumDisplayed: Dispatch>;\n filteredAuthorIds: number[];\n setFilteredAuthorIds: Dispatch>;\n isFetching: boolean;\n}\n\nexport const DISPLAY_INCREMENT = 3;\n\nconst getAuthorIdFromUrl = (url: string): string | null => {\n try {\n const urlObj = new URL(url);\n if (urlObj.host.includes(\"scholar.google\")) {\n const authorId = urlObj.searchParams.get(\"user\");\n if (authorId) {\n return authorId;\n }\n }\n } catch (e) {\n // Not a valid URL\n }\n\n return null;\n};\n\nexport function Step3aGoogleScholar({\n userInfo,\n onContinue,\n onBack,\n authors,\n selectedAuthorId,\n setSelectedAuthorId,\n numDisplayed,\n setNumDisplayed,\n filteredAuthorIds,\n setFilteredAuthorIds,\n isFetching,\n}: Props) {\n const [searchText, setSearchText] = useState(\"\");\n const [isLoading, setIsLoading] = useState(false);\n\n const queryClient = useQueryClient();\n\n useEffect(() => {\n setNumDisplayed(DISPLAY_INCREMENT);\n setFilteredAuthorIds(authors.map((author) => author.id));\n }, []);\n\n useEffect(() => {\n if (filteredAuthorIds.length === 0) {\n setFilteredAuthorIds(authors.map((author) => author.id));\n }\n }, [authors]);\n\n useEffect(() => {\n if (!searchText && filteredAuthorIds.length === 0) {\n setFilteredAuthorIds(authors.map((author) => author.id));\n setNumDisplayed(DISPLAY_INCREMENT);\n }\n }, [searchText]);\n\n const { mutate: getAuthor } = useMutation({\n mutationFn: getGoogleScholarAuthor,\n onSuccess: ({ user_id }) => {\n setTimeout(() => {\n queryClient.invalidateQueries({ queryKey: [\"getGoogleScholarAuthors\"] });\n setSelectedAuthorId(user_id);\n setFilteredAuthorIds([user_id]);\n setIsLoading(false);\n }, 1000);\n },\n onError: (err) => {\n toast.error(\n \"Something went wrong while fetching your Google Scholar profile. Please try again.\"\n );\n appsignal.sendError(err as any, (span) => {\n span.setAction(\"Step3aGoogleScholar#getAuthor\");\n });\n setIsLoading(false);\n },\n });\n\n const fuse = useMemo(\n () => new Fuse(authors, { keys: [\"name\", \"location\", \"publications.title\"] }),\n [authors]\n );\n\n const filter = (input: string): void => {\n setNumDisplayed(DISPLAY_INCREMENT);\n\n if (!input) {\n setFilteredAuthorIds(authors.map((author) => author.id));\n return;\n }\n\n // Check if input is a Google Scholar URL\n const authorId = getAuthorIdFromUrl(input);\n\n track(SegmentEventName.Search, {\n react_component: \"Step3aGoogleScholar\",\n search_query: input,\n has_author_id: Boolean(authorId),\n });\n\n if (authorId) {\n setIsLoading(true);\n getAuthor(authorId);\n return;\n }\n\n const result = fuse.search(input);\n setFilteredAuthorIds(result.map((r) => r.item.id));\n };\n\n const isResearcher =\n userInfo.role === \"research-scientist\" || userInfo.role === \"company-scientist\";\n const hasResults = authors.length > 0;\n\n // Skip if not researcher or no results (after final refetch)\n if (!isResearcher || (!isFetching && !hasResults)) {\n onContinue(\"step3a\");\n return null;\n }\n\n // Show loader if final refetch is underway\n if (!hasResults) {\n return ;\n }\n\n return (\n \n \n Is this you? You can select a Google Scholar account to save time building your\n Halo profile, or skip to the next step.\n \n }\n />\n \n \n
\n {filteredAuthorIds.length}\n Google Scholar accounts found\n
\n
\n \n {isLoading ? (\n <>\n Searching for provided Google Scholar URL...\n \n \n ) : (\n <>\n {filteredAuthorIds.slice(0, numDisplayed).map((authorId) => {\n const author = authors.find(({ id }) => id === authorId);\n if (!author) return null;\n return (\n {\n setSelectedAuthorId(id);\n track(SegmentEventName.Click, {\n react_component: \"Step3aGoogleScholar\",\n ui_component: \"AuthorCard\",\n author_id: id,\n });\n }}\n />\n );\n })}\n {numDisplayed < filteredAuthorIds.length && (\n {\n setNumDisplayed(numDisplayed + DISPLAY_INCREMENT);\n track(SegmentEventName.Click, {\n react_component: \"Step3aGoogleScholar\",\n ui_component: \"Load More Button\",\n num_displayed: numDisplayed + DISPLAY_INCREMENT,\n total: filteredAuthorIds.length,\n });\n }}\n >\n Load more\n \n )}\n \n )}\n \n \n {\n onBack(\"step2\");\n track(SegmentEventName.Click, {\n react_component: \"Step3aGoogleScholar\",\n ui_component: \"Back Button\",\n total: filteredAuthorIds.length,\n author_id: selectedAuthorId,\n });\n }}\n >\n Back\n \n {\n onContinue(\"step3a\");\n track(SegmentEventName.Click, {\n react_component: \"Step3aGoogleScholar\",\n ui_component: \"Next Button (with selection)\",\n total: filteredAuthorIds.length,\n author_id: selectedAuthorId,\n });\n }}\n disabled={!selectedAuthorId}\n >\n Continue\n \n {\n setSelectedAuthorId(null);\n onContinue(\"step3a\");\n track(SegmentEventName.Click, {\n react_component: \"Step3aGoogleScholar\",\n ui_component: \"Skip Button\",\n total: filteredAuthorIds.length,\n });\n }}\n >\n Skip\n \n \n
\n );\n}\n\nexport const Container = styled.div`\n text-align: left;\n padding: 0;\n width: 800px;\n margin-bottom: 200px;\n\n ${WINDOW_DIMENSIONS.TABLET_MEDIA_QUERY} {\n padding: 0 30px;\n width: 100%;\n }\n`;\n\nexport const StepTitle = styled.h1`\n margin: 0 0 8px;\n color: ${COLORS.NEUTRAL_500};\n ${FONTS.SEMIBOLD_1}\n`;\n\nexport const StepInfo = styled.h2`\n margin: 0;\n ${FONTS.HEADING_3_REGULAR}\n`;\n\nconst FilterContainer = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n flex-wrap: wrap;\n gap: 12px;\n margin: 32px 0;\n color: ${COLORS.BLACK};\n ${FONTS.REGULAR_2}\n\n & > form {\n width: min(100%, 515px);\n }\n\n & > div {\n display: flex;\n align-items: center;\n gap: 4px;\n }\n`;\n\nconst AuthorsContainer = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 16px;\n ${FONTS.SEMIBOLD_2}\n`;\n\nconst ButtonsContainer = styled.div`\n width: 100%;\n margin-top: ${({ canLoadMore }) => (canLoadMore ? \"28px\" : \"40px\")};\n padding-top: 44px;\n border-top: 1px solid ${COLORS.NEUTRAL_200};\n line-height: 50px;\n`;\n","import Icon, { IconName } from \"@components/library/Icon/Icon\";\nimport { COLORS, FONTS } from \"@constants\";\nimport { ReactNode } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport styled from \"styled-components\";\n\ninterface Props {\n iconName: IconName;\n title: string | ReactNode;\n description: string | ReactNode;\n to: string;\n width: string;\n}\n\nexport default function Step4NextStep({ iconName, title, description, to, width }: Props) {\n return (\n \n \n {title}\n {description}\n \n );\n}\n\nconst Container = styled(Link)`\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n\n width: ${({ width }) => width};\n height: 152px;\n padding: 16px;\n\n cursor: pointer;\n border-radius: 6px;\n border: 1px solid ${COLORS.NEUTRAL_250};\n\n &:hover {\n text-decoration: none;\n }\n`;\n\nconst Title = styled.h3`\n margin: 0;\n color: ${COLORS.HALO_BLUE};\n ${FONTS.REGULAR_1}\n`;\n\nconst Description = styled.p`\n margin: 0;\n color: ${COLORS.NEUTRAL_500};\n ${FONTS.MEDIUM_3}\n line-height: 1.5;\n`;\n","import { TextButton } from \"@components/library\";\nimport { WINDOW_DIMENSIONS } from \"@constants\";\nimport { RootState } from \"@redux/store\";\nimport { company_scientist_network_path, reviewer_dashboard_path } from \"@routes/routes\";\nimport { marketplacePath } from \"@routes/utils\";\nimport { getPrevUrlCookie } from \"@utils/authUtils\";\nimport { useSelector } from \"react-redux\";\nimport styled from \"styled-components\";\nimport * as S from \"../StepStyles\";\nimport Step4NextStep from \"./Step4NextStep\";\n\nconst Step4 = ({ userType }) => {\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n const subscription = useSelector((state: RootState) => state.company.subscription);\n\n const routeToPrevUrl = () => {\n getPrevUrlCookie(marketplacePath(\"requests\", { follow: \"true\" }), false, currentUser.role);\n };\n\n const hasPreviousAction = Boolean(getPrevUrlCookie(\"\", false, currentUser.role ?? 0, false));\n\n return (\n \n \n Welcome, {currentUser.first_name}!\n
\n Here's what you can do next on Halo.\n \n }\n />\n \n {(() => {\n switch (userType) {\n case \"research-scientist\":\n case \"company-scientist\":\n return (\n <>\n \n \n \n \n );\n case \"company-sponsor\":\n return (\n <>\n \n {subscription?.features.company_scientist_network &&\n (subscription.features.global_network_search ? (\n \n ) : (\n \n ))}\n \n );\n case \"research-administrator\":\n return (\n <>\n \n \n \n );\n }\n })()}\n \n {(hasPreviousAction || userType === \"company-sponsor\") && (\n \n )}\n \n );\n};\n\nexport default Step4;\n\nconst NextStepsContainer = styled.div`\n display: flex;\n gap: 32px;\n\n ${WINDOW_DIMENSIONS.TABLET_MEDIA_QUERY} {\n flex-direction: column;\n }\n`;\n","import toast from \"@components/Toast\";\nimport UserVerificationCode from \"@components/UserVerificationCode\";\nimport { TextButton } from \"@components/library\";\nimport { COLORS } from \"@constants\";\nimport { useSearchParams } from \"@hooks/router\";\nimport haloLogo from \"@images/logos/halo_logo.svg\";\nimport { fetchSubscription } from \"@redux/actions/companyActions\";\nimport { setCurrentUser } from \"@redux/actions/profileActions\";\nimport { RootState } from \"@redux/store\";\nimport { getCompany } from \"@requests/companies\";\nimport { getGoogleScholarAuthors } from \"@requests/googleScholarAuthors\";\nimport { trackRegistration } from \"@requests/hubspot\";\nimport { UserNotVerifiedError, cancelSignUp, onboard } from \"@requests/users\";\nimport { proposal_review_system_path } from \"@routes/routes\";\nimport { useMutation, useQuery } from \"@tanstack/react-query\";\nimport { SegmentEventName } from \"@tsTypes/__generated__/enums\";\nimport { ShowCompany } from \"@tsTypes/index\";\nimport { UserRole } from \"@tsTypes/users\";\nimport { identify, track } from \"@utils/appUtils\";\nimport appsignal from \"@utils/appsignal\";\nimport { t } from \"@utils/i18n\";\nimport { toastErrorHandler } from \"@utils/requests\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useHistory, useParams } from \"react-router-dom\";\nimport styled from \"styled-components\";\nimport { Progress } from \"./Progress\";\nimport Step2 from \"./Step2\";\nimport Step3 from \"./Step3\";\nimport { DISPLAY_INCREMENT, Step3aGoogleScholar } from \"./Step3aGoogleScholar/Step3aGoogleScholar\";\nimport Step4 from \"./Step4\";\n\nexport enum UserDetailedType {\n // Scientist user types\n UNIVERSITY_SCIENTIST = \"university scientist\",\n STARTUP_SCIENTIST = \"startup scientist\",\n SUPPLIER = \"supplier\",\n CONSULTANT = \"consultant\",\n // Sponsor user types\n COMPANY_SPONSOR = \"company sponsor\",\n VENTURE_CAPITAL_SPONSOR = \"venture capital sponsor\", // Deprecated\n GOVERNMENT_SPONSOR = \"government sponsor\", // Deprecated\n // Admin user types\n UNIVERSITY_ADMINISTRATOR = \"university administrator\",\n}\n\nexport interface UserInfo {\n work: string;\n role: string;\n detailedType?: UserDetailedType;\n}\n\nfunction OnboardingContainer() {\n const [profileInfo, setProfileInfo] = useState({});\n const [completionState, setCompletionState] = useState({\n step1: false,\n step2: false,\n step3a: false,\n step3b: false,\n });\n const [userInfo, setUserInfo] = useState({\n work: \"\",\n role: \"\",\n detailedType: undefined,\n });\n const [company, setCompany] = useState(null);\n\n const [selectedGoogleScholarAuthorId, setSelectedGoogleScholarAuthorId] = useState(\n null\n );\n const [googleScholarAuthorsDisplayCount, setGoogleScholarAuthorsDisplayCount] =\n useState(DISPLAY_INCREMENT);\n const [filteredGoogleScholarAuthorIds, setFilteredGoogleScholarAuthorIds] = useState(\n []\n );\n\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n\n const { company_identifier } = useParams();\n const dispatch = useDispatch();\n const history = useHistory();\n\n const [searchParams] = useSearchParams();\n const commenterInviteRequest = searchParams.get(\"commenter_invite_request\");\n\n useEffect(() => {\n if (currentUser.profile_info?.id) {\n history.push(\"/\");\n }\n if (currentUser.verified) {\n onContinue(\"step1\");\n }\n }, []);\n\n useEffect(() => {\n if (completionState.step1 && commenterInviteRequest) {\n setUserInfo({\n ...userInfo,\n role: \"company-sponsor\",\n detailedType: UserDetailedType.COMPANY_SPONSOR,\n });\n setCompletionState({ ...completionState, step1: true, step2: true });\n }\n }, [completionState.step1]);\n\n useEffect(() => {\n (async () => {\n if (company_identifier) {\n try {\n const response = await getCompany(company_identifier);\n setCompany(response.company);\n } catch (error) {\n console.error(error);\n }\n }\n })();\n }, [company_identifier]);\n\n const scrollToRef = useRef(null);\n useEffect(() => {\n scrollToRef.current?.scrollIntoView({ behavior: \"smooth\" });\n track(SegmentEventName.View, {\n react_component: \"OnboardingContainer\",\n completionState,\n });\n }, [completionState]);\n\n const {\n data: googleScholarAuthors,\n refetch: refetchGoogleScholarAuthors,\n isFetching: isGoogleScholarAuthorsFetching,\n } = useQuery({\n queryKey: [\"getGoogleScholarAuthors\"],\n queryFn: getGoogleScholarAuthors,\n refetchInterval: () => {\n if (completionState.step2) {\n return false;\n }\n return 3000;\n },\n onError: (error) => {\n // Even if this fails, the user can still onboard, so quiet the error\n appsignal.sendError(error as any, (span) => {\n span.setAction(\"OnboardingContainer#getGoogleScholarAuthors\");\n });\n },\n });\n\n const onboardMutation = useMutation({\n mutationFn: (userType: string) =>\n onboard({\n userType,\n profileInfo,\n googleScholarAuthorUserId: selectedGoogleScholarAuthorId,\n detailedType: userInfo.detailedType,\n commenterInviteRequest,\n }),\n onError: (error, variables, context): void => {\n if (error instanceof UserNotVerifiedError) {\n setCompletionState({\n step1: false,\n step2: false,\n step3a: false,\n step3b: false,\n });\n toast.error(t(\"pages.onboarding_container.user_not_verified_message\"));\n return;\n }\n toastErrorHandler(error, variables, context);\n },\n onSuccess: async (updatedUser: any) => {\n dispatch(setCurrentUser(updatedUser));\n\n await trackRegistration({\n ...updatedUser,\n ...(updatedUser.userType === \"admin\" && { role: 2 }),\n });\n identify(updatedUser);\n\n if (updatedUser.role === UserRole.SPONSOR) {\n dispatch(fetchSubscription(updatedUser.profile_info.company_identifier));\n\n if (commenterInviteRequest) {\n history.push(proposal_review_system_path({ request: commenterInviteRequest }));\n }\n }\n\n onContinue(\"step3b\");\n },\n });\n\n const cancelSignUpMutation = useMutation({\n mutationFn: () => cancelSignUp(completionState.toString()),\n onSuccess: () => {\n // Take user back to landing page after canceling sign up\n window.location.href = \"/\";\n },\n onError: toastErrorHandler,\n });\n\n const handleOnboard = (userType: string) => {\n if (onboardMutation.isLoading) {\n return;\n }\n onboardMutation.mutate(userType);\n };\n\n const onVerify = () => {\n dispatch(\n setCurrentUser({\n ...currentUser,\n verified: true,\n })\n );\n onContinue(\"step1\");\n };\n\n const updateValue = (value, newValue) => {\n if (newValue !== userInfo[value]) {\n setProfileInfo({\n ...(profileInfo?.university ? { university: profileInfo.university } : null),\n });\n }\n // if user selects a new work value, then clear role value\n if (value === \"work\" && newValue !== userInfo.work) {\n setUserInfo({\n work: newValue,\n role: \"\",\n });\n } else {\n setUserInfo((prevUserInfo) => {\n const updatedUserInfo = { ...prevUserInfo };\n updatedUserInfo[value] = newValue;\n return updatedUserInfo;\n });\n }\n };\n\n // when the back button is pressed, set the previous step to incomplete\n const onBack = (previousStep) => {\n setCompletionState({ ...completionState, [previousStep]: false });\n };\n\n // when the continue button is pressed, set the current step to complete\n const onContinue = (currentStep) => {\n setCompletionState({ ...completionState, [currentStep]: true });\n };\n\n const currentStep = () => {\n const { step1, step2, step3a, step3b } = completionState;\n if (!step1) {\n return ;\n } else if (!step2) {\n return (\n updateValue(\"work\", v)}\n setRole={(v) => updateValue(\"role\", v)}\n setDetailedType={(v) => updateValue(\"detailedType\", v)}\n onContinue={() => {\n refetchGoogleScholarAuthors();\n onContinue(\"step2\");\n }}\n />\n );\n } else if (!step3a) {\n return (\n \n );\n } else if (!step3b) {\n return (\n {\n setCompletionState({\n ...completionState,\n // Go all the way back to step2 if step3a was not supposed to be shown\n step2:\n Number(googleScholarAuthors?.length) > 0 &&\n (userInfo.role === \"research-scientist\" || userInfo.role === \"company-scientist\"),\n step3a: false,\n });\n }}\n profileInfo={profileInfo}\n setProfileInfo={setProfileInfo}\n user={currentUser}\n selectedGoogleScholarAuthor={googleScholarAuthors?.find(\n ({ id }) => id === selectedGoogleScholarAuthorId\n )}\n />\n );\n }\n return ;\n };\n\n const allStepsComplete = Object.values(completionState).every((step) => step);\n\n return (\n \n \n \n {!allStepsComplete && (\n {\n track(SegmentEventName.Click, {\n react_component: \"OnboardingContainer\",\n ui_component: \"Cancel sign up button\",\n });\n cancelSignUpMutation.mutate({});\n }}\n disabled={cancelSignUpMutation.isLoading}\n />\n )}\n \n \n \n
\n {currentStep()}\n \n \n );\n}\n\nexport default OnboardingContainer;\n\nconst OnboardingPage = styled.div`\n display: flex;\n flex: 1;\n flex-direction: column;\n height: 100%;\n width: 100%;\n align-items: center;\n`;\n\nconst Banner = styled.div`\n display: flex;\n justify-content: space-between;\n align-items: center;\n position: relative;\n text-align: center;\n background-color: ${COLORS.WHITE};\n height: 84px;\n margin-bottom: 48px;\n width: 100vw;\n padding: 26px 36px;\n border-bottom: 1px solid ${COLORS.NEUTRAL_200};\n`;\nconst StepContainer = styled.div`\n padding-bottom: 40px;\n`;\n","import MasqueradeBar from \"@components/MasqueradeBar\";\nimport Messenger from \"@components/Messenger/Messenger\";\nimport MobileRestricted from \"@components/MobileRestricted\";\nimport PrivateSponsorRoute from \"@components/PrivateSponsorRoute\";\nimport SubscriptionWarning from \"@components/SubscriptionWarning\";\nimport TaxonomyUpdateModal from \"@components/TaxonomyUpdateModal\";\nimport { Toaster } from \"@components/Toast\";\nimport toast from \"@components/Toast/Toast\";\nimport SSOSponsorOnboardingModal from \"@components/modals/SSOSponsorOnboardingModal\";\nimport { COLORS, FEATURE_FLAGS, JS_FONTS, WINDOW_DIMENSIONS } from \"@constants\";\nimport { fetchSubscription as fetchSubscriptionAction } from \"@redux/actions/companyActions\";\nimport { clearMessengerState as clearMessengerStateAction } from \"@redux/actions/messengerActions\";\nimport { signOut } from \"@requests/users\";\nimport SubmitProposalRedirect from \"@routes/SubmitProposalRedirect\";\nimport { login_path, profile_page_path } from \"@routes/routes\";\nimport { marketplacePath } from \"@routes/utils\";\nimport { MutationCache, QueryClient, QueryClientProvider } from \"@tanstack/react-query\";\nimport { ReactQueryDevtools } from \"@tanstack/react-query-devtools\";\nimport { RequestableType } from \"@tsTypes/requests\";\nimport { UserRole } from \"@tsTypes/users\";\nimport ScrollToTop from \"@utils/ScrollToTop\";\nimport { identify, lazyWithRetry, page, setPageTitle } from \"@utils/appUtils\";\nimport { setPrevUrlCookie } from \"@utils/authUtils\";\nimport { t } from \"@utils/i18n\";\nimport { StyleSheet, css } from \"aphrodite\";\nimport axios from \"axios\";\nimport dayjs from \"dayjs\";\nimport { PureComponent, Suspense } from \"react\";\nimport { connect } from \"react-redux\";\nimport { Redirect, Route, Switch } from \"react-router-dom\";\nimport { Slide, ToastContainer } from \"react-toastify\";\nimport { Loader } from \"semantic-ui-react\";\nimport Footer from \"./components/Footer\";\nimport Navbar from \"./components/Navbar\";\nimport PrivateRoute from \"./components/PrivateRoute\";\nimport { USER_ROLES } from \"./constants/users\";\nimport {\n checkUnread as checkUnreadAction,\n fetchCurrentUser as fetchCurrentUserAction,\n setCurrentUser as setCurrentUserAction,\n} from \"./redux/actions/profileActions\";\nimport { updateWindowDimension as updateWindowDimensionAction } from \"./redux/actions/windowDimensionsActions\";\nimport NotificationCampaignRoutes from \"./routes/notification_campaign_routes\";\nimport OpportunityRoutes from \"./routes/opportunity_routes\";\nimport RequestForExpertRoutes from \"./routes/request_for_expert_routes\";\nimport RfpRoutes from \"./routes/rfp_routes\";\nimport ErrorBoundary from \"./views/ErrorBoundary\";\nimport OnboardingContainer from \"./views/Onboarding/OnboardingContainer\";\nimport Unauthorized401 from \"./views/StatusPages/401\";\nimport Forbidden403 from \"./views/StatusPages/403\";\nimport NotFound404 from \"./views/StatusPages/404\";\nconst RequestForStartupPage = lazyWithRetry(() => import(\"./views/RequestForStartupPage\"));\nconst JobPage = lazyWithRetry(() => import(\"./views/JobPage\"));\nconst CompanyPage = lazyWithRetry(() => import(\"./views/CompanyPage\"));\nconst ProfilePage = lazyWithRetry(() => import(\"./views/ProfilePage\"));\nconst ReviewerDashboard = lazyWithRetry(() => import(\"./views/ReviewerDashboard\"));\nconst ProposalReviewSystem = lazyWithRetry(() => import(\"./views/ProposalReviewSystem\"));\nconst Account = lazyWithRetry(() => import(\"./views/Account\"));\nconst RfpOpenCallProposalForm = lazyWithRetry(() => import(\"./views/RfpOpenCallProposalForm\"));\nconst RequestForStartupProposalForm = lazyWithRetry(\n () => import(\"./views/RequestForStartupProposalForm\")\n);\nconst RequestForExpertProposalForm = lazyWithRetry(\n () => import(\"./views/RequestForExpertProposalForm\")\n);\nconst CommercialApplicationPage = lazyWithRetry(() => import(\"./views/CommercialApplicationPage\"));\nconst ResearchPage = lazyWithRetry(() => import(\"./views/ResearchPage\"));\nconst Marketplace = lazyWithRetry(() => import(\"./views/Marketplace\"));\nconst TermsPage = lazyWithRetry(() => import(\"./views/TermsPage\"));\nconst PrivacyPage = lazyWithRetry(() => import(\"./views/PrivacyPage\"));\nconst ContactPage = lazyWithRetry(() => import(\"./views/ContactPage\"));\nconst SponsorTeam = lazyWithRetry(() => import(\"./views/SponsorTeam\"));\nconst ForgotPassword = lazyWithRetry(() => import(\"./views/ForgotPassword\"));\nconst ChangePassword = lazyWithRetry(() => import(\"./views/ChangePassword\"));\nconst ProposalPage = lazyWithRetry(() => import(\"./views/ProposalPage\"));\nconst ScientistProposalLibrary = lazyWithRetry(() => import(\"./views/ScientistProposalLibrary\"));\nconst Careers = lazyWithRetry(() => import(\"./views/Careers\"));\nconst Inbox = lazyWithRetry(() => import(\"./views/Inbox\"));\nconst ProposalLibrary = lazyWithRetry(() => import(\"./views/ProposalLibrary\"));\nconst ScientistNetwork = lazyWithRetry(() => import(\"./views/ScientistNetwork\"));\nconst AboutUs = lazyWithRetry(() => import(\"./views/AboutUs\"));\nconst LoginPage = lazyWithRetry(() => import(\"./views/LoginPage\"));\nconst SignUp = lazyWithRetry(() => import(\"./views/SignUp/SignUp\"));\nconst ScientistNetworkSignUp = lazyWithRetry(() => import(\"./views/ScientistNetworkSignUp\"));\nconst RecommendedRfpSignUp = lazyWithRetry(() => import(\"./views/RecommendedRfpSignUp\"));\nconst UniversityProposalLibrary = lazyWithRetry(() => import(\"./views/UniversityProposalLibrary\"));\nconst UniversityTeam = lazyWithRetry(() => import(\"./views/UniversityTeam\"));\nconst FeatureRequestSplashPage = lazyWithRetry(() => import(\"./views/FeatureRequestSplashPage\"));\n\nconst { TABLET_MEDIA_QUERY } = WINDOW_DIMENSIONS;\n\nexport enum RequestType {\n REQUEST_FOR_PROPOSAL = \"request_for_proposal\",\n OPEN_CALL = \"open_call\",\n REQUEST_FOR_STARTUP = \"request_for_startup\",\n REQUEST_FOR_EXPERT = \"request_for_experts\",\n}\n\nexport const REQUESTABLE_TO_REQUEST_TYPE = {\n [RequestableType.RFP]: RequestType.REQUEST_FOR_PROPOSAL,\n [RequestableType.OPEN_CALL]: RequestType.OPEN_CALL,\n [RequestableType.REQUEST_FOR_STARTUP]: RequestType.REQUEST_FOR_STARTUP,\n [RequestableType.REQUEST_FOR_EXPERT]: RequestType.REQUEST_FOR_EXPERT,\n};\n\n// TODO: (overload119) Add correct typing.\ntype Props = any;\ninterface State {\n isTaxonomyUpdateModalOpen: boolean;\n isSSOSponsorOnboardingModalOpen: boolean;\n isCurrentUserLoading: boolean;\n}\n\nconst queryClient = new QueryClient({\n mutationCache: new MutationCache({\n onError: (error, _variables, _context, mutation) => {\n // Skip if the mutation has its own error handler\n if (mutation.options.onError) return;\n\n const meta = mutation.meta;\n if (!meta?.useGlobalErrorHandler || !axios.isAxiosError(error)) {\n return;\n }\n\n const errorMessage = error.response?.data?.error ?? error.response?.data.errors;\n if (Array.isArray(errorMessage)) {\n toast.error(\n
\n The following errors prevented that action:\n
    \n {errorMessage.map((err) => (\n
  • {err}
  • \n ))}\n
\n
\n );\n } else if (errorMessage) {\n toast.error(errorMessage);\n } else if (error.response?.status === 401) {\n toast.error(\n
\n You have to be logged in to do that. Click here to log in\n
\n );\n } else if (error.response?.status === 403) {\n toast.error(\"You don't have permission to do that.\");\n } else {\n const status = error?.response?.status;\n toast.error(\n t([\"error\", status ? \"default_with_code\" : \"default\"], { status: status ?? 500 })\n );\n }\n },\n }),\n defaultOptions: {\n queries: {\n refetchOnWindowFocus: false,\n },\n },\n});\n\nconst TIMEOUT_IN_MS = 900000; // 15 minutes\nlet sessionTimer: null | number = null;\n\nconst isPageRequiringReload = (url: string): boolean => {\n return url.startsWith(\"/scientists\");\n};\n\nclass App extends PureComponent {\n listener: (() => void) | null;\n\n constructor(props) {\n super(props);\n\n this.listener = null;\n this.state = {\n isTaxonomyUpdateModalOpen: false,\n isSSOSponsorOnboardingModalOpen: false,\n isCurrentUserLoading: true,\n };\n\n axios.defaults.headers.common.Accept = \"application/json\";\n axios.defaults.headers.common[\"Content-Type\"] = \"application/json\";\n }\n\n async componentDidMount() {\n const {\n updateWindowDimension,\n fetchCurrentUser,\n checkUnread,\n clearMessengerState,\n fetchSubscription,\n history,\n } = this.props;\n\n this.listener = history.listen((location, action: \"POP\" | \"PUSH\") => {\n if (action === \"POP\" && isPageRequiringReload(location.pathname)) {\n window.location.reload();\n }\n });\n\n checkUnread();\n page();\n\n // Listen for window resizing, and update `windowDimension` in Redux\n window.addEventListener(\"resize\", updateWindowDimension);\n\n if (window.outerWidth > 0 && window.outerHeight > 0) {\n // Sometimes window hasn't fully loaded yet so we shouldn't set to 0 in those\n // cases\n updateWindowDimension();\n }\n\n const user = await fetchCurrentUser(true);\n\n if (!user.id) {\n clearMessengerState();\n } else {\n // Fetch subscription info if user is a sponsor\n if (user.role === USER_ROLES.sponsor) {\n fetchSubscription(user.profile_info.company_identifier);\n }\n\n const wasUserCreatedMoreThan1DayAgo = dayjs().diff(dayjs(user.created_at), \"days\") > 1;\n const isSponsorUserMissingTitleAndRole =\n user?.role === UserRole.SPONSOR &&\n user.profile_info &&\n !user.profile_info.title &&\n !user.profile_info.role;\n\n this.setState({\n isTaxonomyUpdateModalOpen:\n !location.pathname.startsWith(\"/onboarding\") &&\n !location.pathname.startsWith(\"/contact\") &&\n user?.role !== UserRole.UNIVERSITY_ADMIN &&\n user?.has_updated_taxonomy === false,\n isSSOSponsorOnboardingModalOpen:\n !location.pathname.startsWith(\"/onboarding\") &&\n !location.pathname.startsWith(\"/network\") &&\n !location.pathname.startsWith(\"/contact\") &&\n wasUserCreatedMoreThan1DayAgo &&\n isSponsorUserMissingTitleAndRole,\n });\n }\n\n this.setState({\n isCurrentUserLoading: false,\n });\n\n // Move webflow content into the webflow container in order to place between navbar and footer\n const webflowContent = document.getElementById(\"webflow-content\");\n if (webflowContent) {\n const webflowContainer = document.getElementById(\"webflow-container\");\n\n if (\n this.props.location.pathname === \"/\" ||\n this.props.location.pathname.startsWith(\"/scientists\")\n ) {\n webflowContainer?.appendChild(webflowContent);\n\n // Display the webflow content after moving to prevent initial flashing\n webflowContent.style.display = \"block\";\n }\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.windowWidth === this.props.windowWidth) {\n this.props.checkUnread();\n }\n\n if (this.props?.currentUser) {\n identify(this.props.currentUser);\n\n // NOTE: (overload119) An idle page will\n // auto-logout if this feature is enabled.\n if (this.props.currentUser?.id && FEATURE_FLAGS.SESSION_TIMEOUT) {\n // Prevent more than 1 instance of the timeout.\n if (sessionTimer !== null) {\n clearTimeout(sessionTimer);\n }\n sessionTimer = setTimeout(async () => {\n await signOut();\n toast.error(\"You have been signed out due to inactivity.\");\n clearTimeout(sessionTimer as number);\n sessionTimer = null;\n }, TIMEOUT_IN_MS) as unknown as number;\n }\n }\n\n if (this.props.location !== prevProps.location) {\n page();\n }\n }\n\n componentWillUnmount() {\n const { updateWindowDimension } = this.props;\n window.removeEventListener(\"resize\", updateWindowDimension);\n this.listener?.();\n }\n\n render() {\n const { location, currentUser } = this.props;\n\n setPageTitle(location.pathname);\n\n const isWebflow = location.pathname === \"/\" || location.pathname.startsWith(\"/scientists\");\n\n const noFooter =\n location.pathname.includes(\"/submit_proposal\") ||\n location.pathname.startsWith(\"/opportunities\") ||\n location.pathname.startsWith(\"/university_dashboard\") ||\n location.pathname.startsWith(\"/submit/\") ||\n location.pathname.startsWith(\"/inbox\") ||\n location.pathname.startsWith(\"/login\") ||\n location.pathname.startsWith(\"/get-started\") ||\n location.pathname.startsWith(\"/preview-rfp/\") ||\n location.pathname.startsWith(\"/onboarding\") ||\n location.pathname.includes(\"/signup\") ||\n location.pathname.startsWith(\"/review_system\");\n\n const noChat =\n !currentUser.id ||\n location.pathname.includes(\"/submit_proposal\") ||\n location.pathname.startsWith(\"/submit/\") ||\n location.pathname.startsWith(\"/preview-rfp/\") ||\n location.pathname.startsWith(\"/onboarding\") ||\n location.pathname.includes(\"/signup\");\n\n // Track original referrer id\n if (localStorage && !localStorage.getItem(\"original_referrer_id\")) {\n const urlParams = new URLSearchParams(window.location.search);\n const referrer_id = urlParams.get(\"referrer_id\");\n\n if (referrer_id) {\n localStorage.setItem(\"original_referrer_id\", referrer_id);\n }\n }\n\n // HACK: Temporary fix for unsubscribe page not working.\n // Remove this later and rethink this statement.\n if (\n (!location.pathname.startsWith(\"/contact\") &&\n !location.pathname.startsWith(\"/unsubscribe\") &&\n !gon.current_user_id &&\n currentUser.id) ||\n this.state.isCurrentUserLoading\n ) {\n return ;\n }\n\n let homepage = marketplacePath();\n if (currentUser.role === USER_ROLES.sponsor) {\n if (currentUser.profile_info.commenter) homepage = \"/reviewer_dashboard/proposals\";\n else homepage = \"/reviewer_dashboard\";\n }\n if (currentUser.role === USER_ROLES.university_admin) homepage = \"/university_dashboard/team\";\n\n return (\n \n {gon.user_masquerade && }\n \n
\n \n {!noChat && }\n \n {currentUser.role === UserRole.SPONSOR && }\n \n \n }\n >\n {this.state.isTaxonomyUpdateModalOpen && (\n this.setState({ isTaxonomyUpdateModalOpen: false })}\n />\n )}\n {this.state.isSSOSponsorOnboardingModalOpen && (\n this.setState({ isSSOSponsorOnboardingModalOpen: false })}\n />\n )}\n \n {currentUser.id && (\n \n \n \n )}\n \n \n \n \n \n \n {currentUser.id ? (\n \n \n \n ) : (\n {\n setPrevUrlCookie(\"/get-started/keywords\");\n return ;\n }}\n />\n )}\n \n \n {/* Regular onboarding */}\n \n \n {({ match }) => {\n const { request_type } = match.params;\n switch (request_type) {\n case RequestType.REQUEST_FOR_PROPOSAL:\n case RequestType.OPEN_CALL:\n return ;\n case RequestType.REQUEST_FOR_STARTUP:\n return ;\n case RequestType.REQUEST_FOR_EXPERT:\n return ;\n default:\n console.error(\"Unexpected request_type: %s.\", request_type);\n }\n }}\n \n \n \n \n \n \n \n (\n \n )}\n />\n \n \n (\n \n \n \n )}\n />\n \n \n \n \n \n {/* NOTE: (justinpchang) Consider refactoring route once more request types are added */}\n \n \n \n \n \n {RfpRoutes}\n {RequestForExpertRoutes}\n {NotificationCampaignRoutes}\n {OpportunityRoutes}\n \n {FEATURE_FLAGS.COMMERCIAL_APPLICATIONS ? (\n \n ) : (\n \n )}\n \n \n \n \n \n \n \n \n \n \n \n \n {/*\n We render nothing on / since the Webflow layout is active on this page.\n For unhandled routes we use window.location.href which properly refreshes the assets\n and loads the Webflow layout. Otherwise it'd be an empty screen.\n */}\n \n \n \n \n \n \n \n \n \n
\n
\n {isWebflow &&
}\n \n \n {!noFooter &&
}\n \n {!process.env.CYPRESS && }\n \n );\n }\n}\n\nconst mapStateToProps = (state) => ({\n currentUser: state.profiles.currentUser,\n windowWidth: state.window.width,\n});\n\nconst mapDispatchToProps = {\n updateWindowDimension: updateWindowDimensionAction,\n fetchCurrentUser: fetchCurrentUserAction,\n setCurrentUser: setCurrentUserAction,\n checkUnread: checkUnreadAction,\n clearMessengerState: clearMessengerStateAction,\n fetchSubscription: fetchSubscriptionAction,\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(App);\n\nconst styles = StyleSheet.create({\n Marketplace_app: {\n position: \"relative\",\n display: \"grid\",\n height: \"fit-content\",\n gridTemplateColumns: \"100%\",\n },\n Marketplace_mainContainer: {\n display: \"inline-block\",\n position: \"relative\",\n minHeight: \"100vh\",\n marginBottom: \"40px\",\n },\n Marketplace_mobileContainer: {\n [TABLET_MEDIA_QUERY]: {\n \":nth-child(1n) > .ui.container\": {\n marginLeft: \"unset\",\n marginRight: \"unset\",\n paddingLeft: \"unset\",\n paddingRight: \"unset\",\n },\n },\n },\n Marketplace_noFooter: {\n marginBottom: \"0px\",\n },\n toast_body: {\n color: COLORS.WHITE,\n marginRight: \"10px\",\n ...JS_FONTS.MEDIUM_3,\n },\n toast_progress: {\n background: COLORS.HALO_BLUE,\n },\n toast_inner: {\n padding: \"15px\",\n paddingBottom: \"20px\",\n borderRadius: \"4px\",\n },\n toast_container: {\n zIndex: 1000000,\n },\n toast_close: {\n position: \"initial\",\n },\n});\n","import { StyledLink } from \"@components/Footer/Footer\";\nimport { Button } from \"@components/library\";\nimport { toggleLoginModal } from \"@redux/actions/profileActions\";\nimport { RootState } from \"@redux/store\";\nimport { SegmentEventName } from \"@tsTypes/__generated__/enums\";\nimport { UserRole } from \"@tsTypes/users\";\nimport { track } from \"@utils/appUtils\";\nimport { setPrevUrlCookie } from \"@utils/authUtils\";\nimport { useEffect } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport styled from \"styled-components\";\n\ninterface Props {\n type?: \"button\" | \"link\";\n}\n\nconst CANNY_APP_ID = \"660af386fa664b82e994fd67\";\n\nconst FeatureRequestButton = ({ type = \"link\" }: Props) => {\n const { id, name, email, image, role, profile_info, created_at, roles } = useSelector(\n (state: RootState) => state.profiles.currentUser\n );\n const isSponsor = role === UserRole.SPONSOR;\n const isUniversityAdmin = role === UserRole.UNIVERSITY_ADMIN;\n\n const dispatch = useDispatch();\n\n useEffect(() => {\n if (!id) return;\n\n let userType: \"Scientist\" | \"Sponsor\" | \"University Admin\" = \"Scientist\";\n if (isSponsor) userType = \"Sponsor\";\n else if (isUniversityAdmin) userType = \"University Admin\";\n\n window.Canny?.(\"identify\", {\n appID: CANNY_APP_ID,\n user: {\n id,\n name,\n email,\n avatarURL: image.url,\n created: new Date(created_at).toISOString(),\n ...(isSponsor && {\n companies: [\n {\n id: profile_info.company_id,\n name: profile_info.company_name,\n },\n ],\n }),\n // Canny prettifies custom field names in the UI using snake_case (or kebab-case)\n customFields: {\n user_type: userType,\n ...(role === UserRole.SCIENTIST && {\n is_startup_scientist: profile_info.is_startup_scientist,\n scientist_affiliation: profile_info.location,\n scientist_number_of_proposals: (profile_info.proposals || []).filter(\n (proposal) => proposal.completed && !proposal.deleted_at\n ).length,\n }),\n ...(isSponsor && {\n is_company_admin: profile_info.is_admin,\n is_company_super_admin: profile_info.is_super_admin,\n sponsor_license_type: profile_info.license,\n sponsor_number_of_review_teams: roles.filter(\n (_role) => _role.resource_type === \"Request\"\n ).length,\n }),\n ...(isUniversityAdmin && {\n university_admin_affiliation: profile_info.university,\n university_admin_number_of_invites: profile_info.invited_users_count,\n university_admin_number_of_accepted_invites: profile_info.accepted_users_count,\n }),\n },\n },\n });\n }, [id]);\n\n const handleClick = () => {\n track(SegmentEventName.Click, {\n ui_component: `Feature Request Button (${type === \"button\" ? \"Splash Page\" : \"Footer\"})`,\n });\n\n if (!id) {\n setPrevUrlCookie(window.location.pathname);\n dispatch(\n toggleLoginModal({\n open: true,\n previousAction: \"submit-feature-request\",\n })\n );\n return;\n }\n\n const authenticatedLink = window.Canny?.(\n \"authenticateCannyLink\",\n isSponsor\n ? \"https://halo-science.canny.io/feature-requests\"\n : \"https://halo-science.canny.io/scientists-startups-feature-requests\"\n );\n window.open(authenticatedLink, \"_blank\");\n };\n\n return type === \"button\" ? (\n \n ) : (\n \n \n Feature requests\n \n \n );\n};\n\nexport default FeatureRequestButton;\n\nconst LinkContainer = styled.div`\n line-height: 1;\n button {\n padding: 0;\n background: none;\n border: none;\n &:focus {\n outline: none;\n }\n }\n`;\n","import FeatureRequestButton from \"@components/FeatureRequestButton\";\nimport { GradientButton, Icon } from \"@components/library\";\nimport { COLORS, FONTS, WINDOW_DIMENSIONS } from \"@constants\";\nimport haloLogo from \"@images/halo-inverse.svg\";\nimport { Link } from \"react-router-dom\";\nimport styled from \"styled-components\";\n\nconst Footer = () => {\n return (\n \n \n \n \n \n
\n Discover tomorrow's\n
\n breakthroughs today.\n
\n \n Get new partnering opportunities\n
\n delivered to your inbox.\n
\n
\n \n Subscribe\n \n
\n
\n \n \n \n \n \n \n \n \n \n \n \n Company\n \n About\n \n \n Blog\n \n \n Careers\n \n \n Halo Awards\n \n \n \n Support\n \n FAQs\n \n \n Help center\n \n \n \n Contact us\n \n \n \n Sponsors\n \n Request a demo\n \n \n Customer stories\n \n {/* TODO: (thaske) temporarily hide until we have this */}\n {/* Claim your page */}\n \n \n
\n \n \n \n \n \n \n \n \n
\n \n \n \n \n \n Privacy Policy\n \n \n Terms of Service\n \n {/* TODO: (thaske) temporarily hide until we have this */}\n {/* Cookie Policy */}\n {/* Accessibility Policy */}\n \n © 2023 Halo Cures, Inc.\n \n \n
\n );\n};\n\nexport default Footer;\n\nconst FOOTER_MEDIA_QUERY = `@media (max-width: 1090px)`;\n\nconst OuterContainer = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n\n position: relative;\n\n padding: 76px ${WINDOW_DIMENSIONS.PAGE_SIDE_PADDING}px 40px;\n\n ${FONTS.REGULAR_1}\n color: ${COLORS.WHITE};\n background-color: ${COLORS.NEUTRAL_900};\n\n ${FOOTER_MEDIA_QUERY} {\n padding: 80px 32px 32px;\n }\n`;\n\nconst InnerContainer = styled.div`\n max-width: ${WINDOW_DIMENSIONS.DEFAULT_MAX_WIDTH}px;\n width: 100%;\n`;\n\nconst TopContainer = styled.div`\n display: flex;\n justify-content: space-between;\n\n margin: 0 0 48px;\n\n ${FOOTER_MEDIA_QUERY} {\n flex-direction: column;\n gap: 0;\n }\n`;\n\nconst Logo = styled.img`\n width: 65px;\n height: 32px;\n\n ${FOOTER_MEDIA_QUERY} {\n margin: 0 0 64px;\n }\n`;\n\nconst Header = styled.div`\n ${FONTS.HEADING_3_REGULAR};\n margin: 0 0 39px;\n\n ${FOOTER_MEDIA_QUERY} {\n margin: 0 0 24px;\n }\n`;\n\nconst SubHeader = styled.div`\n margin-bottom: 20px;\n`;\n\nconst EmailDigestCTAContainer = styled.div`\n display: flex;\n flex-direction: column;\n\n width: 440px;\n\n @media (max-width: 1440px) {\n width: unset;\n }\n`;\n\n// Also used in FeatureRequestButton, which mainly exists as a \"link\" in the footer\nexport const StyledLink = styled(Link)<{ color?: string }>`\n width: fit-content;\n\n ${FONTS.REGULAR_1}\n\n color: ${({ color }) => color || COLORS.WHITE};\n\n &&:hover {\n color: ${COLORS.BLUE_LIGHT_600};\n\n text-decoration: underline !important;\n text-decoration-color: ${COLORS.BLUE_600} !important;\n -webkit-text-decoration-color: ${COLORS.BLUE_600} !important;\n text-underline-offset: 4px !important;\n }\n\n &:focus {\n color: ${COLORS.WHITE};\n text-decoration: none;\n }\n`;\n\nconst LinksContainer = styled.div`\n display: flex;\n gap: 110px;\n\n ${FOOTER_MEDIA_QUERY} {\n flex-wrap: wrap;\n row-gap: 48px;\n\n margin: 42px 0 0;\n }\n`;\n\nconst LinkColumn = styled.div`\n display: flex;\n flex-direction: column;\n gap: 16px;\n\n & ${StyledLink} {\n line-height: 1 !important;\n }\n`;\n\nconst LinkHeader = styled.div`\n ${FONTS.SEMIBOLD_1}\n\n margin: 0 0 24px;\n\n ${FOOTER_MEDIA_QUERY} {\n margin: 0 0 8px;\n }\n`;\n\nconst SocialIcons = styled.div`\n display: flex;\n margin: 0 0 30px;\n\n ${FOOTER_MEDIA_QUERY} {\n display: none;\n }\n`;\n\nconst MobileSocialIcons = styled.div`\n display: none;\n margin: 0 0 30px;\n\n ${FOOTER_MEDIA_QUERY} {\n display: flex;\n margin: 32px 0;\n }\n`;\n\nconst Line = styled.div<{ mobileOnly?: boolean }>`\n height: 1px;\n width: 100vw;\n background: rgba(217, 217, 217, 0.2);\n\n ${({ mobileOnly }) =>\n mobileOnly &&\n `\n display: none;\n\n ${FOOTER_MEDIA_QUERY} {\n display: block;\n\n position: relative;\n left: -32px;\n }\n `}\n`;\n\nconst BottomContainer = styled.div`\n display: flex;\n justify-content: space-between;\n width: 100%;\n padding: 40px 0 0;\n\n ${FOOTER_MEDIA_QUERY} {\n flex-direction: column;\n padding: 0;\n }\n`;\n\nconst BottomLinks = styled.div`\n display: flex;\n gap: 34px;\n\n line-height: 1;\n\n ${FOOTER_MEDIA_QUERY} {\n flex-direction: column;\n gap: 16px;\n\n margin: 48px 0 84px;\n }\n`;\n\nconst CopyRight = styled.div`\n ${FONTS.REGULAR_1}\n\n color: ${COLORS.NEUTRAL_250};\n\n ${FOOTER_MEDIA_QUERY} {\n width: 100%;\n text-align: center;\n }\n`;\n","import { COLORS, FONTS, JS_FONTS, WINDOW_DIMENSIONS } from \"@constants\";\nimport { StyleSheet } from \"aphrodite\";\nimport styled from \"styled-components\";\n\nconst { MOBILE_MEDIA_QUERY } = WINDOW_DIMENSIONS;\n\nexport const styles = StyleSheet.create({\n InviteModal_modal: {\n maxWidth: \"654px\",\n width: \"100% !important\",\n padding: \"40px 38px !important\",\n overflow: \"visible\",\n [MOBILE_MEDIA_QUERY]: {\n width: \"350px\",\n padding: \"4.8em 2em\",\n },\n },\n InviteModal_content: {\n padding: \"0px\",\n maxHeight: \"none\",\n },\n InviteModal_modalTextArea: {\n width: \"100%\",\n maxWidth: \"574px\",\n height: \"190px\",\n margin: \"auto\",\n padding: \"10px\",\n ...JS_FONTS.REGULAR_2,\n color: COLORS.BLACK,\n resize: \"none\",\n borderRadius: \"3px\",\n border: `1px solid ${COLORS.NEUTRAL_400}`,\n \":focus\": {\n outline: \"none\",\n borderColor: COLORS.HALO_BLUE,\n boxShadow: \"none !important\",\n },\n \"::placeholder\": {\n color: COLORS.NEUTRAL_500,\n ...JS_FONTS.REGULAR_2,\n },\n },\n InviteModal_modalInput: {\n margin: \".3rem 0 .3rem .3rem\",\n ...JS_FONTS.REGULAR_2,\n border: \"none\",\n outline: \"none\",\n background: \"transparent\",\n \":focus\": {\n outline: \"none\",\n border: \"none\",\n },\n \"::placeholder\": {\n color: COLORS.NEUTRAL_500,\n },\n },\n InviteModal_modalInputZero: {\n marginLeft: \"10px\",\n },\n InviteModal_modalButtonHolder: {\n width: \"100%\",\n maxWidth: \"357px\",\n display: \"flex\",\n textAlign: \"right\",\n marginTop: \"16px\",\n },\n InviteModal_header: {\n display: \"flex\",\n justifyContent: \"space-between\",\n ...JS_FONTS.HEADING_4_SEMIBOLD,\n color: COLORS.BLACK,\n textAlign: \"left\",\n margin: \"0 auto 15px\",\n },\n InviteModal_closeModalButton: {\n width: \"12px\",\n height: \"12px\",\n cursor: \"pointer\",\n marginLeft: \"6px\",\n },\n InviteModal_subheader: {\n color: COLORS.BLACK,\n ...JS_FONTS.REGULAR_2,\n margin: \"0px auto 21px\",\n textAlign: \"left\",\n },\n ConfirmationInviteModal_subheader: {\n margin: \"0px auto 10px\",\n },\n ConfirmationInviteModal_footer: {\n margin: \"30px auto\",\n },\n InviteModal_deleteIcon: {\n width: \"12px\",\n height: \"12px\",\n border: \"none\",\n ...JS_FONTS.MEDIUM_1,\n margin: \"6px\",\n padding: 0,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n cursor: \"pointer\",\n },\n InviteModal_errorMessage: {\n marginTop: \"5px\",\n color: COLORS.RED,\n ...JS_FONTS.REGULAR_2,\n textAlign: \"left\",\n marginBottom: \"5px\",\n },\n InviteModal_errorField: {\n border: `solid 1px ${COLORS.RED}`,\n },\n InviteModal_emailChip: {\n backgroundColor: COLORS.NEUTRAL_200,\n ...JS_FONTS.REGULAR_2,\n borderRadius: \"3px\",\n height: \"24px\",\n color: COLORS.BLACK,\n padding: \"0 4px 0 1rem\",\n display: \"inline-flex\",\n alignItems: \"center\",\n margin: \"0.3rem\",\n position: \"relative\",\n },\n InviteModal_invalidEmailChip: {\n backgroundColor: \"#FFEDED\",\n },\n ConfirmationInviteModal_emailChip: {\n padding: \"4px 6px\",\n },\n InviteModal_modalInputDiv: {\n width: \"574px\",\n display: \"flex\",\n flexWrap: \"wrap\",\n minHeight: \"38px\",\n margin: \"0px auto 0px\",\n ...JS_FONTS.REGULAR_2,\n border: `1px solid ${COLORS.NEUTRAL_400}`,\n borderRadius: \"3px\",\n },\n InviteModal_smallerInputDiv: {\n width: \"429px\",\n },\n InviteModal_modalInputDivFocus: {\n outline: \"none\",\n borderColor: COLORS.HALO_BLUE,\n },\n InviteModal_inputLabel: {\n ...JS_FONTS.REGULAR_2,\n color: COLORS.BLACK,\n marginBottom: \"5px\",\n },\n InviteModal_inputLabelDropdown: {\n marginLeft: \"15px\",\n },\n InviteModal_emailDropdown: {\n display: \"flex\",\n position: \"absolute\",\n alignItems: \"center\",\n marginBottom: \"12px\",\n paddingLeft: \"10px\",\n minHeight: \"36px\",\n width: \"100%\",\n color: COLORS.HALO_BLUE,\n backgroundColor: COLORS.WHITE,\n ...JS_FONTS.REGULAR_2,\n border: `0.5px solid ${COLORS.NEUTRAL_200}`,\n boxSizing: \"border-box\",\n borderRadius: \"3px\",\n \":hover\": {\n opacity: 1,\n cursor: \"pointer\",\n },\n },\n InviteModal_modalInputDivFilled: {\n padding: \"0.6rem 0px 0.6rem 0.6rem \",\n },\n});\n\nexport const InviteModalDropdown = styled.div`\n margin-left: 14px;\n width: 130px !important;\n height: 38px !important;\n ${FONTS.REGULAR_2};\n padding: 10px 11px !important;\n border-radius: 3px !important;\n border: ${(props) =>\n props.dropdownActive\n ? `1px solid ${COLORS.HALO_BLUE}`\n : `1px solid ${COLORS.NEUTRAL_400}`} !important;\n &&&&&& i {\n ${FONTS.REGULAR_3};\n color: ${(props) => (props.dropdownActive ? COLORS.HALO_BLUE : COLORS.NEUTRAL_400)};\n margin-right: 0px;\n position: relative;\n right: 0px;\n padding-left: ${(props) => (props.admin ? \"6px\" : \"46px\")};\n }\n`;\nexport const DropdownMenu = styled.div`\n &&&& {\n max-height: unset;\n width: 350px;\n box-sizing: border-box;\n border: 0.5px solid ${COLORS.NEUTRAL_200};\n border-radius: 0px;\n overflow: auto;\n margin-top: 1px;\n }\n`;\nexport const DropdownItem = styled.div`\n border: 2px solid ${COLORS.BLUE_LIGHT_300};\n box-sizing: border-box;\n box-shadow: 0px 14px 24px rgba(151, 158, 170, 0.25);\n border-radius: 3px;\n &&&& {\n ${FONTS.MEDIUM_2};\n color: ${(props) => (props.red ? COLORS.RED : COLORS.BLACK)} !important;\n border-bottom: 1px solid ${COLORS.NEUTRAL_200};\n height: 83px;\n }\n`;\nexport const DropdownSubHeader = styled.div`\n ${FONTS.REGULAR_3};\n color: ${COLORS.NEUTRAL_500};\n margin-top: 5px;\n`;\nexport default styles;\n","import { Button, Icon, IconButton } from \"@components/library\";\nimport { COLORS } from \"@constants\";\nimport { fetchUniversityMembers as fetchUniversityMembersAction } from \"@redux/actions/defaultActions\";\nimport { SegmentEventName, SegmentEventObject } from \"@tsTypes/__generated__/enums\";\nimport { UserRole } from \"@tsTypes/users\";\nimport { track, usedPersonalEmail } from \"@utils/appUtils\";\nimport { css } from \"aphrodite\";\nimport { PureComponent } from \"react\";\nimport { connect } from \"react-redux\";\nimport { Dropdown, Modal } from \"semantic-ui-react\";\nimport api from \"src/requests/request\";\nimport Validator from \"validator\";\nimport {\n DropdownItem,\n DropdownMenu,\n DropdownSubHeader,\n InviteModalDropdown,\n styles,\n} from \"./InviteModal.styles\";\n\nconst ROLES = {\n 0: \"Faculty\",\n 2: \"Administrator\",\n};\n\nclass InviteModal extends PureComponent {\n constructor(props) {\n super(props);\n this.state = {\n contactModalLoading: false,\n message: props.inviteMessage,\n toEmails: \"\",\n email: \"\",\n isExpanded: true,\n step: 0,\n emailList: [],\n error: \"\",\n focused: true,\n dropdownActive: false,\n role: props.role,\n };\n }\n\n initialState = () => {\n const { inviteMessage, role } = this.props;\n\n return {\n contactModalLoading: false,\n message: inviteMessage,\n toEmails: \"\",\n email: \"\",\n isExpanded: true,\n error: \"\",\n step: 0,\n emailList: [],\n focused: true,\n role: role,\n };\n };\n\n componentDidUpdate(prevProps) {\n if (prevProps.open !== this.props.open) {\n this.setState(this.initialState());\n }\n }\n\n handleSubmitMessage = async (e) => {\n const {\n closeModal,\n currentUser,\n typeOfInvite,\n inviteUrl,\n organization,\n trackAndToastHandler,\n requestId,\n fetchUniversityMembers,\n } = this.props;\n\n const { role } = this.state;\n\n e.preventDefault();\n\n const { message, isExpanded, emailList } = this.state;\n\n this.setState({\n contactModalLoading: true,\n });\n\n const emails = emailList\n .map((email) => {\n return email.value;\n })\n .join(\",\");\n\n const data = {\n ...(isExpanded && message && message.length > 0 && { message }),\n to_emails: emails,\n organization,\n role,\n invited_by: currentUser.id,\n };\n\n if (requestId) data.request_id = requestId;\n\n const responseJson = await api.post(inviteUrl, data);\n\n if (!responseJson.data.success) {\n this.setState({\n contactModalLoading: false,\n });\n } else {\n if (typeOfInvite === \"shareRFP\") {\n track(SegmentEventName.Share, {\n request_id: requestId,\n object: SegmentEventObject.Request,\n });\n\n // Don't display confirmation modal for sharing an RFP\n closeModal();\n }\n\n this.setState({\n message: \"\",\n contactModalLoading: false,\n toEmails: \"\",\n step: 1,\n });\n if (currentUser.role === UserRole.UNIVERSITY_ADMIN)\n fetchUniversityMembers(currentUser.profile_info.university_id);\n trackAndToastHandler?.();\n }\n };\n\n handleChange = (e, attr) => {\n // make sure an empty space is not added\n if (attr === \"email\") {\n if (e.target.value.length === 1 && e.target.value === \" \") {\n e.preventDefault();\n return;\n }\n }\n this.setState({ [attr]: e.target.value, error: \"\" });\n };\n\n handleAddOrRemoveEmail = (e) => {\n if (\n this.state.email &&\n ([\"Enter\", \"Tab\", \",\", \";\"].includes(e.key) || e.type === \"blur\" || e.type === \"click\")\n ) {\n e.preventDefault();\n const email = {\n value: this.state.email.trim().toLowerCase(),\n isValid: false,\n };\n\n if (email.value && this.isValid(email.value)) {\n email.isValid = true;\n }\n\n const emailList = [...this.state.emailList, email];\n this.setState({\n emailList,\n email: \"\",\n });\n }\n\n if (e.key === \"Backspace\") {\n if (!this.state.email && this.state.emailList.length) {\n const emailList = [...this.state.emailList];\n emailList.pop();\n\n this.setState({\n emailList,\n error: \"\",\n });\n }\n }\n };\n\n isValid = (email) => {\n let error = null;\n\n if (!Validator.isEmail(email)) {\n error = `${email} is not a valid email address.`;\n }\n\n if (usedPersonalEmail(email)) {\n error = \"Please enter a university or company email.\";\n }\n\n if (this.state.emailList.some((e) => e.value === email)) {\n const temp = email;\n // clearing email state to display error message of a duplicate email\n this.setState({ email: \"\" });\n error = `${temp} has already been added.`;\n }\n if (error) {\n this.setState({ error });\n return false;\n }\n return true;\n };\n\n handlePaste = (e) => {\n e.preventDefault();\n\n const paste = e.clipboardData.getData(\"text\");\n let emails = paste.match(/[\\w\\d\\.-]+@[\\w\\d\\.-]+\\.[\\w\\d\\.-]+/g);\n // take care of duplicates copied to clipboard\n emails = [...new Set(emails)];\n\n if (emails) {\n const emailList = this.state.emailList.map((e) => e.value);\n const filteredDuplicateEmails = emails.filter((email) => !emailList.includes(email));\n\n const toBeAdded = filteredDuplicateEmails.map((email) => ({\n value: email,\n isValid: !usedPersonalEmail(email),\n }));\n\n this.setState({\n emailList: [...this.state.emailList, ...toBeAdded],\n });\n }\n };\n\n // make sure the list of emails are all valid\n validEmailList = () => {\n const { emailList } = this.state;\n\n if (emailList.length < 1) return false;\n\n return !emailList.some((email) => !email.isValid);\n };\n\n handleNextStep = (e) => {\n const { emailList, error } = this.state;\n\n const email = this.state.email.trim().toLowerCase();\n\n if (email && this.isValid(email)) {\n const emailList = [...this.state.emailList, email];\n const toEmails = emailList.join(\", \");\n\n this.setState({\n emailList,\n email: \"\",\n toEmails,\n error: \"\",\n });\n } else if (emailList.length > 0 && email.length === 0) {\n if (this.validEmailList()) {\n this.handleSubmitMessage(e);\n } else {\n this.setState({ error: \"Please make sure that all addresses are properly formed.\" });\n }\n } else if (!email && emailList.length === 0) {\n this.setState({ error: \"Please add an email to invite\" });\n }\n };\n\n deleteEmailFromList = (emailIndex) => {\n const emailList = [...this.state.emailList];\n emailList.splice(emailIndex, 1);\n\n this.setState({\n emailList,\n error: \"\",\n });\n };\n\n focusInput = (e) => {\n const children = e.target.children;\n this.setState({ focused: true });\n if (children.length) children[children.length - 1].focus();\n };\n\n handleBlur = (e) => {\n this.handleAddOrRemoveEmail(e);\n this.setState({ focused: false });\n };\n\n handleCloseConfirmationModal = () => {\n const { closeModal } = this.props;\n\n closeModal();\n this.setState({ emailList: [] });\n };\n\n render() {\n const {\n open,\n closeModal,\n currentUser,\n activeTabIndex,\n typeOfInvite,\n modalHeader,\n modalSubheader,\n inviteSubject,\n } = this.props;\n\n const {\n message,\n toEmails,\n email,\n isExpanded,\n contactModalLoading,\n emailList,\n step,\n error,\n focused,\n role,\n dropdownActive,\n } = this.state;\n\n const emails = emailList.map((email, i) => {\n if (step === 0) {\n return (\n \n {email.value}\n this.deleteEmailFromList(i)}\n >\n \n
\n \n );\n }\n return (\n \n {email.value}\n \n );\n });\n\n const placeholder =\n emails.length > 0\n ? \"Add email\"\n : typeOfInvite === \"shareRFP\"\n ? \"Enter email address\"\n : \"Add one or more email addresses\";\n\n return (\n \n {step === 0 ? (\n \n
\n {modalHeader}\n \n
\n
{modalSubheader}
\n
\n
\n
Email Address
\n 0 && styles.InviteModal_modalInputDivFilled,\n error && styles.InviteModal_errorField,\n typeOfInvite === \"university\" && styles.InviteModal_smallerInputDiv\n )}\n >\n {emails}\n 0 ? \"10ch\" : \"85%\",\n }}\n placeholder={placeholder}\n value={email}\n autoFocus\n onFocus={this.focusInput}\n onChange={(e) => this.handleChange(e, \"email\")}\n onKeyDown={this.handleAddOrRemoveEmail}\n onPaste={this.handlePaste}\n onBlur={this.handleBlur}\n data-testid=\"invite-new-user-text-field\"\n />\n
\n
\n {typeOfInvite === \"university\" && (\n
\n \n Role\n
\n this.setState({ dropdownActive: !dropdownActive })}\n onBlur={() => this.setState({ dropdownActive: false })}\n icon=\"chevron down\"\n >\n \n this.setState({ role: 2 })}>\n Administrator\n \n Administrators can share opportunities with faculty, but cannot submit\n proposals.\n \n \n this.setState({ role: 0 })}>\n Faculty\n \n Faculty conduct research and can submit proposals to opportunities\n \n \n \n \n \n )}\n \n {email.length > 0 && (\n
\n \n Invite '{email.trim().toLowerCase()}' by email\n
\n \n )}\n
{error}
\n
\n
Message (Optional)
\n \n e.currentTarget.setSelectionRange(\n e.currentTarget.value.length,\n e.currentTarget.value.length\n )\n }\n onChange={(e) => this.handleChange(e, \"message\")}\n data-testid=\"invite-new-user-message-field\"\n />\n
\n
\n \n {typeOfInvite === \"shareRFP\" ? \"Share\" : \"Send Invite\"}\n \n
\n
\n ) : (\n \n
Invitation sent!
\n \n Your invitation to the following people has been sent:\n \n
{emails}
\n \n Once they accept your invitation, they will become part of your team!\n \n \n
\n )}\n \n );\n }\n}\n\nconst mapStateToProps = (state) => {\n return {\n currentUser: state.profiles.currentUser,\n };\n};\n\nconst mapDispatchToProps = {\n fetchUniversityMembers: fetchUniversityMembersAction,\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(InviteModal);\n","import InviteModal from \"./InviteModal\";\n\nexport default InviteModal;\n","import {\n ChangeEvent,\n Dispatch,\n ReactNode,\n SetStateAction,\n SyntheticEvent,\n useEffect,\n useState,\n} from \"react\";\nimport { Link } from \"react-router-dom\";\nimport styled from \"styled-components\";\n\nimport { SSOEnabledHint } from \"@components/SSOEnabledHint\";\nimport { GradientButton, Icon } from \"@components/library\";\nimport { COLORS, FONTS, STYLES, WINDOW_DIMENSIONS } from \"@constants\";\nimport { useSearchParams } from \"@hooks/router\";\nimport { useSSOSensitiveEmail } from \"@hooks/useSSOSensitiveEmail\";\nimport haloLogo from \"@images/logos/halo_logo.svg\";\nimport { RootState } from \"@redux/store\";\nimport { signIn } from \"@requests/users\";\nimport { getPrevUrlCookie } from \"@utils/authUtils\";\nimport { t } from \"@utils/i18n\";\nimport { useSelector } from \"react-redux\";\nimport { ModalType } from \"./LoginSignUpModal\";\n\ninterface Props {\n header?: ReactNode;\n title?: ReactNode;\n bottom?: ReactNode;\n setModalType?: Dispatch>;\n // Flag for changing styles to be compatible with the old login modal\n // @components/LoginModal/LoginModal.tsx\n compat?: boolean;\n}\n\nconst LoginModal = ({ header, title, bottom, setModalType, compat = false }: Props) => {\n const [password, setPassword] = useState(\"\");\n const [submitting, setSubmitting] = useState(false);\n const [hasSubmitted, setHasSubmitted] = useState(false);\n const [error, setError] = useState(\"\");\n\n const { email, setEmail, isEmailSSOEnabled, redirectToSSO } = useSSOSensitiveEmail(\"\");\n const [shouldShowSSO, setShouldShowSSO] = useState(isEmailSSOEnabled);\n\n const previousAction = useSelector((state: RootState) => state.profiles.previousAction);\n\n const [searchParams] = useSearchParams();\n\n useEffect(() => {\n if (isEmailSSOEnabled) setShouldShowSSO(true);\n }, [isEmailSSOEnabled]);\n\n const handleLogin = async (e: SyntheticEvent) => {\n e.preventDefault();\n\n setSubmitting(true);\n setHasSubmitted(true);\n setError(\"\");\n\n if (shouldShowSSO) {\n if (!isEmailSSOEnabled) {\n setError(\"Your email/company is not enabled to use SSO. Please use your password instead.\");\n setSubmitting(false);\n return;\n }\n\n redirectToSSO();\n return;\n }\n\n if (!email || !password) {\n setError(\"Please fill in all fields before continuing.\");\n setSubmitting(false);\n return;\n }\n\n try {\n const response = await signIn({ email, password });\n\n let redirectUrl = \"\";\n if (previousAction === \"submit-feature-request\") {\n redirectUrl = \"/feature_requests\";\n } else {\n const commenterInviteRequest = searchParams.get(\"commenter_invite_request\");\n redirectUrl = `/redirect_login${\n commenterInviteRequest ? `?commenter_invite_request=${commenterInviteRequest}` : \"\"\n }`;\n }\n\n getPrevUrlCookie(redirectUrl, true, response.data.role);\n } catch (err) {\n switch (err.response.status) {\n case 403:\n setError(t(\"error.generic_retry\"));\n break;\n case 429:\n setError(\"You have made too many attempts. Please try again in a few minutes.\");\n break;\n default:\n setError(err.response.data.error);\n }\n setSubmitting(false);\n }\n };\n\n const urlParams = new URLSearchParams();\n const commenterInviteRequest = searchParams.get(\"commenter_invite_request\");\n if (commenterInviteRequest) urlParams.append(\"commenter_invite_request\", commenterInviteRequest);\n\n return (\n \n \n {header ?? (\n \n \n \n )}\n {title ?? (\n \n <Header>Welcome Back!</Header>\n <Subheader>Sign in to find research partners and keep moving science forward</Subheader>\n \n )}\n
\n {error}\n {\n setHasSubmitted(false);\n setEmail(e.target.value);\n }}\n />\n {shouldShowSSO ? (\n <>\n \n \n Continue with SSO\n \n {\n if (isEmailSSOEnabled) setEmail(\"\");\n setShouldShowSSO(false);\n }}\n >\n Go back {isEmailSSOEnabled && \" and use a different email\"}\n \n \n ) : (\n <>\n ) => {\n setHasSubmitted(false);\n setPassword(e.target.value);\n }}\n />\n \n Sign in\n \n \n setShouldShowSSO(true)}>\n Sign in with SSO\n \n Forgot password?\n \n \n )}\n \n
\n \n {bottom ?? (\n <>\n Don’t have an account? \n {setModalType ? (\n setModalType(\"signup\")}>\n Sign up\n \n ) : (\n 0 ? `?${urlParams.toString()}` : \"\"}`}>\n Sign up\n \n )}\n \n )}\n \n
\n );\n};\n\nexport default LoginModal;\n\nconst { TABLET_MEDIA_QUERY, MOBILE_MEDIA_QUERY } = WINDOW_DIMENSIONS;\n\nconst Modal = styled.div`\n border-radius: 12px;\n background-color: ${COLORS.WHITE};\n\n ${({ compat }) => !compat && `box-shadow: ${STYLES.SHADOW_E};`}\n\n ${TABLET_MEDIA_QUERY} {\n max-width: 95%;\n width: unset;\n }\n\n ${MOBILE_MEDIA_QUERY} {\n max-width: 100%;\n height: 100%;\n border-radius: 0;\n }\n`;\n\nconst Logo = styled(Link)`\n text-align: center;\n`;\n\nconst Title = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n`;\n\nconst Header = styled.div`\n ${FONTS.HEADING_3_SEMIBOLD}\n ${MOBILE_MEDIA_QUERY} {\n ${FONTS.HEADING_4_SEMIBOLD}\n }\n`;\n\nconst Subheader = styled.div`\n ${FONTS.REGULAR_1}\n max-width: 372px;\n text-align: center;\n ${MOBILE_MEDIA_QUERY} {\n display: none;\n }\n`;\n\nconst Form = styled.form`\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 16px;\n margin-top: -32px;\n`;\n\nconst Error = styled.div`\n ${FONTS.REGULAR_3}\n margin-top: 5px;\n min-height: 20px;\n color: ${COLORS.RED};\n text-align: center;\n max-width: 300px;\n`;\n\nconst Input = styled.input`\n ${FONTS.REGULAR_2}\n\n height: 42px;\n width: 100%;\n padding: 10px;\n\n border: solid 1px ${COLORS.NEUTRAL_200};\n border-radius: 6px;\n\n ${({ error }) => error && `border: solid 1px ${COLORS.RED};`}\n\n ${MOBILE_MEDIA_QUERY} {\n border-color: ${COLORS.NEUTRAL_200};\n }\n`;\n\nconst Top = styled.div`\n display: flex;\n justify-content: center;\n flex-direction: column;\n gap: 40px;\n ${({ compat }) => (compat ? `padding: 10px 10px 30px;` : `padding: 48px;`)}\n ${TABLET_MEDIA_QUERY} {\n padding: 40px 24px;\n }\n`;\n\nconst Bottom = styled.div`\n width: 100%;\n\n display: flex;\n justify-content: center;\n flex-direction: column;\n\n border-top: 1px solid ${COLORS.NEUTRAL_300};\n\n padding: 16px;\n\n text-align: center;\n display: inline-block;\n\n ${({ compat }) =>\n compat\n ? `\n ${FONTS.MEDIUM_2}\n padding-bottom: 4px;`\n : `\n ${FONTS.SEMIBOLD_2}\n `}\n\n ${MOBILE_MEDIA_QUERY} {\n margin-top: 15px;\n width: 100%;\n color: ${COLORS.NEUTRAL_500};\n ${FONTS.SEMIBOLD_1}\n text-align: left;\n }\n`;\n\nconst LinkContainer = styled.div`\n display: flex;\n justify-content: space-between;\n width: 100%;\n margin-top: 8px;\n`;\n\nconst LoginLink = styled(Link)`\n display: flex;\n align-items: center;\n gap: 4px;\n\n text-decoration: underline;\n color: ${COLORS.BLACK};\n ${FONTS.REGULAR_2}\n\n ${MOBILE_MEDIA_QUERY} {\n color: ${COLORS.NEUTRAL_500};\n ${FONTS.SEMIBOLD_1}\n\n text-decoration: none;\n }\n\n &:hover {\n cursor: pointer;\n color: ${COLORS.BLUE_900};\n }\n`;\n\nconst SignUp = styled(Link)`\n text-decoration: underline;\n color: ${COLORS.BLACK};\n ${FONTS.REGULAR_2}\n\n ${MOBILE_MEDIA_QUERY} {\n display: flex;\n justify-content: center;\n align-items: center;\n\n height: 48px;\n margin-top: 12px;\n\n border-radius: 3px;\n border-style: solid;\n border-width: 2px;\n\n color: ${COLORS.HALO_BLUE};\n ${FONTS.SEMIBOLD_1}\n\n text-decoration: none;\n }\n`;\n","import {\n CompanyAvatar,\n Icon,\n IconButton,\n MoreActionsDropdown,\n UserPreview,\n} from \"@components/library\";\nimport type { ExtendedDropdownOption } from \"@components/library/Dropdowns/DropdownOption\";\nimport { COLORS, FONTS, STYLES } from \"@constants\";\nimport type { RootState } from \"@redux/store\";\nimport { InboxMessageThread, MessageRecipient } from \"@tsTypes/index\";\nimport { UserRole } from \"@tsTypes/users\";\nimport { useSelector } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport styled from \"styled-components\";\n\ninterface Props {\n currentThread: InboxMessageThread;\n isModal?: boolean;\n}\n\nconst Participants = ({ currentThread, isModal }: Props) => {\n if (\"proposal\" in currentThread) {\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n\n const { company, scientist_user } = currentThread;\n\n const isCompanyHidden = \"private_alias\" in company;\n\n const moreActionsOptions: ExtendedDropdownOption[] = [\n {\n value: \"VIEW_PROFILE\",\n label: `View Profile`,\n onSelect: () => window.open(`/profile/${scientist_user.profile_id}`, \"_blank\"),\n iconName: \"Profile\",\n },\n ];\n\n return (\n <>\n
\n Scientist\n \n \n {isModal && (\n \n \n \n )}\n \n
\n \n \n {isCompanyHidden ? company.private_alias ?? \"Private Company\" : company.company_name}\n \n \n \n {(\"company_members\" in currentThread && !isCompanyHidden\n ? currentThread.company_members\n : [{}]\n ).map((member) => {\n const isScientistUser = currentUser.id === currentThread.scientist_user.id;\n const shouldDisplayAsExternalLead =\n isScientistUser && member.role === UserRole.SCIENTIST && !(\"id\" in member);\n\n return shouldDisplayAsExternalLead && !isCompanyHidden ? (\n \n \n {company.company_name} team\n \n ) : (\n \n \n \n );\n })}\n \n {currentUser.role === UserRole.SPONSOR && (\n \n \n This conversation is stored with the proposal so you and your team can reference it in\n the future.\n \n )}\n \n );\n }\n\n // Create map of participants grouped by location\n const dmParticipants = new Map();\n [...(currentThread.recipients ?? [])].forEach((participant) => {\n if (!participant) return;\n if (!dmParticipants.has(participant.location)) {\n dmParticipants.set(participant.location, [participant]);\n return;\n }\n dmParticipants.get(participant.location).push(participant);\n });\n\n return (\n \n {Array.from(dmParticipants.keys()).map((location) => (\n
\n {location}\n {dmParticipants.get(location).map((participant) => (\n \n \n \n ))}\n
\n ))}\n
\n );\n};\n\nexport default Participants;\n\nconst UnstyledLink = styled(Link)`\n color: inherit;\n text-decoration: none;\n\n &:hover,\n &:focus {\n color: inherit;\n text-decoration: none;\n }\n`;\n\nconst SectionTitle = styled.div`\n ${FONTS.SEMIBOLD_2}\n color: ${COLORS.NEUTRAL_500};\n margin-bottom: 12px;\n`;\n\nconst CompanySectionTitle = styled(SectionTitle)`\n margin-top: 32px;\n`;\n\nconst DMParticipants = styled.div`\n margin-top: -32px;\n`;\n\nconst DMSectionTitle = styled(SectionTitle)`\n margin-top: 32px;\n`;\n\nconst CompanyMembers = styled.div`\n ${({ isModal }) => isModal && \"min-height: 158px\"};\n ${({ isModal }) => !isModal && \"margin-bottom: 16px\"};\n height: 100%;\n overflow-y: scroll;\n\n &::-webkit-scrollbar {\n width: 6px;\n }\n ::-webkit-scrollbar-track {\n background: none;\n }\n &::-webkit-scrollbar-thumb {\n background-color: ${COLORS.NEUTRAL_300};\n }\n`;\n\nconst ExternalLead = styled.div`\n display: grid;\n grid-template-columns: 40px 1fr;\n gap: 6px;\n margin-bottom: 10px;\n margin-left: 14px;\n &:last-child {\n margin-bottom: 0;\n }\n`;\nconst ExternalLeadName = styled.div`\n height: fit-content;\n margin-top: 2px;\n ${STYLES.TWO_LINES};\n ${FONTS.TAG_SEMIBOLD_1};\n`;\n\nconst Warning = styled.div`\n ${FONTS.MEDIUM_3};\n background-color: ${COLORS.ORANGE_100};\n color: ${COLORS.ORANGE};\n border-radius: 6px;\n padding: 20px;\n height: 142px;\n ${({ isModal }) =>\n isModal &&\n `\n height: 88px;\n display: flex;\n align-items: center;\n ${FONTS.MEDIUM_2};\n gap: 10px;\n `}\n`;\n\nconst UserPreviewContainer = styled.div`\n margin-bottom: 10px;\n margin-left: 16px;\n display: flex;\n gap: 10px;\n &:last-child {\n margin-bottom: 0;\n }\n`;\n","import { CREDENTIALS } from \"@constants\";\nimport Ably from \"ably\";\n\n// Do not auto-connect in order to \"save\" connections only when we need it (free plan is up to 200)\n// If you require realtime functionality, we should purchase a full plan.\nconst ably = new Ably.Realtime({\n key: CREDENTIALS.ABLY_FRONTEND_API_KEY,\n autoConnect: false,\n});\n\nexport default ably;\n","import { Button, InfoBanner } from \"@components/library\";\nimport BlankModal, { BlankModalProps } from \"@components/library/ModalBases/BlankModal\";\nimport { FONTS } from \"@constants\";\nimport { t } from \"@utils/i18n\";\n\nimport styled from \"styled-components\";\n\ninterface Props {\n openFileBrowser: () => any;\n}\n\nconst AttachmentsInfoModal = ({\n openFileBrowser,\n isOpen,\n onClose,\n}: Props & Pick) => {\n if (!isOpen) return null;\n\n return (\n \n \n Attachment Requirements\n \n
  • The maximum size for each is 5MB
  • \n
  • The file format needs to be PNG, JPG, or PDF
  • \n
    \n \n \n \n \n
    \n
    \n );\n};\n\nexport default AttachmentsInfoModal;\n\nconst Content = styled.div`\n padding: 48px 56px 24px;\n`;\n\nconst Heading = styled.div`\n ${FONTS.HEADING_3_SEMIBOLD}\n`;\n\nconst List = styled.ul`\n ${FONTS.REGULAR_1}\n margin: 16px 0;\n list-style: inside;\n padding-left: 5px;\n`;\n\nconst ButtonContainer = styled.div`\n display: flex;\n justify-content: flex-end;\n width: 100%;\n margin-top: 56px;\n`;\n","import {\n Button,\n ErrorModal,\n Icon,\n IconButton,\n InfoBanner,\n MessageAttachment,\n Tooltip,\n} from \"@components/library\";\nimport { ABLY_CHANNELS, COLORS, FONTS, STYLES } from \"@constants\";\nimport { setMessengerThread } from \"@redux/actions/messengerActions\";\nimport { RootState } from \"@redux/store\";\nimport {\n MessageAttachmentAsJson,\n addMessageToThread,\n createMessageThread,\n getDraftMessage,\n setDraftMessage,\n uploadAttachment,\n} from \"@requests/messages\";\nimport {\n InboxMessageThread,\n MessageAttachmentPartial,\n MessagePartial,\n MessageRecipient,\n} from \"@tsTypes/index\";\nimport { MessageAttachmentContentType } from \"@tsTypes/messages\";\nimport { User } from \"@tsTypes/schema\";\nimport { UserRole } from \"@tsTypes/users\";\nimport ably from \"@utils/ably\";\nimport { debounce } from \"@utils/appUtils\";\nimport { t } from \"@utils/i18n\";\nimport {\n ChangeEvent,\n Dispatch,\n ReactNode,\n SetStateAction,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport { flushSync } from \"react-dom\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { USER_ROLES } from \"src/constants/users\";\nimport styled from \"styled-components\";\nimport AttachmentsInfoModal from \"./AttachmentsInfoModal\";\n\ninterface Props {\n currentThread?: InboxMessageThread | null;\n setMessages: Dispatch>;\n isInbox?: boolean;\n openGallery: (attachments: MessageAttachmentPartial[], attachmentId: number) => void;\n // recipient is undefined when the current user is the associated scientist of a proposal thread and the\n // request is confidential\n recipient?: MessageRecipient | Pick;\n}\n\nconst MAX_FILE_SIZE_IN_BYTES = 5_000_000; // 5MB\nconst MESSAGE_INPUT_MIN_HEIGHT = 112;\n\nconst MessageCompose = ({\n currentThread,\n setMessages,\n isInbox = false,\n recipient,\n openGallery,\n}: Props) => {\n const [messageInput, setMessageInput] = useState(\"\");\n const [isFetchingDraft, setIsFetchingDraft] = useState(true);\n const [isSubmitting, setIsSubmitting] = useState(false);\n const [attachments, setAttachments] = useState<\n (MessageAttachmentAsJson | MessageAttachmentPartial)[]\n >([]);\n const [isAttachmentsInfoModalOpen, setIsAttachmentsInfoModalOpen] = useState(false);\n const [isAttachmentUploading, setIsAttachmentUploading] = useState(false);\n const [uploadPercentage, setUploadPercentage] = useState();\n const [hasOpenedAttachmentsInfoModal, setHasOpenedAttachmentsInfoModal] = useState(false);\n const [attachmentError, setAttachmentError] = useState();\n const [shouldShowJumpToBottom, setShouldShowJumpToBottom] = useState(false);\n\n const dispatch = useDispatch();\n\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n let proposalyId = useSelector((state: RootState) => state.messenger.messengerData.proposalyId);\n let proposalyType = useSelector(\n (state: RootState) => state.messenger.messengerData.proposalyType\n );\n // overwrite proposal ID if exists\n if (currentThread?.proposaly_id && currentThread.proposaly_type) {\n proposalyType = currentThread.proposaly_type;\n proposalyId = currentThread.proposaly_id;\n }\n\n // Used for draft message loading\n const messageRef = useRef(messageInput);\n const fetchingProposalIdRef = useRef(proposalyId);\n // Used for grabbing file from file input\n const fileInputRef = useRef(null);\n // Used for cancelling an in-progress upload\n const uploadAttachmentAbortControllerRef = useRef();\n // Used for scroll to just added attachment\n const attachmentsRef = useRef(null);\n // Used for auto-resizing text area\n const messageInputRef = useRef(null);\n // Used for jump to bottom functionality\n const inputContainerRef = useRef(null);\n const inputBottomRef = useRef(null);\n\n useEffect(() => {\n // Reset state on thread change\n setMessageInput(\"\");\n setAttachments([]);\n setShouldShowJumpToBottom(false);\n // Abort upload\n uploadAttachmentAbortControllerRef.current?.abort();\n // Only show attachments info modal once per conversation per session\n setHasOpenedAttachmentsInfoModal(false);\n\n ably.connect();\n const channel = ably.channels.get(`message_thread_${currentThread?.id}`);\n channel.subscribe(ABLY_CHANNELS.NEW_MESSAGE, function (message) {\n const messageData = JSON.parse(message.data);\n setMessages((messages) => [...messages, messageData]);\n });\n\n return () => {\n channel.unsubscribe();\n };\n }, [currentThread]);\n\n // Fetching drafts\n // TODO adapt for direct message\n const debouncedSetDraftMessage = debounce(setDraftMessage, 500);\n useEffect(() => {\n if (proposalyId && proposalyType) {\n (async () => {\n // Set the most recent currently-fetching proposal\n fetchingProposalIdRef.current = proposalyId;\n setIsFetchingDraft(true);\n\n const draftMessage = await getDraftMessage({ proposalyId, proposalyType });\n\n // This prevents applying the fetched draft in case a new draft started fetching in the meantime\n if (draftMessage && fetchingProposalIdRef.current === proposalyId) {\n // If the user started typing while the draft was fetching, this combines the\n // draft + input instead or replacing what they had typed with the fetched draft\n setMessageInput(draftMessage.content + messageRef.current);\n setAttachments(draftMessage.message_attachments);\n }\n\n setIsFetchingDraft(false);\n })();\n }\n }, [proposalyId]);\n\n // Setting drafts\n // TODO adapt for direct message\n useEffect(() => {\n // Reset message container size\n if (messageInput.length === 0 && messageInputRef.current) {\n messageInputRef.current.style.height = \"unset\";\n }\n\n if (proposalyId) {\n // Store the user's input so it can be added to the fetched draft after fetching is done\n messageRef.current = messageInput;\n\n // Don't set drafts while fetching, because they use the same record and can cause a race\n // condition. Also prevents setting the draft as \"\" while the draft is fetching\n // Also don't set drafts while uploading an attachment (and do it afterwards)\n if (!(isFetchingDraft || isAttachmentUploading)) {\n debouncedSetDraftMessage({\n proposalyId,\n proposalyType,\n content: messageInput,\n attachmentIds: attachments\n .map((attachment) => attachment.id)\n .filter((id) => Boolean(id)) as unknown as number[],\n });\n }\n }\n }, [messageInput]);\n\n const openFileBrowser = () => {\n fileInputRef.current?.click();\n };\n\n const handleAttachmentInitiation = () => {\n // Open info modal if the first time, or go straight to file browser otherwise\n if (!hasOpenedAttachmentsInfoModal) {\n setHasOpenedAttachmentsInfoModal(true);\n setIsAttachmentsInfoModalOpen(true);\n } else {\n openFileBrowser();\n }\n };\n\n const handleAttachmentUpload = async (event: ChangeEvent) => {\n event.preventDefault();\n setIsAttachmentUploading(true);\n setIsAttachmentsInfoModalOpen(false);\n\n const files = event.target.files;\n\n if (!files || files.length === 0) {\n setIsAttachmentUploading(false);\n setAttachmentError(\"For some reason the upload didn't work. Please try again\");\n return;\n }\n\n const file = files[0];\n\n if (file.size > MAX_FILE_SIZE_IN_BYTES) {\n setIsAttachmentUploading(false);\n setAttachmentError(\n <>\n This file is too large.\n
    \n Please upload a file that is smaller than 5MB.\n \n );\n return;\n }\n\n if (\n attachments.some(\n (attachment) =>\n attachment.filename === file.name &&\n attachment.size_in_bytes === file.size &&\n attachment.mime_content_type === file.type\n )\n ) {\n setIsAttachmentUploading(false);\n setAttachmentError(\"You have already attached that file.\");\n return;\n }\n\n // Display in progress attachment\n const oldAttachments = [...attachments];\n // flushSync is warned against by the React beta docs due to weird behavior\n // with flushing pending state. Here it makes sense, but be wary when\n // modifying this component logic.\n flushSync(() => {\n setAttachments([\n ...oldAttachments,\n {\n filename: file.name,\n size_in_bytes: file.size,\n mime_content_type: file.type as MessageAttachmentContentType,\n } as MessageAttachmentPartial,\n ]);\n });\n\n const inputContainer = inputContainerRef.current;\n if (inputContainer && messageInputRef.current) {\n const hasVerticalScrollbar =\n inputContainer.scrollHeight > inputContainer.clientHeight &&\n messageInputRef.current.clientHeight > MESSAGE_INPUT_MIN_HEIGHT;\n\n if (hasVerticalScrollbar) {\n // Scroll to newly added attachment if scrollable\n attachmentsRef.current?.lastElementChild?.scrollIntoView({\n behavior: \"smooth\",\n block: \"center\",\n });\n\n // Show jump to bottom icon if scrollable\n setShouldShowJumpToBottom(true);\n }\n }\n\n // Upload attachment\n let attachment: MessageAttachmentAsJson | undefined;\n uploadAttachmentAbortControllerRef.current = new AbortController();\n try {\n attachment = await uploadAttachment(\n file,\n uploadAttachmentAbortControllerRef.current.signal,\n setUploadPercentage\n );\n } catch (_) {\n setAttachmentError(\"For some reason the upload didn't work, please try again\");\n setAttachments(oldAttachments);\n }\n\n // Check if aborted\n if (attachment) {\n // Replace in progress attachment in state with uploaded attachment response\n const newAttachments = [...oldAttachments, attachment];\n setAttachments(newAttachments);\n\n // Update draft message after new attachment finished uploading\n debouncedSetDraftMessage({\n proposalyId,\n proposalyType,\n content: messageInput,\n attachmentIds: newAttachments\n .map((_attachment) => _attachment.id)\n .filter((id) => Boolean(id)) as unknown as number[],\n });\n }\n\n // eslint-disable-next-line require-atomic-updates\n event.target.value = \"\";\n setIsAttachmentUploading(false);\n };\n\n const handleAttachmentRemove = (attachmentId?: number) => {\n if (attachmentId) {\n const newAttachments = attachments.filter((attachment) => attachment.id !== attachmentId);\n setAttachments(newAttachments);\n\n // Remove attachment from draft message\n debouncedSetDraftMessage({\n proposalyId,\n proposalyType,\n content: messageInput,\n attachmentIds: newAttachments\n .map((_attachment) => _attachment.id)\n .filter((id) => Boolean(id)) as unknown as number[],\n });\n } else {\n // Abort upload\n uploadAttachmentAbortControllerRef.current?.abort();\n // Remove last (in progress) attachment\n setAttachments([...attachments.slice(0, attachments.length - 1)]);\n }\n };\n\n // Set message input value and resize textarea to fit text\n // Called on onChange AND onKeyDown to cover all input cases\n const handleInputResizeAndChange = (e: ChangeEvent) => {\n const element = e.target;\n if (!element) return;\n element.style.height = \"inherit\";\n element.style.height = `${element.scrollHeight}px`;\n\n setMessageInput(element.value);\n };\n\n // Scroll to bottom of message input and place cursor at end of input\n const jumpToBottom = () => {\n inputBottomRef.current?.scrollIntoView({\n behavior: \"smooth\",\n block: \"end\",\n });\n setShouldShowJumpToBottom(false);\n\n // Focus end of text\n const textarea = messageInputRef.current;\n if (!textarea) return;\n textarea.focus();\n textarea.setSelectionRange(messageInput.length, messageInput.length);\n };\n\n const handleSubmit = async () => {\n setIsSubmitting(true);\n\n const attachmentIds = attachments\n .map((attachment) => attachment.id)\n .filter(Boolean) as unknown as number[];\n\n if (currentThread?.id) {\n await addMessageToThread({\n messageThreadId: currentThread.id,\n content: messageInput,\n attachmentIds,\n });\n } else {\n const { message_thread } = await createMessageThread({\n proposalyType,\n proposalyId,\n userId: (recipient as MessageRecipient).id,\n content: messageInput,\n attachmentIds,\n });\n dispatch(setMessengerThread(message_thread));\n }\n // TODO update the return value of addMessageToThread so that we can just add it to state\n // instead of re-fetching all messages\n\n setAttachments([]);\n setMessageInput(\"\");\n setShouldShowJumpToBottom(false);\n setIsSubmitting(false);\n };\n\n const isProposalThread = currentThread && \"request\" in currentThread;\n const isExternalLead =\n currentUser.role === UserRole.SCIENTIST && currentUser.id !== currentThread?.scientist_user?.id;\n const isToExternalLead =\n currentUser.id === currentThread?.scientist_user?.id && recipient?.role === UserRole.SCIENTIST;\n\n let placeholderRecipientName = (recipient as MessageRecipient | undefined)?.name;\n if (\n isProposalThread &&\n \"private_alias\" in currentThread.company &&\n currentThread.request.confidential &&\n currentUser.id === currentThread.scientist_user.id\n ) {\n placeholderRecipientName = currentThread.company.private_alias ?? \"the company\";\n } else if (isProposalThread && isToExternalLead && \"company_name\" in currentThread.company) {\n placeholderRecipientName = `the ${currentThread.company.company_name} team`;\n }\n\n return (\n <>\n \n setIsAttachmentsInfoModalOpen(false)}\n openFileBrowser={openFileBrowser}\n />\n setAttachmentError(undefined)}\n message={attachmentError}\n />\n \n {isProposalThread &&\n currentThread.request.confidential &&\n (currentUser.role === USER_ROLES.sponsor || isExternalLead) && (\n \n )}\n \n
    \n {attachments.length > 0 && (\n \n {attachments.map((attachment) => (\n handleAttachmentRemove(attachment.id)}\n onClick={() =>\n attachment.id &&\n openGallery(attachments as MessageAttachmentPartial[], attachment.id)\n }\n />\n ))}\n \n )}\n setShouldShowJumpToBottom(false)}\n />\n
    \n
    \n \n \n \n \n \n \n \n \n \n {t(\"common.misc.confidential\")}\n \n \n \n \n \n Send\n \n \n \n \n \n \n );\n};\n\nexport default MessageCompose;\n\nconst FileInput = styled.input`\n && {\n display: none;\n }\n`;\n\nconst Container = styled.div`\n background-color: ${({ isInbox }) => (isInbox ? COLORS.NEUTRAL_100 : COLORS.WHITE)};\n padding: ${({ isInbox }) => (isInbox ? \"24px\" : \"8px 10px 0px\")};\n margin-top: 10px;\n border-radius: 8px;\n`;\n\nconst BottomContainer = styled.div`\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-top: ${({ isInbox }) => (isInbox ? \"16px\" : \"8px\")};\n`;\n\nconst InputContainer = styled.div`\n background: ${({ isInbox }) => (isInbox ? COLORS.WHITE : COLORS.NEUTRAL_100)};\n max-height: 30vh;\n overflow-y: auto;\n // Use column-reverse to keep the auto-expanding text area scrolled down\n display: flex;\n flex-direction: column-reverse;\n`;\n\nconst JumpToBottomContainer = styled.div`\n width: 100%;\n height: 0;\n position: relative;\n`;\n\nconst JumpToBottom = styled.div`\n position: absolute;\n left: 50%;\n transform: translateX(-50%);\n bottom: 15px;\n\n display: ${({ isVisible }) => (isVisible ? \"flex\" : \"none\")};\n align-items: center;\n justify-content: center;\n\n width: 30px;\n height: 30px;\n border-radius: 50%;\n\n background-color: ${COLORS.BLACK};\n box-shadow: ${STYLES.SHADOW_D};\n cursor: pointer;\n\n transition: opacity 0.3s ease-in;\n opacity: ${({ isVisible }) => (isVisible ? \"0.5\" : \"0\")};\n\n &:hover {\n opacity: 1;\n }\n`;\n\nconst AttachmentsContainer = styled.div`\n padding: 16px 0 0 12px;\n display: flex;\n flex-direction: column;\n gap: 10px;\n`;\n\nconst TextInput = styled.textarea`\n min-height: ${MESSAGE_INPUT_MIN_HEIGHT}px;\n width: 100%;\n padding: ${({ isInbox }) => (isInbox ? \"14px 16px\" : \"8px 12px 0 12px\")};\n resize: none;\n border-radius: 6px;\n border: none;\n ${FONTS.REGULAR_2};\n vertical-align: top;\n background: ${({ isInbox }) => !isInbox && COLORS.NEUTRAL_100};\n overflow: hidden;\n\n &::placeholder {\n ${FONTS.REGULAR_2};\n color: ${COLORS.NEUTRAL_500};\n }\n`;\n\nconst WarningMessageContainer = styled.div`\n display: flex;\n align-items: center;\n`;\nconst WarningMessage = styled.div`\n ${({ isInbox }) => (isInbox ? FONTS.MEDIUM_2 : FONTS.TAG_MEDIUM_2)};\n`;\nconst BottomButtonContainer = styled.div`\n display: flex;\n align-items: center;\n gap: 10px;\n`;\n","import { CompanyAvatar, MessageAttachment, ProfilePicture } from \"@components/library\";\nimport { COLORS, FONTS } from \"@constants\";\nimport {\n InboxMessageThread,\n MessageAttachmentPartial,\n MessagePartial,\n MessageRecipient,\n} from \"@tsTypes/index\";\nimport { User } from \"@tsTypes/schema\";\nimport { UserRole } from \"@tsTypes/users\";\nimport { renderNewlines } from \"@utils/textUtils\";\nimport { AxiosError } from \"axios\";\nimport dayjs from \"dayjs\";\nimport { useEffect, useRef } from \"react\";\nimport { Loader } from \"semantic-ui-react\";\nimport styled from \"styled-components\";\n\ninterface Props {\n messages: MessagePartial[];\n messageError: AxiosError | undefined;\n recipient?: MessageRecipient | Pick;\n currentThread?: InboxMessageThread | null;\n isInbox: boolean;\n isLoading: boolean;\n openGallery: (attachments: MessageAttachmentPartial[], attachmentId: number) => void;\n}\n\nfunction MessageList({\n messages,\n messageError,\n isInbox = false,\n recipient,\n isLoading,\n currentThread,\n openGallery,\n}: Props) {\n const endOfMessagesRef = useRef(null);\n\n useEffect(() => {\n setTimeout(() => {\n endOfMessagesRef.current?.scrollIntoView({\n behavior: \"smooth\",\n block: \"start\",\n inline: \"nearest\",\n });\n }, 50);\n }, [messages]);\n\n if (isLoading && messages.length === 0) {\n return (\n \n \n \n );\n }\n\n return (\n \n \n {messages.length && currentThread ? (\n messages.map((message, index: number) => {\n const isFromExternalLead =\n message.user.role === UserRole.SCIENTIST && !(\"id\" in message.user);\n const isUserHidden = Boolean(\n currentThread &&\n \"company\" in currentThread &&\n \"private_alias\" in currentThread.company\n );\n\n return (\n \n {dayjs(message.created_at ?? \"\").fromNow()}\n \n \n {isFromExternalLead && !isUserHidden ? (\n \n ) : (\n \n )}\n \n \n {message.message_attachments.length > 0 && (\n \n {message.message_attachments.map((attachment) => (\n openGallery(message.message_attachments, attachment.id)}\n />\n ))}\n \n )}\n {renderNewlines(message.content)}\n \n \n \n );\n })\n ) : (\n \n {messageError ? (\n \n Something went wrong loading your messages. Please try again later\n \n ) : (\n \n {`This is the beginning of your conversation with ${\n (recipient as MessageRecipient | undefined)?.name\n }`}\n \n )}\n \n )}\n \n \n );\n}\n\nexport default MessageList;\n\nconst Container = styled.div`\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 0;\n overflow-y: auto;\n\n &::-webkit-scrollbar {\n width: 6px;\n }\n ::-webkit-scrollbar-track {\n background: none;\n }\n &::-webkit-scrollbar-thumb {\n background-color: ${COLORS.NEUTRAL_300};\n }\n`;\n\nconst MessageTime = styled.div`\n ${FONTS.MEDIUM_3}\n color: ${COLORS.NEUTRAL_400};\n margin-bottom: 16px;\n`;\n\nconst Message = styled.div`\n margin-bottom: 28px;\n padding: ${(props) => (props.isInbox ? \"0 30px 0 0\" : \"0 19px\")};\n\n &:last-child {\n margin-bottom: ${(props) => (props.isInbox ? \"24px\" : \"18px\")};\n }\n ${({ isInbox }) =>\n !isInbox &&\n `\n &:first-child {\n margin-top: 18px;\n }\n `}\n`;\n\nconst MessageContainer = styled.div`\n display: flex;\n overflow-y: hidden;\n flex: 1 0 0px;\n word-break: break-word;\n`;\n\nconst ProfilePictureContainer = styled.div`\n width: 36px;\n height: 36px;\n margin-right: 12px;\n`;\n\nconst MessageContent = styled.div`\n ${FONTS.REGULAR_2}\n`;\n\nconst MessageAttachmentContainer = styled.div`\n & > div {\n margin-bottom: 8px;\n }\n`;\n\nconst Messages = styled.div`\n margin-top: auto;\n`;\nconst ZeroMessagesState = styled.div`\n ${FONTS.MEDIUM_2};\n color: ${COLORS.NEUTRAL_500};\n max-width: calc(100% - 94px);\n padding-left: 12px;\n`;\n","import { Icon } from \"@components/library\";\nimport MessageAttachmentGalleryModal from \"@components/modals/MessageAttachmentGalleryModal/MessageAttachmentGalleryModal\";\nimport { COLORS, FONTS, STYLES } from \"@constants\";\nimport emptyState from \"@images/halo-empty-state.png\";\nimport { checkUnread } from \"@redux/actions/profileActions\";\nimport { RootState } from \"@redux/store\";\nimport {\n InboxMessageThread,\n MessageAttachmentPartial,\n MessagePartial,\n MessageRecipient,\n} from \"@tsTypes/index\";\nimport { User } from \"@tsTypes/schema\";\nimport { getProposalyPath } from \"@utils/proposalyUtils\";\nimport { AxiosError } from \"axios\";\nimport { useEffect, useState } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport { getMessages } from \"src/requests/messages\";\nimport styled from \"styled-components\";\nimport MessageCompose from \"./MessageCompose\";\nimport MessageList from \"./MessageList\";\n\ninterface Props {\n currentThread?: InboxMessageThread | null;\n isInbox?: boolean;\n height?: string;\n}\n\nconst Conversation = ({ currentThread, isInbox, height }: Props) => {\n const [messages, setMessages] = useState([]);\n const [messageError, setMessageError] = useState();\n const [isLoadingMessages, setIsLoadingMessages] = useState(true);\n\n // Empty array closes the gallery, adding items opens it\n const [galleryAttachments, setGalleryAttachments] = useState([]);\n const [focusedGalleryAttachmentIndex, setFocusedGalleryAttachmentIndex] = useState();\n\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n const messengerData = useSelector((state: RootState) => state.messenger.messengerData);\n const isMessengerMinimized = useSelector(\n (state: RootState) => state.messenger.isMessengerMinimized\n );\n\n const dispatch = useDispatch();\n\n useEffect(() => {\n (async () => {\n if (currentThread?.id && (!isMessengerMinimized || isInbox)) {\n try {\n const { message_thread } = await getMessages(currentThread.id);\n\n setMessages(message_thread.messages);\n setIsLoadingMessages(false);\n dispatch(checkUnread());\n } catch (e) {\n setMessageError(e);\n setIsLoadingMessages(false);\n }\n } else {\n setMessages([]);\n setIsLoadingMessages(false);\n }\n })();\n }, [currentThread, isMessengerMinimized]);\n\n // Opens gallery with provided attachments array, focused on provided attachment id\n const openGallery = (attachments: MessageAttachmentPartial[], attachmentId: number) => {\n setGalleryAttachments(attachments);\n const index = attachments.findIndex((attachment) => attachment.id === attachmentId);\n setFocusedGalleryAttachmentIndex(index);\n };\n\n const closeGallery = () => {\n setGalleryAttachments([]);\n setFocusedGalleryAttachmentIndex(undefined);\n };\n\n if (!currentThread?.id && isInbox) {\n return (\n \n \n \n );\n }\n\n const isThreadScientistUser =\n currentThread && currentUser.id === currentThread.scientist_user?.id;\n const isNonConfidentialProposalThread = currentThread && \"company_members\" in currentThread;\n const isDmThread = currentThread && \"recipients\" in currentThread;\n\n let recipient: MessageRecipient | Pick | undefined;\n if (isInbox && currentThread) {\n if (!isThreadScientistUser) {\n recipient = currentThread.scientist_user;\n } else if (isNonConfidentialProposalThread) {\n recipient = currentThread.company_members[0];\n } else if (isDmThread) {\n recipient = currentThread.recipients.find(\n (_recipient) => _recipient.id !== currentThread.scientist_user.id\n );\n }\n // recipient is undefined when the current user is the associated scientist of a proposal thread and the\n // request is confidential\n } else {\n recipient = messengerData.recipient;\n }\n\n const hasProposalBanner = isInbox && currentThread && \"proposal\" in currentThread;\n\n return (\n <>\n \n \n \n \n {hasProposalBanner && (\n \n \n {\" \"}\n Proposal\n \n \n
    {currentThread.proposal.title ?? \"Untitled Proposal\"}
    \n \n \n \n
    \n
    \n )}\n \n
    \n \n
    \n
    \n \n );\n};\n\nexport default Conversation;\n\nconst Container = styled.div`\n display: flex;\n flex: auto;\n flex-direction: column;\n height: ${(props) => props.height};\n`;\n\nconst Messenger = styled.div`\n display: grid;\n grid-template-rows: 1fr auto;\n height: 100%;\n padding: ${(props) => (props.isInbox ? \"24px 20px\" : \"0 0 16px 0\")};\n`;\n\nconst MessageListContainer = styled.div`\n display: grid;\n grid-template-rows: ${({ hasBanner }) => (hasBanner ? \"auto 1fr\" : \"1fr\")};\n height: 100%;\n min-height: 0;\n`;\n\nconst ProposalBanner = styled.div`\n min-width: 480px;\n margin-bottom: 24px;\n`;\n\nconst ProposalLabel = styled.div`\n display: flex;\n align-items: center;\n ${FONTS.MEDIUM_3}\n color: ${COLORS.NEUTRAL_500};\n`;\n\nconst ProposalTitle = styled.div`\n display: flex;\n justify-content: space-between;\n ${FONTS.MEDIUM_1};\n margin-top: 5px;\n\n div {\n ${STYLES.TWO_LINES}\n word-break: break-word;\n }\n`;\n\nconst ViewProposal = styled(Link)`\n color: ${COLORS.HALO_BLUE};\n margin: 5px 25px 0 20px;\n ${FONTS.REGULAR_3};\n`;\n\nconst ZeroState = styled.div`\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n`;\n\nconst ZeroStateImage = styled.img`\n width: 250px;\n`;\n","import { BlankModal, Icon, TextButton } from \"@components/library\";\nimport Button from \"@components/library/Buttons/Button\";\nimport { COLORS, FONTS } from \"@constants\";\nimport { useEffect, useState } from \"react\";\nimport styled from \"styled-components\";\n\nconst RfpQuestionSubmittedModal = ({ onClose, isOpen, handleOpenShareModal }) => {\n const [isCopied, setIsCopied] = useState(false);\n\n useEffect(() => {\n if (isCopied) {\n setTimeout(() => {\n setIsCopied(false);\n }, 2000);\n }\n }, [isCopied]);\n\n useEffect(() => {\n if (isOpen) {\n setIsCopied(false);\n }\n }, [isOpen]);\n\n return (\n \n \n \n
    \n \n
    Your question was submitted!
    \n \n Your question is currently under review by the team at Halo. We’ll let you know\n when it’s published.\n \n
    \n Have a colleague who might be interested?\n \n \n or{\" \"}\n {\n navigator.clipboard.writeText(window.location.href);\n setIsCopied(true);\n }}\n text={isCopied ? \"Copied!\" : \"Copy link to clipboard\"}\n color={isCopied ? COLORS.GREEN : COLORS.HALO_BLUE}\n iconName=\"Copy\"\n iconPosition=\"left\"\n size=\"sm\"\n />\n \n
    \n
    \n
    \n );\n};\n\nexport default RfpQuestionSubmittedModal;\n\nconst ModalContent = styled.div`\n display: flex;\n align-items: flex-start;\n justify-content: center;\n gap: 8px;\n padding: 48px 32px;\n`;\nconst Header = styled.div`\n color: ${COLORS.BLACK};\n ${FONTS.HEADING_4_SEMIBOLD};\n margin: 4px 0px 0px 0px;\n`;\nconst SubHeader = styled.div`\n ${FONTS.REGULAR_2};\n margin: 6px auto 26px auto;\n`;\nconst Top = styled.div`\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n`;\nconst Or = styled.div`\n display: flex;\n align-items: center;\n gap: 8px;\n ${FONTS.REGULAR_3};\n`;\n","import {\n downvote_request_comment_path,\n request_comment_path,\n request_comments_path,\n upvote_request_comment_path,\n} from \"@routes/routes\";\nimport api from \"./request\";\n\nexport const getRequestComments = async (requestId: number, sortBy: string) => {\n const response = await api.get(`/request_comments`, {\n params: {\n request_id: requestId,\n sort_by: sortBy,\n },\n });\n return response.data;\n};\n\nexport const createRequestComment = ({\n requestId,\n text,\n replyToId,\n open,\n}: {\n requestId: number;\n text: string;\n replyToId?: number;\n open: boolean;\n}) =>\n api.post(request_comments_path(), {\n request_id: requestId,\n reply_to_id: replyToId,\n text,\n open,\n });\n\nexport const editRequestComment = (id: number, text?: string, open?: boolean) =>\n api.put(request_comment_path({ id: id }), { text, open });\n\nexport const upvoteRequestComment = (id: number) => api.post(upvote_request_comment_path({ id }));\n\nexport const downvoteRequestComment = (id: number) =>\n api.post(downvote_request_comment_path({ id }));\n\nexport const deleteRequestComment = (id: number) => api.delete(request_comment_path({ id }));\n","import styled from \"styled-components\";\n\nconst List = styled.ul`\n margin: 0;\n padding-left: 20px;\n`;\n\nconst TOOLTIP_CONTENT = {\n SCIENTIST_UPVOTE: <>Vote up,\n SCIENTIST_NEW_QUESTION: (\n <>\n Pro Tips\n \n
  • \n Before submitting a new question, consider upvoting other questions that might address\n your inquiry\n
  • \n
  • Ask questions you think could be valuable to others
  • \n
  • Be succinct — aim for a single sentence question that addresses one core concept
  • \n
    \n \n ),\n SPONSOR_NEW_ANSWER: (\n <>\n Pro Tips\n \n
  • Answer the question as directly as possible
  • \n
  • Provide context and framing to help your audience understand your answer
  • \n
  • Keep your response to 5-8 sentences maximum
  • \n
    \n \n ),\n};\n\nexport default TOOLTIP_CONTENT;\n","import {\n Button,\n Checkbox,\n InfoBanner,\n InputTooltip,\n ProfilePicture,\n TextInput,\n TextLink,\n} from \"@components/library\";\nimport { COLORS, FONTS } from \"@constants\";\nimport { RootState } from \"@redux/store\";\nimport { createRequestComment } from \"@requests/requestComments\";\nimport { useMutation } from \"@tanstack/react-query\";\nimport { SegmentEventName } from \"@tsTypes/__generated__/enums\";\nimport { RequestCommentPartial, RfpPageRequest } from \"@tsTypes/index\";\nimport { RequestForStartupsShowResponse } from \"@tsTypes/request_for_startups/show\";\nimport { track } from \"@utils/appUtils\";\nimport { toastErrorHandler } from \"@utils/requests\";\nimport { Dispatch, SetStateAction, useEffect, useRef, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { USER_ROLES } from \"src/constants/users\";\nimport styled from \"styled-components\";\nimport line from \"./line.svg\";\nimport TOOLTIP_CONTENT from \"./tooltipContent\";\n\ninterface Props {\n companyName: string;\n request: RfpPageRequest | RequestForStartupsShowResponse;\n replyTo?: RequestCommentPartial;\n commentTreeLevel?: number;\n onSuccess: (requestCommentId: number) => void;\n setIsCommenting: Dispatch>;\n}\n\nconst RequestDiscussionSubmitForm = ({\n companyName,\n request,\n replyTo,\n commentTreeLevel = 0,\n onSuccess,\n setIsCommenting,\n}: Props) => {\n const [text, setText] = useState(\"\");\n const [isOpen, setIsOpen] = useState(true);\n const startedWritingRef = useRef(false);\n\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n\n const createCommentMutation = useMutation({\n mutationFn: createRequestComment,\n onSuccess: (response) => {\n const { id } = response.data;\n setText(\"\");\n onSuccess(id);\n },\n onError: toastErrorHandler,\n });\n\n const handleSubmitComment = () => {\n createCommentMutation.mutate({\n text,\n requestId: request.id,\n replyToId: replyTo?.id ?? undefined,\n open: isOpen,\n });\n };\n\n useEffect(() => {\n if (text.length > 0) startedWritingRef.current = true;\n }, [text]);\n\n useEffect(() => {\n return () => {\n if (startedWritingRef.current && text.length > 0)\n track(SegmentEventName.Abandon, {\n ui_component: \"Abandoned Comment\",\n react_component: \"RequestDiscussionSubmitForm\",\n request_slug: request.slug,\n });\n };\n }, []);\n\n const answering = replyTo?.id;\n\n return (\n \n {answering && }\n \n {\" \"}\n {answering ? <>Respond to {replyTo?.user?.name ?? companyName} : <>Ask {companyName}}\n \n \n setText(e.target.value)}\n textarea\n startingHeight={answering ? \"175px\" : \"64px\"}\n resize=\"none\"\n characterLimit={answering ? undefined : 220}\n />\n \n {request.confidential && answering && currentUser.role === USER_ROLES.sponsor && (\n \n )}\n \n {answering && currentUser.role === USER_ROLES.sponsor && (\n \n Allow {replyTo?.user?.name} to respond with a follow-up comment or question.\n {commentTreeLevel > 1 && replyTo?.user?.role === USER_ROLES.scientist ? (\n \n {\" \"}\n You can also{\" \"}\n \n message them directly\n \n .\n \n ) : null}\n \n }\n isChecked={isOpen}\n onChange={(e) => setIsOpen(e.target.checked)}\n size=\"sm\"\n />\n )}\n \n \n \n Submit\n \n setIsCommenting(false)}>Cancel\n \n \n );\n};\n\nexport default RequestDiscussionSubmitForm;\n\nexport const Submit = styled.div`\n display: flex;\n align-items: center;\n gap: 24px;\n ${FONTS.REGULAR_2}\n ${({ isEditing }) => isEditing && \"float: right; margin: 16px 0 0;\"}\n`;\nconst Context = styled.div`\n display: inline-flex;\n align-items: center;\n gap: 8px;\n ${FONTS.MEDIUM_2}\n color: ${COLORS.NEUTRAL_500};\n margin-bottom: 8px;\n`;\nconst Container = styled.div`\n position: relative;\n margin: ${({ answering }) => (answering ? \"0 0 32px 24px\" : \"32px 0 56px 0\")};\n`;\nexport const CheckboxContainer = styled.div`\n margin: 16px 0;\n`;\n\nexport const Cancel = styled.div`\n display: block;\n text-decoration: none;\n cursor: pointer;\n ${FONTS.SEMIBOLD_2}\n color: ${COLORS.HALO_BLUE};\n`;\n\nconst Line = styled.img`\n position: absolute;\n left: -18px;\n top: -100px;\n z-index: -1;\n`;\n","import toast from \"@components/Toast\";\nimport { Button, Checkbox, TextInput } from \"@components/library\";\nimport { FONTS } from \"@constants\";\nimport { RootState } from \"@redux/store\";\nimport { editRequestComment } from \"@requests/requestComments\";\nimport { useMutation } from \"@tanstack/react-query\";\nimport { RequestCommentPartial } from \"@tsTypes/index\";\nimport { Dispatch, SetStateAction, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport styled from \"styled-components\";\nimport { Cancel, CheckboxContainer, Submit } from \"./RequestDiscussionSubmitForm\";\n\ninterface Props {\n comment: RequestCommentPartial;\n onSuccess: () => Promise;\n setIsEditing: Dispatch>;\n}\n\nconst RequestDiscussionEditForm = ({ comment, onSuccess, setIsEditing }: Props) => {\n const [text, setText] = useState(comment.text ?? \"\");\n const [isOpen, setIsOpen] = useState(comment.open ?? true);\n\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n\n const mutation = useMutation({\n mutationFn: () => editRequestComment(comment.id, text, isOpen),\n onSuccess: async () => {\n setText(\"\");\n toast.success(\"Response edited!\");\n await onSuccess();\n },\n meta: {\n useGlobalErrorHandler: true,\n },\n });\n\n const handleSubmitComment = () => {\n mutation.mutate();\n };\n\n const answering = currentUser.role === 1;\n\n return (\n \n setText(e.target.value)}\n textarea\n startingHeight=\"150px\"\n resize=\"none\"\n />\n \n {answering && (\n setIsOpen(e.target.checked)}\n size=\"sm\"\n />\n )}\n \n \n \n Submit\n \n setIsEditing(false)}>Cancel\n \n \n );\n};\n\nexport default RequestDiscussionEditForm;\n\nconst EditContainer = styled.div`\n width: 100%;\n`;\n","import toast from \"@components/Toast\";\nimport { Button, Icon, ProfilePicture, TextLink, Tooltip } from \"@components/library\";\nimport { COLORS, FONTS } from \"@constants\";\nimport { toggleLoginModal } from \"@redux/actions/profileActions\";\nimport { RootState } from \"@redux/store\";\nimport {\n deleteRequestComment,\n downvoteRequestComment,\n editRequestComment,\n upvoteRequestComment,\n} from \"@requests/requestComments\";\nimport { SegmentEventName } from \"@tsTypes/__generated__/enums\";\nimport {\n RequestCommentPartial,\n RfpPageRequest,\n ScientistProfilePartial,\n SponsorProfilePartial,\n UniversityProfilePartial,\n} from \"@tsTypes/index\";\nimport { RequestForStartupsShowResponse } from \"@tsTypes/request_for_startups/show\";\nimport { UserRole } from \"@tsTypes/users\";\nimport { track } from \"@utils/appUtils\";\nimport appsignal from \"@utils/appsignal\";\nimport dayjs from \"dayjs\";\nimport { useState } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport styled from \"styled-components\";\nimport RequestDiscussionEditForm from \"./RequestDiscussionEditForm\";\nimport RequestDiscussionSubmitForm from \"./RequestDiscussionSubmitForm\";\nimport line from \"./line.svg\";\nimport TOOLTIP_CONTENT from \"./tooltipContent\";\n\ninterface Props {\n comment: RequestCommentPartial;\n request: RfpPageRequest | RequestForStartupsShowResponse;\n commentTreeLevel?: number;\n refreshComments: () => Promise;\n canAnswer: boolean;\n isCompanyHidden: boolean;\n canShowQA?: boolean;\n}\n\nconst RequestComment = ({\n comment,\n request,\n commentTreeLevel = 0,\n refreshComments,\n canAnswer,\n isCompanyHidden,\n canShowQA = true,\n}: Props) => {\n const {\n id,\n user,\n created_at,\n text,\n open,\n reply_to,\n replies,\n cached_votes_up,\n cached_votes_down,\n upvoted_by_current_user,\n downvoted_by_current_user,\n } = comment;\n\n const [isCommenting, setIsCommenting] = useState(false);\n const [isEditing, setIsEditing] = useState(false);\n\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n const dispatch = useDispatch();\n\n const isScientist = currentUser.role === UserRole.SCIENTIST;\n const isSponsor = currentUser.role === UserRole.SPONSOR;\n const isUniversityAdmin = currentUser.role === UserRole.UNIVERSITY_ADMIN;\n\n const commentBelongsToCurrentUser = currentUser.id && currentUser.id === user?.id;\n\n const isQuestion = commentTreeLevel === 0;\n const showEditActions =\n commentBelongsToCurrentUser && !isEditing && !(isQuestion && Number(replies?.length) > 0);\n const canUpvote = !isSponsor && !commentBelongsToCurrentUser;\n const showAnswerButton = !isCommenting && isQuestion && !replies?.length && canAnswer;\n const showReplyButton = (() => {\n if (isCommenting || isQuestion || replies?.length) return false;\n\n if (!open) return false;\n\n if (isScientist || isUniversityAdmin) {\n const belongsToThread = reply_to?.user?.id === currentUser.id;\n\n return belongsToThread;\n }\n\n if (isSponsor) {\n const replyToCompanyId = (reply_to?.user?.profile_info as SponsorProfilePartial)?.company_id;\n const currentUserCompanyId = currentUser.profile_info?.company_id;\n\n return replyToCompanyId === currentUserCompanyId;\n }\n\n return false;\n })();\n\n const commenterName =\n isCompanyHidden && user?.role === UserRole.SPONSOR ? \"Team Member\" : user?.name;\n\n let commenterTitle: string | null = \"\";\n let commenterLocation: string | null = \"\";\n\n if (user?.role === UserRole.SCIENTIST) {\n commenterLocation = (user.profile_info as ScientistProfilePartial)?.location;\n commenterTitle = (user.profile_info as ScientistProfilePartial)?.title ?? \"Scientist\";\n } else if (user?.role === UserRole.UNIVERSITY_ADMIN) {\n commenterLocation = (user.profile_info as UniversityProfilePartial)?.university;\n commenterTitle = (user.profile_info as UniversityProfilePartial)?.role;\n } else if (isCompanyHidden) {\n commenterLocation = \"Private Company\";\n commenterTitle = \"Reviewer\";\n } else if ((user?.profile_info as SponsorProfilePartial)?.company_name) {\n commenterLocation = (user?.profile_info as SponsorProfilePartial).company_name;\n commenterTitle = (user?.profile_info as SponsorProfilePartial)?.title ?? \"Reviewer\";\n }\n\n const onUndo = async (requestCommentId) => {\n try {\n await deleteRequestComment(requestCommentId);\n\n await refreshComments();\n\n toast.success(\"Comment deleted!\");\n } catch (e) {\n toast.error(\"There was an error deleting this comment. Please try again later.\");\n\n appsignal.sendError(e, (span) => {\n span.setAction(\"RequestDiscussionSubmitForm#onUndo\");\n span.setTags({\n commentId: String(requestCommentId),\n userId: currentUser.id,\n userEmail: currentUser.email,\n });\n });\n }\n };\n\n const onReplySuccess = async (requestCommentId) => {\n setIsEditing(false);\n setIsCommenting(false);\n await refreshComments();\n toast.success(\n \n {\"Response posted!\"}\n onUndo(requestCommentId)}>Undo\n \n );\n };\n\n const onEditSuccess = async () => {\n setIsEditing(false);\n setIsCommenting(false);\n await refreshComments();\n };\n\n const onUpvote = async () => {\n if (!currentUser.id) {\n dispatch(toggleLoginModal({ open: true }));\n return;\n }\n\n if (!canUpvote) return;\n\n try {\n await upvoteRequestComment(id);\n track(SegmentEventName.Click, {\n ui_component: \"Upvote Comment\",\n react_component: \"RequestComment\",\n request_slug: request.slug,\n is_undo: upvoted_by_current_user,\n });\n refreshComments();\n } catch (e) {\n toast.error(\"There was an error upvoting this comment. Please try again later.\");\n\n appsignal.sendError(e, (span) => {\n span.setAction(\"RequestComment#onUpvote\");\n span.setTags({\n commentId: String(id),\n userId: currentUser.id,\n userEmail: currentUser.email,\n });\n });\n }\n };\n\n const onDownvote = async () => {\n if (!currentUser.id) {\n dispatch(toggleLoginModal({ open: true }));\n return;\n }\n\n if (!isScientist && !isUniversityAdmin) return;\n\n try {\n await downvoteRequestComment(id);\n track(SegmentEventName.Click, {\n ui_component: \"Downvote Comment\",\n react_component: \"RequestComment\",\n request_slug: request.slug,\n is_undo: upvoted_by_current_user,\n });\n refreshComments();\n } catch (e) {\n toast.error(\"There was an error downvoting this comment. Please try again later.\");\n\n appsignal.sendError(e, (span) => {\n span.setAction(\"RequestComment#onDownvote\");\n span.setTags({\n commentId: String(id),\n userId: currentUser.id,\n userEmail: currentUser.email,\n });\n });\n }\n };\n\n const onDelete = async () => {\n try {\n await deleteRequestComment(id);\n toast.success(\"Comment deleted!\");\n refreshComments();\n } catch (e) {\n toast.error(\"There was an error deleting this comment. Please try again later.\");\n\n appsignal.sendError(e, (span) => {\n span.setAction(\"RequestComment#onDelete\");\n span.setTags({\n commentId: String(id),\n userId: currentUser.id,\n userEmail: currentUser.email,\n });\n });\n }\n };\n\n const onCloseThread = async () => {\n try {\n await editRequestComment(id, undefined, false);\n track(SegmentEventName.Click, {\n ui_component: \"Close Thread\",\n react_component: \"RequestComment\",\n request_slug: request.slug,\n });\n toast.success(\n \n {\"Thread closed!\"}\n editRequestComment(id, undefined, true)}>Undo\n \n );\n refreshComments();\n } catch (e) {\n toast.error(\"There was an error closing this thread. Please try again later.\");\n\n appsignal.sendError(e, (span) => {\n span.setAction(\"RequestComment#onCloseThread\");\n span.setTags({\n commentId: String(id),\n userId: currentUser.id,\n userEmail: currentUser.email,\n });\n });\n }\n };\n\n const showAwaitingResponse =\n (showAnswerButton || showReplyButton) && currentUser.role === UserRole.SPONSOR;\n\n return (\n \n {showAwaitingResponse && isQuestion && (\n Awaiting your response\n )}\n \n \n {isEditing ? (\n \n ) : (\n \n \n {isQuestion ? \"Q.\" : \"A.\"}\n \n
    \n {showAwaitingResponse && !isQuestion && (\n Awaiting your response\n )}\n {text}\n
    \n
    \n )}\n {showEditActions && (\n \n {isSponsor && (\n \n )}\n Delete\n \n )}\n \n \n \n \n \n \n {user?.role === UserRole.SCIENTIST ? (\n \n track(SegmentEventName.Click, {\n ui_component: \"Scientist Profile Link\",\n react_component: \"RequestComment\",\n request_slug: request.slug,\n })\n }\n >\n {commenterName}, {commenterTitle}, {commenterLocation}\n \n ) : (\n <>\n {commenterName}, {commenterTitle}, {commenterLocation}\n \n \n )}\n \n {dayjs(created_at).format(\"MMMM D, YYYY\")}\n \n \n
    \n {user?.role !== UserRole.SPONSOR && (\n \n \n \n {cached_votes_up}\n \n \n )}\n
    \n {user?.role === UserRole.SPONSOR && (\n \n {currentUser.role === UserRole.SPONSOR\n ? \"Researcher rating\"\n : \"Is this response helpful?\"}\n \n {\" \"}\n {cached_votes_up}\n \n \n {\" \"}\n {cached_votes_down}\n \n \n )}\n {(showAnswerButton || showReplyButton) && (\n <>\n setIsCommenting(true)}\n margin={showAnswerButton ? \"32px 0 0 24px\" : \"32px 0 8px 24px\"}\n width=\"min-content\"\n >\n {isQuestion ? \"Answer\" : \"Reply\"}\n \n {open && reply_to && currentUser.role === UserRole.SPONSOR && (\n \n Close thread\n \n )}\n \n )}\n {isCommenting && (\n \n )}\n {!isQuestion && Number(replies?.length) > 0 && }\n \n {Number(replies?.length) > 0 && (\n <>\n {isQuestion && }\n {replies?.map((reply, index) => (\n \n ))}\n \n )}\n \n
    \n );\n};\n\nexport default RequestComment;\n\nconst Container = styled.div`\n ${({ highlight, isQuestion }) =>\n highlight &&\n `\n padding: 16px ${isQuestion ? \"16px\" : \"0px\"} 0px;\n border-radius: 8px;\n background: ${COLORS.ORANGE_50};\n margin-bottom: 56px;\n `}\n`;\n\nconst HorizontalLine = styled.div`\n width: 100%;\n height: 1px;\n background: ${COLORS.NEUTRAL_200};\n margin: 32px 0;\n`;\n\nconst Comment = styled.div`\n display: flex;\n margin: 0 0 24px 0;\n`;\nconst MainContent = styled.div`\n flex: 1;\n`;\nconst TextContainer = styled.div`\n ${({ isQuestion }) => (isQuestion ? FONTS.SEMIBOLD_1 : FONTS.REGULAR_1)}\n display: flex;\n gap: 8px;\n`;\nconst QuestionAnswer = styled.strong`\n background: ${({ highlight }) => (highlight ? COLORS.ORANGE_50 : COLORS.WHITE)};\n height: min-content;\n ${({ canShowQA }) => !canShowQA && \"visibility: hidden;\"}\n`;\nconst TextContent = styled.div`\n word-break: break-word;\n`;\nconst User = styled.div`\n display: inline-flex;\n gap: 8px;\n ${FONTS.REGULAR_3}\n margin-top: 16px;\n margin-left: ${({ isEditing }) => (isEditing ? \"0\" : \"24px\")};\n`;\nconst PictureContainer = styled(Link)`\n flex-grow: 1;\n pointer-events: ${({ to }) => (to ? \"auto\" : \"none\")};\n text-decoration: none !important;\n`;\nconst UserInfo = styled.div`\n text-overflow: ellipsis;\n flex-shrink: 1;\n`;\nconst Name = styled.div`\n display: inline-flex;\n align-items: center;\n ${FONTS.REGULAR_3}\n line-height: 1.5;\n`;\nconst DatePosted = styled.div`\n ${FONTS.REGULAR_3}\n color: ${COLORS.NEUTRAL_500};\n`;\nconst Delete = styled.div`\n display: block;\n text-decoration: underline;\n cursor: pointer;\n ${FONTS.SEMIBOLD_2}\n color: ${COLORS.RED};\n`;\nconst QuestionVoteContainer = styled.div`\n display: inline-flex;\n flex-direction: column;\n align-items: center;\n padding: 10px;\n border: 2px solid ${COLORS.NEUTRAL_100};\n border-radius: 12px;\n font-weight: 600;\n font-size: 12px;\n line-height: 20px;\n color: ${COLORS.BLUE_LIGHT_700};\n height: 100%;\n margin-left: 24px;\n color: ${COLORS.NEUTRAL_500};\n ${({ didVote }) => didVote && `color: ${COLORS.HALO_BLUE};`}\n ${({ canVote }) =>\n canVote &&\n `\n cursor: pointer;\n &:hover {\n background: ${COLORS.BLUE_LIGHT_300};\n border: 2px solid ${COLORS.BLUE_LIGHT_300};\n }\n `}\n`;\nconst QuestionVoteScore = styled.div`\n margin-top: -4px;\n`;\nconst Answers = styled.div`\n position: relative;\n margin: 32px 0 0;\n ${({ indentAnswers }) =>\n indentAnswers &&\n `\n margin: 32px 0 56px;\n padding-left: 28px;\n `}\n width: 100%;\n display: flex;\n flex-direction: column;\n gap: 24px;\n`;\nconst Line = styled.img`\n position: absolute;\n left: 5px;\n top: -108px;\n z-index: -1;\n`;\nconst MessageActions = styled.div`\n margin: 16px 0 8px 24px;\n display: flex;\n align-items: center;\n gap: 16px;\n`;\nconst Helpful = styled.div`\n margin: 16px 0 8px 24px;\n display: flex;\n align-items: center;\n gap: 16px;\n ${FONTS.REGULAR_3}\n`;\nconst HelpfulThumb = styled.div`\n ${({ canVote }) => canVote && \"cursor: pointer;\"}\n display: flex;\n align-items: center;\n gap: 4px;\n color: ${({ canVote }) => (canVote ? COLORS.HALO_BLUE : COLORS.NEUTRAL_400)};\n`;\nconst AwaitingReponse = styled.div`\n ${FONTS.TAG_MEDIUM_2}\n color: ${COLORS.ORANGE_900};\n margin: 0 0 8px;\n`;\nconst ToastContent = styled.div`\n display: flex;\n align-items: center;\n gap: 8px;\n`;\nconst UndoButton = styled.button`\n background: none;\n border: none;\n padding: 0;\n cursor: pointer;\n text-decoration: underline;\n`;\n","import { Button, SelectableDropdown } from \"@components/library\";\nimport { DropdownOption } from \"@components/library/Dropdowns/DropdownOption\";\nimport FuelModal from \"@components/modals/FuelModal\";\nimport RfpQuestionSubmittedModal from \"@components/modals/RfpQuestionSubmittedModal\";\nimport { COLORS, FONTS } from \"@constants\";\nimport { toggleLoginModal } from \"@redux/actions/profileActions\";\nimport { RootState } from \"@redux/store\";\nimport { getRequestComments } from \"@requests/requestComments\";\nimport { getCanSubmitProposal } from \"@requests/requests\";\nimport { RequestCommentPartial, RfpPageRequest, SponsorCurrentUser } from \"@tsTypes/index\";\nimport { RequestForExpertsShowResponse } from \"@tsTypes/request_for_experts/show\";\nimport { RequestForStartupsShowResponse } from \"@tsTypes/request_for_startups/show\";\nimport { LaunchableRequestStatus, RequestableType } from \"@tsTypes/requests\";\nimport { UserRole } from \"@tsTypes/users\";\nimport {\n canAccessRequestAsLead,\n getLaunchableRequestStatus,\n LaunchableRequest,\n} from \"@utils/requestUtils\";\nimport { checkRfpCompanyHidden } from \"@utils/rfpUtils\";\nimport { Dispatch, ForwardedRef, forwardRef, SetStateAction, useEffect, useState } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { USER_ROLES } from \"src/constants/users\";\nimport styled from \"styled-components\";\nimport RequestComment from \"./RequestComment\";\nimport RequestDiscussionSubmitForm from \"./RequestDiscussionSubmitForm\";\n\ninterface Props {\n request: RfpPageRequest | RequestForStartupsShowResponse | RequestForExpertsShowResponse;\n isCommenting: boolean;\n setIsCommenting: Dispatch>;\n setIsShareModalOpen: Dispatch>;\n}\n\nconst SORT_BY_OPTIONS: DropdownOption[] = [\n {\n value: \"votes\",\n label: \"Most upvoted\",\n },\n {\n value: \"recent\",\n label: \"Most recent\",\n },\n {\n value: \"awaiting_response\",\n label: \"Awaiting response\",\n },\n];\n\nconst RequestDiscussion = (\n { request, isCommenting, setIsCommenting, setIsShareModalOpen }: Props,\n ref: ForwardedRef\n) => {\n const [successModalOpen, setSuccessModalOpen] = useState(false);\n const [isFuelModalOpen, setIsFuelModalOpen] = useState(false);\n\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n const dispatch = useDispatch();\n\n const isForRfs = request.requestable_type === RequestableType.REQUEST_FOR_STARTUP;\n const isCompanyHidden = checkRfpCompanyHidden(request, currentUser);\n const companyName = isCompanyHidden ? \"the company\" : (request.company as any)?.company_name;\n const isFuel =\n \"company_name\" in request.company && request.company.company_name?.includes(\"FUEL\");\n\n const _canAccessRequestAsLead =\n currentUser.role === UserRole.SPONSOR &&\n canAccessRequestAsLead(currentUser as SponsorCurrentUser, request);\n const showRfpDiscussion =\n getLaunchableRequestStatus(request as LaunchableRequest) === LaunchableRequestStatus.ACTIVE;\n\n const [sortBy, setSortBy] = useState(\n _canAccessRequestAsLead ? SORT_BY_OPTIONS[2] : SORT_BY_OPTIONS[0]\n );\n const [comments, setComments] = useState([]);\n\n const canAskQuestion = [UserRole.SCIENTIST, UserRole.UNIVERSITY_ADMIN].includes(currentUser.role);\n\n const refreshComments = async () => {\n const { request_comments } = await getRequestComments(request.id, sortBy.value);\n setComments(request_comments);\n };\n\n useEffect(() => {\n refreshComments();\n }, [sortBy]);\n\n useEffect(() => {\n if (_canAccessRequestAsLead) setSortBy(SORT_BY_OPTIONS[2]);\n }, [currentUser.role]);\n\n const onCommentSuccess = () => {\n refreshComments();\n setIsCommenting(false);\n\n if (canAskQuestion) {\n setSuccessModalOpen(true);\n }\n };\n\n return (\n <>\n setSuccessModalOpen(false)}\n isOpen={successModalOpen}\n handleOpenShareModal={() => setIsShareModalOpen(true)}\n />\n setIsFuelModalOpen(false)} />\n \n Q&A with {companyName}\n \n {showRfpDiscussion ? (\n <>\n

    \n Ask the team at {companyName} any questions you have about this{\" \"}\n {isForRfs ? \"startup program\" : \"RFP\"}.\n

    \n {(() => {\n if (currentUser.id === undefined) {\n return (\n \n
    Ask your question
    \n {\n dispatch(toggleLoginModal({ open: true }));\n }}\n >\n Sign In\n \n
    \n );\n }\n if (isCommenting) {\n return (\n \n );\n }\n if (canAskQuestion) {\n return (\n {\n if (isFuel) {\n const canSubmit = await getCanSubmitProposal(request.id);\n if (canSubmit) setIsCommenting(true);\n else setIsFuelModalOpen(true);\n } else {\n setIsCommenting(true);\n }\n }}\n >\n Ask your question\n \n );\n }\n })()}\n \n ) : (\n \n

    The Q&A is now closed.

    \n
    \n )}\n {comments.length > 0 && (\n \n Sort by:\n option.value !== \"replies\")\n }\n value={sortBy}\n onChange={(e) => setSortBy(e)}\n />\n \n )}\n \n {comments.map((comment) => (\n \n ))}\n \n \n );\n};\n\nexport default forwardRef(RequestDiscussion);\n\nconst QuestionCTA = styled.div`\n display: flex;\n justify-content: center;\n gap: 30px;\n align-items: center;\n margin: 32px 0 16px 0;\n background: ${COLORS.BLUE_LIGHT_250};\n padding: 16px 32px;\n border-radius: 12px;\n`;\nconst SortBy = styled.div`\n display: flex;\n align-items: center;\n margin-top: 32px;\n margin-bottom: 16px;\n ${FONTS.REGULAR_2};\n`;\nconst Heading = styled.div`\n ${FONTS.HEADING_2_SEMIBOLD};\n margin-bottom: 24px;\n &:not(:first-of-type) {\n margin-top: 48px;\n }\n`;\nconst Questions = styled.div`\n margin-top: 16px;\n`;\nconst Closed = styled.div`\n margin-bottom: 16px;\n`;\n","export const FAQS = [\n {\n href: \"https://knowledge.halo.science/what-is-the-proposal-process\",\n text: \"What are the proposal questions?\",\n },\n {\n href: \"https://knowledge.halo.science/where-do-i-submit-a-proposal\",\n text: \"Where do I submit a proposal?\",\n },\n {\n href: \"https://knowledge.halo.science/who-is-eligible-to-apply\",\n text: \"Who is eligible to submit a proposal?\",\n },\n {\n href: \"https://knowledge.halo.science/do-proposals-require-confidential-information-faq\",\n text: \"Do proposals require confidential information?\",\n },\n {\n href: \"https://knowledge.halo.science/can-university-administrators-join-halo\",\n text: \"Can university administrators join Halo?\",\n },\n {\n href: \"https://knowledge.halo.science/are-indirect-costs-included-in-the-funding-range-provided-by-sponsors\",\n text: \"Are indirect costs included in the funding provided?\",\n },\n {\n href: \"https://knowledge.halo.science/does-halo-charge-universities-or-scientists\",\n text: \"Does Halo charge universities?\",\n },\n];\n\nexport const TESTING4AG_FAQS = [\n {\n href: \"https://knowledge.halo.science/what-are-the-proposal-questions-for-testing4ag\",\n text: \"What are the proposal questions for Testing4Ag?\",\n },\n {\n href: \"https://knowledge.halo.science/what-happens-after-i-submit-a-proposal\",\n text: \"What happens after I submit a proposal for Testing4Ag?\",\n },\n {\n href: \"https://knowledge.halo.science/bayer-testing4ag-shared-results\",\n text: \"How will the results be shared with researchers?\",\n },\n {\n href: \"https://knowledge.halo.science/why-is-an-mta-required-for-testing4ag\",\n text: \"Why is an MTA required?\",\n },\n {\n href: \"https://knowledge.halo.science/what-are-the-terms-of-the-mta-for-bayers-testing4ag-program\",\n text: \"What are the terms of the MTA?\",\n },\n {\n href: \"https://knowledge.halo.science/what-if-i-have-questions-about-the-mta-for-bayers-testing4ag-program\",\n text: \"What if I have questions about the MTA?\",\n },\n];\n\nexport const BASF_RFM_FAQS = [\n {\n href: \"https://knowledge.halo.science/information-basf-request-for-materials\",\n text: \"What information will I need to share to start the Request for Materials process with BASF?\",\n },\n {\n href: \"https://knowledge.halo.science/what-does-the-request-for-materials-process-with-basf-look-like\",\n text: \"What does the Request for Materials process with BASF look like?\",\n },\n {\n href: \"https://knowledge.halo.science/what-biological-results-will-i-get-from-basf\",\n text: \"What biological results will I get from BASF?\",\n },\n {\n href: \"https://knowledge.halo.science/do-i-still-own-the-rights-to-my-molecules\",\n text: \"Do I still own the rights to my molecules?\",\n },\n {\n href: \"https://knowledge.halo.science/what-if-i-have-questions-about-the-basf-mta\",\n text: \"What if I have questions about the BASF MTA?\",\n },\n];\n\nexport const BAYER_COLAB_CAMBRIDGE_RFS_FAQS = [\n {\n text: \"Are selected startups for Co.Lab Cambridge expected to relocate?\",\n href: \"https://knowledge.halo.science/are-selected-startups-expected-to-relocate\",\n },\n {\n text: \"How long is the Co.Lab Cambridge incubator program?\",\n href: \"https://knowledge.halo.science/how-long-is-the-co.lab-cambridge-incubator-program\",\n },\n {\n text: \"Is there a virtual option for the Co.Lab incubator program?\",\n href: \"https://knowledge.halo.science/is-there-a-virtual-option-for-the-co.lab-cambridge-incubator-program\",\n },\n {\n text: \"If my startup is already based in Cambridge, am I still eligible to apply to Co.Lab Cambridge?\",\n href: \"https://knowledge.halo.science/if-my-startup-is-already-based-in-cambridge-am-i-still-eligible-to-apply-to-co.lab-cambridge\",\n },\n];\n\nexport const FUEL_FAQS = [\n {\n href: \"https://knowledge.halo.science/fuel-eligibility\",\n text: \"What are the eligibility requirements for FUEL requests?\",\n },\n {\n href: \"https://knowledge.halo.science/find-more-info-about-fuel\",\n text: \"Where can I find more information about FUEL, its opportunities, proposal budgets, eligibility, or similar topics?\",\n },\n {\n href: \"https://knowledge.halo.science/fuel-budget-constraints\",\n text: \"What are the budget requirements and constraints for FUEL requests?\",\n },\n {\n href: \"https://knowledge.halo.science/can-the-same-proposal-submitted-to-fuel-be-submitted-to-other-agencies-or-sponsors-for-simultaneous-review\",\n text: \"Can the same proposal submitted to FUEL be submitted to other agencies or sponsors for simultaneous review?\",\n },\n];\n","import { TextLink } from \"@components/library\";\nimport { COLORS, COMPANIES, FONTS } from \"@constants\";\nimport { RfpPageRequest } from \"@tsTypes/index\";\nimport styled from \"styled-components\";\nimport {\n BASF_RFM_FAQS,\n BAYER_COLAB_CAMBRIDGE_RFS_FAQS,\n FAQS,\n FUEL_FAQS,\n TESTING4AG_FAQS,\n} from \"./faqs\";\n\ninterface Props {\n request: RfpPageRequest;\n}\n\nconst { FUEL_ID } = COMPANIES;\n\nconst RequestFAQs = ({ request }: Props) => {\n const defaultFaqs = [...FAQS];\n\n if (request.requestable.hubspot_faq_tag) {\n defaultFaqs.push({\n href: `https://knowledge.halo.science/rfps#${request.requestable.hubspot_faq_tag}`,\n text: \"View questions specific to this opportunity\",\n });\n }\n\n const isTesting4Ag = request.title.includes(\"Testing4Ag\");\n const isBasfRfm = request.slug.includes(\n \"free-in-vivo-testing-unleash-your-molecule-s-potential-as-a-crop-protector\"\n );\n const isBayerColabCambridgeRfs = request.slug === \"co-lab-cambridge\";\n const isFuelRequest = request.company.id === FUEL_ID;\n\n let faqs = defaultFaqs;\n if (isTesting4Ag) {\n faqs = TESTING4AG_FAQS;\n } else if (isBasfRfm) {\n faqs = BASF_RFM_FAQS;\n } else if (isBayerColabCambridgeRfs) {\n faqs = BAYER_COLAB_CAMBRIDGE_RFS_FAQS;\n } else if (isFuelRequest) {\n faqs = FUEL_FAQS;\n }\n\n return (\n \n Frequently Asked Questions\n {faqs.map((faq) => (\n
    \n \n {faq.text}\n \n
    \n ))}\n
    \n );\n};\n\nexport default RequestFAQs;\n\nconst Container = styled.div`\n border: 1px solid ${COLORS.NEUTRAL_250};\n border-radius: 8px;\n padding: 24px;\n & ul {\n padding-left: 24px;\n margin-bottom: 0;\n }\n`;\nconst Heading = styled.div`\n ${FONTS.SEMIBOLD_1};\n margin-bottom: 16px;\n`;\n","import { TextLink, UserPreview } from \"@components/library\";\nimport { COLORS, FONTS, WINDOW_DIMENSIONS } from \"@constants\";\nimport { ReviewTeamMember, RfpPageRequest } from \"@tsTypes/index\";\nimport { RequestForExpertsShowResponse } from \"@tsTypes/request_for_experts/show\";\nimport { RequestForStartupsShowResponse } from \"@tsTypes/request_for_startups/show\";\nimport { RoleName } from \"@tsTypes/roles\";\nimport { UserRole } from \"@tsTypes/users\";\nimport { canAccessRequestAsLead, findRequestRoleNameOnUser } from \"@utils/requestUtils\";\nimport { renderMarkdownText } from \"@utils/textUtils\";\nimport { sortByHasProfilePicture } from \"@utils/userUtils\";\nimport styled from \"styled-components\";\n\ninterface Props {\n request: RfpPageRequest | RequestForExpertsShowResponse | RequestForStartupsShowResponse;\n isResponsive?: boolean;\n withMarginTop?: boolean;\n customText?: string; // Override the default company \"Who we are\" text\n lineHeight?: string;\n}\n\nexport default function AboutCompany({\n request,\n isResponsive = true,\n withMarginTop = true,\n customText,\n lineHeight,\n}: Props) {\n const company = request.company;\n\n if (request.confidential || \"private_alias\" in company) return null;\n\n let reviewTeamMembers: ReviewTeamMember[] = [];\n if (\"review_team_members\" in request) {\n reviewTeamMembers = request.review_team_members;\n }\n\n let reviewTeamMembersForDisplay: ReviewTeamMember[] = reviewTeamMembers.filter((reviewer) =>\n canAccessRequestAsLead(reviewer, request)\n );\n reviewTeamMembersForDisplay = sortByHasProfilePicture(reviewTeamMembersForDisplay);\n reviewTeamMembersForDisplay = reviewTeamMembersForDisplay.sort(\n (a, b) =>\n Number(findRequestRoleNameOnUser(b, request) === RoleName.REQUEST_LEAD) -\n Number(findRequestRoleNameOnUser(a, request) === RoleName.REQUEST_LEAD)\n );\n\n const text = customText ?? company.description;\n\n return (\n \n {Number(text?.length) > 0 && (\n <>\n \n Who we are\n \n
    \n {customText ? (\n renderMarkdownText(text)\n ) : (\n <>\n {renderMarkdownText(text)}\n  \n \n Learn more\n \n \n )}\n
    \n \n )}\n {reviewTeamMembersForDisplay.length > 0 && (\n <>\n Reviewers\n \n {reviewTeamMembersForDisplay.map((member) => (\n \n ))}\n \n \n )}\n
    \n );\n}\n\nconst Container = styled.div`\n ${FONTS.REGULAR_1}\n line-height: ${({ lineHeight }) => lineHeight ?? \"2\"};\n & p {\n margin-bottom: 16px !important;\n }\n`;\nconst Heading = styled.div`\n ${FONTS.HEADING_4_SEMIBOLD};\n ${({ withMarginTop }) => withMarginTop && `margin-top: 64px;`}\n margin-bottom: 24px;\n`;\nconst Reviewers = styled.div`\n display: grid;\n grid-template-columns: 1fr;\n grid-gap: 64px 48px;\n ${({ isResponsive }) =>\n isResponsive &&\n `\n ${WINDOW_DIMENSIONS.EXTRA_WIDE_MEDIA_QUERY} {\n grid-template-columns: 1fr 1fr;\n }\n `}\n`;\n","import { CompanyAvatar, Icon } from \"@components/library\";\nimport { COLORS, FONTS, WINDOW_DIMENSIONS } from \"@constants\";\nimport { RootState } from \"@redux/store\";\nimport { CompanyPartial, ConfidentialCompany, RfpPageRequest } from \"@tsTypes/index\";\nimport { Link } from \"react-router-dom\";\nimport styled from \"styled-components\";\n// @ts-ignore\nimport { CompanyVerificationStatus } from \"@tsTypes/companies.js.erb\";\nimport { RequestForExpertsShowResponse } from \"@tsTypes/request_for_experts/show\";\nimport { RequestForStartupsShowResponse } from \"@tsTypes/request_for_startups/show\";\nimport { RequestableType } from \"@tsTypes/requests\";\nimport { useSelector } from \"react-redux\";\n\ninterface Props {\n request: RfpPageRequest | RequestForExpertsShowResponse | RequestForStartupsShowResponse;\n asPreview?: boolean;\n}\nexport default function Banner({ request, asPreview = false }: Props) {\n const isTablet = useSelector((state: RootState) => state.window.isTablet);\n\n const isCompanyPrivate = \"private_alias\" in request.company || request.confidential;\n const isRfs = request.requestable_type === RequestableType.REQUEST_FOR_STARTUP;\n const typedRfs = request.requestable as RequestForStartupsShowResponse[\"requestable\"];\n\n return (\n \n \n \n \n {isCompanyPrivate\n ? (request.company as ConfidentialCompany).private_alias\n : (request.company as CompanyPartial).company_name}\n {request.company.verification_status === CompanyVerificationStatus.VERIFIED && (\n \n )}\n \n {isRfs && {typedRfs.parent_program}}\n \n \n {request.title}\n \n {request.commercial_application ? (\n \n {request.commercial_application.name}\n \n ) : (\n
    \n )}\n \n );\n}\n\nconst Container = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n gap: 16px;\n min-height: 400px;\n padding: 32px;\n background: ${({ backgroundImageUrl }) =>\n backgroundImageUrl ? `url(${backgroundImageUrl})` : \"#3B82F6\"};\n background-size: cover;\n border-radius: 12px;\n`;\nconst TopRow = styled.div`\n display: flex;\n align-items: center;\n gap: 16px;\n ${({ asPreview }) =>\n !asPreview &&\n `\n ${WINDOW_DIMENSIONS.MOBILE_MEDIA_QUERY} {\n flex-direction: column;\n align-items: flex-start;\n gap: 16px;\n }\n `}\n`;\nconst CompanyContainer = styled(Link)`\n display: flex;\n align-items: center;\n gap: 16px;\n color: ${COLORS.WHITE};\n ${FONTS.HEADING_5_BOLD};\n text-decoration: underline;\n text-decoration-color: ${COLORS.BLUE_LIGHT_600};\n -webkit-text-decoration-color: ${COLORS.BLUE_LIGHT_600};\n text-underline-offset: 5px;\n &:hover {\n color: ${COLORS.WHITE};\n text-decoration-color: ${COLORS.BLUE_LIGHT_600};\n -webkit-text-decoration-color: ${COLORS.BLUE_LIGHT_600};\n }\n`;\nconst ParentProgram = styled.div`\n color: ${COLORS.WHITE};\n ${FONTS.HEADING_5_REGULAR};\n ${({ asPreview }) =>\n !asPreview &&\n `\n ${WINDOW_DIMENSIONS.TABLET_MEDIA_QUERY} {\n ${FONTS.REGULAR_2};\n }\n `}\n`;\nconst Title = styled.div`\n max-width: 1048px;\n ${({ title }) => {\n if (title.length > 50) return FONTS.HEADING_JUMBO;\n return FONTS.HEADING_BANNER;\n }};\n margin-bottom: 48px;\n color: ${COLORS.WHITE};\n line-height: 1.2;\n letter-spacing: -0.03em;\n overflow-wrap: break-word;\n ${({ asPreview, title }) =>\n !asPreview &&\n `\n font-size: ${(() => {\n if (title.length > 67) return 52;\n return 64;\n })()}px;\n @media screen and (max-width: 1212px) {\n font-size: 52px;\n }\n @media screen and (max-width: 784px) {\n font-size: 42px;\n }\n `}\n`;\nconst CommercialApplication = styled(Link)`\n display: flex;\n align-items: center;\n width: fit-content;\n height: 32px;\n padding: 0 12px 2px;\n background-color: ${COLORS.BLUE_750};\n border-radius: 100px;\n color: ${COLORS.WHITE};\n ${FONTS.SEMIBOLD_3};\n text-decoration: underline;\n text-decoration-color: ${COLORS.BLUE_LIGHT_700};\n -webkit-text-decoration-color: ${COLORS.BLUE_LIGHT_700};\n text-underline-offset: 4px;\n &:hover {\n color: ${COLORS.WHITE};\n background-color: ${COLORS.BLUE_600};\n text-decoration-color: ${COLORS.BLUE_LIGHT_700};\n -webkit-text-decoration-color: ${COLORS.BLUE_LIGHT_700};\n }\n`;\n","import { Button, Icon, RequestStatusIcon, Tag } from \"@components/library\";\nimport { IconName } from \"@components/library/Icon/Icon\";\nimport { COLORS, FONTS, WINDOW_DIMENSIONS } from \"@constants\";\nimport { RootState } from \"@redux/store\";\nimport { SegmentEventName } from \"@tsTypes/__generated__/enums\";\nimport { RequestForCard } from \"@tsTypes/index\";\nimport { RequestableType } from \"@tsTypes/requests\";\nimport { RfpStatus } from \"@tsTypes/rfps\";\nimport { UserRole } from \"@tsTypes/users\";\nimport { track } from \"@utils/appUtils\";\nimport { getRfpStatus, getRfpStatusText } from \"@utils/rfpUtils\";\nimport dayjs from \"dayjs\";\nimport { useSelector } from \"react-redux\";\nimport styled from \"styled-components\";\n\ninterface Props {\n request: RequestForCard;\n isUserFollowing: boolean;\n isCardHovered: boolean;\n shouldShowUnsubscribeButton?: boolean;\n}\n\nconst RfpCardFooter = ({\n request,\n isUserFollowing,\n isCardHovered,\n shouldShowUnsubscribeButton = false,\n}: Props) => {\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n\n const statusElementOptions = {\n comingSoon: Coming soon!,\n active: (\n \n Apply by {dayjs(request.requestable.deadline ?? 0).format(\"MMM D\")}\n \n ),\n inExtension: Complete,\n pastDeadline: Complete,\n };\n\n if (request.requestable_type === RequestableType.RFP && request.requestable.is_trial) {\n const waitListStatus = (\n \n \n Accepting first 5 proposals\n \n );\n\n statusElementOptions.active = waitListStatus;\n statusElementOptions.inExtension = waitListStatus;\n }\n\n let statusTagContent = \"Solutions\";\n let statusTagIconName: IconName = \"RFP\";\n switch (request.requestable_type) {\n case RequestableType.REQUEST_FOR_EXPERT:\n statusTagContent = \"Experts\";\n statusTagIconName = \"Request for experts\";\n break;\n }\n\n const shouldShowNotifyButton =\n getRfpStatus(request) === RfpStatus.COMING_SOON && currentUser.role !== UserRole.SPONSOR;\n\n return (\n \n {!shouldShowUnsubscribeButton && !shouldShowNotifyButton && (\n \n )}\n {getRfpStatusText(request, statusElementOptions)}\n {shouldShowUnsubscribeButton ? (\n {\n track(SegmentEventName.Click, {\n react_component: \"RfpCardFooter\",\n ui_component: \"Decline Updates Button\",\n request_slug: request.slug,\n });\n }}\n >\n Stop notifications\n \n ) : (\n shouldShowNotifyButton &&\n (isUserFollowing ? (\n \n \n You'll be notified\n \n ) : (\n \n \n Notify me\n \n ))\n )}\n \n );\n};\n\nexport default RfpCardFooter;\n\nconst Container = styled.div`\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 18px 24px;\n border-top: 1px solid ${COLORS.NEUTRAL_200};\n ${FONTS.SEMIBOLD_3};\n`;\nconst Status = styled.div`\n display: flex;\n align-items: center;\n gap: 8px;\n color: ${({ color }) => color};\n`;\nconst OptedIn = styled.div`\n display: flex;\n align-items: center;\n gap: 4px;\n color: ${COLORS.GREEN};\n`;\nconst NotifyMe = styled.div`\n display: flex;\n align-items: center;\n overflow: hidden;\n color: ${COLORS.HALO_BLUE};\n pointer-events: fill;\n -webkit-transition: all 0.2s ease-in-out;\n -moz-transition: all 0.2s ease-in-out;\n -o-transition: all 0.2s ease-in-out;\n transition: all 0.2s ease-in-out;\n`;\nconst NotifyMeText = styled.span`\n display: inline-block;\n max-width: 0;\n white-space: nowrap;\n overflow: hidden;\n -webkit-transition: 0.2s ease-in-out;\n transition: 0.2s ease-in-out;\n ${({ isCardHovered }) =>\n isCardHovered &&\n `\n max-width: 67px;\n margin-left: 4px;\n `}\n ${WINDOW_DIMENSIONS.MOBILE_MEDIA_QUERY} {\n max-width: 67px;\n margin-left: 4px;\n }\n`;\n","import { Card, CompanyAvatar, Tag, TruncatedText, XMoreWrapper } from \"@components/library\";\nimport { COLORS, FONTS } from \"@constants\";\nimport useFollowRequest from \"@hooks/useFollowRequest\";\nimport { RootState } from \"@redux/store\";\nimport { SegmentEventName } from \"@tsTypes/__generated__/enums\";\nimport { ConfidentialCompany, RequestForCard } from \"@tsTypes/index\";\nimport { LaunchableRequestStatus, RequestableType } from \"@tsTypes/requests\";\nimport { UserRole } from \"@tsTypes/users\";\nimport { track } from \"@utils/appUtils\";\nimport { getLaunchableRequestStatus, requestPageUrlPath } from \"@utils/requestUtils\";\nimport { checkRfpCompanyHidden } from \"@utils/rfpUtils\";\nimport { useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport styled from \"styled-components\";\nimport RfpCardFooter from \"./RfpCardFooter\";\n\ninterface Props {\n request: RequestForCard;\n isFeatured?: boolean;\n onClick?: (...args: any[]) => any;\n shouldShowUnsubscribeButton?: boolean;\n fromHref?: string;\n}\n\nconst RfpCard = ({\n request,\n isFeatured = false,\n onClick,\n shouldShowUnsubscribeButton = false,\n fromHref,\n}: Props) => {\n const [isCardHovered, setIsCardHovered] = useState(false);\n\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n\n const { title, company, disciplines, areas_of_expertise, requestable, requestable_type } =\n request;\n\n const { handleFollowRequest, isUserFollowing } = useFollowRequest(request.id);\n\n const handleNotify = () => {\n if (getLaunchableRequestStatus(request) !== LaunchableRequestStatus.COMING_SOON) return;\n\n handleFollowRequest();\n\n track(SegmentEventName.Click, {\n ui_component: \"Coming soon request card\",\n react_component: \"RfpCardNew\",\n logged_in: false,\n });\n };\n\n let keywords: string[];\n if (!currentUser?.id) {\n keywords = [...(disciplines ?? []), ...(areas_of_expertise ?? [])];\n } else if (currentUser.role === UserRole.UNIVERSITY_ADMIN) {\n keywords = disciplines;\n } else {\n keywords = areas_of_expertise;\n }\n // Remove duplicates just in case\n keywords = Array.from(new Set(keywords));\n\n const isComingSoon = getLaunchableRequestStatus(request) === LaunchableRequestStatus.COMING_SOON;\n const isPrivate = checkRfpCompanyHidden(request, currentUser);\n\n const CardLink = isComingSoon || shouldShowUnsubscribeButton ? DisabledCardLink : ActiveCardLink;\n\n return (\n \n setIsCardHovered(true)}\n onMouseLeave={() => setIsCardHovered(false)}\n data-testid=\"rfp-card\"\n >\n {isFeatured && (\n \n \n \n )}\n \n \n \n {isPrivate ? (\n (company as ConfidentialCompany).private_alias ?? \"Private\"\n ) : (\n \n )}\n \n \n <TruncatedText\n text={title}\n lines={isFeatured ? 3 : 4}\n font={isFeatured ? FONTS.HEADING_5_MEDIUM : FONTS.MEDIUM_1}\n />\n \n
    \n \n {keywords.map((keyword) => (\n \n ))}\n \n
    \n
    \n \n \n \n );\n};\n\nexport default RfpCard;\n\nconst ActiveCardLink = styled(Link)`\n display: block;\n :visited,\n :link {\n color: ${COLORS.BLACK};\n text-decoration: none;\n }\n`;\nconst DisabledCardLink = styled.div`\n display: block;\n color: ${COLORS.BLACK};\n text-decoration: none;\n`;\nconst ImageContainer = styled.div`\n position: relative;\n height: 168px;\n max-width: 100%;\n color: ${COLORS.WHITE};\n border-radius: 12px 12px 0px 0px;\n`;\nconst ProgramImage = styled.div`\n display: flex;\n justify-content: flex-end;\n align-items: flex-end;\n height: 100%;\n width: 100%;\n background-image: url(\"${({ backgroundImageUrl }) => backgroundImageUrl}\");\n background-position: center;\n background-size: ${({ isCardHovered }) => (isCardHovered ? \"105%\" : \"100%\")};\n transition: all 0.5s ease;\n border-radius: 12px 12px 0px 0px;\n`;\nconst MainContent = styled.div`\n display: flex;\n flex-direction: column;\n min-height: ${({ isFeatured }) => (isFeatured ? \"290px\" : \"305px\")};\n background-color: ${({ backgroundColor }) => backgroundColor};\n padding: 24px 24px 16px;\n border-radius: ${({ borderRadius }) => borderRadius};\n`;\nconst Company = styled.div`\n display: flex;\n align-items: center;\n gap: 8px;\n margin-bottom: 32px;\n ${FONTS.SEMIBOLD_1};\n`;\nconst Title = styled.div`\n height: ${({ isFeatured }) => (isFeatured ? \"84px\" : \"54px\")};\n margin-bottom: auto;\n ${FONTS.MEDIUM_1};\n`;\n","import { Icon } from \"@components/library\";\nimport { COLORS, FONTS } from \"@constants\";\nimport styled from \"styled-components\";\n\nconst SSOEnabledHint = ({ text = \"Single sign-on enabled\" }) => (\n \n \n {text}\n \n);\n\nexport { SSOEnabledHint };\n\nconst Hint = styled.div`\n display: flex;\n align-items: center;\n gap: 8px;\n\n color: ${COLORS.NEUTRAL_500};\n ${FONTS.REGULAR_2}\n`;\n","import { Icon } from \"@components/library\";\nimport { COLORS, FONTS, STYLES } from \"@constants\";\nimport { proposalyPagePath } from \"@routes/utils\";\nimport { FundingPartial } from \"@tsTypes/fundings/_funding\";\nimport { ScientistAttachmentProposal } from \"@tsTypes/index\";\nimport { PatentPartial } from \"@tsTypes/patents/_patent\";\nimport { PublicationPartial } from \"@tsTypes/publications/_publication\";\nimport { RequestableType } from \"@tsTypes/requests\";\nimport { Company, Foundation, GovernmentOrganization, University } from \"@tsTypes/schema\";\nimport { t } from \"@utils/i18n\";\nimport { REQUESTABLE_TO_ICON_NAME } from \"@utils/requestUtils\";\nimport dayjs from \"dayjs\";\nimport { ReactNode, useState } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport styled from \"styled-components\";\n\ninterface Props {\n contribution: PublicationPartial | FundingPartial | PatentPartial | ScientistAttachmentProposal;\n isExpandable?: boolean;\n size?: \"sm\" | \"md\" | \"lg\";\n}\n\nfunction formatDate(date: string) {\n return dayjs(date).format(\"MMM YYYY\");\n}\n\nconst ScientistContribution = ({ contribution, isExpandable = true, size = \"lg\" }: Props) => {\n const [isExpanded, setIsExpanded] = useState(false);\n\n let { url } = contribution as any;\n if (\"requestable_type\" in contribution) {\n url = proposalyPagePath(contribution.slug!, contribution.requestable_type);\n }\n\n let title = contribution.title;\n let additionalInfo: ReactNode;\n let date: string | null = null;\n let content: string | null = null;\n // Publication\n if (\"publication_name\" in contribution) {\n additionalInfo = (\n \n \n {contribution.publication_name}\n \n );\n if (contribution.date) date = formatDate(contribution.date);\n content = contribution.abstract;\n\n // Funding\n } else if (\"amount\" in contribution) {\n const { sponsor } = contribution;\n if (sponsor || contribution.other_sponsor) {\n title = `${\n (sponsor as Foundation)?.foundation_name ??\n (sponsor as GovernmentOrganization)?.org_name ??\n (sponsor as Company)?.company_name ??\n (sponsor as University)?.name ??\n contribution.other_sponsor\n } - ${title}`;\n }\n if (contribution.amount) {\n additionalInfo = (\n \n $\n {Intl.NumberFormat().format(Math.floor(contribution.amount))}\n \n );\n }\n if (contribution.date) date = formatDate(contribution.date);\n if (contribution.end_date) date += ` - ${formatDate(contribution.end_date)}`;\n content = contribution.description;\n\n // Patent\n } else if (\"filing_date\" in contribution) {\n if (contribution.status) {\n additionalInfo = (\n \n \n Status: {t([\"models.patent.status\", contribution.status])}\n \n );\n }\n if (contribution.filing_date) {\n date = `Filing Date: ${formatDate(contribution.filing_date)}`;\n }\n content = contribution.abstract;\n\n // Proposal\n } else if (\"requestable_type\" in contribution) {\n const { requestable_type, request, completed, first_completed_at } = contribution;\n\n if (!title) title = `RFP: ${request.title}`;\n\n let requestLabel = \"RFP\";\n switch (requestable_type) {\n case RequestableType.REQUEST_FOR_EXPERT:\n requestLabel = \"Request for Experts\";\n break;\n case RequestableType.OPEN_CALL:\n requestLabel = \"Open Call\";\n break;\n case RequestableType.REQUEST_FOR_STARTUP:\n requestLabel = \"Startup Program\";\n break;\n }\n additionalInfo = (\n \n \n {requestLabel}: {request.title}\n \n );\n\n if (completed && first_completed_at) {\n date = formatDate(first_completed_at);\n } else if (!completed) {\n date = \"Not submitted (Draft)\";\n }\n\n content = contribution.preview;\n }\n\n return (\n \n isExpandable && setIsExpanded(!isExpanded)}\n size={size}\n isExpandable={isExpandable}\n >\n \n {\n if (url && \"requestable_type\" in contribution) return Link;\n else if (url) return \"a\";\n return \"div\";\n })()}\n href={\n // eslint-disable-next-line no-nested-ternary\n url?.startsWith(\"http\")\n ? url\n : url?.startsWith(\"10.\")\n ? `https://doi.org/${url}`\n : `https://${url}`\n }\n to={url}\n target=\"_blank\"\n size={size}\n isExpanded={isExpanded}\n onClick={(e) => url && e.stopPropagation()}\n >\n {title}\n \n {isExpandable && content && }\n \n {isExpanded && {content}}\n
    \n {additionalInfo}\n {date && (\n \n \n {date}\n \n )}\n
    \n \n
    \n );\n};\n\nexport default ScientistContribution;\n\nconst Container = styled.div`\n width: 100%;\n min-width: 0;\n padding: ${({ size }) => (size === \"sm\" ? \"4px 8px\" : \"16px\")};\n background: ${({ size }) => (size === \"md\" ? COLORS.NEUTRAL_200 : COLORS.NEUTRAL_50)};\n border-radius: 8px;\n`;\nconst Preview = styled.button`\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n height: 100%;\n width: 100%;\n padding: 0;\n ${FONTS.MEDIUM_3};\n text-align: left;\n background: none;\n border: none;\n &:hover {\n text-decoration: none;\n cursor: ${({ isExpandable }) => (isExpandable ? \"pointer\" : \"default\")};\n }\n &:focus {\n outline: none;\n text-decoration: none;\n }\n`;\nconst TopRow = styled.div`\n display: flex;\n justify-content: space-between;\n gap: 16px;\n ${({ size }) => size === \"sm\" && \"height: 40px\"};\n margin-bottom: 4px;\n width: 100%;\n`;\nconst Title = styled.div`\n ${({ size }) => (size === \"sm\" ? FONTS.MEDIUM_3 : FONTS.MEDIUM_2)};\n ${({ isExpanded, size }) => {\n if (size === \"lg\" && !isExpanded) return STYLES.ONE_LINE_ALT;\n if (size === \"sm\") return STYLES.TWO_LINES;\n if (size === \"md\") return STYLES.THREE_LINES;\n }};\n color: ${COLORS.BLACK};\n ${({ as: _as }) =>\n _as !== \"div\" &&\n `\n &:hover,\n &:focus {\n color: ${COLORS.BLACK};\n text-decoration: underline;\n outline: none;\n }\n `}\n`;\nconst Details = styled.div`\n display: flex;\n align-items: ${({ isExpanded }) => (isExpanded ? \"flex-start\" : \"center\")};\n gap: 24px;\n color: ${COLORS.NEUTRAL_400};\n width: 100%;\n`;\nconst Detail = styled.div`\n display: flex;\n align-items: center;\n gap: 4px;\n`;\nconst PublicationName = styled(Detail)`\n ${({ isExpanded }) => isExpanded && \"align-items: flex-start\"};\n max-width: calc(100% - 110px);\n & > span {\n ${({ isExpanded }) => isExpanded && \"margin-top: 2px\"};\n ${({ isExpanded, hasUrl }) => (hasUrl || !isExpanded) && STYLES.ONE_LINE_ALT};\n }\n`;\nconst Content = styled.div`\n margin: 12px 0;\n ${FONTS.REGULAR_3};\n`;\n","import { Icon, Tooltip } from \"@components/library\";\nimport { COLORS, FONTS, STYLES } from \"@constants\";\nimport { TECHNOLOGY_READINESS_LEVELS } from \"@tsTypes/proposals\";\nimport Slider from \"rc-slider\";\nimport styled from \"styled-components\";\n\ninterface Props {\n trlRange: [number, number];\n asInput?: boolean;\n onChange?: (values: [number, number]) => void;\n}\n\nexport const TOOLTIP_EXAMPLES = {\n 1: \"Literature review to validate initial idea.\",\n 2: \"Hypothesis created and validated using basic science principles in the lab.\",\n 3: \"Ideas validated using cell models, computational modeling or in-silico experiments.\",\n 4: \"Drug validated in a mouse model or genetically-modified plants grown in a greenhouse.\",\n 5: \"Hypothesis evaluated and refined in a small-scale experimental test in a relevant environment.\",\n 6: \"Product tested in clinical trials, factories, or field trials with no further requirement to make changes to the product.\",\n 7: \"Product received FDA approval.\",\n 8: \"Product can be manufactured at scale.\",\n 9: \"Product is accessible for consumers.\",\n};\n\nexport const DEFAULT_TRL_RANGE = [1, 9] as [number, number];\n\nconst SliderHandle = (handle) => (\n // eslint-disable-next-line react/jsx-props-no-spreading\n
    \n {sliderHandleIcon}\n
    \n);\n\nconst TRLs = ({ trlRange, asInput = false, onChange }: Props) => {\n const handleLabelClick = (level) => {\n if (!onChange) return;\n\n const halfwayPoint = (trlRange[0] + trlRange[1]) / 2;\n if (level < halfwayPoint) {\n onChange([level, trlRange[1]]);\n } else {\n onChange([trlRange[0], level]);\n }\n };\n\n return (\n \n \n \n {asInput ? (\n onChange(newRange as [number, number]))\n }\n />\n ) : (\n <>\n \n {Object.keys(TECHNOLOGY_READINESS_LEVELS).map((level) => (\n = trlRange[0] && Number(level) <= trlRange[1]}\n />\n ))}\n \n \n \n )}\n \n \n {Object.values(TECHNOLOGY_READINESS_LEVELS).map((value, i) => {\n const isSelected = trlRange[0] <= i + 1 && trlRange[1] >= i + 1;\n return (\n \n \n \n Example: \n
    \n {TOOLTIP_EXAMPLES[i + 1]}\n \n }\n position=\"right\"\n tooltipWidth=\"320px\"\n arrowOffsetTop=\"calc(50% - 8px)\"\n >\n \n \n \n );\n })}\n
    \n
    \n );\n};\n\nexport default TRLs;\n\nconst Container = styled.div`\n display: flex;\n gap: 16px;\n min-width: 410px;\n`;\nconst SliderContainer = styled.div`\n display: flex;\n align-items: ${({ asInput }) => (asInput ? \"center\" : \"flex-start\")};\n position: relative;\n height: 408px;\n width: 24px;\n .rc-slider {\n height: 384px;\n width: 6px;\n padding: 0;\n left: 9px;\n cursor: pointer;\n .rc-slider-rail {\n width: 6px;\n left: 0;\n background-color: ${COLORS.NEUTRAL_200};\n }\n .rc-slider-track {\n background-color: ${COLORS.HALO_BLUE};\n width: 6px;\n left: 0;\n }\n .rc-slider-step {\n width: 6px;\n .rc-slider-dot {\n width: 6px;\n height: 1px;\n margin: 0;\n border-radius: 0;\n border: none;\n background-color: ${COLORS.NEUTRAL_400};\n }\n .rc-slider-dot-active {\n background-color: ${COLORS.NEUTRAL_200};\n }\n }\n .rc-slider-handle {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 24px;\n height: 24px;\n margin-left: -9px;\n border: none;\n box-shadow: ${STYLES.SHADOW_A};\n background-color: ${COLORS.WHITE};\n opacity: 1;\n }\n }\n`;\nconst SliderTrackBackground = styled.div`\n position: absolute;\n left: 9px;\n width: 6px;\n height: 100%;\n background-color: ${COLORS.NEUTRAL_200};\n border-radius: 3px;\n`;\nconst DotContainer = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n position: relative;\n top: 12px;\n left: 9px;\n height: calc(100% - 24px);\n width: 9px;\n`;\nconst Dot = styled.div`\n width: 6px;\n height: 1px;\n background-color: ${({ isActive }) => (isActive ? COLORS.NEUTRAL_200 : COLORS.NEUTRAL_400)};\n z-index: 1;\n`;\nconst SelectedBar = styled.div`\n position: relative;\n top: ${({ trlRange }) => 48 * (trlRange[0] - 1)}px;\n height: ${({ trlRange }) => 48 * (trlRange[1] - trlRange[0]) + 24}px;\n width: 6px;\n background-color: ${COLORS.HALO_BLUE};\n border-radius: 3px;\n`;\nconst Levels = styled.div`\n display: flex;\n flex-direction: column;\n gap: 24px;\n`;\nconst Level = styled.div`\n display: flex;\n align-items: center;\n ${FONTS.MEDIUM_2};\n color: ${({ isSelected }) => (isSelected ? COLORS.BLACK : COLORS.NEUTRAL_400)};\n`;\nconst Label = styled.button`\n padding: 0;\n border: none;\n background-color: transparent;\n ${({ asInput }) => !asInput && \"pointer-events: none;\"}\n :focus {\n outline: none;\n }\n`;\nconst sliderHandleIcon = (\n \n \n \n \n \n);\n","import { Button } from \"@components/library\";\nimport { COLORS, FONTS } from \"@constants\";\nimport { Modal } from \"semantic-ui-react\";\nimport styled from \"styled-components\";\n\nconst ResendConfirmationModal = ({ confirmationModalOpen, setConfirmationModalOpen }) => {\n return (\n setConfirmationModalOpen(false)}\n size=\"tiny\"\n closeOnDimmerClick={true}\n className=\"scrolling\"\n >\n \n

    Your verification email has been resent.

    \n

    Please check your spam and quarantine folders in your email.

    \n

    \n If you continue to have problems, please{\" \"}\n \n contact us\n {\" \"}\n for assistance.\n

    \n \n
    \n \n );\n};\n\nconst ConfirmationModal = styled(Modal)`\n overflow: visible;\n color: ${COLORS.BLACK};\n ${FONTS.REGULAR_2};\n`;\nconst ModalContent = styled(Modal.Content)`\n h1 {\n ${FONTS.HEADING_4_SEMIBOLD};\n color: ${COLORS.BLACK};\n border: none;\n padding-bottom: 12px;\n }\n p {\n ${FONTS.REGULAR_2};\n color: ${COLORS.BLACK};\n border: none;\n padding-bottom: 8px;\n }\n`;\n\nexport default ResendConfirmationModal;\n","import { useEffect, useState } from \"react\";\nimport ReactCodeInput from \"react-verification-code-input\";\nimport styled from \"styled-components\";\n\nimport toast from \"@components/Toast\";\nimport { Button, TextInput } from \"@components/library\";\nimport { COLORS, FEATURE_FLAGS, FONTS } from \"@constants\";\nimport { RootState } from \"@redux/store\";\nimport { useMutation } from \"@tanstack/react-query\";\nimport { SegmentEventName } from \"@tsTypes/__generated__/enums\";\nimport { track } from \"@utils/appUtils\";\nimport { t, t_link } from \"@utils/i18n\";\nimport { toastErrorHandler } from \"@utils/requests\";\nimport { useSelector } from \"react-redux\";\nimport { TextInputError } from \"src/components/library/Inputs/TextInput\";\nimport { cancelSignUp, resendEmailInvite, signOut, verifyUser } from \"src/requests/users\";\nimport { StepContainer, StepHeader } from \"src/views/Onboarding/StepStyles\";\nimport ResendConfirmationModal from \"./ResendConfirmationModal\";\n\nfunction UserVerificationCode({ onContinue }) {\n const currentUserEmail = useSelector((state: RootState) => state.profiles.currentUser.email);\n const isTablet = useSelector((state: RootState) => state.window.isTablet);\n\n const [isEmailInputVisible, setIsEmailInputVisible] = useState(false);\n const [email, setEmail] = useState(currentUserEmail || \"\");\n\n const [confirmationModalOpen, setConfirmationModalOpen] = useState(false);\n const [code, setCode] = useState(\"\");\n const [error, setError] = useState(false);\n const [emailInputError, setEmailInputError] = useState(null);\n\n const verificationMutation = useMutation({\n mutationFn: verifyUser,\n onSuccess: (result) => {\n if (result) {\n onContinue();\n } else {\n setError(true);\n }\n },\n onError: toastErrorHandler,\n });\n\n const resendVerificationMutation = useMutation({\n mutationFn: resendEmailInvite,\n onSuccess: () => {\n toast.success(\"A new verification code has been sent to your email.\");\n setIsEmailInputVisible(false);\n },\n onError: (err: any) => {\n switch (err.response?.status) {\n case 409:\n toast.error(\n t_link(\n \"pages.onboarding_container.user_verification_code.error.email_taken\",\n {\n await cancelSignUp(\"resendEmailVerification409\");\n window.location.href = \"/login\";\n }}\n >\n log in instead\n \n )\n );\n return false;\n case 429:\n toast.error(\n t(\"pages.onboarding_container.user_verification_code.error.too_many_requests\")\n );\n return false;\n }\n throw error;\n },\n });\n\n useEffect(() => {\n // Auto-verify when user enters 4 digits\n if (code.length === 4 && !error) {\n verificationMutation.mutate(code);\n }\n }, [code]);\n\n const handleOnChange = (verificationCode: string) => {\n if (verificationCode.length && error) setError(false);\n setCode(verificationCode);\n };\n\n return (\n <>\n \n \n \n \n \n {error && (\n \n {t(\"pages.onboarding_container.user_verification_code.error.incorrect\")}\n \n )}\n \n {t(\"pages.onboarding_container.user_verification_code.instructions\")}{\" \"}\n setIsEmailInputVisible(true)}>\n {t(\"pages.onboarding_container.user_verification_code.resend_email\")}\n \n \n {isEmailInputVisible && (\n {\n e.preventDefault();\n track(SegmentEventName.Submit, {\n react_component: \"UserVerificationCode\",\n action: \"Resend email verification\",\n currentUserEmail,\n sentToEmail: email,\n });\n\n if (email.trim() === \"\") {\n setEmailInputError({\n hasError: true,\n errorMessage: \"Please enter a valid email address.\",\n });\n return;\n }\n setEmailInputError(null);\n resendVerificationMutation.mutate(email);\n }}\n >\n setEmail(e.target.value)}\n errors={emailInputError ? [emailInputError] : undefined}\n />\n \n {t(\"pages.onboarding_container.user_verification_code.resend_code\")}\n \n \n )}\n \n {FEATURE_FLAGS.SIGN_OUT_ON_ONBOARDING && (\n {\n await signOut();\n }}\n margin=\"0 16px 0 0\"\n >\n Sign Out\n \n )}\n \n \n \n );\n}\n\nexport default UserVerificationCode;\n\nconst DropdownRow = styled.div`\n width: 324px;\n position: relative;\n align-self: flex-start;\n margin-bottom: 28px;\n\n &:last-of-type {\n margin-bottom: 35px;\n }\n`;\n\nconst DropdownTitle = styled.div`\n ${FONTS.MEDIUM_2};\n width: 100%;\n padding-bottom: 7px;\n color: ${COLORS.BLACK};\n`;\n\n// Styles below overwrite library's default styles to match our design system\nconst StyledCodeInput = styled(ReactCodeInput)`\n margin-bottom: 33px;\n width: unset !important;\n > div {\n > input {\n background: ${COLORS.NEUTRAL_100};\n border: 0.5px solid ${COLORS.HALO_BLUE} !important;\n border-radius: 4px;\n color: ${COLORS.BLACK};\n font-size: 32px;\n caret-color: ${COLORS.BLACK} !important;\n }\n > input:focus {\n border: 2px solid ${COLORS.HALO_BLUE} !important;\n }\n > input:not(:last-child) {\n margin-right: 8px;\n }\n > input:focus + input {\n border-left: 0.5px solid ${COLORS.HALO_BLUE};\n }\n > input:focus + input:not(:placeholder-shown) {\n border-left: 0.5px solid ${COLORS.HALO_BLUE};\n }\n > input:last-child:focus,\n input:not(:placeholder-shown) {\n border-color: ${COLORS.HALO_BLUE};\n }\n > input {\n border-color: ${(props) => props.error && COLORS.RED} !important;\n }\n }\n`;\n\nconst ResendEmailLink = styled.span`\n ${FONTS.REGULAR_2};\n text-align: left;\n white-space: no-wrap;\n color: ${COLORS.HALO_BLUE};\n cursor: pointer;\n :hover {\n text-decoration: underline;\n }\n`;\n\nconst Padding = styled.div`\n height: ${(props) => (props.height ? `${props.height}px` : \"10px\")};\n display: block;\n`;\n\nconst EmailSection = styled.form`\n margin: 12px 0;\n`;\n","import { COLORS, FONTS, WINDOW_DIMENSIONS } from \"@constants\";\nimport styled from \"styled-components\";\nimport Icon from \"../Icon\";\n\ninterface Props {\n value: string;\n onChange: (value: string) => any;\n onSubmit: (value: string) => any;\n placeholder: string;\n buttonText?: string | null;\n shouldSubmitOnClear?: boolean;\n}\n\nexport const SearchBarInput = ({\n value,\n onChange,\n onSubmit,\n placeholder,\n buttonText = \"Apply\",\n shouldSubmitOnClear = true,\n}: Props) => {\n return (\n {\n e.preventDefault();\n onSubmit(value);\n }}\n >\n \n onChange(e.target.value)} placeholder={placeholder} />\n {\n onChange(\"\");\n if (shouldSubmitOnClear) {\n onSubmit(\"\");\n }\n }}\n >\n \n \n {Boolean(buttonText) && }\n \n );\n};\n\nconst Container = styled.form`\n display: flex;\n align-items: center;\n padding: 0 3px 0 6px;\n height: 36px;\n border: 1px solid ${COLORS.NEUTRAL_200};\n border-radius: 6px;\n\n &:focus-within {\n border: 1px solid ${COLORS.HALO_BLUE};\n }\n\n &:hover {\n cursor: pointer;\n &:not(:focus-within) {\n border: 1px solid ${COLORS.NEUTRAL_400};\n }\n &:focus-within {\n border: 1px solid ${COLORS.HALO_BLUE};\n }\n }\n\n ${WINDOW_DIMENSIONS.MOBILE_MEDIA_QUERY} {\n height: 40px;\n }\n`;\n\nconst Input = styled.input`\n flex-grow: 1;\n min-width: 0;\n border: none;\n outline: none;\n color: ${COLORS.BLACK};\n ${FONTS.TAG_MEDIUM_1};\n\n &::placeholder {\n opacity: 1;\n color: ${COLORS.NEUTRAL_500};\n ${FONTS.REGULAR_2};\n }\n`;\n\nconst ClearContainer = styled.div`\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n opacity: 0.7;\n &:hover {\n opacity: 1;\n }\n`;\n\nconst Button = styled.button`\n padding: 7px 14px;\n background-color: ${COLORS.BLUE_LIGHT_300};\n color: ${COLORS.HALO_BLUE};\n border: none;\n border-radius: 4px;\n ${FONTS.BUTTON_3}\n\n &:hover {\n background-color: ${COLORS.BLUE_LIGHT_400};\n }\n\n &:active {\n background-color: ${COLORS.BLUE_LIGHT_500};\n }\n`;\n","import toast from \"@components/Toast\";\nimport { Button } from \"@components/library\";\nimport EmailDropdown from \"@components/library/Dropdowns/EmailDropdown\";\nimport BlankModal, { BlankModalProps } from \"@components/library/ModalBases/BlankModal\";\nimport { COLORS, FONTS } from \"@constants\";\nimport { fetchAllCompanyMembers } from \"@redux/actions/companyActions\";\nimport { RootState } from \"@redux/store\";\nimport { generateEmailDropdownOptions, getOptionFromValue } from \"@utils/dropdownUtils\";\nimport { SyntheticEvent, useEffect, useState } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport styled from \"styled-components\";\nimport { UserOption } from \"../Dropdowns/UserDropdown\";\n\nexport interface ShareWithinCompanyProps extends BlankModalProps {\n toastText: string;\n handleShare: (email: string, message: string) => Promise; // throw on error\n}\n\nconst ShareWithinCompanyModal = ({\n isOpen,\n onClose,\n headerText,\n toastText,\n handleShare,\n}: ShareWithinCompanyProps) => {\n if (!isOpen) return null;\n\n const dispatch = useDispatch();\n const companyMembers = useSelector((state: RootState) => state.company.companyMembers);\n const currentUser = useSelector((state: RootState) => state.profiles.currentUser);\n const dropdownOptions: UserOption[] = generateEmailDropdownOptions(companyMembers, [\n currentUser.email,\n ]);\n\n const [emails, setEmails] = useState([]);\n const [emailError, setEmailError] = useState(\"\");\n const [message, setMessage] = useState(\"\");\n const [isSubmitting, setIsSubmitting] = useState(false);\n\n useEffect(() => {\n dispatch(fetchAllCompanyMembers(currentUser.profile_info?.company_id));\n }, []);\n\n const handleSubmit = (e: SyntheticEvent) => {\n e.preventDefault();\n if (isSubmitting) return;\n setIsSubmitting(true);\n Promise.all(emails.map((email) => handleShare(email, message)))\n .then(() => {\n onClose();\n toast.success(toastText);\n })\n .catch((err) => console.error(err))\n .finally(() => setIsSubmitting(false));\n };\n\n return (\n \n \n
    \n \n \n {emailError}\n \n setMessage(e.target.value)}\n data-testid=\"message-input\"\n />\n \n \n Share\n \n \n \n
    \n \n );\n};\n\nexport default ShareWithinCompanyModal;\n\nconst Content = styled.div`\n padding: 20px;\n`;\n\nconst Label = styled.label`\n ${FONTS.SEMIBOLD_2}\n margin-bottom: 10px;\n ${(p) => p.extraMarginTop && \"margin-top: 30px;\"}\n`;\n\nconst Error = styled.div`\n ${FONTS.REGULAR_2}\n color: ${COLORS.RED};\n margin-top: 5px;\n`;\n\nconst TextArea = styled.textarea`\n ${FONTS.REGULAR_2}\n width: 100%;\n margin: auto;\n padding: 10px;\n border: 1px solid ${COLORS.NEUTRAL_300};\n border-radius: 6px;\n resize: none;\n\n &::placeholder {\n ${FONTS.REGULAR_2}\n color: ${COLORS.NEUTRAL_500};\n }\n`;\n\nconst SubmitButtonContainer = styled.div`\n margin-top: 30px;\n`;\n","import DROPDOWN_STYLES from \"@components/library/Dropdowns/dropdownStyles\";\nimport { COLORS, FONTS, JS_FONTS } from \"@constants\";\nimport Select from \"react-select\";\nimport AsyncSelect from \"react-select/async\";\nimport CreatableSelect from \"react-select/creatable\";\nimport styled from \"styled-components\";\n\nconst SelectType = (props) => {\n return props.creatable ? (\n \n ) : props.async ? (\n \n ) : (\n