{"version":3,"file":"0e03205db3027ec40a97beb36f38d839420cf3a6-69fba656a477f05e1e61.js","mappings":";sKAAe,SAASA,EAA4BC,EAASC,GAK3D,OAJKA,IACHA,EAAMD,EAAQE,MAAM,IAEtBF,EAAQC,IAAMA,EACPD,CACT,uECKIG,EAAW,EAAAA,SACf,SAAS,EAAIC,EAAMC,EAAOC,GACxB,OAAK,EAAAC,EAAeC,KAAKH,EAAO,QAIzB,IAAAI,KAAM,EAAAC,GAAS,IAAAC,GAAmBP,EAAMC,GAAQC,IAH9C,IAAAG,KAAML,EAAMC,EAAOC,EAI9B,CCjBA,IAAIM,EAAYC,OAAOC,eAEnBC,EAAgB,CAACC,EAAKV,EAAKW,KADT,EAACD,EAAKV,EAAKW,KAAUX,KAAOU,EAAMJ,EAAUI,EAAKV,EAAK,CAAEY,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMH,UAAWD,EAAIV,GAAOW,CAAK,EAE7JI,CAAgBL,EAAoB,iBAARV,EAAmBA,EAAM,GAAKA,EAAKW,GACxDA,GAOLK,EAA8B,IAAIC,IAClCC,EAA0B,IAAIC,QAC9BC,EAAS,EACTC,OAAmB,EAavB,SAASC,EAAYC,GACnB,OAAOhB,OAAOiB,KAAKD,GAASE,OAAOC,QAChC1B,QAAyB,IAAjBuB,EAAQvB,KACjB2B,KAAK3B,IACL,MAAO,GAAGA,KAAe,SAARA,GAbF4B,EAa6BL,EAAQK,KAZjDA,GAEDV,EAAQW,IAAID,KAEhBR,GAAU,EACVF,EAAQY,IAAIF,EAAMR,EAAOW,aAFhBb,EAAQc,IAAIJ,IAFZ,KAWqDL,EAAQvB,KAbxE,IAAmB4B,CAa2D,IACzEG,UACL,CA6BA,SAASE,EAAQC,EAASC,EAAUZ,EAAU,CAAC,EAAGa,EAAiBf,GACjE,QAA2C,IAAhCgB,OAAOC,2BAA2D,IAAnBF,EAA2B,CACnF,MAAMG,EAASL,EAAQM,wBAUvB,OATAL,EAASC,EAAgB,CACvBK,eAAgBL,EAChBM,OAAQR,EACRS,kBAAgD,iBAAtBpB,EAAQqB,UAAyBrB,EAAQqB,UAAY,EAC/EC,KAAM,EACNC,mBAAoBP,EACpBQ,iBAAkBR,EAClBS,WAAYT,IAEP,MAET,CACA,MAAM,GAAEU,EAAE,SAAEC,EAAQ,SAAEC,GA3CxB,SAAwB5B,GACtB,MAAM0B,EAAK3B,EAAYC,GACvB,IAAI6B,EAAWpC,EAAYgB,IAAIiB,GAC/B,IAAKG,EAAU,CACb,MAAMD,EAA2B,IAAIlC,IACrC,IAAIoC,EACJ,MAAMH,EAAW,IAAIZ,sBAAsBgB,IACzCA,EAAQC,SAASC,IACf,IAAIC,EACJ,MAAMC,EAASF,EAAMf,gBAAkBY,EAAWM,MAAMf,GAAcY,EAAMb,mBAAqBC,IAC7FrB,EAAQqC,sBAA8C,IAApBJ,EAAMK,YAC1CL,EAAMK,UAAYH,GAEiB,OAApCD,EAAKN,EAASnB,IAAIwB,EAAMd,UAA4Be,EAAGF,SAASpB,IAC/DA,EAASuB,EAAQF,EAAM,GACvB,GACF,GACDjC,GACH8B,EAAaH,EAASG,aAAeS,MAAMC,QAAQxC,EAAQqB,WAAarB,EAAQqB,UAAY,CAACrB,EAAQqB,WAAa,IAClHQ,EAAW,CACTH,KACAC,WACAC,YAEFnC,EAAYc,IAAImB,EAAIG,EACtB,CACA,OAAOA,CACT,CAgBqCY,CAAezC,GAC5C0C,EAAYd,EAASnB,IAAIE,IAAY,GAM3C,OALKiB,EAAStB,IAAIK,IAChBiB,EAASrB,IAAII,EAAS+B,GAExBA,EAAUC,KAAK/B,GACfe,EAASjB,QAAQC,GACV,WACL+B,EAAUE,OAAOF,EAAUG,QAAQjC,GAAW,GACrB,IAArB8B,EAAUI,SACZlB,EAASmB,OAAOpC,GAChBgB,EAASqB,UAAUrC,IAEC,IAAlBiB,EAASqB,OACXtB,EAASuB,aACTzD,EAAYsD,OAAOrB,GAEvB,CACF,CAMA,IAAIyB,EAAS,cAAc,YACzB,WAAAC,CAAY5E,GACV6E,MAAM7E,GACNU,EAAcoE,KAAM,OAAQ,MAC5BpE,EAAcoE,KAAM,eAAgB,MACpCpE,EAAcoE,KAAM,cAAeC,IAC7BD,KAAKC,OACPD,KAAKN,YACAO,GAASD,KAAK9E,MAAMgF,aAAgBF,KAAK9E,MAAMiF,MAClDH,KAAKI,SAAS,CAAEvB,SAAUmB,KAAK9E,MAAMmF,cAAe1B,WAAO,KAG/DqB,KAAKC,KAAOA,GAAc,KAC1BD,KAAKM,aAAa,IAEpB1E,EAAcoE,KAAM,gBAAgB,CAACnB,EAAQF,KACvCE,GAAUmB,KAAK9E,MAAMgF,aACvBF,KAAKN,YApBb,SAAyBxE,GACvB,MAAiC,mBAAnBA,EAAMqF,QACtB,CAoBWC,CAAgBR,KAAK9E,QACxB8E,KAAKI,SAAS,CAAEvB,SAAQF,UAEtBqB,KAAK9E,MAAMuF,UACbT,KAAK9E,MAAMuF,SAAS5B,EAAQF,EAC9B,IAEFqB,KAAKU,MAAQ,CACX7B,SAAU3D,EAAMmF,cAChB1B,WAAO,EAEX,CACA,iBAAAgC,GACEX,KAAKN,YACLM,KAAKM,aACP,CACA,kBAAAM,CAAmBC,GACbA,EAAUC,aAAed,KAAK9E,MAAM4F,YAAcD,EAAU9D,OAASiD,KAAK9E,MAAM6B,MAAQ8D,EAAU9C,YAAciC,KAAK9E,MAAM6C,WAAa8C,EAAUV,OAASH,KAAK9E,MAAMiF,MAAQU,EAAU9B,kBAAoBiB,KAAK9E,MAAM6D,iBAAmB8B,EAAUE,QAAUf,KAAK9E,MAAM6F,QAC3Qf,KAAKN,YACLM,KAAKM,cAET,CACA,oBAAAU,GACEhB,KAAKN,WACP,CACA,WAAAY,GACE,IAAKN,KAAKC,MAAQD,KAAK9E,MAAMiF,KAC3B,OACF,MAAM,UACJpC,EAAS,KACThB,EAAI,WACJ+D,EAAU,gBACV/B,EAAe,MACfgC,EAAK,eACLxD,GACEyC,KAAK9E,MACT8E,KAAKiB,aAAe7D,EAClB4C,KAAKC,KACLD,KAAKkB,aACL,CACEnD,YACAhB,OACA+D,aAEA/B,kBAEAgC,SAEFxD,EAEJ,CACA,SAAAmC,GACMM,KAAKiB,eACPjB,KAAKiB,eACLjB,KAAKiB,aAAe,KAExB,CACA,MAAAE,GACE,MAAM,SAAEZ,GAAaP,KAAK9E,MAC1B,GAAwB,mBAAbqF,EAAyB,CAClC,MAAM,OAAE1B,EAAM,MAAEF,GAAUqB,KAAKU,MAC/B,OAAOH,EAAS,CAAE1B,SAAQF,QAAOyC,IAAKpB,KAAKqB,YAC7C,CACA,MAAM,GACJC,EAAE,YACFpB,EAAW,UACXnC,EAAS,KACThB,EAAI,WACJ+D,EAAU,SACVL,EAAQ,KACRN,EAAI,gBACJpB,EAAe,MACfgC,EAAK,cACLV,EAAa,eACb9C,KACGrC,GACD8E,KAAK9E,MACT,OAAO,gBACLoG,GAAM,MACN,CAAEF,IAAKpB,KAAKqB,cAAenG,GAC3BqF,EAEJ,GAKF,SAASgB,GAAU,UACjBxD,EAAS,MACTgD,EAAK,gBACLhC,EAAe,WACf+B,EAAU,KACV/D,EAAI,YACJmD,EAAW,KACXC,EAAI,cACJE,EAAa,eACb9C,EAAc,SACdkD,GACE,CAAC,GACH,IAAI7B,EACJ,MAAOwC,EAAKI,GAAU,WAAgB,MAChClE,EAAW,YACVoD,EAAON,GAAY,WAAgB,CACxCvB,SAAUwB,EACV1B,WAAO,IAETrB,EAASmE,QAAUhB,EACnB,aACE,KACE,GAAIN,IAASiB,EACX,OACF,IAAI1B,EA0BJ,OAzBAA,EAAYtC,EACVgE,GACA,CAACvC,EAAQF,KACPyB,EAAS,CACPvB,SACAF,UAEErB,EAASmE,SACXnE,EAASmE,QAAQ5C,EAAQF,GACvBA,EAAMf,gBAAkBsC,GAAeR,IACzCA,IACAA,OAAY,EACd,GAEF,CACE3C,OACA+D,aACA/C,YAEAgB,kBAEAgC,SAEFxD,GAEK,KACDmC,GACFA,GACF,CACD,GAIH,CAEET,MAAMC,QAAQnB,GAAaA,EAAUb,WAAaa,EAClDqD,EACArE,EACA+D,EACAZ,EACAC,EACApB,EACAxB,EACAwD,IAGJ,MAAMW,EAAoC,OAArB9C,EAAK8B,EAAM/B,YAAiB,EAASC,EAAGf,OACvD8D,EAAsB,WACvBP,IAAOM,GAAgBxB,GAAgBC,GAAQwB,EAAoBF,UAAYC,IAClFC,EAAoBF,QAAUC,EAC9BtB,EAAS,CACPvB,SAAUwB,EACV1B,WAAO,KAGX,MAAMiD,EAAS,CAACJ,EAAQd,EAAM7B,OAAQ6B,EAAM/B,OAI5C,OAHAiD,EAAOR,IAAMQ,EAAO,GACpBA,EAAO/C,OAAS+C,EAAO,GACvBA,EAAOjD,MAAQiD,EAAO,GACfA,CACT,eC/Re,IAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BV,IAAS;;;;;;;;;;;EAaL,IAAS;;;;;;;;;;;;;;;;;;;;;;;;EA0BT,IAAS;;;;;;;;;;;;;;;;;;;;EAsBb,IAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoCT,IAAS;;;;;;;;;;;;EAcJ,IAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8Bd,IAAS;;;;;;;;;;;;;;;;;;;;EAsBR,IAAS;;;;;;;;;;;;;;;;;;;;EAsBT,IAAS;;;;;;;;;;;;;;;;;;;;EAsBV,IAAS;;;;;;;;;;;;;;;;;;;;EAsBV,IAAS;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BP,IAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BT,IAAS;;;;;;;;EAUC,IAAS;;;;;;;;;;EAYR,IAAS;;;;;;;;;;EAYhB,IAAS;;;;;;;;;;EAYN,IAAS;;;;;;;;;;EA3W/B,MAuXMC,EAAa,IAAS;;;;;;;;;;EAYN,IAAS;;;;;;;;;;EAYX,IAAS;;;;;;;;;;EAYN,IAAS;;;;;;;;;;EAYV,IAAS;;;;;;;;;;EAYR,IAAS;;;;;;;;;;EAYf,IAAS;;;;;;;;;;EAYN,IAAS;;;;;;;;;;EAyC7B,SAASC,EAAQC,EAAQC,GACvB,OAAQC,GAAcA,EAAYF,IAAWC,GAC/C,CACA,SAASE,EAAcH,GACrB,OAAOD,EAAQC,GAAQ,IAAM,MAC/B,CAEA,SAASI,EAASF,GAChB,OAAOC,GAAc,KAAM,CAAGE,QAAS,KAAhCF,CAAsCD,EAC/C,CACA,MAAMI,EAAUnH,IACd,MAAM,QACJoH,GAAU,EAAK,QACfC,EAAU,GAAG,MACbxB,EAAQ,EAAC,SACTyB,EAAW,IAAG,SACdC,EAAW,EAAC,UACZC,EAAYb,EAAU,YACtB3B,GAAc,EAAK,UACnByC,EAAS,MACTC,EAAK,eACLC,EAAc,WACdC,EAAU,SACVvC,EAAQ,mBACRwC,GACE7H,EACE8H,GAAkB,IAAAC,UACtB,IAxDJ,UAAyB,SACvBT,EAAW,IAAG,MACdzB,EAAQ,EAAC,eACTmC,EAAiB,OAAM,UACvBR,EAAYb,EAAU,eACtBsB,EAAiB,IAEjB,OAAO,IAAG;0BACcX;iCACOU;uBACVnC;sBACD2B;;;iCAGWS;;;;;GAMjC,CAoCUC,CAAgB,CACpBV,YACAF,cAEF,CAACA,EAAUE,IAEb,OAvCY,MAuCGnC,EACN,KArCe,iBADJzE,EAuCHyE,IAtCoC,iBAAVzE,GAAuC,kBAAVA,EAuC/C,EAAIuH,EAAY,IAAKnI,EAAO8H,kBAAiBzC,SAAU+C,OAAO/C,MACnF,IAAAgD,YAAWhD,GACU,EAAIiD,EAAgB,IAAKtI,EAAO8H,oBAClC,EAAIhI,EAAU,CAAEuF,SAAU,EAAAkD,SAAS3G,IAAIyD,GAAU,CAACN,EAAMyD,KAC7E,KAAK,IAAAC,gBAAe1D,GAClB,OAAO,KACT,MAAM2D,EAAY7C,GAASuB,EAAUoB,EAAQlB,EAAWD,EAAU,GAClE,OAAQtC,EAAKhF,MACX,IAAK,KACL,IAAK,KACH,OAAuB,EAAI,KAAY,CAAEsF,SAAU,EAAGsD,QAAyB,EAC7E5D,EAAKhF,KACL,IACKgF,EAAK/E,MACRyH,UAAWkB,EAAGlB,EAAW1C,EAAK/E,MAAMyH,WACpCC,MAAOlH,OAAOoI,OAAO,CAAC,EAAGlB,EAAO3C,EAAK/E,MAAM0H,OAC3CrC,SAA0B,EAAI8B,EAAQ,IAAKnH,EAAOqF,SAAUN,EAAK/E,MAAMqF,eAG7E,IAAK,KACH,OAAuB,EACrBV,EACA,CACE9B,UAAW0E,EACXvC,cACAO,SAAUsC,EACVxC,SAAU,EAAG1B,SAAQuC,SAA0B,EAAI,KAAY,CAAEb,SAAU,EAAGsD,QAAyB,EACrG5D,EAAKhF,KACL,IACKgF,EAAK/E,MACRkG,MACAuB,UAAWkB,EAAGhB,EAAgB5C,EAAK/E,MAAMyH,WACzCoB,IAAK7B,GAAc,IAAMc,GAApBd,CAAqCrD,GAC1C+D,MAAOlH,OAAOoI,OACZ,CAAC,EACDhB,EACA7C,EAAK/E,MAAM0H,MACXT,GAAUtD,GACV,CACEmF,eAAgBJ,EAAY,aAO1C,QACE,OAAuB,EACrB/D,EACA,CACE9B,UAAW0E,EACXvC,cACAO,SAAUsC,EACVxC,SAAU,EAAG1B,SAAQuC,SAA0B,EAC7C,MACA,CACEA,MACAuB,YACAoB,IAAK7B,GAAc,IAAMc,GAApBd,CAAqCrD,GAC1C+D,MAAOlH,OAAOoI,OAAO,CAAC,EAAGlB,EAAOT,GAAUtD,GAAS,CACjDmF,eAAgBJ,EAAY,OAE9BrD,SAA0B,EAAI,KAAY,CAAEA,SAAU,EAAGsD,QAAyB,EAChF5D,EAAKhF,KACL,IACKgF,EAAK/E,MACRyH,UAAWkB,EAAGhB,EAAgB5C,EAAK/E,MAAMyH,WACzCC,MAAOlH,OAAOoI,OACZ,CAAC,EACDhB,EACA7C,EAAK/E,MAAM0H,eAQ7B,MAzHJ,IAGsB9G,CAuHf,EAEDmI,EAAiB,CACrBC,QAAS,eACTC,WAAY,OAERd,EAAcnI,IAClB,MAAM,gBACJ8H,EAAe,QACfV,GAAU,EAAK,QACfC,EAAU,GAAG,MACbxB,EAAQ,EAAC,SACTyB,EAAW,IAAG,SACdC,EAAW,EAAC,YACZvC,GAAc,EAAK,UACnByC,EAAS,MACTC,EAAK,SACLrC,EAAQ,mBACRwC,GACE7H,GACE,IAAEkG,EAAG,OAAEvC,GAAW0C,EAAU,CAChCrB,cACAnC,UAAW0E,EACXhC,SAAUsC,IAEZ,OAAOjB,GACL,IAAsB,EACpB,MACA,CACEV,MACAuB,YACAC,MAAOlH,OAAOoI,OAAO,CAAC,EAAGlB,EAAOqB,GAChC1D,SAAUA,EAAS6D,MAAM,IAAItH,KAAI,CAACuH,EAAMX,IAA0B,EAChE,OACA,CACEK,IAAK7B,GAAc,IAAMc,GAApBd,CAAqCrD,GAC1C+D,MAAO,CACLoB,eAAgBjD,EAAQ2C,EAAQlB,EAAWD,EAAU,MAEvDhC,SAAU8D,GAEZX,SAIN,IAAsB,EAAIF,EAAgB,IAAKtI,EAAOqF,cApBjDuB,CAqBLQ,EAAQ,EAENkB,EAAkBtI,IACtB,MAAM,gBACJ8H,EAAe,SACfP,EAAW,EAAC,YACZvC,GAAc,EAAK,UACnByC,EAAS,MACTC,EAAK,SACLrC,EAAQ,mBACRwC,GACE7H,GACE,IAAEkG,EAAG,OAAEvC,GAAW0C,EAAU,CAChCrB,cACAnC,UAAW0E,EACXhC,SAAUsC,IAEZ,OAAuB,EACrB,MACA,CACE3B,MACAuB,YACAoB,IAAK7B,GAAc,IAAMc,GAApBd,CAAqCrD,GAC1C+D,MAAOlH,OAAOoI,OAAO,CAAC,EAAGlB,EAAOT,GAAUtD,IAC1C0B,YAEH,EA8Cc,IAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsCL,IAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgCT,IAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgCR,IAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgCZ,IAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgCV,IAAS;;;;;;;;;;;;;;;EAiBL,IAAS;;;;;;;;;;;;;;;EAiBT,IAAS;;;;;;;;;;EAYR,IAAS;;;;;;;;;;EAYZ,IAAS;;;;;;;;;;;;;;;EAwCb,IAAS;;;;;;;;EAUC,IAAS;;;;;;;;;;EAYR,IAAS;;;;;;;;;;EAYhB,IAAS;;;;;;;;;EAWN,IAAS;;;;;;;;;EAWZ,IAAS;;;;;;;;;EAWN,IAAS;;;;;;;;;EAWX,IAAS;;;;;;;;;EAWN,IAAS;;;;;;;;;EAWV,IAAS;;;;;;;;;;EAYR,IAAS;;;;;;;;;;EAYf,IAAS;;;;;;;;;EAWN,IAAS;;;;;;;;;EA0CjB,IAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BN,IAAS;;;;;;;;;;;;;;;;;;;;;;;;EA0BT,IAAS;;;;;;;;;;;;;;;;;;;;;;;;EA0BR,IAAS;;;;;;;;;;;;;;EAgBT,IAAS;;;;;;;;;;;;;;EA6CZ,IAAS;;;;;;;;;;;;;;;;;;;;;;EAwBF,IAAS;;;;;;;;;;;;;;;;;;;EAqBf,IAAS;;;;;;;;;;EAYR,IAAS;;;;;;;;;EAuCR,IAAS;;;;;;;;;;EAYD,IAAS;;;;;;;;;;EAYR,IAAS;;;;;;;;;;EAYZ,IAAS;;;;;;;;;;EAYR,IAAS;;;;;;;;;;EAYf,IAAS;;;;;;;;;EAWD,IAAS;;;;;;;;;EAWR,IAAS;;;;;;;;;EAWZ,IAAS;;;;;;;;;EAWR,IAAS;;;;;;;;;EAyCd,IAAS;;;;;;;;;EAWT,IAAS;;;;;;;;;EAWR,IAAS;;;;;;;;;EAWZ,IAAS;;;;;;;;;EAWN,IAAS;;;;;;;;;EAWT,IAAS;;;;;;;;;EAWR,IAAS;;;;;;;;;EAWZ,IAAS;;;;;;;;;EAiCb,IAAS;;;;;;;;;EAWL,IAAS;;;;;;;;;;;;EAcT,IAAS;;;;;;;;;;;;EAcR,IAAS;;;;;;;;;;;;EAcZ,IAAS;;;;;;;;;;;;EAcV,IAAS;;;;;;;;;;;;;EAeL,IAAS;;;;;;;;;;;;EAcT,IAAS;;;;;;;;;;EAYR,IAAS;;;;;;;;;;EAYZ,IAAS;;;;;;;;;;;;cC5vDpB,SAAS+D,EAAaC,GACzB,OAAQA,GACJ,IAAI,UACA,OAAO,QAAS,oJAUpB,IAAI,gBACA,OAAO,QAAS,2OAYpB,IAAI,iBACA,OAAO,QAAS,2OAYpB,IAAI,kBACA,OAAO,QAAS,0OAYpB,QACI,OAAO,KAEnB,CAEO,SAASC,EAAoBC,EAAgBC,EAAWC,GAC3D,OAAID,GAAaC,EAEbC,EAAAA,cAACvC,EAAM,CACLK,UAAWiC,EACXzE,aAAW,EACXuC,SAAU,EACVD,SAAU,IACVzB,MAAO,IACP6B,MAAO,CACLiC,yBAAyB,gCACzBC,kBAAkB,YAClBC,MAAM,SAGPN,GAIEA,CAEb,CCZA,MArDkEvJ,IAChE,IAAIyH,EAAS,kBAEbA,GAAazH,EAAM8J,KAAI,4BAEvBrC,GAAazH,EAAM+J,QAAO,+BAE1B/J,EAAMgK,+BACDvC,GAAS,IAAQzH,EAAMgK,8BAE5BhK,EAAMiK,4BACDxC,GAAS,IAAQzH,EAAMiK,2BAE5BjK,EAAMkK,gCACDzC,GAAS,IAAQzH,EAAMkK,+BAE5BlK,EAAMmK,6BACD1C,GAAS,IAAQzH,EAAMmK,4BAE5BnK,EAAMoK,kCACD3C,GAAS,iBAAqBzH,EAAMoK,iCAEzCpK,EAAMyE,OAAQgD,GAAS,qBAAyBzH,EAAMyE,MACtDzE,EAAMqK,YAAa5C,GAAS,IAAQzH,EAAMqK,WAE1C,MAAMC,EAAqC,CACzC7C,UAAWA,GAOPgC,EAAkBL,EAAapJ,EAAMuK,yBAE3C,OAAKvK,EAAMwK,uBAE4B,6BAA5BxK,EAAMwK,uBAEbd,EAAAA,cAAAA,MAAAA,OAAAA,OAAAA,CAAAA,EAASY,EAAgB,CAAEpH,GAAIlD,EAAMwK,yBAClCxK,EAAMqF,UAKTqE,EAAAA,cAAAA,MAASY,EAENhB,EAAoBtJ,EAAMqF,SAAUrF,EAAMyK,6BAA8BhB,IAXtEC,EAAAA,cAAAA,MAASY,EAAmBtK,EAAMqF,SAc3C,YCrCF,MAhBErF,GAIE0J,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,UACbiC,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,cACbiC,EAAAA,cAACgB,EAAAA,EAAgB,CACfC,mBAAoB3K,EAAM4K,YAAYD,sBAG1CjB,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,eAAezH,EAAM6K,aACpCnB,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,cAAczH,EAAM8K,YCIzC,MAbK9K,GAED0J,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,oBACbiC,EAAAA,cAAAA,KAAAA,CAAIjC,UAAU,UAAUzH,EAAM6K,aAC9BnB,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,yBACZzH,EAAM+K,sBAAsBC,aAAapJ,KAAI,CAACqJ,EAAQC,IACrDxB,EAAAA,cAACyB,EAAoB,eAAClL,IAAKiL,GAASD,QCJ9C,MAV2GjL,GACzG0J,EAAAA,cAAC0B,EAAe,iBAAKpL,EAAMqL,oBAAyBrL,EAAMsL,UACxD5B,EAAAA,cAAC6B,EAA8B,CAC7BV,YAAa7K,EAAM6K,YACnBE,sBAAuB/K,EAAM+K,sBAC7BS,cAAexL,EAAMwL,2BC4G3B,MAtFuDxL,IAAW,IAAD,kBAM/D,MAAMyL,EAA+G,QAAnG,EAAa,QAAb,EAAGzL,EAAM0L,YAAI,aAAV1L,EAAY2L,QAAQC,MAAMC,GAAkC,sCAAvBA,EAAOC,qBAAoD,UAI/G,SAAEC,GAAa/L,EAEY,IAAD,GAAd,QAAd,EAAAA,EAAM+L,gBAAQ,aAAd,EAAgBzH,QAAS,IACjB,QAAV,EAAAtE,EAAM0L,YAAI,OAAV,EAAYC,QAAQjK,MAAK,CAACsK,EAASC,IAClBF,EAASG,WACrBC,GAAMA,EAAEX,gBAAkBQ,EAAQR,gBAEtBO,EAASG,WACrBC,GAAMA,EAAEX,gBAAkBS,EAAQT,mBAMzC,MAAMY,EAAmBpM,EAAMqL,oBAC/B,IAAI5D,EAAS,UACgB,QAA7B,EAAAzH,EAAMqM,+BAAuB,OAA7B,EAA+BC,4BAC1B7E,GAAS,WAAezH,EAAMqM,wBAAwBC,2BAE3DF,EAAiBG,mCACZ9E,GAAS,IAAQ2E,EAAiBG,kCAEvCH,EAAiBI,gCACZ/E,GAAS,IAAQ2E,EAAiBI,+BAEvCJ,EAAiBK,oCACZhF,GAAS,IAAQ2E,EAAiBK,mCAEvCL,EAAiBM,iCACZjF,GAAS,IAAQ2E,EAAiBM,gCAGvC,MAAMpC,EAAqC,CACzC7C,UAAWA,GAGPgC,EAAkBL,EAAqC,QAAzB,EAACpJ,EAAM2M,0BAAkB,aAAxB3M,EAA0BuK,yBAEzDqC,EACJlD,EAAAA,cAAAA,UAAaY,EACVmB,EAAe/B,EAAAA,cAACmD,EAAAA,EAAe,MAAM,KACtCnD,EAAAA,cAAAA,MAAAA,CACEjC,UACE,gBACGzH,EAAM8M,oBAAmB,2BAG9BpD,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,gBACY,QAAxB,EAAAzH,EAAM2M,0BAAkB,OAAxB,EAA0BlC,6BACzBnB,EAAoBI,EAAAA,cAACqD,GAAa,CAACC,kBAA6B,QAAZ,EAAEhN,EAAM0L,YAAI,aAAV1L,EAAY2L,UAAqC,QAA1B,EAAE3L,EAAM2M,0BAAkB,aAAxB3M,EAA0ByK,6BAA8BhB,GAEvIC,EAAAA,cAACqD,GAAa,CAACC,kBAA6B,QAAZ,EAAEhN,EAAM0L,YAAI,aAAV1L,EAAY2L,aAOxD,OACE3L,EAAMiN,gBACqB,iBAApBjN,EAAMkN,gBACblN,EAAMkN,eAAe5I,OAAS,GAGrB8H,EAAiB5B,uBADnBoC,CAUT,ECxGF,MAJmE5M,GAC1D0J,EAAAA,cAACyD,EAAenN,iCCsFzB,MA/EqDA,IAAW,IAAD,QAC7D,MAAM2C,EAAS3C,EAAMoN,gBAAe,cAAcC,EAC5CC,GAAsB,QAAhB,EAAAtN,EAAMuN,kBAAU,OAAK,QAAL,EAAhB,EAAkBD,WAAG,WAAL,EAAhB,EAAuBhJ,SAAUtE,EAAMuN,WAAWD,IAAI,GAC5DE,GAAuB,QAAhB,EAAAxN,EAAMuN,kBAAU,OAAM,QAAN,EAAhB,EAAkBC,YAAI,WAAN,EAAhB,EAAwBlJ,SAAUtE,EAAMuN,WAAWC,KAAK,GAErE,IAAKA,EAAM,OAAO,KAElB,MAAMC,EAAoB,CAAC,SAAS,GAAIzN,EAAM0N,YAExCC,EAAaC,IACjBA,EAAMC,gBAAgB,EAaxB,OAAIP,GAAOtN,EAAMuN,WAAWO,SAAS,GAGjCpE,EAAAA,cAACqE,EAAAA,KAAI,CACHtG,UAAWgG,EAAQO,KAAK,KACxBC,IAAIC,EAAAA,EAAAA,IAAgBZ,GACpB3K,OAAQA,EACRwL,QAASnO,EAAMoO,kBAAoBT,OAAYN,EAC/C,qBAAoBrN,EAAMoO,wBAAqBf,GAE9CG,GAIDF,IAAQA,EAAIe,SAAS,KAErB3E,EAAAA,cAAAA,IAAAA,CACEjC,UAAWgG,EAAQO,KAAK,KACxBM,KAAMhB,EACN3K,OAAQA,EACR4L,IAAW,WAAN5L,EAAmB,gBAAgB0K,EACxCc,QAASnO,EAAMoO,kBAAoBT,OAAYN,EAC/C,qBAAoBrN,EAAMoO,wBAAqBf,GAE9CG,GAmBH9D,EAAAA,cAAAA,SAAAA,CACE3J,KAAI,SACJ0H,UAAWgG,EAAQO,KAAK,KACxBG,QAASnO,EAAMoO,kBAAoBT,OAAYN,EAC/C,qBAAoBrN,EAAMoO,mBAEzBZ,EAIT,EClFF,IAKYgB,EAAoB,SAApBA,GAAA,OAAAA,EAAoB,eAApBA,EAAoB,cAApBA,CAAoB,MAOpBC,EAAkB,SAAlBA,GAAA,OAAAA,EAAkB,0CAAlBA,EAAkB,wBAAlBA,EAAkB,gBAAlBA,CAAkB,MAsB9B,MAAMC,EAAS,WAuFf,MArFyD1O,IAAW,IAAD,UAKjE,IAAI2O,EACJ,IAAkC,QAAlC,EAAQ3O,EAAM4O,4BAAoB,QAAIJ,EAAqBK,WACpDL,EAAqBM,MACxBH,EAAiB,gBAGjBA,EAAiB,GAIrB,MAAMlB,EACDiB,EAAS,IAAI1O,EAAM+O,qBAAoB,IACvCL,EAAS,OAAmC,QAAf,EAAC1O,EAAMgP,gBAAQ,OAAW,QAAX,EAAdhP,EAAgBiP,iBAAS,WAAX,EAAdjP,EAA2BkP,MAf/CT,EAAmBU,OAASnP,EAAMoP,oBAekB,IAC9DV,GAAS,aAEd,OACEhF,EAAAA,cAAAA,MAAAA,CAAKjC,UAAWiH,GACdhF,EAAAA,cAAAA,MAAAA,CAAKjC,UAAWgG,GACd/D,EAAAA,cAAAA,MAAAA,CAAKjC,UAAciH,EAAS,UAC1BhF,EAAAA,cAACgB,EAAAA,EAAgB,eACf2E,iBAAiB,GACbrP,EAAMsP,sBAoBd5F,EAAAA,cAAAA,MAAAA,CAAKjC,UAAciH,EAAS,cAE5BhF,EAAAA,cAAAA,MAAAA,CAAKjC,UAAciH,EAAS,wCAC1BhF,EAAAA,cAAAA,MAAAA,CAAKjC,UAAciH,EAAS,YAC1BhF,EAAAA,cAAAA,MAAAA,CAAKjC,UAAciH,EAAS,YAAYC,GACtCjF,EAAAA,cAAAA,MAAAA,CAAKjC,UAAciH,EAAS,gBAC1BhF,EAAAA,cAAC6F,EAAAA,EAAU,CAAC3C,QAAS5M,EAAMwP,oBAEN,QAAtB,EAAAxP,EAAMyP,wBAAgB,aAAtB,EAAwBP,KAAKQ,SAC5BhG,EAAAA,cAAAA,MAAAA,CAAKjC,UAAciH,EAAS,YAE1BhF,EAAAA,cAAC6F,EAAAA,EAAU,CAACI,QAAM,EAAC/C,QAAS5M,EAAMyP,qBAGf,QAAtB,EAAAzP,EAAM4P,wBAAgB,aAAtB,EAAwBV,KAAKQ,SAC5BhG,EAAAA,cAAAA,MAAAA,CAAKjC,UAAciH,EAAS,YAE1BhF,EAAAA,cAAC6F,EAAAA,EAAU,CAACI,QAAM,EAAC/C,QAAS5M,EAAM4P,qBAIxClG,EAAAA,cAAAA,MAAAA,CACEjC,UAAciH,EAAS,aAAY1O,EAAM6P,oBACrC,WAAa7P,EAAM6P,oBAAmB,KAI1CnG,EAAAA,cAACoG,EAAc9P,EAAM+P,gBACpB/P,EAAMgQ,yBACLtG,EAAAA,cAACoG,EAAc9P,EAAMgQ,6BAM3B,ECtGV,MAnBqEhQ,GACnE0J,EAAAA,cAAC0B,EAAe,iBAAKpL,EAAMqL,oBAAyBrL,EAAMsL,SAAQ,CAAE2E,WAAS,IAC3EvG,EAAAA,cAACwG,EAAW,CACVrF,YAAa7K,EAAM6K,YACnByE,mBAAoBtP,EAAMsP,mBAE1BG,iBAAkBzP,EAAMyP,iBACxBG,iBAAkB5P,EAAM4P,iBACxBG,eAAgB/P,EAAM+P,eACtBC,wBAAyBhQ,EAAMgQ,wBAC/BR,gBAAiBxP,EAAMwP,gBACvBT,qBAAsB/O,EAAM+O,qBAC5BH,qBAAsB5O,EAAM4O,qBAC5BiB,oBAAqB7P,EAAM6P,oBAC3BT,mBAAoBpP,EAAMoP,sBCFhC,MATmEpP,GACjE0J,EAAAA,cAAC0B,EAAe,iBAAKpL,EAAMqL,oBAAyBrL,EAAMsL,UACxD5B,EAAAA,cAAC6F,EAAAA,EAAU,CACT3C,QAAS5M,EAAMmQ,SACfC,UAAWpQ,EAAMwL,cACjB6E,MAAOrQ,EAAMsQ,yBCenB,MAhBEtQ,GAGE0J,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,WACbiC,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,eACbiC,EAAAA,cAACgB,EAAAA,EAAgB,CACfC,mBAAoB3K,EAAMuQ,YAAY5F,sBAG1CjB,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,gBACbiC,EAAAA,cAAC6F,EAAAA,EAAU,CAAC3C,QAAS5M,EAAMwQ,mBCQnC,OAhBKxQ,GAED0J,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,oBACbiC,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,2BACbiC,EAAAA,cAAAA,KAAAA,CAAIjC,UAAU,UAAUzH,EAAM6K,aAC9BnB,EAAAA,cAACoG,EAAc9P,EAAMyQ,YAEvB/G,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,6BACZzH,EAAM0Q,uBAAuB1F,aAAapJ,KAAI,CAAC+O,EAASzF,IACvDxB,EAAAA,cAACkH,EAAqB,eAAC3Q,IAAKiL,GAASyF,QCP/C,OAX6G3Q,GAC3G0J,EAAAA,cAAC0B,EAAe,iBAAKpL,EAAMqL,oBAAyBrL,EAAMsL,UACxD5B,EAAAA,cAACmH,GAA+B,CAC9BhG,YAAa7K,EAAM6K,YACnB4F,UAAWzQ,EAAMyQ,UACjBC,uBAAwB1Q,EAAM0Q,uBAC9BlF,cAAexL,EAAMwL,iBC0B3B,OAtBKxL,GAED0J,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,eACbiC,EAAAA,cAAC6F,EAAAA,EAAU,CAAC3C,QAAS5M,EAAM8Q,qBAC3BpH,EAAAA,cAAAA,MAAAA,MACAA,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,qBACbiC,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,2BACbiC,EAAAA,cAACgB,EAAAA,EAAgB,CACjBC,mBAAoB3K,EAAM+Q,iBAAiBpG,sBAG7CjB,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,0BACbiC,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,0BAA0BzH,EAAMgR,iBAC/CtH,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,yBACZzH,EAAMiR,mBAAmB,MAAIjR,EAAMkR,mBCjC5CC,GAAe,SACfC,GAAiB,QAAQD,KAMzBE,GAAS,CACXC,QANY,EAOZC,QANY,EAOZC,KANS,EAOTC,OANW,EAOXC,UANc,GAUhB,SAASC,GAAMC,GACbA,EAAMtN,OAAS,CACjB,CACA,SAASuN,GAASC,GAChB,OAAQC,GAAOD,IAA+B,iBAAZA,CACpC,CACA,SAAS9N,GAAQ8N,GACf,OAAO/N,MAAMC,QAAQ8N,EACvB,CAIA,SAASE,GAASF,GAChB,MAA0B,iBAAZA,CAChB,CACA,SAASG,GAAYH,GACnB,YAA0B,IAAZA,CAChB,CACA,SAASC,GAAOD,GACd,OAAmB,OAAZA,CACT,CACA,SAASI,GAAcJ,GACrB,OAAOA,aAAmBK,WAC5B,CACA,SAASC,GAAQxR,GACf,OAAOoD,GAAQpD,GAASA,EAAQ,CAACA,EACnC,CACA,SAAS4C,GAAQ6O,EAAQC,GACvBF,GAAQC,GAAQ7O,QAAQ8O,EAC1B,CACA,SAASjE,GAASuD,EAAOhR,GACvB,OAAOgR,EAAMvN,QAAQzD,IAAU,CACjC,CACA,SAASuD,GAAKyN,EAAOW,GAEnB,OADAX,EAAMzN,QAAQiO,GAAQG,IACfX,CACT,CACA,IAAIY,GAAazO,MAAM0O,UACvB,SAAS5S,GAAM6S,EAAWC,EAAOC,GAC/B,OAAOJ,GAAW3S,MAAMM,KAAKuS,EAAWC,EAAOC,EACjD,CAIA,SAASC,GAAYC,EAAKrF,EAASsF,GAC7BD,GACFtP,GAAQiK,GAAUuF,IACZA,GACFF,EAAIG,UAAUF,EAAM,MAAQ,UAAUC,EACxC,GAGN,CACA,SAASE,GAASJ,EAAKrF,GACrBoF,GAAYC,EAAKd,GAASvE,GAAWA,EAAQvE,MAAM,KAAOuE,GAAS,EACrE,CACA,SAAS0F,GAAOC,EAAQC,GACtB7P,GAAQ6P,EAAWD,EAAOE,YAAYC,KAAKH,GAC7C,CACA,SAASI,GAAOC,EAAOvN,GACrB1C,GAAQiQ,GAAQ1O,IACd,MAAMqO,EAASlN,EAAIwN,WACfN,GACFA,EAAOO,aAAa5O,EAAMmB,EAC5B,GAEJ,CACA,SAAS0N,GAAQd,EAAKe,GACpB,OAAO3B,GAAcY,KAASA,EAAuB,mBAAKA,EAAIc,SAASzT,KAAK2S,EAAKe,EACnF,CACA,SAASxO,GAAS+N,EAAQS,GACxB,OAAOT,EAASvT,GAAMuT,EAAO/N,UAAU1D,QAAQmS,GAAWF,GAAQE,EAAQD,KAAa,EACzF,CACA,SAASE,GAAMX,EAAQS,GACrB,OAAOA,EAAWxO,GAAS+N,EAAQS,GAAU,GAAKT,EAAOY,iBAC3D,CACA,SAASC,GAAOC,EAAQ5B,EAAU6B,GAChC,GAAID,EAAQ,CACV,IAAIzS,EAAOjB,OAAOiB,KAAKyS,GACvBzS,EAAO0S,EAAQ1S,EAAK2S,UAAY3S,EAChC,IAAK,IAAI4S,EAAI,EAAGA,EAAI5S,EAAK6C,OAAQ+P,IAAK,CACpC,MAAMpU,EAAMwB,EAAK4S,GACjB,GAAY,cAARpU,IACiC,IAA/BqS,EAAS4B,EAAOjU,GAAMA,GACxB,KAGN,CACF,CACA,OAAOiU,CACT,CACA,SAAS,GAAOA,GAMd,OALArU,GAAMyU,UAAW,GAAG9Q,SAAS+Q,IAC3BN,GAAOM,GAAQ,CAAC3T,EAAOX,KACrBiU,EAAOjU,GAAOsU,EAAOtU,EAAI,GACzB,IAEGiU,CACT,CACA,SAASM,GAAMN,EAAQK,GAUrB,OATAN,GAAOM,GAAQ,CAAC3T,EAAOX,KACjB+D,GAAQpD,GACVsT,EAAOjU,GAAOW,EAAMf,QACXgS,GAASjR,GAClBsT,EAAOjU,GAAOuU,GAAM3C,GAASqC,EAAOjU,IAAQiU,EAAOjU,GAAO,CAAC,EAAGW,GAE9DsT,EAAOjU,GAAOW,CAChB,IAEKsT,CACT,CACA,SAASO,GAAgB3B,EAAK4B,GACxB5B,GACFtP,GAAQkR,GAAQC,IACd7B,EAAI2B,gBAAgBE,EAAK,GAG/B,CACA,SAASC,GAAa9B,EAAK4B,EAAO9T,GAC5BiR,GAAS6C,GACXT,GAAOS,GAAO,CAACG,EAAQ7B,KACrB4B,GAAa9B,EAAKE,EAAM6B,EAAO,IAGjC9C,GAAOnR,GAAS6T,GAAgB3B,EAAK4B,GAAS5B,EAAI8B,aAAaF,EAAOtM,OAAOxH,GAEjF,CACA,SAASkU,GAAOC,EAAKL,EAAOtB,GAC1B,MAAMN,EAAMkC,SAASC,cAAcF,GAKnC,OAJIL,IACF1C,GAAS0C,GAASxB,GAASJ,EAAK4B,GAASE,GAAa9B,EAAK4B,IAE7DtB,GAAUD,GAAOC,EAAQN,GAClBA,CACT,CACA,SAASpL,GAAMoL,EAAKoC,EAAMtU,GACxB,GAAIqR,GAAYrR,GACd,OAAOuU,iBAAiBrC,GAAKoC,GAE/B,IAAKnD,GAAOnR,GAAQ,CAClB,MAAQ8G,MAAO0N,GAAWtC,EAC1BlS,EAAQ,GAAGA,IACPwU,EAAOF,KAAUtU,IACnBwU,EAAOF,GAAQtU,EAEnB,CACF,CACA,SAASoI,GAAQ8J,EAAKuC,GACpB3N,GAAMoL,EAAK,UAAWuC,EACxB,CAIA,SAASC,GAAaxC,EAAK6B,GACzB,OAAO7B,EAAIwC,aAAaX,EAC1B,CACA,SAASY,GAASzC,EAAKrL,GACrB,OAAOqL,GAAOA,EAAIG,UAAUuC,SAAS/N,EACvC,CACA,SAASgO,GAAK9S,GACZ,OAAOA,EAAOF,uBAChB,CACA,SAASiT,GAAOjC,GACdjQ,GAAQiQ,GAAQ1O,IACVA,GAAQA,EAAK2O,YACf3O,EAAK2O,WAAWiC,YAAY5Q,EAC9B,GAEJ,CASA,SAAS6Q,GAAU1G,GACjB,OAAO6E,IAAM,IAAI8B,WAAYC,gBAAgB5G,EAAM,aAAa6G,KAClE,CACA,SAASC,GAAQC,EAAGC,GAClBD,EAAEpI,iBACEqI,IACFD,EAAEC,kBACFD,EAAEE,2BAEN,CACA,SAASC,GAAMhD,EAAQS,GACrB,OAAOT,GAAUA,EAAOiD,cAAcxC,EACxC,CACA,SAASyC,GAASlD,EAAQS,GACxB,OAAOhU,GAAMuT,EAAOmD,iBAAiB1C,GACvC,CACA,SAAS2C,GAAY1D,EAAKrF,GACxBoF,GAAYC,EAAKrF,GAAS,EAC5B,CACA,SAASgJ,GAAK7V,GACZ,OAAOoR,GAASpR,GAASA,EAAQA,EAAQ,GAAGA,MAAY,EAC1D,CACA,SAAS8V,GAAO3P,EAAW4P,EAAU,IACnC,IAAK5P,EACH,MAAM,IAAI6P,MAAM,IAAIzF,OAAiBwF,IAEzC,CACA,SAASE,GAASzU,GAChB0U,WAAW1U,EACb,CACA,IAAI2U,GAAO,OAEX,SAASC,GAAIC,GACX,OAAOC,sBAAsBD,EAC/B,CACA,IAAI,IAAEE,GAAG,IAAEC,GAAG,MAAEC,GAAK,KAAEC,GAAI,IAAEC,IAAQC,KAIrC,SAASC,GAAQC,EAAQC,EAAUC,EAAUC,GAC3C,MAAMC,EAAUX,GAAIQ,EAAUC,GACxBG,EAAUX,GAAIO,EAAUC,GAC9B,OAAOC,EAAYC,EAAUJ,GAAUA,EAASK,EAAUD,GAAWJ,GAAUA,GAAUK,CAC3F,CACA,SAASC,GAAMN,EAAQvL,EAAG8L,GACxB,MAAMH,EAAUX,GAAIhL,EAAG8L,GACjBF,EAAUX,GAAIjL,EAAG8L,GACvB,OAAOd,GAAIC,GAAIU,EAASJ,GAASK,EACnC,CACA,SAASG,GAAK/L,GACZ,QAASA,EAAI,KAAOA,EAAI,EAC1B,CACA,SAASgM,GAAOC,EAAQC,GAItB,OAHA7U,GAAQ6U,GAAeC,IACrBF,EAASA,EAAOG,QAAQ,KAAM,GAAGD,IAAc,IAE1CF,CACT,CACA,SAASI,GAAId,GACX,OAAOA,EAAS,GAAK,IAAIA,IAAW,GAAGA,GACzC,CACA,IAAIe,GAAM,CAAC,EAqDX,IAAIC,GAAgB,UAChBC,GAAc,QACdC,GAAa,OACbC,GAAc,QACdC,GAAgB,UAChBC,GAAc,QACdC,GAAe,SACfC,GAAiB,WACjBC,GAAgB,UAChBC,GAAe,SACfC,GAAsB,gBACtBC,GAAgB,UAChBC,GAAgB,UAChBC,GAAe,SACfC,GAAgB,UAChBC,GAAqB,eACrBC,GAAa,OACbC,GAAiB,WACjBC,GAAgB,UAChBC,GAAe,SACfC,GAAiB,WACjBC,GAAgB,UAChBC,GAAuB,iBACvBC,GAAuB,iBACvBC,GAA2B,qBAC3BC,GAA2B,qBAC3BC,GAA2B,qBAC3BC,GAAsB,gBACtBC,GAAyB,mBACzBC,GAAuB,iBACvBC,GAAwB,kBAC5B,SAASC,GAAeC,GACtB,MAAM,MAAE9M,GAAU8M,EACZza,EAAM,CAAC,EACb,IAAI0a,EAAY,GAahB,SAASC,EAAOC,EAASC,EAAQ1Y,GAC/B2Y,EAAaF,EAASC,GAAQ,CAACnY,EAAQqY,KACrCL,EAAYA,EAAUhZ,QAAQsZ,MACxBA,EAAS,KAAOtY,GAAUsY,EAAS,KAAOD,GAAY5Y,GAAY6Y,EAAS,KAAO7Y,KACpFO,EAAOuY,oBAAoBF,EAAQC,EAAS,GAAIA,EAAS,KAClD,IAGT,GAEN,CACA,SAASF,EAAaF,EAASC,EAAQxI,GACrC9O,GAAQqX,GAAUlY,IACZA,GACFmY,EAAO5R,MAAM,KAAK1F,QAAQ8O,EAASiB,KAAK,KAAM5Q,GAChD,GAEJ,CACA,SAASwY,IACPR,EAAYA,EAAUhZ,QAAQyZ,GAASR,EAAOQ,EAAK,GAAIA,EAAK,MAC5DxN,EAAMyN,MAAMpb,EACd,CAEA,OADA2N,EAAM0N,GAAGvB,GAAeoB,EAASlb,GAC1B,CACLqb,GApCF,SAAYR,EAAQ1Y,EAAUmZ,GAC5B3N,EAAM0N,GAAGR,EAAQ1Y,EAAUnC,EAAKsb,EAClC,EAmCEC,IAlCF,SAAaV,GACXlN,EAAM4N,IAAIV,EAAQ7a,EACpB,EAiCEwb,KAAM7N,EAAM6N,KACZlI,KAjCF,SAAcsH,EAASC,EAAQ1Y,EAAUZ,GACvCuZ,EAAaF,EAASC,GAAQ,CAACnY,EAAQqY,KACrCL,EAAUxW,KAAK,CAACxB,EAAQqY,EAAQ5Y,EAAUZ,IAC1CmB,EAAO+Y,iBAAiBV,EAAQ5Y,EAAUZ,EAAQ,GAEtD,EA6BEoZ,SACAO,UAEJ,CACA,SAASQ,GAAgBC,EAAUC,EAAYC,EAAUC,GACvD,MAAM,IAAEC,GAAQC,KAChB,IAAIC,EAEAhZ,EADAiZ,EAAO,EAEPC,GAAS,EACTC,EAAQ,EACZ,SAASC,IACP,IAAKF,EAAQ,CACX,MAAMG,EAAUP,IAAQE,EAUxB,GATIK,GAAWX,GACbO,EAAO,EACPD,EAAYF,KAEZG,EAAOI,EAAUX,EAEfE,GACFA,EAASK,GAEE,IAATA,IACFN,IACIE,KAAWM,GAASN,GACtB,OAAOS,IAGXxF,GAAIsF,EACN,CACF,CAOA,SAASE,IACPJ,GAAS,CACX,CAQA,SAASK,IACPC,qBAAqBxZ,GACrBiZ,EAAO,EACPjZ,EAAK,EACLkZ,GAAS,CACX,CAOA,MAAO,CACLzJ,MA7BF,SAAegK,IACZA,GAAUF,IACXP,EAAYF,KAASW,EAASR,EAAOP,EAAW,GAChDQ,GAAS,EACTpF,GAAIsF,EACN,EAyBEM,OArBF,WACEV,EAAYF,IACZG,EAAO,EACHL,GACFA,EAASK,EAEb,EAgBEK,QACAC,SACA1a,IAXF,SAAae,GACX8Y,EAAW9Y,CACb,EAUE+Z,SATF,WACE,OAAOT,CACT,EASF,CAWA,SAASU,GAAS7F,EAAM3P,GACtB,IAAIsU,EAUJ,OATA,WACOA,IACHA,EAAWD,GAAgBrU,GAAY,GAAG,KACxC2P,EAAK8F,MAAMjY,KAAMwP,WACjBsH,EAAW,IAAI,GACd,KAAM,GACTA,EAASjJ,QAEb,CAEF,CA0DA,IACIqK,GAAM,MACNC,GAAkB,CACpBC,YAAa,CAAC,eAAgB,cAC9BC,UAAW,CAAC,cACZC,WAAY,CAAC,eACbC,YAAa,CAAC,aAAc,gBAC5BC,aAAc,CAAC,gBAAiB,eAChCzT,MAAO,CAAC,UACR0T,KAAM,CAAC,MAAO,SACdpJ,MAAO,CAAC,SAAU,QAClBhI,EAAG,CAAC,KACJqR,EAAG,CAAC,KACJC,EAAG,CAAC,KACJC,UAAW,CAAC,UAAW,cACvBC,WAAY,CAAC,YAAa,cAgB5B,IAAIC,GAAazM,GACb0M,GAAe,GAAG1M,aAClB2M,GAAc,GAAG3M,YACjB4M,GAAa,GAAG5M,WAChB6M,GAAc,GAAG7M,YACjB8M,GAAc,GAAGD,YACjBE,GAAkB,GAAGF,gBACrBG,GAAe,GAAGhN,aAClBiN,GAAc,GAAGjN,YACjBkN,GAAmB,GAAGD,WACtBE,GAAmB,GAAGF,WACtBG,GAAmB,GAAGpN,iBAEtBqN,GAAiB,GAAGrN,eACpBsN,GAAqB,GAAGD,UACxBE,GAAiB,GAAGvN,eACpBwN,GAAa,GAAGxN,WAChByN,GAAc,GAAGzN,YAGjB0N,GAAe,YACfC,GAAa,UACbC,GAAa,UACbC,GAAgB,aAChBC,GAAgB,aAChBC,GAAiB,CAACL,GAAcG,GAAeF,GAAYC,GAAYE,IACvEE,GAAU,CACZC,MAAOpB,GACPqB,MAAOpB,GACPqB,OAAQnB,GACRoB,MAAOnB,GACPoB,KAAMnB,GACNoB,KAAMnB,GACNoB,WAAYnB,GACZoB,KAtB0B,GAAGpB,WAuB7BqB,QAjBkB,GAAGzO,eAmGvB,IAAI0O,GAAO,OACPC,GAAgB,gBAChBC,GAAe,eACfC,GAAa,aACbC,GAAc,cACdC,GAAY,WAEZC,GAAmB,mBACnBC,GAAiB,CACnBP,GACAC,GACAC,GACAC,GACAC,GACAE,GACAD,GATa,YAYXG,GAAQ,QACRC,GAAO,OACPC,GAAO,OACX,SAASC,GAAQ9F,EAAUlS,EAAOiY,EAAYrB,GAC5C,MAAM,GAAE9D,EAAE,KAAEG,EAAI,KAAElI,EAAM4H,QAASuF,GAAkBjG,GAAeC,IAC5D,WAAEiG,EAAU,KAAE9e,EAAI,QAAEL,GAAYkZ,GAChC,aAAEkG,EAAY,aAAEC,GAAiBrf,GACjC,QAAEsf,GAAYH,EAAWI,UACzBC,EAAS1L,GAAa8J,EAAO,SAC7B6B,EAAUR,GAAc,EACxBS,EAAYnN,GAAMqL,EAAO,IAAIlB,MAC7BiD,EAAiB3f,EAAQ2f,gBAAkB7K,GAAS8I,EAAO5d,EAAQ2f,gBACzE,IAAIC,EAqBJ,SAASC,IACP,MAAMnW,EAAM+V,EAAUR,EAAajY,EAC7B8Y,EAAQnJ,GAAO3W,EAAQ+f,KAAKC,OAAQtW,EAAM,GAC1CuW,EAAW/G,EAASgH,QAAQ9f,KAAKe,GAAWA,EAAOgf,OAAO9f,KAAKqB,KAAI8K,KAAK,KAC9E4G,GAAawK,EAAOY,GAAYsB,GAChC1M,GAAawK,EAAOU,GAAe2B,GACnC7M,GAAawK,EAAOS,GAAM,YAC1B+B,EAAeC,IACjB,CACA,SAASC,IACFV,GACH9E,GAEJ,CACA,SAASA,IACP,IAAK8E,EAAW,CACd,MAAQ5Y,MAAOuZ,GAAcrH,EAC7BkH,EAAeC,KAenB,SAA0BG,GACxB,MAAMC,GAAUD,KAAaH,KAAcZ,GAC3CrM,GAAawK,EAAOa,GAAagC,GAAU,MAC3CrN,GAAawK,EAAOc,IAAY+B,GAAUzgB,EAAQ0gB,WAAa,EAAI,MAC/Df,GACFA,EAAe3d,SAASuB,IACtB6P,GAAa7P,EAAMmb,GAAW+B,GAAU,EAAI,KAAK,IAGjDD,IAAYzM,GAAS6J,EAAOJ,MAC9BnM,GAAYuM,EAAOJ,GAAegD,GAClCvG,EAAKuG,EAAU9I,GAAgBC,GAAcgJ,GAEjD,CA3BIC,CAmCJ,WACE,GAAI1H,EAAS2H,GAAG9B,IACd,OAAOsB,IAET,MAAMS,EAAY7M,GAAKkL,EAAW4B,SAASC,OACrCC,EAAYhN,GAAK2J,GACjB7B,EAAOuD,EAAQ,QACf3M,EAAQ2M,EAAQ,SACtB,OAAOzJ,GAAMiL,EAAU/E,KAAUjG,GAAKmL,EAAUlF,KAAUlG,GAAMoL,EAAUtO,KAAWmD,GAAKgL,EAAUnO,GACtG,CA5CqBrQ,IACjB+O,GAAYuM,EAAON,GAAYtW,IAAUuZ,EAAY,GACrDlP,GAAYuM,EAAOL,GAAYvW,IAAUuZ,EAAY,EACvD,CACF,CACA,SAASH,EAAec,GAClBA,IAAWnN,GAAS6J,EAAOP,MAC7BhM,GAAYuM,EAAOP,GAAc6D,GAC7B9B,GACFhM,GAAawK,EAAOW,GAAc2C,GAAU,MAE9CjH,EAAKiH,EAAS1J,GAAeC,GAAgBkJ,GAEjD,CAkBA,SAASN,IACP,MAAQrZ,MAAOma,GAASjI,EACxB,OAAOiI,IAASna,GAAShH,EAAQohB,aAAeD,IAASlC,CAC3D,CAkBA,MAAM0B,EAAO,CACX3Z,QACAiY,aACArB,QACA8B,YACAD,UACA4B,MAhGF,WACO5B,IACH7B,EAAMlc,GAAK,GAAGrB,EAAKqB,WAAWsV,GAAIhQ,EAAQ,MAE5C+K,EAAK6L,EAAO,iBAAkBnJ,IAC5BwF,EAAgB,UAAXxF,EAAElW,KAAmBgZ,GAAcK,GAAqB+I,EAAMlM,EAAE,IAEvEqF,EAAG,CAACjC,GAAeI,GAAoBX,GAAeD,GAAaiB,IAAiBwC,GACpFhB,EAAGlB,GAA0BiH,GACzBR,GACFvF,EAAG1C,GAAYkJ,EAEnB,EAqFE3G,QApFF,WACEiG,GAAY,EACZV,IACAlK,GAAY4I,EAAOF,IACnBzK,GAAgB2K,EAAOgB,IACvBxL,GAAawK,EAAO,QAAS4B,EAC/B,EA+EE1E,SACA5U,MAjCF,SAAiBwN,EAAMtU,EAAOkiB,GAC5Bpb,GAAMob,GAAgB5B,GAAa9B,EAAOlK,EAAMtU,EAClD,EAgCEmiB,SAjBF,SAAkBC,EAAMC,GACtB,IAAIC,EAAO3L,GAAIyL,EAAOxa,GAItB,OAHKyY,IAAYzf,EAAQob,SAAUlC,EAAS2H,GAAG/B,MAC7C4C,EAAO/L,GAAI+L,EAAMxI,EAASpW,OAAS4e,IAE9BA,GAAQD,CACjB,GAaA,OAAOd,CACT,CA8oBA,IAAIgB,GAA0B,GAAG/R,cA6LjC,IAAIgS,GAA0B,CAAEC,SAAS,EAAOC,SAAS,GAIrDC,GAAsB,sBACtBC,GAAoB,+BA8JxB,IAAIC,GAAgB,CAAC,OAAQ,QAAS,KAAM,QACxCC,GAAiB,UA6DrB,IAAIC,GAAqB,GAAGvS,UACxBwS,GAAwB,GAAGD,YAC3BE,GAAiB,IAAIF,SAAyBC,MAsKlD,IAAIE,GAAe,CAAC,IAAK,QAAS,YAqFlC,IAAIC,GAAwCvjB,OAAOwjB,OAAO,CACxDC,UAAW,KACXC,QA9nDF,SAAiBxJ,EAAUyJ,EAAa3iB,GACtC,MAAM4iB,EAAmBtH,GAAS5a,GAClC,IAAImiB,EACAC,EACAC,EAuBJ,SAASpJ,EAAQqJ,GACXA,GACFtJ,oBAAoB,SAAUkJ,EAElC,CACA,SAASliB,IACP,MAAMuiB,GAlceC,EAkcMC,GAAUA,EAAM,GAAG/Q,QAjczC/T,GAicaykB,GAjcI3iB,OAAO+iB,GAAW,IAickB,IAlc9D,IAAyBA,EAmcjBD,EAAK,KAAOF,GAIlB,SAAiBK,GACf,MAAMC,EAAarjB,EAAQsjB,YAAYF,IAAUP,EAC7CQ,EAAW1J,SACbT,EAASlZ,QAAU6iB,EACnB3J,EAASS,QAA+B,eAAvB0J,EAAW1J,WAExBT,EAASlV,MAAM6c,GAhgBT,KAigBRlH,GAAQ,GACRT,EAASmI,SAEXnI,EAASlZ,QAAUqjB,EAEvB,CAfIE,CAAQR,EAAYE,EAAK,GAE7B,CAcA,MAAO,CACLO,MA/CF,WACE,IACExQ,GAAMhT,EAASyjB,KAAKC,MAAM5P,GAAaoF,EAAS7Y,KAAMuP,KACxD,CAAE,MAAO6E,GACPS,IAAO,EAAOT,EAAEU,QAClB,CACA0N,EAAiB7P,GAAM,CAAC,EAAGhT,GAC3B,MAAM,YAAEsjB,GAAgBtjB,EACxB,GAAIsjB,EAAa,CACf,MAAMK,EAA+B,QAAvB3jB,EAAQ4jB,WACtBd,EAAS9jB,OAAOiB,KAAKqjB,GAAapjB,MAAK,CAAC2jB,EAAGC,IAAMH,GAASG,GAAKD,GAAKA,GAAKC,IAAG1jB,KAAKgjB,GAAU,CACzFA,EACAW,WAAW,IAAIJ,EAAQ,MAAQ,eAAeP,WAEhD1iB,GACF,CACF,EAgCE2gB,MA/BF,WACMyB,GACF5I,iBAAiB,SAAU0I,EAE/B,EA4BEjJ,UAEJ,EAukDE4F,UArjDF,SAAmBrG,EAAUyJ,EAAa3iB,GASxC,MAAO,CACLsf,QATF,SAAiB5L,EAAMsQ,GACrB,MAAM,UAAEC,GAAcjkB,EAEtB,OAAOyb,GAAgB/H,GArBjB,QAoBQuQ,GAAsBD,EAAeC,IAAczI,GAAM,GAAK,EAA7B,IACR9H,CACzC,EAMEwQ,OALF,SAAgB9kB,GACd,OAAOA,GAxBD,QAwBUY,EAAQikB,UAAoB,GAAK,EACnD,EAKF,EAyiDElD,SAngDF,SAAkB7H,EAAUyJ,EAAa3iB,GACvC,MAAM,GAAE8Z,GAAOb,GAAeC,IACxB,KAAE7Y,GAAS6Y,EACXtX,EAAW,CAAC,EACZuiB,EAAS,GACf,IAAIlY,EACAmY,EACApD,EACAqD,EACJ,SAASb,KAwBT,WACEY,EAAS7R,GAAMlS,EAAM,IAAIgc,MACzB2E,EAAQpM,GAAMvU,EAAM,IAAIic,MACxB+H,EAAO9R,GAAMyO,EAAO,IAAIzE,MACxBrH,GAAO8L,GAASqD,EAAM,oCACtB1hB,GAAKwhB,EAAQtgB,GAASwgB,EAAM,IAAI7H,WAAoBC,QACpD,MAAM6H,EAAWC,EAAM,IAAIrH,MACrBY,EAASyG,EAAM,IAAI5H,MACzB,GAAO/a,EAAU,CACfvB,OACA+jB,SACApD,QACAqD,OACAF,SACArG,SACAwG,WACAtG,KAAMpJ,GAAMkJ,EAAQ,IAAIjB,MACxBoB,KAAMrJ,GAAMkJ,EAAQ,IAAIhB,MACxB0H,IAAK5P,GAAM2P,EAAM,IAAIvH,MAAmB,IAAIC,MAC5CwH,KAAM7P,GAAM0P,EAAU,IAAInH,MAC1BnC,MAAOpG,GAAM0P,EAAU,IAAIlH,OAE/B,CA7CEsH,GA8CF,WACE,MAAMhjB,EAAKrB,EAAKqB,KAjZFijB,EAiZiBhV,GAhZ1B,GAAGgV,IAAS3N,GAAIC,GAAI0N,IAAW1N,GAAI0N,IAAW,GAAK,MAD5D,IAAkBA,EAkZdtkB,EAAKqB,GAAKA,EACVsf,EAAMtf,GAAKsf,EAAMtf,IAAM,GAAGA,UAC1B2iB,EAAK3iB,GAAK2iB,EAAK3iB,IAAM,GAAGA,QAC1B,CAlDEkjB,GACAlT,GAASrR,EAAM4L,EAAU4Y,IAC3B,CAKA,SAASlL,IACP,CAACtZ,EAAM2gB,EAAOqD,GAAMriB,SAASsP,IAC3B2B,GAAgB3B,EAAK,QAAQ,IAE/BnB,GAAMgU,GACNnP,GAAY3U,EAAM4L,EACpB,CACA,SAAS6Y,IACPnL,IACA6J,GACF,CACA,SAAS1I,IACP9F,GAAY3U,EAAM4L,GAClByF,GAASrR,EAAM4L,EAAU4Y,IAC3B,CA8BA,SAASN,EAAMlS,GACb,OAAOE,GAAMlS,EAAMgS,IAAaE,GAAM6R,EAAQ/R,EAChD,CACA,SAASwS,IACP,MAAO,CACL,GAAGzI,OAAepc,EAAQzB,OAC1B,GAAG6d,OAAepc,EAAQikB,YAC1BjkB,EAAQ+kB,MAAQ,GAAG3I,gBACnBpc,EAAQof,cAAgB,GAAGhD,UAC3BiB,GAEJ,CACA,OAAO,GAAOzb,EAAU,CACtB4hB,QACAnC,MA9DF,WACEvH,EAAGjC,GAAeiN,EAASE,GAC3BlL,EAAGhC,GAAegD,EACpB,EA4DEnB,WAEJ,EAq7CEsL,OA7yCF,SAAgB/L,EAAUyJ,EAAa3iB,GACrC,MAAM,GAAE8Z,EAAE,KAAEG,EAAI,KAAElI,GAASkH,GAAeC,IACpC,OAAEiL,EAAM,KAAEE,GAAS1B,EAAY5B,SAC/BmE,EAAU,GAQhB,SAASC,IACPhB,EAAOniB,SAAQ,CAAC4b,EAAO5W,KACrBoe,EAASxH,EAAO5W,GAAQ,EAAE,GAE9B,CACA,SAAS2S,IACP0L,GAAWC,IACTA,EAAO3L,SAAS,IAElBxJ,GAAM+U,EACR,CACA,SAASJ,IACPnL,IACAwL,GACF,CAMA,SAASC,EAASxH,EAAO5W,EAAOiY,GAC9B,MAAMvM,EAASsM,GAAQ9F,EAAUlS,EAAOiY,EAAYrB,GACpDlL,EAAO2O,QACP6D,EAAQviB,KAAK+P,EACf,CACA,SAASjS,EAAI8kB,GACX,OAAOA,EAAgBplB,GAAQmlB,IAAYA,EAAO7F,UAAWyF,CAC/D,CA4BA,SAASG,EAAUvU,EAAUyU,GAC3B9kB,EAAI8kB,GAAevjB,QAAQ8O,EAC7B,CACA,SAAS3Q,EAAOqlB,GACd,OAAON,EAAQ/kB,OA11BS,mBA01BSqlB,EAAWA,EAAWF,GAAW9U,GAASgV,GAAWpT,GAAQkT,EAAO1H,MAAO4H,GAAW3Y,GAAS+D,GAAQ4U,GAAUF,EAAOte,OAC3J,CA2BA,MAAO,CACLqa,MA/FF,WACE8D,IACArL,EAAGjC,GAAeiN,GAClBhL,EAAG,CAAC5C,GAAeW,KAAgB,KACjCqN,EAAQhlB,MAAK,CAACulB,EAAQH,IAAWG,EAAOze,MAAQse,EAAOte,OAAM,GAEjE,EA0FE2S,UACAmB,OA3EF,WACEuK,GAAWC,IACTA,EAAOxK,QAAQ,GAEnB,EAwEEsK,WACA3kB,MACAilB,MAjEF,SAAevH,GACb,MAAQwH,WAAYC,GAAgBjD,EAC9B3b,EAAQ4e,EAAYC,QAAQ1H,GAC5B2H,EAAOF,EAAYG,WAAa,EAAI/lB,EAAQgmB,QAClD,OAAO7lB,GAAQmlB,GAAWrP,GAAQqP,EAAOte,MAAOA,EAAOA,EAAQ8e,EAAO,IACxE,EA6DEG,MA5DF,SAAejf,GACb,OAAO7G,EAAO6G,GAAO,EACvB,EA2DEuK,IA1DF,SAAaR,EAAO/J,GAClBhF,GAAQ+O,GAAQ6M,IAId,GAHIpN,GAASoN,KACXA,EAAQxJ,GAAUwJ,IAEhBlN,GAAckN,GAAQ,CACxB,MAAMlZ,EAAMyf,EAAOnd,GACnBtC,EAAMsN,GAAO4L,EAAOlZ,GAAOiN,GAAO0S,EAAMzG,GACxClM,GAASkM,EAAO5d,EAAQiM,QAAQ2R,OAqBtC,SAAuBtM,EAAK1Q,GAC1B,MAAMslB,EAASpR,GAASxD,EAAK,OAC7B,IAAI,OAAExO,GAAWojB,EACbpjB,EACFojB,EAAOlkB,SAASmkB,IACdpU,EAAKoU,EAAK,cAAc,OACfrjB,GACLlC,GACF,GACA,IAGJA,GAEJ,CAlCMwlB,CAAcxI,EAAO3D,EAAKlI,KAAK,KAAMgG,IACvC,KAEFkC,EAAKpC,GACP,EA8CE3D,OA7CF,SAAkBsR,GAChBtR,GAAO/T,EAAOqlB,GAASplB,KAAKklB,GAAWA,EAAO1H,SAC9C3D,EAAKpC,GACP,EA2CE7V,QAASqjB,EACTllB,SACA+F,MAtCF,SAAgBwN,EAAMtU,EAAOkiB,GAC3B+D,GAAWC,IACTA,EAAOpf,MAAMwN,EAAMtU,EAAOkiB,EAAa,GAE3C,EAmCE+E,UAnBF,SAAmBd,GACjB,OAAOA,EAAgBpB,EAAOrhB,OAASoiB,EAAQpiB,MACjD,EAkBEwjB,SAjBF,WACE,OAAOpB,EAAQpiB,OAAS9C,EAAQgmB,OAClC,EAiBF,EA4rCEO,OA3rCF,SAAgBrN,EAAUyJ,EAAa3iB,GACrC,MAAM,GAAE8Z,EAAE,KAAE/H,EAAI,KAAEkI,GAAShB,GAAeC,IAClC+L,OAAQC,GAAYvC,GACtB,QAAErD,GAAYqD,EAAYpD,WAC1B,KAAElf,EAAI,MAAE2gB,EAAK,KAAEqD,GAAS1B,EAAY5B,UACpC,MAAEkF,GAAUf,EAClB,IAAIsB,EACAC,EAOJ,SAAStB,IACPsB,EAAW,KACXD,EAAWxmB,EAAQikB,YAAczI,GACjCtV,GAAM7F,EAAM,WAAY4U,GAAKjV,EAAQqI,QACrCnC,GAAM8a,EAAO1B,EAAQ,eAAgBoH,GAAW,IAChDxgB,GAAM8a,EAAO1B,EAAQ,gBAAiBoH,GAAW,IACjDC,GACF,CACA,SAASA,IACP,MAAMC,EAAU3S,GAAK5T,GAChBomB,GAAYA,EAASpe,QAAUue,EAAQve,OAASoe,EAASI,SAAWD,EAAQC,SAC/E3gB,GAAM8a,EAAO,SAgBjB,WACE,IAAI6F,EAAS,GACTL,IACFK,EAASC,IACT5R,GAAO2R,EAAQ,qCACfA,EAAS,QAAQA,OAAYH,GAAW,QAAYA,GAAW,OAEjE,OAAOG,CACT,CAxB2BE,IACvB7B,EAAQhf,MAAMoZ,EAAQ,eAAgBrK,GAAKjV,EAAQgnB,MACnD9B,EAAQhf,MAAM,SA2BTlG,EAAQ2b,UAAY,GAAK1G,GAAKjV,EAAQ4b,cAAgB4K,EAAW,GAAKS,OA3BjC,MAO5C/B,EAAQhf,MAAM,SAuBP+O,GAAKjV,EAAQknB,eAAiBV,EAAWxmB,EAAQmnB,WAAa,GAAKF,IAAiBH,MAvB/C,MAAM,GALhDL,EAAWG,EACX3M,EAAKjC,IAET,CAIA,SAAS0O,EAAW/T,GAClB,MAAM,QAAEyU,GAAYpnB,EACd0T,EAAO4L,EAAQ3M,EAAQ,QAAU,QACvC,OAAOyU,GAAWnS,GAAKmS,EAAQ1T,KAAUrD,GAAS+W,GAAW,EAAIA,KAAa,KAChF,CAUA,SAASN,IACP,OAAO7R,GAAKjV,EAAQ6mB,QAAU5S,GAAKoQ,GAAMhc,MAAQrI,EAAQqnB,YAC3D,CAOA,SAASJ,IACP,MAAMD,EAAM/R,GAAKjV,EAAQgnB,KACzB,MAAO,aAAaA,GAAO,MAAMA,QAAUhnB,EAAQgmB,SAAW,IAAIgB,GAAO,MAAMA,MACjF,CAQA,SAASM,EAAUtgB,EAAOugB,GACxB,MAAMjC,EAASW,EAAMjf,GACrB,GAAIse,EAAQ,CACV,MAAM3S,EAAQsB,GAAKqR,EAAO1H,OAAO0B,EAAQ,UACnCvD,EAAO9H,GAAKoQ,GAAM/E,EAAQ,SAChC,OAAOvJ,GAAIpD,EAAQoJ,IAASwL,EAAa,EAAIC,IAC/C,CACA,OAAO,CACT,CAIA,SAASA,IACP,MAAMlC,EAASW,EAAM,GACrB,OAAOX,GAAUmC,WAAWvhB,GAAMof,EAAO1H,MAAO0B,EAAQ,kBAAoB,CAC9E,CAIA,MAAO,CACL+B,MAlFF,WACE8D,IACApT,EAAKjR,OAAQ,cAAewa,GAASrB,EAAKlI,KAAKzO,KAAMyU,MACrD+B,EAAG,CAAChC,GAAeD,IAAgBsN,GACnCrL,EAAG/B,GAAc4O,EACnB,EA8EEe,SA5BF,WACE,OAAOzT,GAAKoQ,GAAM/E,EAAQ,SAC5B,EA2BEqI,UA1BF,SAAmB3gB,EAAOugB,GACxB,MAAMjC,EAASW,EAAMjf,GAAS,GAC9B,OAAOse,EAASrR,GAAKqR,EAAO1H,OAAO0B,EAAQ,WAAaiI,EAAa,EAAIC,KAAY,CACvF,EAwBEI,WAdF,WACE,OAAON,EAAUpO,EAASpW,OAAS,GAAG,GAAQwkB,GAAW,GAAG,EAC9D,EAaEA,YACAO,WATF,SAAoBlV,GAClB,OAAO8U,WAAWvhB,GAAM8a,EAAO1B,EAAQ,WAAU3M,EAAQ,QAAU,YAAe,CACpF,EASF,EA2lCEmV,OA1lCF,SAAgB5O,EAAUyJ,EAAa3iB,GACrC,MAAM,GAAE8Z,EAAE,KAAEG,GAAShB,GAAeC,IAC5B6H,SAAUgH,EAAW9C,OAAQC,GAAYvC,GAC3C,QAAErD,GAAYqD,EAAYpD,UAC1ByI,EAAS,GACf,IAAIC,EAMJ,SAAS9C,KACH8C,EAAaC,QAkBnB,SAAkBrN,GAChB,MAAMsJ,EAASe,EAAQzkB,MAAMpC,SACvB,OAAEyE,GAAWqhB,EACnB,GAAIrhB,EAAQ,CACV,KAAOqhB,EAAOrhB,OAAS+X,GACrBlY,GAAKwhB,EAAQA,GAEfxhB,GAAKwhB,EAAO9lB,OAAOwc,GAAQsJ,EAAO9lB,MAAM,EAAGwc,IAAQ7Y,SAAQ,CAACsjB,EAAQte,KAClE,MAAMmhB,EAASnhB,EAAQ6T,EACjBgD,EAOZ,SAAmBvM,EAAKtK,GACtB,MAAM6W,EAAQvM,EAAI8W,WAAU,GAG5B,OAFA1W,GAASmM,EAAO7d,EAAQiM,QAAQ4R,OAChCA,EAAMnc,GAAK,GAAGwX,EAAS7Y,KAAKqB,WAAWsV,GAAIhQ,EAAQ,KAC5C6W,CACT,CAZoBwK,CAAU/C,EAAO1H,MAAO5W,GACtCmhB,EAASnW,GAAO6L,EAAOsG,EAAO,GAAGvG,OAASjM,GAAOoW,EAAU1D,KAAMxG,GACjElb,GAAKqlB,EAAQnK,GACbqH,EAAQE,SAASvH,EAAO7W,EAAQ6T,GAASsN,EAAS,EAAIrlB,GAASwiB,EAAOte,MAAM,GAEhF,CACF,CAhCIshB,CAASL,GACThO,EAAKlC,IAET,CACA,SAAS4B,IACPzF,GAAO8T,GACP7X,GAAM6X,EACR,CACA,SAASlD,IACPnL,IACAwL,GACF,CACA,SAASzkB,IACHunB,EAAaC,KACfjO,EAAKpC,GAET,CAuBA,SAASqQ,IACP,IAAMF,OAAQO,GAAYvoB,EAC1B,GAAKkZ,EAAS2H,GAAG/B,KAEV,IAAKyJ,EAAS,CACnB,MAAMC,EAn4BZ,SAAiB5W,EAAQxS,GACvB,GAAIoR,GAASpR,GAAQ,CACnB,MAAMqpB,EAAMnV,GAAO,MAAO,CAAEpN,MAAO,UAAU9G,0BAAgCwS,GAC7ExS,EAAQ6U,GAAKwU,GAAKpgB,MAClB6L,GAAOuU,EACT,CACA,OAAOrpB,CACT,CA43BwBspB,CAAQX,EAAU1D,KAAMrkB,EAAQsf,EAAQ,gBAG1DiJ,GAFmBC,GAAa1S,GAAK7B,GAAK8T,EAAU/G,OAAO1B,EAAQ,UAAYkJ,IAC/CxoB,EAAQsf,EAAQ,eAAiBpG,EAASpW,QAAU9C,EAAQgmB,UACrEhmB,EAAQ+kB,MAAQ/kB,EAAQ2oB,eAAiB,GAAK,EAAI,EAC3E,OANEJ,EAAU,EAOZ,OAAOA,CACT,CACA,MAAO,CACLlH,MA3DF,WACE8D,IACArL,EAAGjC,GAAeiN,GAClBhL,EAAG,CAAChC,GAAeC,IAAerX,EACpC,EAwDEiZ,UAEJ,EAuhCEiP,KAthCF,SAAc1P,EAAUyJ,EAAa3iB,GACnC,MAAM,GAAE8Z,EAAE,KAAEG,GAAShB,GAAeC,IAC9B,UAAEyO,EAAS,WAAEE,EAAU,UAAEP,EAAS,SAAEI,EAAQ,WAAEE,GAAejF,EAAY4D,QACzE,QAAEjH,EAAO,OAAE4E,GAAWvB,EAAYpD,WAClC,KAAE8E,EAAI,MAAErD,GAAU2B,EAAY5B,SACpC,IAAI8H,EAQJ,SAASC,IACFC,MACHpG,EAAYqG,OAAO/N,SACnBgO,EAAK/P,EAASlS,OACdiT,EAAKhC,IAET,CAsBA,SAASgR,EAAKjiB,GACZkiB,EAAUC,EAAWniB,GAAO,GAC9B,CACA,SAASkiB,EAAUE,EAAUC,GAC3B,IAAKnQ,EAAS2H,GAAG9B,IAAO,CACtB,MAAMuK,EAAcD,EAAcD,EAKtC,SAAcA,GACZ,GAAIlQ,EAAS2H,GAAG/B,IAAO,CACrB,MAAM4C,EAAOwC,EAAOkF,EAAWG,KACzBC,EAAcC,GAAc,EAAOL,IAAa1H,EAAO,EACvDgI,EAAcD,GAAc,EAAML,IAAa1H,EAAO,GACxD8H,GAAeE,KACjBN,EAAWO,EAAMP,EAAUM,GAE/B,CACA,OAAON,CACT,CAfiDQ,CAAKR,GAClD/E,EAAKne,MAAM2jB,UAAY,YAAYvK,EAAQ,QAAQgK,OACnDF,IAAaE,GAAerP,EAAK3C,GACnC,CACF,CAYA,SAASqS,EAAMP,EAAUU,GACvB,MAAMC,EAASX,EAAWY,EAASF,GAC7B7mB,EAAO2kB,IAEb,OADAwB,GAAYlF,EAAOjhB,GAAQ6S,GAAKC,GAAIgU,GAAU9mB,IAAS,KAAO6mB,EAAY,GAAK,EAEjF,CAqBA,SAASX,EAAWniB,EAAOijB,GACzB,MAAMb,EAAWlF,EAAOoD,EAAUtgB,EAAQ,GAa5C,SAAgBA,GACd,MAAQkjB,MAAOC,GAAWnqB,EAC1B,MAAkB,WAAXmqB,GAAuBzC,IAAaC,EAAU3gB,GAAO,IAAS,GAAKmjB,EAASxC,EAAU3gB,IAAU,CACzG,CAhBiDojB,CAAOpjB,IACtD,OAAOijB,EAMT,SAAcb,GACRppB,EAAQqqB,WAAanR,EAAS2H,GAAGhC,MACnCuK,EAAW5S,GAAM4S,EAAU,EAAGlF,EAAO0D,IAAeF,OAEtD,OAAO0B,CACT,CAXoBlb,CAAKkb,GAAYA,CACrC,CACA,SAASG,IACP,MAAMxN,EAAOuD,EAAQ,QACrB,OAAOrL,GAAKoQ,GAAMtI,GAAQ9H,GAAK+M,GAAOjF,GAAQmI,EAAO2D,GAAW,GAClE,CAWA,SAASmC,EAASlE,GAChB,OAAOqD,EAAWrD,EAAOnD,EAAYgD,WAAW2E,SAAW,IAAKtqB,EAAQqqB,UAC1E,CACA,SAAStB,IACP,OAAO7P,EAASlV,MAAM6c,GAjrCb,IAirC2B7gB,EAAQuqB,iBAC9C,CACA,SAASd,EAAc3D,EAAMsD,GAC3BA,EAAW3Y,GAAY2Y,GAAYG,IAAgBH,EACnD,MAAMI,GAAuB,IAAT1D,GAAiB5B,EAAOkF,GAAYlF,EAAO8F,GAAS,IAClEN,GAAuB,IAAT5D,GAAkB5B,EAAOkF,GAAYlF,EAAO8F,GAAS,IACzE,OAAOR,GAAeE,CACxB,CACA,MAAO,CACLrI,MAjHF,WACEwH,EAAalG,EAAYkG,WACzB/O,EAAG,CAAC5C,GAAec,GAAeF,GAAeD,IAAgBiR,EACnE,EA+GEnP,QA9GF,WACE1G,GAAgBoR,EAAM,QACxB,EA6GEmG,KArGF,SAAcC,EAAMzjB,EAAOgX,EAAMpd,GAC/B,IAAKmoB,IAAU,CACb,MAAM,IAAExoB,GAAQ2Y,EAASlV,MACnBolB,EAAWG,IACbkB,IAASzjB,IACX6hB,EAAW5N,SACXiO,EAAUS,EAAMP,EAAUqB,EAAOzjB,IAAQ,IAE3CzG,EA/lCO,GAgmCP0Z,EAAK7C,GAAYpQ,EAAOgX,EAAMyM,GAC9B5B,EAAW1X,MAAMnK,GAAO,KACtBzG,EAnmCG,GAomCH0Z,EAAK5C,GAAarQ,EAAOgX,EAAMyM,GACL,SAAtBzqB,EAAQqqB,WAAwBI,IAASzM,GAAQoL,IAAaG,IAChE5G,EAAYgD,WAAW+E,GAAGD,EAAOzM,EAAO,IAAM,KAAK,EAAOpd,GAE1DA,GAAYA,GACd,GAEJ,CACF,EAkFEqoB,OACAC,YACAS,QACA1O,OAzDF,WACEiO,EAAUK,KACVV,EAAW5N,QACb,EAuDE4K,QAtDF,SAAiBuD,GACf,MAAMlE,EAAUvC,EAAYsC,OAAOxkB,MACnC,IAAIuG,EAAQ,EACR2jB,EAAcC,IAClB,IAAK,IAAI/X,EAAI,EAAGA,EAAIqS,EAAQpiB,OAAQ+P,IAAK,CACvC,MAAMoM,EAAaiG,EAAQrS,GAAG7L,MACxBya,EAAW1L,GAAIoT,EAAWlK,GAAY,GAAQmK,GACpD,KAAI3H,GAAYkJ,GAId,MAHAA,EAAclJ,EACdza,EAAQiY,CAIZ,CACA,OAAOjY,CACT,EAwCEmiB,aACAI,cACAS,WACAjB,SACAU,gBAEJ,EAk5BE9D,WAj5BF,SAAoBzM,EAAUyJ,EAAa3iB,GACzC,MAAM,GAAE8Z,GAAOb,GAAeC,IACtB0P,KAAMiC,GAAUlI,GAClB,YAAE4G,EAAW,SAAES,GAAaa,GAC5B,SAAEvE,EAAQ,UAAED,GAAc1D,EAAYsC,OACtC6F,EAAS5R,EAAS2H,GAAG/B,IACrBiM,EAAU7R,EAAS2H,GAAGhC,IAC5B,IAEImM,EACAC,EACAjF,EAJAzF,EAAYvgB,EAAQmR,OAAS,EAC7B+Z,EAAY3K,EAQhB,SAAS4E,IACP6F,EAAa3E,GAAU,GACvB4E,EAAUjrB,EAAQirB,QAClBjF,EAAUhmB,EAAQgmB,QAClBzF,EAAY/J,GAAM+J,EAAW,EAAGyK,EAAa,EAC/C,CAaA,SAASG,EAAO7B,EAAa8B,EAAUC,EAAMvlB,EAAUlF,GACrD,MAAM6pB,EAAOW,EAAW9B,EAAcgC,EAAOhC,GAC7C3G,EAAYqG,OAAOmC,OAAOC,GAAYC,EAAOR,EAAM1B,WAAWsB,GAAM,GAAQnB,EAAaxjB,GAAU,KACjGylB,EAASV,EAAMhF,QAAQgF,EAAMtB,gBAC7B3oB,GAAYA,GAAU,GAE1B,CAiBA,SAAS4qB,EAAQlC,GACf,OAAOmC,GAAY,EAAOnC,EAC5B,CACA,SAASoC,EAAQpC,GACf,OAAOmC,GAAY,EAAMnC,EAC3B,CACA,SAASmC,EAAYzN,EAAMsL,GACzB,MAAMpT,EAAS+U,IAAYlF,IAAa,EAAIC,GACtCyE,EAAOkB,EAAiBpL,EAAYrK,GAAU8H,GAAQ,EAAI,GAAIuC,GACpE,OAAc,IAAVkK,IAAeM,IA3iCKpgB,EA4iCE4e,IA5iCC9S,EA4iCcuT,GAAUhM,GA5iCrB4N,EA4iC4B,EA3iCrD7V,GAAIpL,EAAI8L,GAAKmV,GA+iCXtC,EAAcmB,EAAOb,EAAKa,GAHtBzM,EAAO,EAAIsM,IA7iC1B,IAA4B3f,EAAG8L,EAAGmV,CAijChC,CACA,SAASD,EAAiBlB,EAAMjJ,EAAMqK,GACpC,GAAIvF,IAAY,CACd,MAAMlV,EAAMkZ,IACRG,EAAO,GAAKA,EAAOrZ,EAEnBqZ,EADExU,GAAQ,EAAGwU,EAAMjJ,GAAM,IAASvL,GAAQ7E,EAAKoQ,EAAMiJ,GAAM,GACpD5E,EAAQiG,EAAOrB,IAElBK,EACKG,GAAWlF,IAAa0E,EAAOA,EAAO,IAAMO,EAAahF,GAAWA,GAAWgF,EAC7EhrB,EAAQob,OACVqP,EAAO,EAAIrZ,EAAM,GAEhB,EAIPya,GAAepB,IAASjJ,IAC3BiJ,EAAOQ,EAAUR,EAAO5E,EAAQiG,EAAOtK,IAASiJ,EAAOjJ,GAAQ,EAAI,IAGzE,MACEiJ,GAAQ,EAEV,OAAOA,CACT,CACA,SAASH,IACP,IAAIlZ,EAAM4Z,EAAahF,EAIvB,OAHID,KAAc+E,GAAUG,KAC1B7Z,EAAM4Z,EAAa,GAEdpV,GAAIxE,EAAK,EAClB,CACA,SAASwY,EAAK5iB,GACZ,OAAI8jB,EACKxE,IAAatf,EAAQgkB,GAAchkB,EAAQ,EAAIgkB,EAAa,IAAM,EAEpEhkB,CACT,CACA,SAAS6e,EAAQ1H,GACf,OAAO3H,GAAMuP,IAAa5H,EAAO6H,EAAU7H,EAAM,EAAGmM,IACtD,CACA,SAASwB,EAAO9kB,GAKd,OAJK+e,MACH/e,EAAQiP,GAAQjP,EAAOgkB,EAAahF,EAASgF,EAAa,GAAKA,EAAa,EAAIhkB,EAChFA,EAAQ6O,GAAM7O,EAAQgf,IAEjBhf,CACT,CACA,SAASskB,EAAOhC,GACd,MAAMyC,EAAUlB,EAAMhF,QAAQyD,GAC9B,OAAOyB,EAAUvU,GAAMuV,EAAS,EAAGzB,KAAYyB,CACjD,CACA,SAASR,EAASvkB,GACZA,IAAUuZ,IACZ2K,EAAY3K,EACZA,EAAYvZ,EAEhB,CAIA,SAAS+e,IACP,OAAQtV,GAAYzQ,EAAQkqB,QAAUlqB,EAAQof,YAChD,CACA,MAAO,CACLiC,MA9HF,WACE8D,IACArL,EAAG,CAAChC,GAAeD,IAAgBsN,EAAMH,EAC3C,EA4HE0F,GArHF,SAAYsB,EAASC,EAAgBrrB,GACnC,MAAM6pB,EAkBR,SAAeuB,GACb,IAAIhlB,EAAQuZ,EACZ,GAAI/P,GAASwb,GAAU,CACrB,MAAO,CAAEE,EAAWhW,GAAU8V,EAAQG,MAAM,oBAAsB,GAChD,MAAdD,GAAmC,MAAdA,EACvBllB,EAAQ2kB,EAAiBpL,IAAa,GAAG2L,KAAahW,GAAU,IAAKqK,GAAW,GACzD,MAAd2L,EACTllB,EAAQkP,EAAS2P,GAAS3P,GAAUsV,GAAQ,GACrB,MAAdU,IACTllB,EAAQ0kB,GAAQ,GAEpB,MACE1kB,EAAQ8jB,EAASkB,EAAUxV,GAAMwV,EAAS,EAAG1B,KAE/C,OAAOtjB,CACT,CAjCe0c,CAAMsI,GACnB,GAAIhsB,EAAQosB,UACVjB,EAAOV,GAAM,GAAM,EAAMzqB,EAAQqsB,MAAOzrB,OACnC,CACL,MAAMoG,EAAQ4iB,EAAKa,GACfzjB,GAAS,IAAM6jB,EAAM9B,WAAakD,GAAkBjlB,IAAUuZ,KAChEgL,EAASvkB,GACT6jB,EAAML,KAAKC,EAAMzjB,EAAOkkB,EAAWtqB,GAEvC,CACF,EA2GEuqB,SACAK,UACAE,UACAD,cACAnB,SACAiB,WACAe,SAfF,SAAkBtO,GAChB,OAAOA,EAAOkN,EAAY3K,CAC5B,EAcEsF,UACAiG,SACAR,SACAvF,WAEJ,EA0vBEwG,OAtvBF,SAAgBrT,EAAUyJ,EAAa3iB,GACrC,MAAM,GAAE8Z,EAAE,KAAE/H,EAAI,KAAEkI,GAAShB,GAAeC,IACpC,QAAEjN,EAAO,KAAE8T,GAAS/f,GAClB+gB,SAAUgH,EAAWpC,WAAYC,GAAgBjD,EACzD,IAGI6J,EAHAC,EAAU1E,EAAUjK,OACpBE,EAAO+J,EAAU/J,KACjBC,EAAO8J,EAAU9J,KAErB,MAAMH,EAAS,CAAC,EAKhB,SAASqH,IAMP,GALInlB,EAAQ8d,SACLE,GAASC,IAqChBwO,EAAUnZ,GAAO,MAAOrH,EAAQ6R,QAChCE,EAAO0O,GAAY,GACnBzO,EAAOyO,GAAY,GACnBF,GAAU,EACV7a,GAAO8a,EAAS,CAACzO,EAAMC,IACvBjM,GAAOya,EAASla,GAAyB,WAAnBvS,EAAQ8d,QAAuBiK,EAAU3D,QAAUlL,EAAS7Y,SAtC9E2d,GAAQC,EACV,GAAKH,EAAOE,KASVxW,GAAQilB,GAA4B,IAAnBzsB,EAAQ8d,OAAmB,OAAS,QATrC,CAChB,MAAM,GAAEpc,GAAOqmB,EAAU/G,MACzB5N,GAAa4K,EAAMM,GAAe5c,GAClC0R,GAAa6K,EAAMK,GAAe5c,GAClCoc,EAAOE,KAAOA,EACdF,EAAOG,KAAOA,EAgBpB,WACE,MAAM,GAAEyM,GAAO9E,EACf9L,EAAG,CAAC5C,GAAeG,GAAaS,GAAeD,GAAeS,IAAiBwC,GAC/E/I,EAAKkM,EAAM,SAAS,KAClByM,EAAG,KAAK,EAAK,IAEf3Y,EAAKiM,EAAM,SAAS,KAClB0M,EAAG,KAAK,EAAK,GAEjB,CAxBMiC,GACA1S,EAAKzB,GAAsBwF,EAAMC,EACnC,CAIJ,CA2BA,SAASyO,EAAYE,GAEnB,OAAOxY,GADO,kBAAkBnI,EAAQ8R,SAAS6O,EAAQ3gB,EAAQ+R,KAAO/R,EAAQgS,mHAA8Hje,EAAQ6sB,WA9D/M,8FAgET,CACA,SAAS/R,IACP,MAAM9T,EAAQkS,EAASlS,MACjBkkB,EAAYtF,EAAY8F,UACxBoB,EAAYlH,EAAY4F,UACxBuB,EAAY7B,GAAa,GAAKlkB,EAAQkkB,EAAYnL,EAAKiN,KAAOjN,EAAK/B,KACnEiP,EAAYH,GAAa,GAAK9lB,EAAQ8lB,EAAY/M,EAAKmN,MAAQnN,EAAK9B,KAC1ED,EAAKmP,SAAWjC,EAAY,EAC5BjN,EAAKkP,SAAWL,EAAY,EAC5B1Z,GAAa4K,EAAMQ,GAAYuO,GAC/B3Z,GAAa6K,EAAMO,GAAYyO,GAC/BhT,EAAKxB,GAAsBuF,EAAMC,EAAMiN,EAAW4B,EACpD,CACA,MAAO,CACLhP,SACAuD,MApEF,WACE8D,IACArL,EAAGhC,GAAeqN,EACpB,EAkEExL,QA7CF,WACM6S,EACFtY,GAAOuY,IAEPxZ,GAAgB+K,EAAMY,IACtB3L,GAAgBgL,EAAMW,IAE1B,EAwCF,EAuqBEwO,SArqBF,SAAkBlU,EAAUyJ,EAAa3iB,GACvC,MAAM,GAAE8Z,EAAE,KAAE/H,EAAI,KAAEkI,GAAShB,GAAeC,GACpCkB,EAAWD,GAAgBna,EAAQoa,SAAUlB,EAASwR,GAAG3Y,KAAKmH,EAAU,MAkE9E,SAAgByB,GACd,MAAM,IAAE6J,GAAQuD,EAChBvD,GAAOte,GAAMse,EAAK,QAAmB,IAAP7J,EAAH,KAC3BV,EAAKnB,GAAwB6B,EAC/B,KArEM,SAAEU,GAAajB,GACb2G,SAAUgH,GAAcpF,EAChC,IAAI0K,EACAC,EACA1S,EAYJ,SAAS2S,EAAWC,GAClB,MAAM9Z,EAAO8Z,EAAW,QAAU,OAC5BC,EAAS1F,EAAUrU,GACrB+Z,IACFra,GAAaqa,EAAQnP,GAAeyJ,EAAU/G,MAAMtf,IACpD0R,GAAaqa,EAAQjP,GAAYxe,EAAQ+f,KAAKrM,IAC9C3B,EAAK0b,EAAQ,QAASD,EAAWxS,EAAQyJ,GAE7C,CAkBA,SAASA,IACHpJ,KAAcsH,EAAYsC,OAAOqB,aACnClM,EAASjJ,OAAOnR,EAAQ0tB,eACxBJ,EAAUD,EAAUzS,GAAS,EAC7BX,EAAKpB,IAET,CACA,SAASmC,EAAM2S,GAAS,GACjBtS,MACHjB,EAASY,QACTf,EAAKlB,KAEP6B,EAAS+S,CACX,CACA,SAASC,IACFhT,IACEyS,GAAYC,EAGftS,GAAM,GAFNyJ,IAKN,CAMA,SAASoJ,IACP,MAAMvI,EAAS3C,EAAYsC,OAAOgB,MAAM/M,EAASlS,OACjDoT,EAAS7Z,IAAI+kB,IAAWxR,GAAawR,EAAO1H,MAAO+D,KAA4B3hB,EAAQoa,SACzF,CACA,MAAO,CACLiH,MAtEF,WACE,MAAM,SAAEiD,GAAatkB,EACjBskB,IACFiJ,GAAW,GACXA,GAAW,GAgBf,WACE,MAAM,KAAEltB,GAAS0nB,EACb/nB,EAAQ8tB,cACV/b,EAAK1R,EAAM,yBAA0BoU,IACnC4Y,EAAqB,eAAX5Y,EAAElW,KACZqvB,GAAY,IAGZ5tB,EAAQ+tB,cACVhc,EAAK1R,EAAM,oBAAqBoU,IAC9B6Y,EAAqB,YAAX7Y,EAAElW,KACZqvB,GAAY,IAGhB9T,EAAG,CAAC1C,GAAYiB,GAAcR,IAAgBuC,EAASgB,QACvDtB,EAAG1C,GAAYyW,EACjB,CA/BIlB,GACiB,UAAbrI,GACFG,IAGN,EA6DE9K,QAASS,EAASa,OAClBwJ,OACAzJ,QACAK,WAEJ,EAklBE2S,MAjlBF,SAAe9U,EAAUyJ,EAAa3iB,GACpC,MAAM,GAAE8Z,GAAOb,GAAeC,GAY9B,SAASqC,EAAM0S,GACbtL,EAAYsC,OAAOjjB,SAASsjB,IAC1B,MAAMa,EAAM5T,GAAM+S,EAAO5F,WAAa4F,EAAO1H,MAAO,OAChDuI,GAAOA,EAAI+H,KACbC,EAAOF,EAAO9H,EAAKb,EACrB,GAEJ,CACA,SAAS6I,EAAOF,EAAO9H,EAAKb,GAC1BA,EAAOpf,MAAM,aAAc+nB,EAAQ,+BAA+B9H,EAAI+H,QAAU,IAAI,GACpF1mB,GAAQ2e,EAAK8H,EAAQ,OAAS,GAChC,CACA,MAAO,CACL5M,MAxBF,WACMrhB,EAAQiuB,QACVnU,EAAGd,IAAuB,CAACmN,EAAKb,KAC9B6I,GAAO,EAAMhI,EAAKb,EAAO,IAE3BxL,EAAG,CAAC5C,GAAeY,GAAeD,IAAgB0D,EAAMxJ,KAAK,MAAM,IAEvE,EAkBE4H,QAjBF,WACE4B,GAAM,EACR,EAiBF,EAqjBEyN,OA/iBF,SAAgB9P,EAAUyJ,EAAa3iB,GACrC,MAAM,GAAE8Z,EAAE,KAAEG,GAAShB,GAAeC,IAC5B0P,KAAMiC,GAAUlI,GAClB,YAAE4G,EAAW,SAAES,EAAQ,cAAEP,GAAkBoB,EACjD,IAAIzQ,EACAgU,EAKJ,SAASjD,EAAO7B,EAAaxjB,EAAUlF,EAAUytB,GAC/C,MAAMld,EAAQoY,IACd,IAAI+E,EAAW,EA+BjB,IAAyB7M,EA9BvB3b,EAAWA,IA8BY2b,EA9BgB1L,GAAIuT,EAAcnY,GA+BlDyE,GAAI6L,EA9CK,IACD,MAef2M,EAAiBxtB,EACjB2tB,IACAnU,EAAWD,GAAgBrU,EAAU0oB,GAAa7T,IAChD,MAAMyO,EAAWG,IAEX7H,GADSvQ,GAASmY,EAAcnY,GAuC1C,SAAgBsd,GACd,MAAM,WAAEC,GAAe1uB,EACvB,OAAO0uB,EAAaA,EAAWD,GAAK,EAAIzY,KAAK2Y,IAAI,EAAIF,EAAG,EAC1D,CA1CmDG,CAAOjU,GAC/B4O,KAAiB+E,EAY5C,IAAgBxE,EAXZe,EAAM3B,UAAUE,EAAW1H,GACvBxI,EAAS2H,GAAGhC,MAAWwP,GAAsB5E,MAC/C6E,GAzBc,GA0BVvY,GAAI2L,GA5BY,KAoCVoI,EAPDL,GAAc,GAQ3B0B,EAAOnB,GAAUF,GApCC,IAoC4B,MAAM,IANlD,GACC,GACH7P,EAAK5B,IACL+B,EAASjJ,OACX,CAIA,SAASqd,IACP,MAAMpF,EAAWG,IACXviB,EAAQ6jB,EAAMhF,QAAQuD,GACvBnT,GAAQjP,EAAO,EAAGkS,EAASpW,OAAS,IACvC+nB,EAAM3B,UAAU2B,EAAMlB,MAAMP,EAAUpiB,EAAQ,IAAI,GAEpDonB,GAAkBA,IAClBnU,EAAK3B,GACP,CAIA,SAASiW,IACHnU,GACFA,EAASa,QAEb,CACA,SAASA,IACHb,IAAaA,EAASiB,aACxBkT,IACAC,IAEJ,CAKA,MAAO,CACLnN,MAxDF,WACEvH,EAAG1C,GAAYmX,GACfzU,EAAG,CAAChC,GAAeD,IAAgBoD,EACrC,EAsDEtB,QAAS4U,EACTpD,SACAlQ,SAEJ,EA6eE4T,KAteF,SAAc3V,EAAUyJ,EAAa3iB,GACnC,MAAM,GAAE8Z,EAAE,KAAEG,EAAI,KAAElI,EAAI,OAAEqH,GAAWH,GAAeC,IAC1C0P,KAAMiC,EAAO7B,OAAQ8F,EAASnJ,WAAYC,GAAgBjD,GAC5D,MAAE3B,GAAU2B,EAAY5B,UACxB,QAAEzB,EAAO,OAAE4E,GAAWvB,EAAYpD,WAClC,YAAEgK,EAAW,cAAEE,GAAkBoB,EACvC,IAAIkE,EACAC,EACAC,EACAC,EACAC,EACAC,EAEAC,EACAlC,EACAhsB,EAHAmuB,GAAc,EAYlB,SAASnK,IACP,MAAM,KAAEJ,GAAS/kB,EACjBuvB,GAASxK,GACToK,EAAkB,SAATpK,CACX,CACA,SAASyK,EAAc/a,GACrB,IAAK0Y,EAAU,CACb,MAAM,OAAEsC,GAAWzvB,EACb0vB,EAAUC,EAAalb,GACvBmb,GAAeH,IAAWrd,GAAQqC,EAAEtT,OAAQsuB,GAClDJ,GAAiB,GACbO,IAAgBF,GAAYjb,EAAEgZ,SAC3B5C,EAAM9B,SAUTvU,GAAQC,GAAG,IATXtT,EAASuuB,EAAU1O,EAAQlgB,OAC3BmuB,EAAgB,KAChBC,EAAY,KACZnd,EAAK5Q,EAAQ4gB,GAAqB8N,EAAejO,IACjD7P,EAAK5Q,EAAQ6gB,GAAmB8N,EAAalO,IAC7CiJ,EAAM5P,SACN6T,EAAQ7T,SACR8U,EAAKtb,IAKX,CACF,CACA,SAASob,EAAcpb,GAKrB,GAJKya,GACHjV,EAAK/B,IAEPgX,EAAYza,EACRA,EAAEub,WAAY,CAChB,MAAMtO,EAAOuO,EAAQxb,GAAKwb,EAAQjB,GAClC,GAAII,EAAU,CACZvE,EAAM3B,UAAU6F,EAgFtB,SAAmBrN,GACjB,OAAOA,GAAQ4N,GAAepW,EAAS2H,GAAGhC,IAjJ/B,EAiJmD,EAChE,CAlFqCqR,CAAUxO,IACzC,MAAMyO,EAAUC,EAAO3b,GAAK2b,EAAOpB,GAhExB,IAiELqB,EAAWf,KAAiBA,EAAc7F,MAC5C0G,GAAWE,IACbN,EAAKtb,GAEPwF,EAAK9B,IACLkX,GAAiB,EACjB7a,GAAQC,EACV,KAAO,CACL,IAAM6b,iBAAkBxuB,GAAe9B,EACvC8B,EAAauO,GAASvO,GAAcA,EAAa,CAAEyuB,MAAO,EAAGC,OAAQ1uB,GAAc,IACnFstB,EAAWrZ,GAAI2L,IAASiO,EAAalb,GAAK3S,EAAW0uB,MAAQ1uB,EAAWyuB,OACpEE,KACFjc,GAAQC,EAEZ,CACF,CACF,CACA,SAASqb,EAAYrb,GACnB2E,EAAOjY,EAAQ4gB,GAAqB8N,GACpCzW,EAAOjY,EAAQ6gB,GAAmB8N,GAClC,MAAM,MAAE9oB,GAAUkS,EAClB,GAAIgW,EAAW,CACb,GAAIE,GAAY3a,EAAEub,YAAcS,IAAqB,CACnD,MAAMC,EAkCZ,SAAyBjc,GACvB,GAAIyE,EAAS2H,GAAG/B,MAAUwQ,EAAa,CACrC,MAAMqB,EAAO3B,IAAcE,GAAaD,GAAiBD,EACnD4B,EAAYX,EAAQf,GAAae,EAAQU,GACzCE,EAAWT,EAAO3b,GAAK2b,EAAOO,GAC9BG,EAAUV,EAAO3b,GAAK2b,EAAOlB,GA/HtB,IAgIb,GAAI2B,GAAYC,EACd,OAAOF,EAAYC,CAEvB,CACA,OAAO,CACT,CA7CuBE,CAAgBtc,GAC3B6U,EA6CZ,SAA4BoH,GAC1B,OAAOnH,IAAgB7S,GAAKga,GAAY/a,GAAII,GAAI2a,IAAa1wB,EAAQgxB,YAAc,KAAM7B,EAASvE,IAAWjI,EAAY4D,OAAOmB,YAAc1nB,EAAQ2oB,eAAiB,GACzK,CA/C0BsI,CAAmBP,GACnCvB,EACFvJ,EAAYuF,OAAO7B,GACVpQ,EAAS2H,GAAG9B,IACrB6G,EAAY8E,GAAG1jB,EAAQkd,EAAOxN,GAAKga,KAEnC9K,EAAY8E,GAAG9E,EAAY0F,OAAOhC,IAAc,GAElD9U,GAAQC,EACV,CACAwF,EAAK7B,GACP,MACO+W,GAAU5F,MAAkBsB,EAAM1B,WAAWniB,IAChD4e,EAAY8E,GAAG1jB,GAAO,GAG1BooB,GAAW,CACb,CACA,SAASW,EAAKtb,GACZwa,EAAgBD,EAChBA,EAAYva,EACZsa,EAAexF,GACjB,CACA,SAAS5c,EAAQ8H,IACV0Y,GAAYkC,GACf7a,GAAQC,GAAG,EAEf,CACA,SAASgc,IAGP,OAFc1a,GAAIka,EAAQf,GAAae,EAAQjB,IACjCjZ,GAAIka,EAAQf,GAAW,GAAQe,EAAQjB,GAAW,GAElE,CAgBA,SAASiB,EAAQxb,EAAGyc,GAClB,OAAQvB,EAAalb,GAAKA,EAAE0c,QAAQ,GAAK1c,GAAG,OAAO6K,EAAQ4R,EAAa,IAAM,OAChF,CACA,SAASd,EAAO3b,GACd,OAAOA,EAAE2c,SACX,CAIA,SAASzB,EAAalb,GACpB,MAA6B,oBAAf4c,YAA8B5c,aAAa4c,UAC3D,CAIA,SAAS9B,EAAQnwB,GACf+tB,EAAW/tB,CACb,CACA,MAAO,CACLiiB,MAxIF,WACEtP,EAAKiP,EAAOe,GAAqBxM,GAAMqM,IACvC7P,EAAKiP,EAAOgB,GAAmBzM,GAAMqM,IACrC7P,EAAKiP,EAtBiB,uBAsBWwO,EAAe5N,IAChD7P,EAAKiP,EAAO,QAASrU,EAAS,CAAEmV,SAAS,IACzC/P,EAAKiP,EAAO,YAAaxM,IACzBsF,EAAG,CAAC5C,GAAeY,IAAgBqN,EACrC,EAkIEoK,UACA+B,WATF,WACE,OAAOlC,CACT,EASF,EA2UEmC,SAxUF,SAAkBrY,EAAUyJ,EAAa3iB,GACvC,MAAM,GAAE8Z,EAAE,KAAE/H,EAAI,OAAEqH,GAAWH,GAAeC,IACtC,KAAE7Y,GAAS6Y,GACX,QAAEoG,GAAYqD,EAAYpD,UAChC,IAAIpe,EACAgsB,EAMJ,SAAShI,IACP,MAAM,SAAEqM,GAAaxxB,EACjBwxB,IACe,YAAbA,GACFrwB,EAASd,EACT+S,GAAa/S,EAAMqe,GAAW,IAE9Bvd,EAASL,OAEXiR,EAAK5Q,EAAQ+gB,GAAgBuP,GAEjC,CACA,SAAS9X,IACPP,EAAOjY,EAAQ+gB,IACXxR,GAAcvP,IAChB8R,GAAgB9R,EAAQud,GAE5B,CAIA,SAAS4B,IACP,MAAMoR,EAAYvE,EAClBA,GAAW,EACX9X,IAAS,KACP8X,EAAWuE,CAAS,GAExB,CACA,SAASC,IACPhY,IACAwL,GACF,CACA,SAASsM,EAAUhd,GACjB,IAAK0Y,EAAU,CACb,MAAM,IAAE1uB,GAAQgW,EACVmd,EAAgB/kB,GAASoV,GAAexjB,GAAO,QAAQA,IAAQA,EACjEmzB,IAAkBtS,EAAQ,aAC5BpG,EAASwR,GAAG,KACHkH,IAAkBtS,EAAQ,eACnCpG,EAASwR,GAAG,IAEhB,CACF,CACA,MAAO,CACLrJ,MAjDF,WACE8D,IACArL,EAAGhC,GAAe6Z,GAClB7X,EAAG1C,GAAYkJ,EACjB,EA8CE3G,UACA4V,QA5BF,SAAiBnwB,GACf+tB,EAAW/tB,CACb,EA4BF,EA8QEyyB,SA1QF,SAAkB3Y,EAAUyJ,EAAa3iB,GACvC,MAAM,GAAE8Z,EAAE,IAAEE,EAAG,KAAEjI,EAAI,KAAEkI,GAAShB,GAAeC,GACzC4Y,EAAoC,eAArB9xB,EAAQ+xB,SAC7B,IAAI7L,EAAS,GACTlf,EAAQ,EAUZ,SAAS8d,IACPnL,IACAwL,GACF,CACA,SAASA,IACPxC,EAAYsC,OAAOjjB,SAASgwB,IAC1Bld,GAASkd,EAAOpU,MAAOyE,IAAgBrgB,SAASiwB,IAC9C,MAAM/D,EAAMpa,GAAame,EAAM9P,IACzB+P,EAASpe,GAAame,EAAM7P,IAClC,GAAI8L,IAAQ+D,EAAK/D,KAAOgE,IAAWD,EAAKC,OAAQ,CAC9C,MAAMjsB,EAAYjG,EAAQiM,QAAQmS,QAC5BxM,EAASqgB,EAAKE,cACdC,EAAW7f,GAAMX,EAAQ,IAAI3L,MAAgBqN,GAAO,OAAQrN,EAAW2L,GAC7EwB,GAAagf,EAAU/T,GAAM,gBAC7B6H,EAAOvjB,KAAK,CAAEsvB,OAAMD,SAAQ9D,MAAKgE,SAAQE,cACxCH,EAAK/D,KAAO1mB,GAAQyqB,EAAM,OAC7B,IACA,IAEAH,GACFO,GAEJ,CACA,SAAS1Y,IACP3S,EAAQ,EACRkf,EAAS,EACX,CACA,SAASxlB,IACPwlB,EAASA,EAAO/lB,QAAQyZ,IACtB,MAAM6H,EAAWzhB,EAAQgmB,UAAYhmB,EAAQsyB,cAAgB,GAAK,GAAK,EACvE,OAAI1Y,EAAKoY,OAAOzQ,SAASrI,EAASlS,MAAOya,IAChC8Q,EAAK3Y,EAEH,IAERsM,EAAOpjB,QACVkX,EAAI3C,GAER,CACA,SAASkb,EAAK3Y,GACZ,MAAM,KAAEqY,GAASrY,EACjBlI,GAASkI,EAAKoY,OAAOpU,MAAOH,IAC5B1L,EAAKkgB,EAAM,cAAexd,KAU5B,SAAgBmF,EAAM4Y,GACpB,MAAM,OAAER,GAAWpY,EACnB5E,GAAYgd,EAAOpU,MAAOH,IACrB+U,IACHte,GAAO0F,EAAKwY,UACZ5qB,GAAQoS,EAAKqY,KAAM,IACnBhY,EAAKjB,GAAuBY,EAAKqY,KAAMD,GACvC/X,EAAKlC,KAEH+Z,GACFO,GAEJ,CArBII,CAAO7Y,EAAiB,UAAXnF,EAAElW,KAAiB,IAElC,CAAC,MAAO,UAAUyD,SAASwP,IACrBoI,EAAKpI,KACP4B,GAAa6e,EAAMzgB,EAAMoI,EAAKpI,IAC9ByB,GAAgBgf,EAAe,QAATzgB,EAAiB2Q,GAAqBC,IAC9D,GAEJ,CAcA,SAASiQ,IACHrrB,EAAQkf,EAAOpjB,QACjByvB,EAAKrM,EAAOlf,KAEhB,CACA,MAAO,CACLqa,MAhFF,WACMrhB,EAAQ+xB,WACV5M,IACArL,EAAGjC,GAAeiN,GACbgN,GACHhY,EAAG,CAAC5C,GAAeW,GAAeR,GAAaiB,IAAiB5X,GAGtE,EAyEEiZ,UAEJ,EAmLE+Y,WAlLF,SAAoBxZ,EAAUyJ,EAAa3iB,GACzC,MAAM,GAAE8Z,EAAE,KAAEG,EAAI,KAAElI,EAAI,OAAEqH,GAAWH,GAAeC,IAC1C+L,OAAQC,EAASnE,SAAUgH,EAAWpC,WAAYC,GAAgBjD,GACpE,SAAEoD,EAAQ,SAAEuG,GAAa1G,EACzB7U,EAAQ,GACd,IAAIsT,EAMJ,SAASc,IACPxL,IACI3Z,EAAQke,YAAcgH,EAAQoB,cAgBpC,WACE,MAAM,OAAExjB,GAAWoW,GACb,QAAEjN,EAAO,KAAE8T,EAAI,QAAEiG,GAAYhmB,EAC7B4R,EAAgC,WAAvB5R,EAAQke,YAA2B6J,EAAU3D,QAAU2D,EAAU1nB,KAC1EylB,EAAOC,IAAajjB,EAASgT,GAAKhT,EAASkjB,GACjD3B,EAAO/Q,GAAO,KAAMrH,EAAQiS,WAAYtM,GACxC,IAAK,IAAIiB,EAAI,EAAGA,EAAIiT,EAAMjT,IAAK,CAC7B,MAAM8f,EAAKrf,GAAO,KAAM,KAAM+Q,GACxBoJ,EAASna,GAAO,SAAU,CAAEsf,MAAO3mB,EAAQkS,KAAM5f,KAAM,UAAYo0B,GACnE1S,EAAWiF,EAAQQ,MAAM7S,GAAGzS,KAAKklB,GAAWA,EAAO1H,MAAMlc,KACzDsK,GAAQ+Z,KAAcC,EAAU,EAAIjG,EAAK8S,MAAQ9S,EAAKC,OAC5DjO,EAAK0b,EAAQ,QAAS9gB,EAAQoF,KAAK,KAAMc,IACzCO,GAAaqa,EAAQnP,GAAe2B,EAASzT,KAAK,MAClD4G,GAAaqa,EAAQjP,GAAY7H,GAAO3K,EAAM6G,EAAI,IAClD9B,EAAMpO,KAAK,CAAEgwB,KAAIlF,SAAQtP,KAAMtL,GACjC,CACF,CA/BIigB,GACA7Y,EAAKvB,GAA0B,CAAE2L,OAAMtT,SAASkV,EAAM/M,EAASlS,QAC/D8T,IAEJ,CACA,SAASnB,IACH0K,IACFnQ,GAAOmQ,GACPtT,EAAM/O,SAASihB,IACb7J,EAAO6J,EAAKwK,OAAQ,QAAQ,IAE9Btd,GAAMY,GACNsT,EAAO,KAEX,CAkBA,SAAS1X,EAAQwR,GACfyH,EAAY8E,GAAG,IAAIvM,KAAQ,GAAM,KAC/B,MAAMmH,EAASJ,EAAQe,MAAML,EAAYC,QAAQ1H,IA/zDvD,IAAe7M,EAg0DTgU,KAh0DShU,EAg0DOgU,EAAO1H,OA/zDZ,WAAKtM,EAAe,aAAOA,EAAI4Y,MAAM,CAAE6I,eAAe,IA+zDpC,GAEjC,CACA,SAAS9M,EAAMjf,GACb,OAAO+J,EAAM6U,EAAYkG,OAAO9kB,GAClC,CACA,SAAS8T,IACP,MAAMkD,EAAOiI,EAAMqG,GAAS,IACtBnL,EAAO8E,EAAMqG,KACftO,IACFhJ,GAAYgJ,EAAKyP,OAAQpQ,IACzBpK,GAAgB+K,EAAKyP,OAAQlP,KAE3B4C,IACFzP,GAASyP,EAAKsM,OAAQpQ,IACtBjK,GAAa+N,EAAKsM,OAAQlP,IAAc,IAE1CtE,EAAKtB,GAA0B,CAAE0L,OAAMtT,SAASiN,EAAMmD,EACxD,CACA,MAAO,CACLpQ,QACAsQ,MAhEF,WACE8D,IACArL,EAAG,CAAChC,GAAeD,IAAgBsN,GACnCrL,EAAG,CAAC1C,GAAYkB,IAAiBwC,EACnC,EA6DEnB,UACAsM,QACAnL,SAEJ,EAwGEkY,KAtGF,SAAc9Z,EAAUyJ,EAAa3iB,GACnC,MAAM,KAAEqkB,GAAS1B,EAAY5B,SACvBzH,EAAS,GACf,SAAS+H,IACPnI,EAASgH,QAAQle,SAASb,IAkB5B,IAAcgf,GAjBThf,EAAO8xB,WAiBE9S,EAjBehf,EAAOgf,OAkBlC,CAACjH,EAAUiH,GAAQne,SAASH,IAC1B,MAAMuK,EAAQ6M,GAAepX,GACvBV,EAASU,IAAaqX,EAAWiH,EAASjH,EAChD9M,EAAM0N,GAAG1C,IAAY,CAACpQ,EAAOgX,EAAMyM,KACjCtpB,EAAOupB,GAAGvpB,EAAO0f,GAAG/B,IAAQ2L,EAAOzjB,EAAM,IAE3CsS,EAAO3W,KAAKyJ,EAAM,IAxBqB,IAErCpM,EAAQof,cAyBd,WACE,MAAMhT,EAAQ6M,GAAeC,IACvB,GAAEY,GAAO1N,EACf0N,EAAGvC,GAAa5K,GAChBmN,EAAGlC,GAAqB6Z,GACxB3X,EAAG,CAAC5C,GAAeY,IAAgBgD,GACnC1H,GAAaiR,EAAMhG,GAAM,QACzB/E,EAAO3W,KAAKyJ,GACZA,EAAM6N,KAAKrB,GAA0BM,EAASgH,QAChD,CAjCIgT,EAEJ,CACA,SAASvZ,IACP1G,GAAgBoR,EAAMzF,IACtBtF,EAAOtX,SAASoK,IACdA,EAAMuN,SAAS,IAEjBxJ,GAAMmJ,EACR,CAyBA,SAASwB,IACP1H,GAAaiR,EAAM1F,GAAkB3e,EAAQikB,YAAczI,GAAM,aAAe,KAClF,CACA,SAAS7O,EAAQ2Y,GACfpM,EAASwR,GAAGpF,EAAOte,MACrB,CACA,SAASyqB,EAAUnM,EAAQ7Q,GACrB5H,GAASyV,GAAc7N,EAAEhW,OAC3BkO,EAAQ2Y,GACR9Q,GAAQC,GAEZ,CACA,MAAO,CACL4M,QACA1H,UACAwZ,QAvCF,WACExZ,IACA0H,GACF,EAsCF,EA4CE+R,MA3CF,SAAela,EAAUyJ,EAAa3iB,GACpC,MAAM,KAAE+R,GAASkH,GAAeC,GAMhC,SAASma,EAAQ5e,GACf,GAAIA,EAAEub,WAAY,CAChB,MAAM,OAAEsD,GAAW7e,EACnB,GAAI6e,EAAQ,CACV,MAAMxJ,EAAYwJ,EAAS,EAC3Bpa,EAASwR,GAAGZ,EAAY,IAAM,KAKpC,SAAuBA,GACrB,OAAQ9pB,EAAQuzB,cAAgBra,EAASlV,MAAM6c,GA3kEtC,KA2kEuG,IAAnD8B,EAAYgD,WAAW8F,YAAY3B,EAClG,CANM0J,CAAc1J,IAActV,GAAQC,EACtC,CACF,CACF,CAIA,MAAO,CACL4M,MAnBF,WACMrhB,EAAQyzB,OACV1hB,EAAK4Q,EAAY5B,SAASC,MAAO,QAASqS,EAASzR,GAEvD,EAiBF,IAgCI8R,GAAW,CACbn1B,KAAM,QACN8tB,MAAO,IACP9B,mBAAmB,EACnBvE,QAAS,EACT5E,aAAa,EACbtD,QAAQ,EACRI,YAAY,EACZ9D,SAAU,IACV0T,cAAc,EACdC,cAAc,EACdL,eAAe,EACf8D,UAAU,EACV5C,OAAQ,gCACR7J,MAAM,EACNd,UAAW,MACXvD,YAAY,EACZ2J,WAAW,EACX1K,eAAgB,6CAChB1T,QAAS0R,GACToC,KA9BS,CACT/B,KAAM,iBACNC,KAAM,aACNiP,MAAO,oBACPF,KAAM,mBACNhN,OAAQ,iBACR6S,MAAO,gBACPpO,KAAM,iBACNzJ,MAAO,mBAwBT,SAAS,GAAK9B,EAAUyJ,EAAa3iB,GACnC,MAAM,GAAE8Z,GAAOb,GAAeC,GAgB9B,MAAO,CACLmI,MAhBF,WACEvH,EAAG,CAAC5C,GAAeW,KAAgB,KACjCxC,IAAS,KACPsN,EAAYsC,OAAO/e,MAAM,aAAc,WAAWlG,EAAQqsB,WAAWrsB,EAAQ4uB,SAAS,GACtF,GAEN,EAWEzd,MAVF,SAAenK,EAAO2sB,GACpB,MAAM,MAAE3S,GAAU2B,EAAY5B,SAC9B7a,GAAM8a,EAAO,SAAU/L,GAAKhB,GAAK+M,GAAO6F,SACxCxR,IAAS,KACPse,IACAztB,GAAM8a,EAAO,SAAU,GAAG,GAE9B,EAIE/F,OAAQ1F,GAEZ,CACA,SAAS,GAAM2D,EAAUyJ,EAAa3iB,GACpC,MAAM,KAAE+R,GAASkH,GAAeC,IACxB0P,KAAMiC,EAAOlF,WAAYC,GAAgBjD,GAC3C,KAAE0B,GAAS1B,EAAY5B,SAC7B,IAAI6S,EAsBJ,SAAS3Y,IACPM,EAAM,GACR,CAYA,SAASA,EAAMsY,GACb3tB,GAAMme,EAAM,aAAcwP,EAC5B,CACA,MAAO,CACLxS,MAvCF,WACEtP,EAAKsS,EAAM,iBAAkB5P,IACvBA,EAAEtT,SAAWkjB,GAAQuP,IACvB3Y,IACA2Y,IACF,GAEJ,EAiCEziB,MAhCF,SAAenK,EAAO2sB,GACpB,MAAMrK,EAAcuB,EAAM1B,WAAWniB,GAAO,GACtCoiB,EAAWyB,EAAMtB,cACjB8C,EAaR,SAAkBrlB,GAChB,MAAM,YAAE8sB,GAAgB9zB,EACxB,GAAIkZ,EAAS2H,GAAGhC,KAAUiV,EAAa,CACrC,MAAM9V,EAAO4H,EAAY0G,UAAS,GAC5Blb,EAAMwU,EAAY0E,SACxB,GAAa,IAATtM,GAAchX,GAASoK,GAAO4M,GAAQ5M,GAAiB,IAAVpK,EAC/C,OAAO8sB,CAEX,CACA,OAAO9zB,EAAQqsB,KACjB,CAvBgB0H,CAAS/sB,GACnB+O,GAAIuT,EAAcF,IAAa,GAAKiD,GAAS,GAC/C9Q,EAAM,aAAa8Q,OAAWrsB,EAAQ4uB,UACtC/D,EAAM3B,UAAUI,GAAa,GAC7BsK,EAAcD,IAEd9I,EAAM5B,KAAKjiB,GACX2sB,IAEJ,EAqBE1Y,SAEJ,CACA,IAAI+Y,GAAU,MACZ,WAAA5wB,CAAYjC,EAAQnB,GAClBsD,KAAK8I,MAn9DT,WACE,IAAI6nB,EAAW,CAAC,EAahB,SAASja,EAAIV,EAAQ7a,GACnB8a,EAAaD,GAAQ,CAAClN,EAAO8nB,KAC3B,MAAMC,EAAgBF,EAAS7nB,GAC/B6nB,EAAS7nB,GAAS+nB,GAAiBA,EAAch0B,QAAQi0B,GAChDA,EAAQC,KAAOD,EAAQC,OAAS51B,EAAMA,GAAO21B,EAAQE,aAAeJ,GAC3E,GAEN,CAcA,SAAS3a,EAAaD,EAAQxI,GAC5BF,GAAQ0I,GAAQ9M,KAAK,KAAK9E,MAAM,KAAK1F,SAASuyB,IAC5C,MAAMC,EAAYD,EAAQ7sB,MAAM,KAChCoJ,EAAS0jB,EAAU,GAAIA,EAAU,GAAG,GAExC,CACA,MAAO,CACL1a,GAxCF,SAAYR,EAAQ1Y,EAAUnC,EAAKsb,EAtPR,IAuPzBR,EAAaD,GAAQ,CAAClN,EAAO8nB,KAC3BD,EAAS7nB,GAAS6nB,EAAS7nB,IAAU,GACrCzJ,GAAKsxB,EAAS7nB,GAAQ,CACpBqoB,OAAQroB,EACRsoB,UAAW9zB,EACX0zB,WAAYJ,EACZS,UAAW5a,EACXsa,KAAM51B,IACLyB,MAAK,CAAC00B,EAAUC,IAAaD,EAASD,UAAYE,EAASF,WAAU,GAE5E,EA8BE3a,MACAH,MAtBF,SAAepb,GACbgU,GAAOwhB,GAAU,CAACE,EAAe/nB,KAC/B4N,EAAI5N,EAAO3N,EAAI,GAEnB,EAmBEwb,KAlBF,SAAc7N,IACX6nB,EAAS7nB,IAAU,IAAIpK,SAASoyB,IAC/BA,EAAQM,UAAUnZ,MAAM6Y,EAAS/1B,GAAMyU,UAAW,GAAG,GAEzD,EAeE6G,QAdF,WACEsa,EAAW,CAAC,CACd,EAcF,CAm6DiBa,GACbxxB,KAAK6b,WAAa,CAAC,EACnB7b,KAAKU,MApxDT,SAAe+wB,GACb,IAAI/wB,EAAQ+wB,EAOZ,MAAO,CAAEx0B,IANT,SAAanB,GACX4E,EAAQ5E,CACV,EAIcyhB,GAHd,SAAYmU,GACV,OAAOnoB,GAAS+D,GAAQokB,GAAShxB,EACnC,EAEF,CA2wDiBixB,CArtEH,GAstEV3xB,KAAK4c,QAAU,GACf5c,KAAK4xB,SAAW,CAAC,EACjB5xB,KAAK6xB,YAAc,CAAC,EACpB,MAAM90B,EAAOmQ,GAASrP,GAAUyT,GAAMpB,SAAUrS,GAAUA,EAC1D+T,GAAO7U,EAAM,GAAGA,iBAChBiD,KAAKjD,KAAOA,EACZ2S,GAAM0gB,GAAUM,GAAQoB,UACxBpiB,GAAMA,GAAM1P,KAAK4xB,SAAUxB,IAAW1zB,GAAW,CAAC,EACpD,CACA,KAAAqhB,CAAMgU,EAAYxM,GAChB,MAAM,MAAE7kB,EAAOmb,WAAYwD,GAAgBrf,KAC3C4R,GAAOlR,EAAM6c,GAAG,CAjuEN,EAIE,IA6tE2B,oBACvC7c,EAAMzD,IAluEI,GAmuEV+C,KAAKgyB,YAAc3S,EACnBrf,KAAKiyB,YAAc1M,GAAcvlB,KAAKiyB,cAAgBjyB,KAAKud,GAAG9B,IAAQ,GAAO,IAC7Ezb,KAAK6xB,YAAcE,GAAc/xB,KAAK6xB,YActC,OAZA1iB,GADqB,GAAO,CAAC,EAAG8P,GAAuBjf,KAAK6xB,YAAa,CAAEtM,WAAYvlB,KAAKiyB,eACvE,CAACC,EAAW/2B,KAC/B,MAAMg3B,EAAYD,EAAUlyB,KAAMqf,EAAarf,KAAK4xB,UACpDvS,EAAYlkB,GAAOg3B,EACnBA,EAAUjS,OAASiS,EAAUjS,OAAO,IAEtC/Q,GAAOkQ,GAAc8S,IACnBA,EAAUpU,OAASoU,EAAUpU,OAAO,IAEtC/d,KAAK2W,KAAK/C,IACVxF,GAASpO,KAAKjD,KA7qDM,kBA8qDpB2D,EAAMzD,IA/uEC,GAgvEP+C,KAAK2W,KAAK9C,IACH7T,IACT,CACA,IAAAoyB,CAAKvV,GAOH,OANA7c,KAAK4c,QAAQvd,KAAK,CAAEwd,WACpBA,EAAOD,QAAQvd,KAAK,CAAEwd,OAAQ7c,KAAM2vB,UAAU,IAC1C3vB,KAAKU,MAAM6c,GAtvER,KAuvELvd,KAAKgyB,YAAYtC,KAAKG,UACtBhT,EAAOhB,WAAW6T,KAAKG,WAElB7vB,IACT,CACA,EAAAonB,CAAGsB,GAED,OADA1oB,KAAKgyB,YAAY3P,WAAW+E,GAAGsB,GACxB1oB,IACT,CACA,EAAAwW,CAAGR,EAAQ1Y,GAET,OADA0C,KAAK8I,MAAM0N,GAAGR,EAAQ1Y,EAAU,KAtvEF,IAuvEvB0C,IACT,CACA,GAAA0W,CAAIV,GAEF,OADAhW,KAAK8I,MAAM4N,IAAIV,GACRhW,IACT,CACA,IAAA2W,CAAK7N,GAEH,OADA9I,KAAK8I,MAAM6N,KAAK7N,KAAU/N,GAAMyU,UAAW,IACpCxP,IACT,CACA,GAAAiO,CAAI4S,EAAQnd,GAEV,OADA1D,KAAKgyB,YAAYrQ,OAAO1T,IAAI4S,EAAQnd,GAC7B1D,IACT,CACA,MAAA4Q,CAAOsR,GAEL,OADAliB,KAAKgyB,YAAYrQ,OAAO/Q,OAAOsR,GACxBliB,IACT,CACA,EAAAud,CAAGtiB,GACD,OAAO+E,KAAK4xB,SAAS32B,OAASA,CAChC,CACA,OAAAumB,GAEE,OADAxhB,KAAK2W,KAAKpC,IACHvU,IACT,CACA,OAAAqW,CAAQqJ,GAAa,GACnB,MAAM,MAAE5W,EAAK,MAAEpI,GAAUV,KAYzB,OAXIU,EAAM6c,GA/xEA,GAgyERzU,EAAM0N,GAAG3C,GAAa7T,KAAKqW,QAAQ5H,KAAKzO,KAAM0f,GAAa1f,OAE3DmP,GAAOnP,KAAKgyB,aAAcG,IACxBA,EAAU9b,SAAW8b,EAAU9b,QAAQqJ,EAAW,IACjD,GACH5W,EAAM6N,KAAK1B,IACXnM,EAAMuN,UACNqJ,GAAc7S,GAAM7M,KAAK4c,SACzBlc,EAAMzD,IApyEI,IAsyEL+C,IACT,CACA,WAAItD,GACF,OAAOsD,KAAK4xB,QACd,CACA,WAAIl1B,CAAQA,GACV,MAAM,SAAEk1B,GAAa5xB,KACrB0P,GAAMkiB,EAAUl1B,GACXsD,KAAKU,MAAM6c,GAlzEN,IAmzERvd,KAAK2W,KAAKnC,GAAeod,EAE7B,CACA,UAAIpyB,GACF,OAAOQ,KAAKgyB,YAAYrQ,OAAOoB,WAAU,EAC3C,CACA,SAAIrf,GACF,OAAO1D,KAAKgyB,YAAY3P,WAAW2G,UACrC,GAEEqJ,GAAS3B,GACb2B,GAAOP,SAAW,CAAC,EACnBO,GAAO9lB,OAASA,GAMhB,IAAI+lB,GAAS,CACX,CAAC1e,GAAe,aAChB,CAACC,GAAa,WACd,CAACC,GAAY,UACb,CAACC,GAAa,WACd,CAACE,GAAa,WACd,CAACC,GAAc,YACf,CAACC,GAAgB,cACjB,CAACC,GAAe,aAChB,CAACC,GAAc,YACf,CAACE,GAAe,aAChB,CAACC,GAAe,aAChB,CAACC,GAAc,YACf,CAACC,GAAe,aAChB,CAACE,GAAY,UACb,CAACC,GAAgB,cACjB,CAACC,GAAe,aAChB,CAACC,GAAc,YACf,CAACC,GAAgB,cACjB,CAACC,GAAe,aAChB,CAACC,GAAsB,mBACvB,CAACC,GAAsB,mBACvB,CAACC,GAA0B,uBAC3B,CAACC,GAA0B,uBAC3B,CAACC,GAA0B,uBAC3B,CAACC,GAAqB,kBACtB,CAACC,GAAwB,qBACzB,CAACC,GAAsB,mBACvB,CAACC,GAAuB,qBAI1B,SAAS6c,MAAc5pB,GACrB,OAAOA,EAAQ9L,OAAO21B,SAAStpB,KAAK,IACtC,CAGA,SAASupB,GAAUzlB,GACjB,OAAmB,OAAZA,GAAuC,iBAAZA,CACpC,CAGA,SAAS0lB,GAAYC,EAAUC,GAC7B,GAAI3zB,MAAMC,QAAQyzB,IAAa1zB,MAAMC,QAAQ0zB,GAC3C,OAAOD,EAASnzB,SAAWozB,EAASpzB,SAAWmzB,EAAS7zB,MAAK,CAACkP,EAAKtK,KAAWgvB,GAAY1kB,EAAK4kB,EAASlvB,MAE1G,GAAI+uB,GAAUE,IAAaF,GAAUG,GAAW,CAC9C,MAAMC,EAAQn3B,OAAOiB,KAAKg2B,GACpBG,EAAQp3B,OAAOiB,KAAKi2B,GAC1B,OAAOC,EAAMrzB,SAAWszB,EAAMtzB,SAAWqzB,EAAM/zB,MAAM3D,IAC3CO,OAAOiS,UAAUolB,eAAe13B,KAAKu3B,EAAUz3B,KAASu3B,GAAYC,EAASx3B,GAAMy3B,EAASz3B,KAExG,CACA,OAAOw3B,IAAaC,CACtB,CAwBA,SAASI,GAAO5jB,EAAQK,GACtB,MAAMwjB,EAAS7jB,EAUf,OA3BF,SAAiBA,EAAQ5B,GACvB,GAAI4B,EAAQ,CACV,MAAMzS,EAAOjB,OAAOiB,KAAKyS,GACzB,IAAK,IAAIG,EAAI,EAAGA,EAAI5S,EAAK6C,OAAQ+P,IAAK,CACpC,MAAMpU,EAAMwB,EAAK4S,GACjB,GAAY,cAARpU,IACiC,IAA/BqS,EAAS4B,EAAOjU,GAAMA,GACxB,KAGN,CACF,CAEF,CAKE+3B,CAAQzjB,GAAQ,CAAC3T,EAAOX,KAClB8D,MAAMC,QAAQpD,GAChBm3B,EAAO93B,GAAOW,EAAMf,QACX03B,GAAU32B,GACnBm3B,EAAO93B,GAAO63B,GAAOP,GAAUQ,EAAO93B,IAAQ83B,EAAO93B,GAAO,CAAC,EAAGW,GAEhEm3B,EAAO93B,GAAOW,CAChB,IAEKm3B,CACT,CAGA,IAAIE,GAAU,cAAc,YAC1B,WAAArzB,GACEC,SAASyP,WACTxP,KAAKozB,UAAY,cACjBpzB,KAAK6gB,OAAS,EAChB,CACA,iBAAAlgB,GACE,MAAM,QAAEjE,EAAO,WAAEq1B,EAAU,WAAExM,GAAevlB,KAAK9E,OAC3C,QAAEuG,GAAYzB,KAAKozB,UACrB3xB,IACFzB,KAAK6c,OAAS,IAAIwV,GAAO5wB,EAAS/E,GAClCsD,KAAKyO,KAAKzO,KAAK6c,QACf7c,KAAK6c,OAAOkB,MAAMgU,EAAYxM,GAC9BvlB,KAAKtD,QAAUs2B,GAAO,CAAC,EAAGt2B,GAAW,CAAC,GACtCsD,KAAK6gB,OAAS7gB,KAAKqzB,YAEvB,CACA,oBAAAryB,GACMhB,KAAK6c,SACP7c,KAAK6c,OAAOxG,UACZrW,KAAK6c,YAAS,GAEhB7c,KAAKtD,aAAU,EACfsD,KAAK6gB,OAAOrhB,OAAS,CACvB,CACA,kBAAAoB,GACE,IAAKZ,KAAK6c,OACR,OAEF,MAAM,QAAEngB,GAAYsD,KAAK9E,MACrBwB,IAAYg2B,GAAY1yB,KAAKtD,QAASA,KACxCsD,KAAK6c,OAAOngB,QAAUA,EACtBsD,KAAKtD,QAAUs2B,GAAO,CAAC,EAAGt2B,IAE5B,MAAM42B,EAAYtzB,KAAKqzB,YAtE3B,IAAwBE,EAAQC,EAARD,EAuEAvzB,KAAK6gB,OAvEG2S,EAuEKF,GAtE5BC,EAAO/zB,SAAWg0B,EAAOh0B,QAAW+zB,EAAOz0B,MAAK,CAACkP,EAAKtK,IAAUsK,IAAQwlB,EAAO9vB,QAuElF1D,KAAK6c,OAAO2E,UACZxhB,KAAK6gB,OAASyS,EAElB,CACA,IAAAlB,CAAKvV,GACH,IAAIje,EACkB,OAArBA,EAAKoB,KAAK6c,SAA2Bje,EAAGwzB,KAAKvV,EAChD,CACA,EAAAuK,CAAGsB,GACD,IAAI9pB,EACkB,OAArBA,EAAKoB,KAAK6c,SAA2Bje,EAAGwoB,GAAGsB,EAC9C,CACA,SAAA2K,GACE,IAAIz0B,EACJ,GAAIoB,KAAK6c,OAAQ,CACf,MAAMtO,EAAsD,OAAzC3P,EAAKoB,KAAK6c,OAAOhB,WAAW4B,eAAoB,EAAS7e,EAAGmiB,KAAKxgB,SACpF,OAAOgO,GAAatP,MAAM0O,UAAU5S,MAAMM,KAAKkT,IAAc,EAC/D,CACA,MAAO,EACT,CACA,IAAAE,CAAKoO,GACHyV,GAAO5zB,SAAQ,EAAEoK,EAAOoF,MACtB,MAAM4iB,EAAU9wB,KAAK9E,MAAMgT,GACJ,mBAAZ4iB,GACTjU,EAAOrG,GAAG1N,GAAO,IAAI2qB,KACnB3C,EAAQjU,KAAW4W,EAAK,GAE5B,GAEJ,CACA,WAAAC,GACE,OAAuB,gBAAoB,MAAO,CAChD/wB,UAAW,iBACM,gBAAoB,KAAM,CAC3CA,UAAW,gBACV3C,KAAK9E,MAAMqF,UAChB,CACA,MAAAY,GACE,MAAM,GACJ/C,EAAE,UACFuE,EAAS,iBACTgxB,EAAgB,oBAChBC,EAAmB,oBACnBC,EAAmB,gBACnBC,EAAkB,OAAM,iBACxBC,EAAmB,QAAO,eAC1BC,GACEh0B,KAAK9E,MACT,OAAuB,gBAAoB,MAAO,CAChDkD,KACAuE,UAAW4vB,GAAW,SAAU5vB,GAChCvB,IAAKpB,KAAKozB,WACTO,EAAmC,gBAAoB,MAAO,CAC/DhxB,UAAW,kBACV3C,KAAK0zB,eAAiB1zB,KAAK0zB,cAAeE,GAAuC,gBAAoB,MAAO,CAC7GjxB,UAAW,oBACM,gBAAoB,MAAO,CAC5CA,UAAW,2BACRkxB,GAAuC,gBAAoB,MAAO,CACrElxB,UAAW,oBACM,gBAAoB,SAAU,CAC/CA,UAAW,gBACVmxB,GAAkC,gBAAoB,SAAU,CACjEnxB,UAAW,iBACVoxB,IAAoBC,GAAkBA,IAC3C,GAKEC,GAAc,EAAG1zB,SAAUgO,EAAW5L,eAAczH,KAC/B,gBAAqB,KAAM,CAChDyH,UAAW4vB,GAAW,gBAAiB5vB,MACpCzH,GACFqT,GCn9EL,OA3CKrT,GACkBA,EAAMg5B,2BAA2BhuB,aAErC1G,OAAS,EAEtBoF,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,uDACbiC,EAAAA,cAAAA,KAAAA,CAAIjC,UAAU,eAAezH,EAAM6K,aACnCnB,EAAAA,cAACytB,GAAM,CACL31B,QAAS,CACPzB,KAAM,OACNynB,QAAS,EACTqG,MAAO,IACPjS,SAAU,IACVkK,UAAU,EACVhB,YAAa,CACX,IAAK,CACHxF,QAAQ,MAKbtf,EAAMg5B,2BAA2BhuB,aAAapJ,KAC7C,CAACq3B,EAAa/tB,IACZxB,EAAAA,cAACqvB,GAAW,CAAC94B,IAAKiL,GAChBxB,EAAAA,cAACwvB,GAA8BD,QAU3CvvB,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,yBACbiC,EAAAA,cAAAA,KAAAA,CAAIjC,UAAU,eAAezH,EAAM6K,aAClC7K,EAAMg5B,2BAA2BhuB,aAAapJ,KAAI,CAACq3B,EAAa/tB,IAC/DxB,EAAAA,cAACwvB,GAAyB,eAACj5B,IAAKiL,GAAS+tB,OCtCjD,OAVqHj5B,GACnH0J,EAAAA,cAAC0B,EAAe,iBAAKpL,EAAMqL,oBAAyBrL,EAAMsL,UACxD5B,EAAAA,cAACyvB,GAAmC,CAClCtuB,YAAa7K,EAAM6K,YACnBmuB,2BAA4Bh5B,EAAMg5B,2BAClCxtB,cAAexL,EAAMwL,iBCmC3B,OAzBExL,IACI,IAAD,IACH,MAAMo5B,EACJ1vB,EAAAA,cAAAA,EAAAA,SAAAA,KACEA,EAAAA,cAAAA,MAAAA,CAAKjC,UAAS,gBAAkBzH,EAAMq5B,mBAAmBC,cACvD5vB,EAAAA,cAAAA,KAAAA,CAAIjC,UAAU,QAAQzH,EAAMu5B,qBAE9B7vB,EAAAA,cAAC6F,EAAAA,EAAU,CAAC3C,QAAS5M,EAAMw5B,kBAIgB,IAAD,EAA9C,OAAqB,QAArB,EAAIx5B,EAAMy5B,mBAAW,OAAiB,QAAjB,EAAjBz5B,EAAmBgL,aAAa,UAAE,OAAlChL,EAAoC05B,KAEpChwB,EAAAA,cAACqE,EAAAA,KAAI,CACHtG,UAAU,wBACVwG,IAAIC,EAAAA,EAAAA,IAAiD,QAAlC,EAAClO,EAAMy5B,YAAYzuB,aAAa,UAAE,aAAjChL,EAAmC05B,OAEtDN,GAKA1vB,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,WAAW2xB,EAAkB,ECXrD,OAhBKp5B,IACH,MAAM25B,EAAW35B,EAAM45B,uBAAuB5uB,aAE9C,OACEtB,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,qBACZzH,EAAM6K,aAAenB,EAAAA,cAAAA,KAAAA,CAAIjC,UAAU,UAAUzH,EAAM6K,aACpDnB,EAAAA,cAAC6F,EAAAA,EAAU,CAAC9H,UAAU,QAAQmF,QAAS5M,EAAM65B,2BAC7CnwB,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,0BACZkyB,EAAS/3B,KAAI,CAACk4B,EAAS5uB,IACtBxB,EAAAA,cAACqwB,GAAqB,eAAC95B,IAAKiL,GAAS4uB,OAGrC,ECXV,OAX6G95B,GAC3G0J,EAAAA,cAAC0B,EAAe,iBAAKpL,EAAMqL,oBAAyBrL,EAAMsL,UACxD5B,EAAAA,cAACswB,GAA+B,CAC9BnvB,YAAa7K,EAAM6K,YACnBgvB,yBAA0B75B,EAAM65B,yBAChCD,uBAAwB55B,EAAM45B,uBAC9BpuB,cAAexL,EAAMwL,iBCoC3B,OA1BExL,IACI,IAAD,IACH,MAAMi6B,EACJvwB,EAAAA,cAAAA,EAAAA,SAAAA,KACEA,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,qBACbiC,EAAAA,cAAAA,KAAAA,KAAK1J,EAAMk6B,sBACXxwB,EAAAA,cAAC6F,EAAAA,EAAU,CAAC3C,QAAS5M,EAAMm6B,mBAC1Bn6B,EAAMo6B,kBAAoB1wB,EAAAA,cAAAA,SAAAA,CAAQjC,UAAU,2CAA2CzH,EAAMo6B,mBAA8B,OAKjF,IAAD,EAAhD,OAAuB,QAAvB,EAAIp6B,EAAMq6B,qBAAa,OAAiB,QAAjB,EAAnBr6B,EAAqBgL,aAAa,UAAE,OAApChL,EAAsC05B,KAEtChwB,EAAAA,cAACqE,EAAAA,KAAI,CACHtG,UAAS,8BAA+BzH,EAAM0iB,OAAS,SAAW,IAClEzU,IAAIC,EAAAA,EAAAA,IAAmD,QAApC,EAAClO,EAAMq6B,cAAcrvB,aAAa,UAAE,aAAnChL,EAAqC05B,OAExDO,GAKAvwB,EAAAA,cAAAA,MAAAA,CAAKjC,UAAS,cAAezH,EAAM0iB,OAAS,SAAW,KAAOuX,EAAoB,EC/C3F,MAAMK,GAAO,OACPC,GAAQ,QACRC,GAAK,KACLC,GAAO,OAGPC,GAAe,CACjBC,MAAO,GACPC,sBAAsB,EACtBC,cAAe,EACfC,YAAY,EACZC,YAAY,EACZC,cAAe5O,IACf6O,kBAAmB,CAAE5X,SAAS,IAE5BkT,GAAe,CACjB7H,OAAO,EACPwM,QAAS,CAAC,EAAG,GACbvoB,MAAO,EACPwoB,SAAS,EACTC,GAAI,CAAC,EAAG,IAENC,GAAY,YACZC,GAAU,UACVC,GAAW,WACXC,GAAY,YACZC,GAAa,aAanB,SAASC,GAAgBC,EAAKC,GAC1B,GAAc,IAAVA,EACA,OAAOD,EACX,MAAME,EAAkBrkB,KAAKskB,GAAK,IAAOF,EAGzC,MAAO,CAFGD,EAAI,GAAKnkB,KAAKukB,IAAIF,GAAkBF,EAAI,GAAKnkB,KAAKwkB,IAAIH,GACtDF,EAAI,GAAKnkB,KAAKukB,IAAIF,GAAkBF,EAAI,GAAKnkB,KAAKwkB,IAAIH,GAEpE,CACA,SAASI,GAAYl6B,EAAKm6B,GACtB,MAAMC,EAAWvuB,IACb,MAAMsjB,EAAU,YAAatjB,EAEzBsjB,GAAWtjB,EAAM+kB,QAAQruB,OAAS,GAEtCvC,GAAI,CAACyD,EAAOxF,KAEJA,EAAM86B,aAAe5J,IACrBlc,SAAS0G,iBAAiB2f,GAAWvZ,GACrC9M,SAAS0G,iBAAiB4f,GAASc,IAEvC,MAAM,QAAEC,EAAO,QAAEC,GAAYpL,EAAUtjB,EAAM+kB,QAAQ,GAAK/kB,EACpDwtB,EAAKM,GAAgB,CAACW,EAASC,GAAUt8B,EAAM66B,eAGrD,OAFA76B,EAAMu8B,2BACFv8B,EAAMu8B,0BAA0B,CAAE3uB,UAC/BpN,OAAOoI,OAAOpI,OAAOoI,OAAOpI,OAAOoI,OAAO,CAAC,EAAGpD,GAAQ+wB,IAAe,CAAE2E,QAASE,EAAGv7B,QAASu7B,KAAIzoB,MAAO/E,EAAMglB,WAAa,GAAI,GACvI,EAEA9Q,EAAUlU,IACZ7L,GAAI,CAACyD,EAAOxF,KACR,MAAMkxB,EAAU,YAAatjB,EAG7B,GAAIsjB,GAAWtjB,EAAM+kB,QAAQruB,OAAS,EAClC,OAAOkB,EAGX,GAAIoI,EAAMglB,UAAYptB,EAAMmN,MAAQ3S,EAAMg7B,cACtC,OAAOx1B,EAAM21B,QAAU36B,OAAOoI,OAAOpI,OAAOoI,OAAO,CAAC,EAAGpD,GAAQ,CAAE21B,SAAS,IAAW31B,EAEzF,MAAM,QAAE62B,EAAO,QAAEC,GAAYpL,EAAUtjB,EAAM+kB,QAAQ,GAAK/kB,GACnDzB,EAAG8L,GAAKyjB,GAAgB,CAACW,EAASC,GAAUt8B,EAAM66B,eACnD2B,EAASrwB,EAAI3G,EAAM41B,GAAG,GACtBtG,EAAS7c,EAAIzS,EAAM41B,GAAG,GACtBqB,EAAOjlB,KAAKD,IAAIilB,GAChBE,EAAOllB,KAAKD,IAAIud,GAChBhyB,GAAQ8K,EAAMglB,WAAa,GAAKptB,EAAMmN,MACtCuf,EAAW1a,KAAKmlB,KAAKF,EAAOA,EAAOC,EAAOA,IAAS55B,GAAQ,GAC3D85B,EAAO,CAACJ,GAAU15B,GAAQ,GAAIgyB,GAAUhyB,GAAQ,IAChD+5B,EA5DlB,SAAsBJ,EAAMC,EAAMF,EAAQ1H,GACtC,OAAI2H,EAAOC,EACHF,EAAS,EACFjC,GAEJD,GAEFxF,EAAS,EACP2F,GAEJD,EACX,CAiDwBsC,CAAaL,EAAMC,EAAMF,EAAQ1H,GAEvC6F,EAA+B,iBAAhB36B,EAAM26B,MACrB36B,EAAM26B,MACN36B,EAAM26B,MAAMkC,EAAIE,gBACdrC,GAAaC,MACrB,GAAI8B,EAAO9B,GAAS+B,EAAO/B,IAAUn1B,EAAM21B,QACvC,OAAO31B,EACX,MAAMw3B,EAAY,CACdP,OACAC,OACAF,SACA1H,SACA+H,MACAjvB,QACA8gB,MAAOlpB,EAAMkpB,MACbwM,QAAS11B,EAAM01B,QACfhJ,WACA0K,QAGJI,EAAUtO,OAAS1uB,EAAMi9B,cAAgBj9B,EAAMi9B,aAAaD,GAE5Dh9B,EAAMk9B,WAAal9B,EAAMk9B,UAAUF,GAGnC,IAAIG,GAAsB,EAY1B,OAXIn9B,EAAMk9B,WACNl9B,EAAMo9B,UACNp9B,EAAM,WAAW68B,QACjBM,GAAsB,GAEtBA,GACAn9B,EAAM46B,sBACN56B,EAAM+6B,YACNntB,EAAM4jB,YACN5jB,EAAMC,iBAEHrN,OAAOoI,OAAOpI,OAAOoI,OAAO,CAAC,EAAGpD,GAAQ,CAE3CkpB,OAAO,EAAOsO,YAAW7B,SAAS,GAAO,GAC/C,EAEAkC,EAASzvB,IACX7L,GAAI,CAACyD,EAAOxF,KACR,IAAIg9B,EACJ,GAAIx3B,EAAM21B,SAAW31B,EAAMw3B,WAEvB,GAAIpvB,EAAMglB,UAAYptB,EAAMmN,MAAQ3S,EAAMg7B,cAAe,CACrDgC,EAAYx8B,OAAOoI,OAAOpI,OAAOoI,OAAO,CAAC,EAAGpD,EAAMw3B,WAAY,CAAEpvB,UAChE5N,EAAMo9B,UAAYp9B,EAAMo9B,SAASJ,GACjC,MAAMM,EAAct9B,EAAM,WAAWg9B,EAAUH,OAC/CS,GAAeA,EAAYN,EAC/B,OAGAh9B,EAAMu9B,OAASv9B,EAAMu9B,MAAM,CAAE3vB,UAGjC,OADA5N,EAAMw9B,uBAAyBx9B,EAAMw9B,sBAAsB,CAAE5vB,UACtDpN,OAAOoI,OAAOpI,OAAOoI,OAAOpI,OAAOoI,OAAO,CAAC,EAAGpD,GAAQ+wB,IAAe,CAAEyG,aAAY,GAC5F,EAOAZ,EAAQnmB,IAHVjB,SAASkG,oBAAoBmgB,GAAWvZ,GACxC9M,SAASkG,oBAAoBogB,GAASc,GAItCiB,EAAMpnB,EAAE,EAcNwnB,EAAc,CAACC,EAAI19B,KACrB,IAAI29B,EAAU,OACd,GAAID,GAAMA,EAAGhiB,iBAAkB,CAC3B,MAAMkiB,EAAcp9B,OAAOoI,OAAOpI,OAAOoI,OAAO,CAAC,EAAG8xB,GAAaO,mBAAoBj7B,EAAMi7B,mBAErF4C,EAAM,CACR,CAACpC,GAAYU,EAASyB,GAEtB,CACIpC,GACA1Z,EACAthB,OAAOoI,OAAOpI,OAAOoI,OAAO,CAAC,EAAGg1B,GAAe59B,EAAM46B,qBAAuB,CAAEvX,SAAS,GAAU,CAAC,IAEtG,CAACkY,GAAU8B,EAAOO,IAEtBC,EAAIr6B,SAAQ,EAAEyS,EAAG/V,EAAG49B,KAAOJ,EAAGhiB,iBAAiBzF,EAAG/V,EAAG49B,KAErDH,EAAU,IAAME,EAAIr6B,SAAQ,EAAEyS,EAAG/V,KAAOw9B,EAAGxiB,oBAAoBjF,EAAG/V,IACtE,CACA,OAAOy9B,CAAO,EA0BZI,EAAS,CACX73B,IAzBWw3B,IAGA,OAAPA,GAEJ37B,GAAI,CAACyD,EAAOxF,KAER,GAAIwF,EAAMk4B,KAAOA,EACb,OAAOl4B,EACX,MAAMw4B,EAAW,CAAC,EAWlB,OATIx4B,EAAMk4B,IAAMl4B,EAAMk4B,KAAOA,GAAMl4B,EAAMy4B,eACrCz4B,EAAMy4B,eACND,EAASC,kBAAe,GAGxBj+B,EAAM+6B,YAAc2C,IACpBM,EAASC,aAAeR,EAAYC,EAAI19B,IAGrCQ,OAAOoI,OAAOpI,OAAOoI,OAAOpI,OAAOoI,OAAO,CAAC,EAAGpD,GAAQ,CAAEk4B,OAAOM,EAAS,GACjF,GAUN,OAHI9B,EAAapB,aACbiD,EAAOG,YAAc/B,GAElB,CAAC4B,EAAQN,EACpB,CAuBA,SAASU,GAAa38B,GAClB,MAAM,WAAEs5B,GAAet5B,EACjB48B,EAAiB,SAAa59B,OAAOoI,OAAO,CAAC,EAAG2tB,KAChD8H,EAAiB,SAAa79B,OAAOoI,OAAO,CAAC,EAAG8xB,KAEhD4D,EAAgB,SAAa99B,OAAOoI,OAAO,CAAC,EAAGy1B,EAAe93B,UAKpE,IAAIg4B,EACJ,IAAKA,KALLD,EAAc/3B,QAAU/F,OAAOoI,OAAO,CAAC,EAAGy1B,EAAe93B,SAEzD83B,EAAe93B,QAAU/F,OAAOoI,OAAOpI,OAAOoI,OAAO,CAAC,EAAG8xB,IAAel5B,GAGrDk5B,QAC4B,IAAvC2D,EAAe93B,QAAQg4B,KACvBF,EAAe93B,QAAQg4B,GAAc7D,GAAa6D,IAG1D,MAAO9I,EAAUgI,GAAe,WAAc,IAAMxB,IAAauC,GAAiBJ,EAAe73B,QAAUi4B,EAAYJ,EAAe73B,QAAS83B,EAAe93B,UAAW,CAAEu0B,gBAAe,CAACA,IAE3L,OADAsD,EAAe73B,QAvCnB,SAA8Bf,EAAOxF,EAAOs+B,EAAeb,GAEvD,OAAKz9B,EAAM+6B,YAAev1B,EAAMk4B,GAO3Bl4B,EAAMy4B,aAMPj+B,EAAM46B,uBAAyB0D,EAAc1D,sBAC7C56B,EAAMi7B,kBAAkB5X,UAAYib,EAAcrD,kBAAkB5X,SACpE7d,EAAMy4B,eACCz9B,OAAOoI,OAAOpI,OAAOoI,OAAO,CAAC,EAAGpD,GAAQ,CAAEy4B,aAAcR,EAAYj4B,EAAMk4B,GAAI19B,MAElFwF,EAVIhF,OAAOoI,OAAOpI,OAAOoI,OAAO,CAAC,EAAGpD,GAAQ,CAAEy4B,aAAcR,EAAYj4B,EAAMk4B,GAAI19B,MAPjFwF,EAAMy4B,cACNz4B,EAAMy4B,eAEHz9B,OAAOoI,OAAOpI,OAAOoI,OAAO,CAAC,EAAGpD,GAAQ,CAAEy4B,kBAAc5wB,IAevE,CAkB6BoxB,CAAqBL,EAAe73B,QAAS83B,EAAe93B,QAAS+3B,EAAc/3B,QAASk3B,GAC9GhI,CACX,CC5KA,OAxEKz1B,IACH,MAAM0+B,EAAa1+B,EAAM2+B,yBAAyB3zB,cAE5C,EAAC0X,EAAO,EAACkc,IAAaC,EAAAA,EAAAA,UAAS,IAC/B,EAACC,EAAa,EAACC,IAAmBF,EAAAA,EAAAA,UAAS7+B,EAAMg/B,6BACjDpjB,GAAWqjB,EAAAA,EAAAA,WAEjBC,EAAAA,EAAAA,YAAU,KACJJ,GAAgBA,EAAe,IACjCljB,EAASrV,QAAU44B,aAAY,KAC7BP,GAAWlc,IAAYA,EAAS,GAAKgc,EAAWp6B,QAAO,GACtDtE,EAAMg/B,8BAGJ,IAAMI,cAAcxjB,EAASrV,WACnC,IAEH,MAAM84B,EAAgBn0B,IACpBk0B,cAAcxjB,EAASrV,SACvBq4B,EAAU1zB,GACV6zB,EAAgB,EAAE,EAGdO,EAAgBnB,GAAa,CACjCoB,aAAcA,KACZF,GAAc3c,EAAS,GAAKgc,EAAWp6B,OAAO,EAEhDk7B,cAAeA,KACbH,GAAc3c,EAASgc,EAAWp6B,OAAS,GAAKo6B,EAAWp6B,OAAO,EAEpEy2B,YAAY,EACZD,YAAY,IAGd,OACEpxB,EAAAA,cAAAA,MAAAA,CACEjC,UAAU,sBACVC,MAAO,CAAE,mBAAsBo3B,GAAgBA,EAAe,EAAIA,EAAe,GAAK,OAErF9+B,EAAM6K,aAAenB,EAAAA,cAAAA,KAAAA,CAAIjC,UAAU,eAAezH,EAAM6K,aACzDnB,EAAAA,cAAC6F,EAAAA,EAAU,CAAC9H,UAAU,QAAQmF,QAAS5M,EAAMy/B,6BAC7C/1B,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,6BACZi3B,EAAW98B,KAAI,CAACk4B,EAAS5uB,IACxBxB,EAAAA,cAAAA,SAAAA,CAAQzJ,IAAKiL,EAAKzD,UAAS,8BAA+Bib,IAAWxX,EAAM,UAAY,IAAMiD,QAASA,IAAMkxB,EAAan0B,IAAO4uB,EAAQI,yBAG5IxwB,EAAAA,cAAAA,MAAAA,OAAAA,OAAAA,CAAAA,EAAS41B,EAAa,CAAE73B,UAAU,gCAC/Bi3B,EAAW98B,KAAI,CAACk4B,EAAS5uB,IACxB4uB,EAAQ4F,eAAiBh2B,EAAAA,cAAAA,MAAAA,CAAKjC,UAAS,qBAAsBib,IAAWxX,EAAM,UAAY,IAAMjL,IAAKiL,GAAKxB,EAAAA,cAAAA,KAAAA,KAAKowB,EAAQI,uBAAmC,OAE3JwE,EAAW98B,KAAI,CAACk4B,EAAS5uB,IACxB4uB,EAAQ4F,eAAiBh2B,EAAAA,cAAAA,MAAAA,CAAKjC,UAAS,mBAAoBib,IAAWxX,EAAM,UAAY,IAAMjL,IAAKiL,GAAKxB,EAAAA,cAACgB,EAAAA,EAAgB,CAACC,mBAAoBmvB,EAAQ4F,eAAe/0B,sBAA+B,OAErM+zB,EAAW98B,KAAI,CAACk4B,EAAS5uB,IACxBxB,EAAAA,cAACi2B,GAAuB,eAAC1/B,IAAKiL,GAAS4uB,EAAO,CAAEpX,OAAQA,IAAWxX,QAGvExB,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,8BACZi3B,EAAW98B,KAAI,CAACk4B,EAAS5uB,IACxB4uB,EAAQ4F,eAAiBh2B,EAAAA,cAAAA,MAAAA,CAAKjC,UAAS,mBAAoBib,IAAWxX,EAAM,UAAY,IAAMjL,IAAKiL,GAAKxB,EAAAA,cAACgB,EAAAA,EAAgB,CAACC,mBAAoBmvB,EAAQ4F,eAAe/0B,sBAA+B,QAIxMjB,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,4BACZi3B,EAAW98B,KAAI,CAACk4B,EAAS5uB,IACxBxB,EAAAA,cAAAA,SAAAA,CAAQzJ,IAAKiL,EAAKzD,UAAS,2BAA4Bib,IAAWxX,EAAM,UAAY,IAAMiD,QAASA,IAAMkxB,EAAan0B,QAGtH,ECrEV,OAZiHlL,GAC/G0J,EAAAA,cAAC0B,EAAe,iBAAKpL,EAAMqL,oBAAyBrL,EAAMsL,UACxD5B,EAAAA,cAACk2B,GAAiC,CAChC/0B,YAAa7K,EAAM6K,YACnB40B,2BAA4Bz/B,EAAMy/B,2BAClCd,yBAA0B3+B,EAAM2+B,yBAChCnzB,cAAexL,EAAMwL,cACrBwzB,4BAA6Bh/B,EAAMg/B,+BCgCzC,OA3BEh/B,IACI,IAAD,EAGH,OAF0B,QAAV,EAAAA,EAAM6/B,YAAI,aAAV,EAAYC,MAAMx7B,QAAS,EAqBlC,KAjBLoF,EAAAA,cAAAA,QAAAA,CACEq2B,SAAwB,QAAhB,EAAE//B,EAAM8lB,gBAAQ,SACxBka,MAAkB,QAAb,EAAEhgC,EAAMggC,aAAK,SAClBve,SAAwB,QAAhB,EAAEzhB,EAAMyhB,gBAAQ,SACxB2J,KAAgB,QAAZ,EAAEprB,EAAMorB,YAAI,SAChBvhB,MAAkB,QAAb,EAAE7J,EAAM6J,aAAK,QAfE,KAgBpBwe,OAAoB,QAAd,EAAEroB,EAAMqoB,cAAM,QAfC,KAgBrBniB,IAAKlG,EAAMigC,QACXC,YAA8B,QAAnB,EAAElgC,EAAMmgC,mBAAW,UAE9Bz2B,EAAAA,cAAAA,SAAAA,CACEgmB,IAAQ0Q,6CAAsD,QAApB,EAAUpgC,EAAM6/B,YAAI,aAAV7/B,EAAY8/B,OAChE//B,KAAK,eAdE,IAAD,eAoBd,EC0BF,OArDOC,IAEL,IAAI8/B,EAAQ,CAAEA,MAAO9/B,EAAMqgC,eAAeP,OAE1C,MAAMQ,GAAWrB,EAAAA,EAAAA,QAAO,MAExB,IAAIsB,GAAW,EACO,oBAAXj+B,SACTi+B,EAAW,iCAAiCC,KAAKC,UAAUC,YAE7D,MAAOC,EAASC,GAAcl3B,EAAAA,UAAe62B,GAAmBvgC,EAAM6gC,oBAC/Db,EAAOc,GAAYp3B,EAAAA,UAAe,GAYzC,OAVEw1B,EAAAA,EAAAA,YAAU,KACJoB,EAAS/5B,UACX+5B,EAAS/5B,QAAQy5B,MAAQA,EAC3B,GACC,CAACA,KAEJd,EAAAA,EAAAA,YAAU,KAAO,IAAD,IACdyB,EAA0B,QAAnB,EAAGL,EAAS/5B,eAAO,OAAhB+5B,EAAkBra,OAAyB,QAAnB,EAAGqa,EAAS/5B,eAAO,OAAhB+5B,EAAkB9jB,OAAO,GAC7D,CAACmkB,IAGJj3B,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,aACbiC,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,mBACbiC,EAAAA,cAACq3B,GAAqB,CACpBlB,KAAMC,EACNE,OAAO,EACPla,UAAU,EACVrE,UAAU,EACV2J,MAAM,EACNvhB,MAAM,MACNwe,OAAO,MACPyX,MAAO9/B,EAAMqgC,eAAeP,MAC5BG,QAASK,EACTH,aAAa,IAEfz2B,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,sBACbiC,EAAAA,cAAAA,SAAAA,CAAQjC,UAAS,2BAA4Bk5B,EAAU,WAAa,IAAMxyB,QAASA,IAAMyyB,GAAYD,IAAaA,MAClHj3B,EAAAA,cAAAA,SAAAA,CAAQjC,UAAS,2BAA4Bu4B,EAAQ,SAAW,IAAM7xB,QAASA,IAAM2yB,GAAUd,IAAWA,QAG9Gt2B,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,gBACbiC,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,qBACbiC,EAAAA,cAAC6F,EAAAA,EAAU,CAAC3C,QAAS5M,EAAMmQ,WAC3BzG,EAAAA,cAACoG,EAAc9P,EAAMyQ,aAGrB,EC7CV,OAb6FzQ,GAC3F0J,EAAAA,cAAC0B,EAAe,iBAAKpL,EAAMqL,oBAAyBrL,EAAMsL,UACxD5B,EAAAA,cAACs3B,GAAuB,CACtBn2B,YAAa7K,EAAM6K,YACnBsF,SAAUnQ,EAAMmQ,SAChBM,UAAWzQ,EAAMyQ,UACjBjF,cAAexL,EAAMwL,cACrB60B,eAAgBrgC,EAAMqgC,eACtBQ,kBAAmB7gC,EAAM6gC,qBCqB/B,OAtBiE7gC,GAE7D0J,EAAAA,cAAAA,MAAAA,CACEjC,UAAS,gBACPzH,EAAMihC,0BACF,kBAAoBjhC,EAAMihC,0BAAyB,KAIzDv3B,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,sBACbiC,EAAAA,cAACgB,EAAAA,EAAqB1K,EAAMkhC,oBAE9Bx3B,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,wBACbiC,EAAAA,cAAC6F,EAAAA,EAAU,CAAC3C,QAAS5M,EAAMmhC,mBAC3Bz3B,EAAAA,cAAAA,MAAAA,CAAKjC,UAAS,uBACZiC,EAAAA,cAACoG,EAAc9P,EAAMohC,uBCL/B,OAZEphC,GAEA0J,EAAAA,cAAC0B,EAAe,iBAAKpL,EAAMqL,oBAAyBrL,EAAMsL,UACxD5B,EAAAA,cAAC23B,GAAe,CACdF,iBAAkBnhC,EAAMmhC,iBACxBF,0BAA2BjhC,EAAMihC,0BACjCG,mBAAoBphC,EAAMohC,mBAC1BF,kBAAmBlhC,EAAMkhC,qBCc/B,OAlBKlhC,GAED0J,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,aACZzH,EAAMshC,eAAe32B,mBAAmB42B,YAAYj9B,OAAS,GAC5DoF,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,mBACbiC,EAAAA,cAACgB,EAAAA,EAAqB1K,EAAMshC,iBAGhC53B,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,qBACbiC,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,kBACbiC,EAAAA,cAAC6F,EAAAA,EAAU,CAAC3C,QAAS5M,EAAMwhC,oBAE7B93B,EAAAA,cAACoG,EAAc9P,EAAMyhC,mBCV7B,OAV6FzhC,GAC3F0J,EAAAA,cAAC0B,EAAe,iBAAKpL,EAAMqL,oBAAyBrL,EAAMsL,UACxD5B,EAAAA,cAACg4B,GAAuB,CACtBD,gBAAiBzhC,EAAMyhC,gBACvBD,iBAAkBxhC,EAAMwhC,iBACxBF,eAAgBthC,EAAMshC,kDC0D5B,OAtDmDthC,IAAW,IAAD,gBAC3D,MAAM,EAAC2hC,EAAQ,EAACC,IAAc/C,EAAAA,EAAAA,WAAS,GAEjCgD,EAA8B,GACpCA,EAAa19B,KACXuF,EAAAA,cAAAA,SAAAA,CACEhC,MAAO,CACLmC,MAAM,OACNwe,OAAY,YAEdqH,IAAG,2CAA2D,QAA3D,EAA4C1vB,EAAMiP,iBAAS,aAAfjP,EAAiBkP,MAAI,uFACpE4yB,YAAY,IACZC,MAAM,gCAOF/hC,EAAMgiC,wBACChiC,EAAMiiC,+BACPjiC,EAAMkiC,8BACJ,EACQ,QADR,EACZliC,EAAMmiC,sBAAc,aAApBniC,EAAsBuhC,YAAW,EACb,QADa,EACjCvhC,EAAMmiC,sBAAc,aAApBniC,EAAsBoiC,kBAAiB,EACnB,QADmB,EACvCpiC,EAAMmiC,sBAAc,aAApBniC,EAAsBqiC,kBAEZriC,EAAMsiC,8BAGpB,OAAmB,QAAnB,EAAItiC,EAAMiP,iBAAS,OAAfjP,EAAiBkP,KAEjBxF,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,SACbiC,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,kBAAkB0G,QAASA,IAAMyzB,GAAYD,KACxD3hC,EAAMuiC,UAAY74B,EAAAA,cAAC84B,GAAAA,EAAexiC,EAAMmiC,gBAC1Cz4B,EAAAA,cAAAA,SAAAA,KAAQ,mBAEVA,EAAAA,cAAC+4B,KAAU,CACTd,QAASA,EACTe,QAASb,KAWR,IACT,EC3BF,OAxBK7hC,GAED0J,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,eACbiC,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,qBACbiC,EAAAA,cAACgB,EAAAA,EAAgB,CAACC,mBAAoB3K,EAAMgP,SAASmzB,kBAEvDz4B,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,gBACbiC,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,oBACbiC,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,uBACbiC,EAAAA,cAAC6F,EAAAA,EAAU,CAAC3C,QAAS5M,EAAM2iC,qBAC3Bj5B,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,uBACbiC,EAAAA,cAACoG,EAAc9P,EAAM4iC,0BACrBl5B,EAAAA,cAACoG,EAAc9P,EAAM6iC,8BAGzBn5B,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,qBACbiC,EAAAA,cAACo5B,GAAQ,eAACP,UAAQ,GAAKviC,EAAMgP,eCZzC,OAbiGhP,GAC/F0J,EAAAA,cAAC0B,EAAe,iBAAKpL,EAAMqL,oBAAyBrL,EAAMsL,UACxD5B,EAAAA,cAACq5B,GAAyB,CACxBl4B,YAAa7K,EAAM6K,YACnBW,cAAexL,EAAMwL,cACrBm3B,mBAAoB3iC,EAAM2iC,mBAC1BC,yBAA0B5iC,EAAM4iC,yBAChCC,2BAA4B7iC,EAAM6iC,2BAClC7zB,SAAUhP,EAAMgP,YCmBtB,OAnBEhP,GAGE0J,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,YACbiC,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,kBACbiC,EAAAA,cAACgB,EAAAA,EAAgB,CACfC,mBAAoB3K,EAAMsP,mBAAmB3E,sBAGjDjB,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,gBACbiC,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,oBACbiC,EAAAA,cAAC6F,EAAAA,EAAU,CAAC3C,QAAS5M,EAAMgjC,gBAC3Bt5B,EAAAA,cAACoG,EAAc9P,EAAMijC,0BCkC/B,OAzCKjjC,IACH,MAAMkjC,EAAYljC,EAAMmjC,uBAAuBn4B,aAEpB,IAAD,MAA1B,OAAIk4B,EAAU5+B,OAAS,EAEnBoF,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,+CACbiC,EAAAA,cAACytB,GAAM,CACL31B,QAAS,CACPzB,KAAM,OACNynB,QAAS,EACTlI,OAA0B,QAApB,EAAEtf,EAAMojC,oBAAY,SAC1Btd,SAA8B,QAAtB,EAAE9lB,EAAMqjC,sBAAc,SAC9B3jB,WAA4B,QAAlB,EAAE1f,EAAMsjC,kBAAU,SAC5BzV,MAAO,IACPjS,SAAU,IACVkJ,YAAa,CACX,IAAK,CACHxF,QAAQ,MAKbtf,EAAMmjC,uBAAuBn4B,aAAapJ,KAAI,CAAC2hC,EAAUr4B,IACxDxB,EAAAA,cAACqvB,GAAW,CAAC94B,IAAKiL,GAChBxB,EAAAA,cAAC85B,GAA2BD,QAStC75B,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,qBACZy7B,EAAUthC,KAAI,CAAC2hC,EAAUr4B,IACxBxB,EAAAA,cAAC85B,GAAsB,eAACvjC,IAAKiL,GAASq4B,MAEpC,ECrCV,OAb6GvjC,GAC3G0J,EAAAA,cAAC0B,EAAe,iBAAKpL,EAAMqL,oBAAyBrL,EAAMsL,UACxD5B,EAAAA,cAAC+5B,GAA+B,CAC9B54B,YAAa7K,EAAM6K,YACnBs4B,uBAAwBnjC,EAAMmjC,uBAC9B33B,cAAexL,EAAMwL,cACrB43B,aAAcpjC,EAAMojC,aACpBC,eAAgBrjC,EAAMqjC,eACtBC,WAAYtjC,EAAMsjC,yBCDxB,OARqEtjC,GAEjE0J,EAAAA,cAAC0B,EAAe,iBAAKpL,EAAMqL,oBAAyBrL,EAAMsL,UACxD5B,EAAAA,cAACg6B,GAAAA,GAAgB1jC,ICyCvB,OArBKA,GAED0J,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,aACbiC,EAAAA,cAAAA,KAAAA,CAAIjC,UAAU,eAAezH,EAAM6K,aACnCnB,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,kBACZzH,EAAM2jC,eAAe34B,aAAapJ,KAAI,CAACgiC,EAAe14B,KAAG,QAfxC24B,EAewC,OACxDn6B,EAAAA,cAACqE,EAAAA,KAAI,CAACtG,UAAU,iBAAiBwG,IAAIC,EAAAA,EAAAA,IAAgB01B,EAAclK,MAAOz5B,IAAKiL,GAC7ExB,EAAAA,cAAAA,MAAAA,CACEjC,UACE,uBAnBUo8B,EAmB6E,QAA/C,EAAiC,QAAjC,EAACD,EAAcvK,0BAAkB,aAAhCuK,EAAkCtK,oBAAY,QAAI,GAlBrGuK,EACK,IAAMA,EAGR,KAiBKn6B,EAAAA,cAAAA,KAAAA,CAAIjC,UAAU,QAAQm8B,EAAc/4B,cAEjC,MC1BjB,OAV6F7K,GAC3F0J,EAAAA,cAAC0B,EAAe,iBAAKpL,EAAMqL,oBAAyBrL,EAAMsL,UACxD5B,EAAAA,cAACo6B,GAAuB,CACtBj5B,YAAa7K,EAAM6K,YACnB84B,eAAgB3jC,EAAM2jC,eACtBn4B,cAAexL,EAAMwL,iBCkB3B,OAnBKxL,GACCA,EAAM+jC,eAENr6B,EAAAA,cAAAA,IAAAA,CAAG4E,KAAMtO,EAAM+jC,eAAgBphC,OAAO,SAAS8E,UAAU,eACvDiC,EAAAA,cAACgB,EAAAA,EAAgB,CACfC,mBAAoB3K,EAAMgkC,iBAAiBr5B,sBAMjDjB,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,eACbiC,EAAAA,cAACgB,EAAAA,EAAgB,CACfC,mBAAoB3K,EAAMgkC,iBAAiBr5B,sBC0CnD,OArDE3K,GAEgBA,EAAMikC,IAAIj5B,aAEd1G,OAAS,EAEjBoF,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,2BACbiC,EAAAA,cAACytB,GAAM,CACL31B,QAAS,CACPzB,KAAM,OACNynB,QAAS,EACTgB,IAAK,OACL1C,UAAU,EACV+H,MAAO,IACPjS,SAAU,IACVkJ,YAAa,CACX,KAAM,CACJ0C,QAAS,GAEX,KAAM,CACJA,QAAS,GAEX,IAAK,CACHA,QAAS,GAEX,IAAK,CACHA,QAAS,GAEX,IAAK,CACHA,QAAS,MAKdxnB,EAAMikC,IAAIj5B,aAAapJ,KAAI,CAACsiC,EAASh5B,IACpCxB,EAAAA,cAACqvB,GAAW,CAAC94B,IAAKikC,EAAQH,eAAe74B,GACvCxB,EAAAA,cAACy6B,GAA8BD,QASzCx6B,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,WACZzH,EAAMikC,IAAIj5B,aAAapJ,KAAI,CAACsiC,EAASh5B,IACpCxB,EAAAA,cAACy6B,GAAyB,eAAClkC,IAAKikC,EAAQH,eAAe74B,GAASg5B,OClCxE,OAbKlkC,GAED0J,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,oBACZzH,EAAM6K,aACLnB,EAAAA,cAAAA,KAAAA,CAAIjC,UAAU,eAAezH,EAAM6K,aAEpC7K,EAAMokC,sBAAsBp5B,aAAapJ,KAAI,CAACsiC,EAASh5B,IACtDxB,EAAAA,cAAC26B,GAAqB,eAACpkC,IAAKiL,GAASg5B,OCE7C,OATKlkC,GACH0J,EAAAA,cAAC0B,EAAe,iBAAKpL,EAAMqL,oBAAyBrL,EAAMsL,UACxD5B,EAAAA,cAAC46B,GAA8B,CAC7Bz5B,YAAa7K,EAAM6K,YACnBu5B,sBAAuBpkC,EAAMokC,yBCMnC,OAXKpkC,GAED0J,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,oBACbiC,EAAAA,cAACgB,EAAAA,EAAqB1K,EAAMukC,uBAC5B76B,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,gCACZzH,EAAMwkC,8BCDf,OAT2GxkC,GACzG0J,EAAAA,cAAC0B,EAAe,iBAAKpL,EAAMqL,oBAAyBrL,EAAMsL,UACxD5B,EAAAA,cAAC+6B,GAA8B,CAC7BF,sBAAuBvkC,EAAMukC,sBAC7BC,4BAA6BxkC,EAAMwkC,+BCQzC,OATExkC,GAGE0J,EAAAA,cAAAA,MAAAA,CAAKjC,UAAU,qBACbiC,EAAAA,cAACo5B,GAAa9iC,EAAMgP,WCS1B,OAVKhP,GACH0J,EAAAA,cAAC0B,EAAe,iBAAKpL,EAAMqL,oBAAyBrL,EAAMsL,UACxD5B,EAAAA,cAACg7B,GAAmB,CAClB75B,YAAa7K,EAAM6K,YACnBW,cAAexL,EAAMwL,cACrBwD,SAAUhP,EAAMgP,YC8QtB,OAX8DhP,IAAW,IAAD,EACtE,MAAMgN,EAA2C,QAA1B,EAAGhN,EAAMgN,yBAAiB,QAAI,GACrD,OACEtD,EAAAA,cAAAA,EAAAA,SAAAA,KACGsD,EAAkBpL,KAAI,CAAC+iC,EAAwBz5B,IAlLlC05B,EAACD,EAAwBzhC,KAC3C,GAAKyhC,SAAAA,EAAYn5B,cAKjB,OAAQm5B,EAAW74B,aACjB,IAAI,aACF,OACEpC,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAACq7B,EAAa,eAAC9kC,IAAK0kC,EAAWn5B,eAAmBm5B,KAIxD,IAAI,aACF,OACEj7B,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAACs7B,EAAgB,iBAAKL,EAAU,CAAE1kC,IAAK0kC,EAAWn5B,kBAIxD,IAAI,cACF,OACE9B,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAACu7B,EAAiB,iBAAKN,EAAU,CAAE1kC,IAAK0kC,EAAWn5B,kBAIzD,IAAI,kBACF,OACE9B,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAACw7B,GAAqB,iBAAKP,EAAU,CAAE1kC,IAAK0kC,EAAWn5B,kBAI7D,IAAI,cACF,OACE9B,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAACy7B,GAAiB,iBAAKR,EAAU,CAAE1kC,IAAK0kC,EAAWn5B,kBAIzD,IAAK,iCACH,OACE9B,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAAC07B,EAAoC,iBAC/BT,EAAU,CACd1kC,IAAK0kC,EAAWn5B,kBAKxB,IAAK,kCACH,OACE9B,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAAC27B,GAAqC,iBAChCV,EAAU,CACd1kC,IAAK0kC,EAAWn5B,kBAKxB,IAAK,sCACH,OACE9B,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAAC47B,GAAyC,iBACpCX,EAAU,CACd1kC,IAAK0kC,EAAWn5B,kBAKxB,IAAK,kCACH,OACE9B,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAAC67B,GAAqC,iBAChCZ,EAAU,CACd1kC,IAAK0kC,EAAWn5B,kBAKxB,IAAK,oCACH,OACE9B,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAAC87B,GAAuC,iBAClCb,EAAU,CACd1kC,IAAK0kC,EAAWn5B,kBAKxB,IAAK,0BACH,OACE9B,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAAC+7B,GAA6B,iBACxBd,EAAU,CACd1kC,IAAK0kC,EAAWn5B,kBAKxB,IAAK,0BACH,OACE9B,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAACg8B,GAA6B,iBACxBf,EAAU,CACd1kC,IAAK0kC,EAAWn5B,kBAKxB,IAAK,4BACH,OACE9B,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAACi8B,GAA+B,iBAC1BhB,EAAU,CACd1kC,IAAK0kC,EAAWn5B,kBAKxB,IAAK,kCACH,OACE9B,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAACk8B,GAAqC,iBAChCjB,EAAU,CACd1kC,IAAK0kC,EAAWn5B,kBAKxB,IAAK,0BACH,OACE9B,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAACm8B,GAA6B,iBACxBlB,EAAU,CACd1kC,IAAK0kC,EAAWn5B,kBAKxB,IAAK,iCACH,OACE9B,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAACo8B,GAAoC,iBAC/BnB,EAAU,CACd1kC,IAAK0kC,EAAWn5B,kBAKxB,IAAK,sBACH,OACE9B,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAACq8B,GAAyB,iBACpBpB,EAAU,CACd1kC,IAAK0kC,EAAWn5B,kBAKxB,IAAK,iCACH,OACE9B,EAAAA,cAACm7B,EAAAA,SAAQ,CAAC5kC,IAAKiD,EAAI4hC,SAAUp7B,EAAAA,cAAAA,EAAAA,SAAAA,OAC3BA,EAAAA,cAACs8B,GAAoC,iBAAKrB,EAAU,CAAE1kC,IAAK0kC,EAAWn5B,kBAI5E,QACE,OAAO,UAxKTy6B,QAAQC,IAAI,0BAA2BvB,aAAU,EAAVA,EAAY74B,YAyKrD,EAQM84B,CAAYD,EAAYz5B,KAEzB,0BCtRkci7B,EAAxbC,EAAEC,OAAOC,IAAI,iBAAiBhmC,EAAE+lC,OAAOC,IAAI,gBAAgBC,EAAEF,OAAOC,IAAI,kBAAkBrwB,EAAEowB,OAAOC,IAAI,qBAAqBE,EAAEH,OAAOC,IAAI,kBAAkBG,EAAEJ,OAAOC,IAAI,kBAAkBpmC,EAAEmmC,OAAOC,IAAI,iBAAiBI,EAAEL,OAAOC,IAAI,wBAAwBK,EAAEN,OAAOC,IAAI,qBAAqBhhB,EAAE+gB,OAAOC,IAAI,kBAAkBjhB,EAAEghB,OAAOC,IAAI,uBAAuBM,EAAEP,OAAOC,IAAI,cAAcO,EAAER,OAAOC,IAAI,cAAcrW,EAAEoW,OAAOC,IAAI,mBACtb,SAASQ,EAAEC,GAAG,GAAG,iBAAkBA,GAAG,OAAOA,EAAE,CAAC,IAAIC,EAAED,EAAEE,SAAS,OAAOD,GAAG,KAAKZ,EAAE,OAAOW,EAAEA,EAAEhnC,MAAQ,KAAKwmC,EAAE,KAAKC,EAAE,KAAKvwB,EAAE,KAAKqP,EAAE,KAAKD,EAAE,OAAO0hB,EAAE,QAAQ,OAAOA,EAAEA,GAAGA,EAAEE,UAAY,KAAKP,EAAE,KAAKxmC,EAAE,KAAKymC,EAAE,KAAKE,EAAE,KAAKD,EAAE,KAAKH,EAAE,OAAOM,EAAE,QAAQ,OAAOC,GAAG,KAAK1mC,EAAE,OAAO0mC,EAAE,CAAC,CADkMb,EAAEE,OAAOC,IAAI,0BAEvHY,EAAQ7+B,WAAW,SAAS0+B,GAAG,OAAOD,EAAEC,KAAKR,CAAC,wBCR7YY,EAAOD,QAAU,EAAjB","sources":["webpack://salmon-software/./node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteralLoose.js","webpack://salmon-software/./node_modules/@emotion/react/jsx-runtime/dist/emotion-react-jsx-runtime.browser.esm.js","webpack://salmon-software/./node_modules/react-intersection-observer/index.mjs","webpack://salmon-software/./node_modules/react-awesome-reveal/dist/index.js","webpack://salmon-software/./src/utils/getAnimation.tsx","webpack://salmon-software/./src/components/builders/WidgetContainer.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwarePerson/SalmonSoftwarePerson.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwarePersonsContainer/SalmonSoftwarePersonsContainer.tsx","webpack://salmon-software/./src/components/widgets/WidgetSalmonSoftwarePersonsContainer.tsx","webpack://salmon-software/./src/components/contentTypes/PuxSection/PuxSection.tsx","webpack://salmon-software/./src/components/widgets/WidgetPuxSection.tsx","webpack://salmon-software/./src/components/contentParts/button/PuxButton.tsx","webpack://salmon-software/./src/components/contentTypes/PuxTopImage/PuxTopImage.tsx","webpack://salmon-software/./src/components/widgets/WidgetPuxTopImage.tsx","webpack://salmon-software/./src/components/widgets/WidgetPuxWysiwyg.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareBenefit/SalmonSoftwareBenefit.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareBenefitsContainer/SalmonSoftwareBenefitsContainer.tsx","webpack://salmon-software/./src/components/widgets/WidgetSalmonSoftwareBenefitsContainer.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareTestimonial/SalmonSoftwareTestimonial.tsx","webpack://salmon-software/./node_modules/@splidejs/react-splide/dist/js/react-splide.esm.js","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareTestimonialsContainer/SalmonSoftwareTestimonialsContainer.tsx","webpack://salmon-software/./src/components/widgets/WidgetSalmonSoftwareTestimonialsContainer.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareFeature/SalmonSoftwareFeature.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareFeaturesContainer/SalmonSoftwareFeaturesContainer.tsx","webpack://salmon-software/./src/components/widgets/WidgetSalmonSoftwareFeaturesContainer.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareAccordion/SalmonSoftwareAccordion.tsx","webpack://salmon-software/./node_modules/react-swipeable/es/index.js","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareAccordionsContainer/SalmonSoftwareAccordionsContainer.tsx","webpack://salmon-software/./src/components/widgets/WidgetSalmonSoftwareAccordionsContainer.tsx","webpack://salmon-software/./src/components/contentParts/mediaVideo/PuxMediaVideoSelector.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareHeroVideo/SalmonSoftwareHeroVideo.tsx","webpack://salmon-software/./src/components/widgets/WidgetSalmonSoftwareHeroVideo.tsx","webpack://salmon-software/./src/components/contentTypes/PuxImageContent/PuxImageContent.tsx","webpack://salmon-software/./src/components/widgets/WidgetPuxImageContent.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareCTABanner/SalmonSoftwareCTABanner.tsx","webpack://salmon-software/./src/components/widgets/WidgetSalmonSoftwareCTABanner.tsx","webpack://salmon-software/./src/components/contentParts/PuxVideo/PuxVideo.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareVideoBanner/SalmonSoftwareVideoBanner.tsx","webpack://salmon-software/./src/components/widgets/WidgetSalmonSoftwareVideoBanner.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareTopImage/SalmonSoftwareTopImage.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareTopImageContainer/SalmonSoftwareTopImageContainer.tsx","webpack://salmon-software/./src/components/widgets/WidgetSalmonSoftwareTopImageContainer.tsx","webpack://salmon-software/./src/components/widgets/WidgetPuxRepeater.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareCrossroad/SalmonSoftwareCrossroad.tsx","webpack://salmon-software/./src/components/widgets/WidgetSalmonSoftwareCrossroad.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareGalleryItem/SalmonSoftwareGalleryItem.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareGallery/SalmonSoftwareGallery.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareGalleryContainer/SalmonSoftwareGalleryContainer.tsx","webpack://salmon-software/./src/components/widgets/WidgetSalmonSoftwareGalleryContainer.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareImageFromLibrary/SalmonSoftwareImageFromLibrary.tsx","webpack://salmon-software/./src/components/widgets/WidgetSalmonSoftwareImageFromLibrary.tsx","webpack://salmon-software/./src/components/contentTypes/SalmonSoftwareVideo/SalmonSoftwareVideo.tsx","webpack://salmon-software/./src/components/widgets/WidgetSalmonSoftwareVideo.tsx","webpack://salmon-software/./src/components/builders/WidgetBuilder.tsx","webpack://salmon-software/./node_modules/react-awesome-reveal/node_modules/react-is/cjs/react-is.production.min.js","webpack://salmon-software/./node_modules/react-awesome-reveal/node_modules/react-is/index.js"],"sourcesContent":["export default function _taggedTemplateLiteralLoose(strings, raw) {\n if (!raw) {\n raw = strings.slice(0);\n }\n strings.raw = raw;\n return strings;\n}","import 'react';\nimport '@emotion/cache';\nimport { h as hasOwnProperty, E as Emotion, c as createEmotionProps } from '../../dist/emotion-element-cbed451f.browser.esm.js';\nimport '@babel/runtime/helpers/extends';\nimport '@emotion/weak-memoize';\nimport 'hoist-non-react-statics';\nimport '../../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport '@emotion/utils';\nimport '@emotion/serialize';\nimport { Fragment as Fragment$1, jsx as jsx$1, jsxs as jsxs$1 } from 'react/jsx-runtime';\n\nvar Fragment = Fragment$1;\nfunction jsx(type, props, key) {\n if (!hasOwnProperty.call(props, 'css')) {\n return jsx$1(type, props, key);\n }\n\n return jsx$1(Emotion, createEmotionProps(type, props), key);\n}\nfunction jsxs(type, props, key) {\n if (!hasOwnProperty.call(props, 'css')) {\n return jsxs$1(type, props, key);\n }\n\n return jsxs$1(Emotion, createEmotionProps(type, props), key);\n}\n\nexport { Fragment, jsx, jsxs };\n","\"use client\";\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => {\n __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n return value;\n};\n\n// src/InView.tsx\nimport * as React from \"react\";\n\n// src/observe.ts\nvar observerMap = /* @__PURE__ */ new Map();\nvar RootIds = /* @__PURE__ */ new WeakMap();\nvar rootId = 0;\nvar unsupportedValue = void 0;\nfunction defaultFallbackInView(inView) {\n unsupportedValue = inView;\n}\nfunction getRootId(root) {\n if (!root)\n return \"0\";\n if (RootIds.has(root))\n return RootIds.get(root);\n rootId += 1;\n RootIds.set(root, rootId.toString());\n return RootIds.get(root);\n}\nfunction optionsToId(options) {\n return Object.keys(options).sort().filter(\n (key) => options[key] !== void 0\n ).map((key) => {\n return `${key}_${key === \"root\" ? getRootId(options.root) : options[key]}`;\n }).toString();\n}\nfunction createObserver(options) {\n const id = optionsToId(options);\n let instance = observerMap.get(id);\n if (!instance) {\n const elements = /* @__PURE__ */ new Map();\n let thresholds;\n const observer = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n var _a;\n const inView = entry.isIntersecting && thresholds.some((threshold) => entry.intersectionRatio >= threshold);\n if (options.trackVisibility && typeof entry.isVisible === \"undefined\") {\n entry.isVisible = inView;\n }\n (_a = elements.get(entry.target)) == null ? void 0 : _a.forEach((callback) => {\n callback(inView, entry);\n });\n });\n }, options);\n thresholds = observer.thresholds || (Array.isArray(options.threshold) ? options.threshold : [options.threshold || 0]);\n instance = {\n id,\n observer,\n elements\n };\n observerMap.set(id, instance);\n }\n return instance;\n}\nfunction observe(element, callback, options = {}, fallbackInView = unsupportedValue) {\n if (typeof window.IntersectionObserver === \"undefined\" && fallbackInView !== void 0) {\n const bounds = element.getBoundingClientRect();\n callback(fallbackInView, {\n isIntersecting: fallbackInView,\n target: element,\n intersectionRatio: typeof options.threshold === \"number\" ? options.threshold : 0,\n time: 0,\n boundingClientRect: bounds,\n intersectionRect: bounds,\n rootBounds: bounds\n });\n return () => {\n };\n }\n const { id, observer, elements } = createObserver(options);\n const callbacks = elements.get(element) || [];\n if (!elements.has(element)) {\n elements.set(element, callbacks);\n }\n callbacks.push(callback);\n observer.observe(element);\n return function unobserve() {\n callbacks.splice(callbacks.indexOf(callback), 1);\n if (callbacks.length === 0) {\n elements.delete(element);\n observer.unobserve(element);\n }\n if (elements.size === 0) {\n observer.disconnect();\n observerMap.delete(id);\n }\n };\n}\n\n// src/InView.tsx\nfunction isPlainChildren(props) {\n return typeof props.children !== \"function\";\n}\nvar InView = class extends React.Component {\n constructor(props) {\n super(props);\n __publicField(this, \"node\", null);\n __publicField(this, \"_unobserveCb\", null);\n __publicField(this, \"handleNode\", (node) => {\n if (this.node) {\n this.unobserve();\n if (!node && !this.props.triggerOnce && !this.props.skip) {\n this.setState({ inView: !!this.props.initialInView, entry: void 0 });\n }\n }\n this.node = node ? node : null;\n this.observeNode();\n });\n __publicField(this, \"handleChange\", (inView, entry) => {\n if (inView && this.props.triggerOnce) {\n this.unobserve();\n }\n if (!isPlainChildren(this.props)) {\n this.setState({ inView, entry });\n }\n if (this.props.onChange) {\n this.props.onChange(inView, entry);\n }\n });\n this.state = {\n inView: !!props.initialInView,\n entry: void 0\n };\n }\n componentDidMount() {\n this.unobserve();\n this.observeNode();\n }\n componentDidUpdate(prevProps) {\n if (prevProps.rootMargin !== this.props.rootMargin || prevProps.root !== this.props.root || prevProps.threshold !== this.props.threshold || prevProps.skip !== this.props.skip || prevProps.trackVisibility !== this.props.trackVisibility || prevProps.delay !== this.props.delay) {\n this.unobserve();\n this.observeNode();\n }\n }\n componentWillUnmount() {\n this.unobserve();\n }\n observeNode() {\n if (!this.node || this.props.skip)\n return;\n const {\n threshold,\n root,\n rootMargin,\n trackVisibility,\n delay,\n fallbackInView\n } = this.props;\n this._unobserveCb = observe(\n this.node,\n this.handleChange,\n {\n threshold,\n root,\n rootMargin,\n // @ts-ignore\n trackVisibility,\n // @ts-ignore\n delay\n },\n fallbackInView\n );\n }\n unobserve() {\n if (this._unobserveCb) {\n this._unobserveCb();\n this._unobserveCb = null;\n }\n }\n render() {\n const { children } = this.props;\n if (typeof children === \"function\") {\n const { inView, entry } = this.state;\n return children({ inView, entry, ref: this.handleNode });\n }\n const {\n as,\n triggerOnce,\n threshold,\n root,\n rootMargin,\n onChange,\n skip,\n trackVisibility,\n delay,\n initialInView,\n fallbackInView,\n ...props\n } = this.props;\n return React.createElement(\n as || \"div\",\n { ref: this.handleNode, ...props },\n children\n );\n }\n};\n\n// src/useInView.tsx\nimport * as React2 from \"react\";\nfunction useInView({\n threshold,\n delay,\n trackVisibility,\n rootMargin,\n root,\n triggerOnce,\n skip,\n initialInView,\n fallbackInView,\n onChange\n} = {}) {\n var _a;\n const [ref, setRef] = React2.useState(null);\n const callback = React2.useRef();\n const [state, setState] = React2.useState({\n inView: !!initialInView,\n entry: void 0\n });\n callback.current = onChange;\n React2.useEffect(\n () => {\n if (skip || !ref)\n return;\n let unobserve;\n unobserve = observe(\n ref,\n (inView, entry) => {\n setState({\n inView,\n entry\n });\n if (callback.current)\n callback.current(inView, entry);\n if (entry.isIntersecting && triggerOnce && unobserve) {\n unobserve();\n unobserve = void 0;\n }\n },\n {\n root,\n rootMargin,\n threshold,\n // @ts-ignore\n trackVisibility,\n // @ts-ignore\n delay\n },\n fallbackInView\n );\n return () => {\n if (unobserve) {\n unobserve();\n }\n };\n },\n // We break the rule here, because we aren't including the actual `threshold` variable\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n // If the threshold is an array, convert it to a string, so it won't change between renders.\n Array.isArray(threshold) ? threshold.toString() : threshold,\n ref,\n root,\n rootMargin,\n triggerOnce,\n skip,\n trackVisibility,\n fallbackInView,\n delay\n ]\n );\n const entryTarget = (_a = state.entry) == null ? void 0 : _a.target;\n const previousEntryTarget = React2.useRef();\n if (!ref && entryTarget && !triggerOnce && !skip && previousEntryTarget.current !== entryTarget) {\n previousEntryTarget.current = entryTarget;\n setState({\n inView: !!initialInView,\n entry: void 0\n });\n }\n const result = [setRef, state.inView, state.entry];\n result.ref = result[0];\n result.inView = result[1];\n result.entry = result[2];\n return result;\n}\nexport {\n InView,\n defaultFallbackInView,\n observe,\n useInView\n};\n//# sourceMappingURL=index.mjs.map","import { jsx, Fragment } from '@emotion/react/jsx-runtime';\nimport { keyframes, css, ClassNames } from '@emotion/react';\nimport { useMemo, Children, isValidElement } from 'react';\nimport { InView, useInView } from 'react-intersection-observer';\nimport { isFragment } from 'react-is';\n\nconst bounce = keyframes`\n from,\n 20%,\n 53%,\n to {\n animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n transform: translate3d(0, 0, 0);\n }\n\n 40%,\n 43% {\n animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);\n transform: translate3d(0, -30px, 0) scaleY(1.1);\n }\n\n 70% {\n animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);\n transform: translate3d(0, -15px, 0) scaleY(1.05);\n }\n\n 80% {\n transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n transform: translate3d(0, 0, 0) scaleY(0.95);\n }\n\n 90% {\n transform: translate3d(0, -4px, 0) scaleY(1.02);\n }\n`;\n\nconst flash = keyframes`\n from,\n 50%,\n to {\n opacity: 1;\n }\n\n 25%,\n 75% {\n opacity: 0;\n }\n`;\n\nconst headShake = keyframes`\n 0% {\n transform: translateX(0);\n }\n\n 6.5% {\n transform: translateX(-6px) rotateY(-9deg);\n }\n\n 18.5% {\n transform: translateX(5px) rotateY(7deg);\n }\n\n 31.5% {\n transform: translateX(-3px) rotateY(-5deg);\n }\n\n 43.5% {\n transform: translateX(2px) rotateY(3deg);\n }\n\n 50% {\n transform: translateX(0);\n }\n`;\n\nconst heartBeat = keyframes`\n 0% {\n transform: scale(1);\n }\n\n 14% {\n transform: scale(1.3);\n }\n\n 28% {\n transform: scale(1);\n }\n\n 42% {\n transform: scale(1.3);\n }\n\n 70% {\n transform: scale(1);\n }\n`;\n\nconst jello = keyframes`\n from,\n 11.1%,\n to {\n transform: translate3d(0, 0, 0);\n }\n\n 22.2% {\n transform: skewX(-12.5deg) skewY(-12.5deg);\n }\n\n 33.3% {\n transform: skewX(6.25deg) skewY(6.25deg);\n }\n\n 44.4% {\n transform: skewX(-3.125deg) skewY(-3.125deg);\n }\n\n 55.5% {\n transform: skewX(1.5625deg) skewY(1.5625deg);\n }\n\n 66.6% {\n transform: skewX(-0.78125deg) skewY(-0.78125deg);\n }\n\n 77.7% {\n transform: skewX(0.390625deg) skewY(0.390625deg);\n }\n\n 88.8% {\n transform: skewX(-0.1953125deg) skewY(-0.1953125deg);\n }\n`;\n\nconst pulse = keyframes`\n from {\n transform: scale3d(1, 1, 1);\n }\n\n 50% {\n transform: scale3d(1.05, 1.05, 1.05);\n }\n\n to {\n transform: scale3d(1, 1, 1);\n }\n`;\n\nconst rubberBand = keyframes`\n from {\n transform: scale3d(1, 1, 1);\n }\n\n 30% {\n transform: scale3d(1.25, 0.75, 1);\n }\n\n 40% {\n transform: scale3d(0.75, 1.25, 1);\n }\n\n 50% {\n transform: scale3d(1.15, 0.85, 1);\n }\n\n 65% {\n transform: scale3d(0.95, 1.05, 1);\n }\n\n 75% {\n transform: scale3d(1.05, 0.95, 1);\n }\n\n to {\n transform: scale3d(1, 1, 1);\n }\n`;\n\nconst shake = keyframes`\n from,\n to {\n transform: translate3d(0, 0, 0);\n }\n\n 10%,\n 30%,\n 50%,\n 70%,\n 90% {\n transform: translate3d(-10px, 0, 0);\n }\n\n 20%,\n 40%,\n 60%,\n 80% {\n transform: translate3d(10px, 0, 0);\n }\n`;\n\nconst shakeX = keyframes`\n from,\n to {\n transform: translate3d(0, 0, 0);\n }\n\n 10%,\n 30%,\n 50%,\n 70%,\n 90% {\n transform: translate3d(-10px, 0, 0);\n }\n\n 20%,\n 40%,\n 60%,\n 80% {\n transform: translate3d(10px, 0, 0);\n }\n`;\n\nconst shakeY = keyframes`\n from,\n to {\n transform: translate3d(0, 0, 0);\n }\n\n 10%,\n 30%,\n 50%,\n 70%,\n 90% {\n transform: translate3d(0, -10px, 0);\n }\n\n 20%,\n 40%,\n 60%,\n 80% {\n transform: translate3d(0, 10px, 0);\n }\n`;\n\nconst swing = keyframes`\n 20% {\n transform: rotate3d(0, 0, 1, 15deg);\n }\n\n 40% {\n transform: rotate3d(0, 0, 1, -10deg);\n }\n\n 60% {\n transform: rotate3d(0, 0, 1, 5deg);\n }\n\n 80% {\n transform: rotate3d(0, 0, 1, -5deg);\n }\n\n to {\n transform: rotate3d(0, 0, 1, 0deg);\n }\n`;\n\nconst tada = keyframes`\n from {\n transform: scale3d(1, 1, 1);\n }\n\n 10%,\n 20% {\n transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);\n }\n\n 30%,\n 50%,\n 70%,\n 90% {\n transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);\n }\n\n 40%,\n 60%,\n 80% {\n transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);\n }\n\n to {\n transform: scale3d(1, 1, 1);\n }\n`;\n\nconst wobble = keyframes`\n from {\n transform: translate3d(0, 0, 0);\n }\n\n 15% {\n transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);\n }\n\n 30% {\n transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);\n }\n\n 45% {\n transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);\n }\n\n 60% {\n transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);\n }\n\n 75% {\n transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);\n }\n\n to {\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst fadeIn = keyframes`\n from {\n opacity: 0;\n }\n\n to {\n opacity: 1;\n }\n`;\n\nconst fadeInBottomLeft = keyframes`\n from {\n opacity: 0;\n transform: translate3d(-100%, 100%, 0);\n }\n\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst fadeInBottomRight = keyframes`\n from {\n opacity: 0;\n transform: translate3d(100%, 100%, 0);\n }\n\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst fadeInDown = keyframes`\n from {\n opacity: 0;\n transform: translate3d(0, -100%, 0);\n }\n\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst fadeInDownBig = keyframes`\n from {\n opacity: 0;\n transform: translate3d(0, -2000px, 0);\n }\n\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst fadeInLeft = keyframes`\n from {\n opacity: 0;\n transform: translate3d(-100%, 0, 0);\n }\n\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst fadeInLeftBig = keyframes`\n from {\n opacity: 0;\n transform: translate3d(-2000px, 0, 0);\n }\n\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst fadeInRight = keyframes`\n from {\n opacity: 0;\n transform: translate3d(100%, 0, 0);\n }\n\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst fadeInRightBig = keyframes`\n from {\n opacity: 0;\n transform: translate3d(2000px, 0, 0);\n }\n\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst fadeInTopLeft = keyframes`\n from {\n opacity: 0;\n transform: translate3d(-100%, -100%, 0);\n }\n\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst fadeInTopRight = keyframes`\n from {\n opacity: 0;\n transform: translate3d(100%, -100%, 0);\n }\n\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst fadeInUp = keyframes`\n from {\n opacity: 0;\n transform: translate3d(0, 100%, 0);\n }\n\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst fadeInUpBig = keyframes`\n from {\n opacity: 0;\n transform: translate3d(0, 2000px, 0);\n }\n\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n`;\n\nfunction getAnimationCss({\n duration = 1e3,\n delay = 0,\n timingFunction = \"ease\",\n keyframes = fadeInLeft,\n iterationCount = 1\n}) {\n return css`\n animation-duration: ${duration}ms;\n animation-timing-function: ${timingFunction};\n animation-delay: ${delay}ms;\n animation-name: ${keyframes};\n animation-direction: normal;\n animation-fill-mode: both;\n animation-iteration-count: ${iterationCount};\n\n @media (prefers-reduced-motion: reduce) {\n animation: none;\n }\n `;\n}\n\nfunction isNullable(a) {\n return a == void 0;\n}\nfunction isStringLike(value) {\n return typeof value === \"string\" || typeof value === \"number\" || typeof value === \"boolean\";\n}\n\nfunction matchIf(onTrue, onFalse) {\n return (condition) => condition ? onTrue() : onFalse();\n}\nfunction matchIfOrNull(onTrue) {\n return matchIf(onTrue, () => null);\n}\n\nfunction hideWhen(condition) {\n return matchIfOrNull(() => ({ opacity: 0 }))(condition);\n}\nconst Reveal = (props) => {\n const {\n cascade = false,\n damping = 0.5,\n delay = 0,\n duration = 1e3,\n fraction = 0,\n keyframes = fadeInLeft,\n triggerOnce = false,\n className,\n style,\n childClassName,\n childStyle,\n children,\n onVisibilityChange\n } = props;\n const animationStyles = useMemo(\n () => getAnimationCss({\n keyframes,\n duration\n }),\n [duration, keyframes]\n );\n if (isNullable(children))\n return null;\n if (isStringLike(children))\n return /* @__PURE__ */ jsx(TextReveal, { ...props, animationStyles, children: String(children) });\n if (isFragment(children))\n return /* @__PURE__ */ jsx(FragmentReveal, { ...props, animationStyles });\n return /* @__PURE__ */ jsx(Fragment, { children: Children.map(children, (node, index) => {\n if (!isValidElement(node))\n return null;\n const nodeDelay = delay + (cascade ? index * duration * damping : 0);\n switch (node.type) {\n case \"ol\":\n case \"ul\":\n return /* @__PURE__ */ jsx(ClassNames, { children: ({ cx }) => /* @__PURE__ */ jsx(\n node.type,\n {\n ...node.props,\n className: cx(className, node.props.className),\n style: Object.assign({}, style, node.props.style),\n children: /* @__PURE__ */ jsx(Reveal, { ...props, children: node.props.children })\n }\n ) });\n case \"li\":\n return /* @__PURE__ */ jsx(\n InView,\n {\n threshold: fraction,\n triggerOnce,\n onChange: onVisibilityChange,\n children: ({ inView, ref }) => /* @__PURE__ */ jsx(ClassNames, { children: ({ cx }) => /* @__PURE__ */ jsx(\n node.type,\n {\n ...node.props,\n ref,\n className: cx(childClassName, node.props.className),\n css: matchIfOrNull(() => animationStyles)(inView),\n style: Object.assign(\n {},\n childStyle,\n node.props.style,\n hideWhen(!inView),\n {\n animationDelay: nodeDelay + \"ms\"\n }\n )\n }\n ) })\n }\n );\n default:\n return /* @__PURE__ */ jsx(\n InView,\n {\n threshold: fraction,\n triggerOnce,\n onChange: onVisibilityChange,\n children: ({ inView, ref }) => /* @__PURE__ */ jsx(\n \"div\",\n {\n ref,\n className,\n css: matchIfOrNull(() => animationStyles)(inView),\n style: Object.assign({}, style, hideWhen(!inView), {\n animationDelay: nodeDelay + \"ms\"\n }),\n children: /* @__PURE__ */ jsx(ClassNames, { children: ({ cx }) => /* @__PURE__ */ jsx(\n node.type,\n {\n ...node.props,\n className: cx(childClassName, node.props.className),\n style: Object.assign(\n {},\n childStyle,\n node.props.style\n )\n }\n ) })\n }\n )\n }\n );\n }\n }) });\n};\nconst textBaseStyles = {\n display: \"inline-block\",\n whiteSpace: \"pre\"\n};\nconst TextReveal = (props) => {\n const {\n animationStyles,\n cascade = false,\n damping = 0.5,\n delay = 0,\n duration = 1e3,\n fraction = 0,\n triggerOnce = false,\n className,\n style,\n children,\n onVisibilityChange\n } = props;\n const { ref, inView } = useInView({\n triggerOnce,\n threshold: fraction,\n onChange: onVisibilityChange\n });\n return matchIf(\n () => /* @__PURE__ */ jsx(\n \"div\",\n {\n ref,\n className,\n style: Object.assign({}, style, textBaseStyles),\n children: children.split(\"\").map((char, index) => /* @__PURE__ */ jsx(\n \"span\",\n {\n css: matchIfOrNull(() => animationStyles)(inView),\n style: {\n animationDelay: delay + index * duration * damping + \"ms\"\n },\n children: char\n },\n index\n ))\n }\n ),\n () => /* @__PURE__ */ jsx(FragmentReveal, { ...props, children })\n )(cascade);\n};\nconst FragmentReveal = (props) => {\n const {\n animationStyles,\n fraction = 0,\n triggerOnce = false,\n className,\n style,\n children,\n onVisibilityChange\n } = props;\n const { ref, inView } = useInView({\n triggerOnce,\n threshold: fraction,\n onChange: onVisibilityChange\n });\n return /* @__PURE__ */ jsx(\n \"div\",\n {\n ref,\n className,\n css: matchIfOrNull(() => animationStyles)(inView),\n style: Object.assign({}, style, hideWhen(!inView)),\n children\n }\n );\n};\n\nfunction getStyles$7(effect) {\n switch (effect) {\n case \"bounce\":\n return [bounce, { transformOrigin: \"center bottom\" }];\n case \"flash\":\n return [flash];\n case \"headShake\":\n return [headShake, { animationTimingFunction: \"ease-in-out\" }];\n case \"heartBeat\":\n return [heartBeat, { animationTimingFunction: \"ease-in-out\" }];\n case \"jello\":\n return [jello, { transformOrigin: \"center\" }];\n case \"pulse\":\n return [pulse, { animationTimingFunction: \"ease-in-out\" }];\n case \"rubberBand\":\n return [rubberBand];\n case \"shake\":\n return [shake];\n case \"shakeX\":\n return [shakeX];\n case \"shakeY\":\n return [shakeY];\n case \"swing\":\n return [swing, { transformOrigin: \"top center\" }];\n case \"tada\":\n return [tada];\n case \"wobble\":\n return [wobble];\n }\n}\nconst AttentionSeeker = (props) => {\n const { effect = \"bounce\", style, ...rest } = props;\n const [keyframes, animationCss] = useMemo(() => getStyles$7(effect), [effect]);\n return /* @__PURE__ */ jsx(\n Reveal,\n {\n keyframes,\n style: Object.assign({}, style, animationCss),\n ...rest\n }\n );\n};\n\nconst bounceIn = keyframes`\n from,\n 20%,\n 40%,\n 60%,\n 80%,\n to {\n animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n }\n\n 0% {\n opacity: 0;\n transform: scale3d(0.3, 0.3, 0.3);\n }\n\n 20% {\n transform: scale3d(1.1, 1.1, 1.1);\n }\n\n 40% {\n transform: scale3d(0.9, 0.9, 0.9);\n }\n\n 60% {\n opacity: 1;\n transform: scale3d(1.03, 1.03, 1.03);\n }\n\n 80% {\n transform: scale3d(0.97, 0.97, 0.97);\n }\n\n to {\n opacity: 1;\n transform: scale3d(1, 1, 1);\n }\n`;\n\nconst bounceInDown = keyframes`\n from,\n 60%,\n 75%,\n 90%,\n to {\n animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n }\n\n 0% {\n opacity: 0;\n transform: translate3d(0, -3000px, 0) scaleY(3);\n }\n\n 60% {\n opacity: 1;\n transform: translate3d(0, 25px, 0) scaleY(0.9);\n }\n\n 75% {\n transform: translate3d(0, -10px, 0) scaleY(0.95);\n }\n\n 90% {\n transform: translate3d(0, 5px, 0) scaleY(0.985);\n }\n\n to {\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst bounceInLeft = keyframes`\n from,\n 60%,\n 75%,\n 90%,\n to {\n animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n }\n\n 0% {\n opacity: 0;\n transform: translate3d(-3000px, 0, 0) scaleX(3);\n }\n\n 60% {\n opacity: 1;\n transform: translate3d(25px, 0, 0) scaleX(1);\n }\n\n 75% {\n transform: translate3d(-10px, 0, 0) scaleX(0.98);\n }\n\n 90% {\n transform: translate3d(5px, 0, 0) scaleX(0.995);\n }\n\n to {\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst bounceInRight = keyframes`\n from,\n 60%,\n 75%,\n 90%,\n to {\n animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n }\n\n from {\n opacity: 0;\n transform: translate3d(3000px, 0, 0) scaleX(3);\n }\n\n 60% {\n opacity: 1;\n transform: translate3d(-25px, 0, 0) scaleX(1);\n }\n\n 75% {\n transform: translate3d(10px, 0, 0) scaleX(0.98);\n }\n\n 90% {\n transform: translate3d(-5px, 0, 0) scaleX(0.995);\n }\n\n to {\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst bounceInUp = keyframes`\n from,\n 60%,\n 75%,\n 90%,\n to {\n animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n }\n\n from {\n opacity: 0;\n transform: translate3d(0, 3000px, 0) scaleY(5);\n }\n\n 60% {\n opacity: 1;\n transform: translate3d(0, -20px, 0) scaleY(0.9);\n }\n\n 75% {\n transform: translate3d(0, 10px, 0) scaleY(0.95);\n }\n\n 90% {\n transform: translate3d(0, -5px, 0) scaleY(0.985);\n }\n\n to {\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst bounceOut = keyframes`\n 20% {\n transform: scale3d(0.9, 0.9, 0.9);\n }\n\n 50%,\n 55% {\n opacity: 1;\n transform: scale3d(1.1, 1.1, 1.1);\n }\n\n to {\n opacity: 0;\n transform: scale3d(0.3, 0.3, 0.3);\n }\n`;\n\nconst bounceOutDown = keyframes`\n 20% {\n transform: translate3d(0, 10px, 0) scaleY(0.985);\n }\n\n 40%,\n 45% {\n opacity: 1;\n transform: translate3d(0, -20px, 0) scaleY(0.9);\n }\n\n to {\n opacity: 0;\n transform: translate3d(0, 2000px, 0) scaleY(3);\n }\n`;\n\nconst bounceOutLeft = keyframes`\n 20% {\n opacity: 1;\n transform: translate3d(20px, 0, 0) scaleX(0.9);\n }\n\n to {\n opacity: 0;\n transform: translate3d(-2000px, 0, 0) scaleX(2);\n }\n`;\n\nconst bounceOutRight = keyframes`\n 20% {\n opacity: 1;\n transform: translate3d(-20px, 0, 0) scaleX(0.9);\n }\n\n to {\n opacity: 0;\n transform: translate3d(2000px, 0, 0) scaleX(2);\n }\n`;\n\nconst bounceOutUp = keyframes`\n 20% {\n transform: translate3d(0, -10px, 0) scaleY(0.985);\n }\n\n 40%,\n 45% {\n opacity: 1;\n transform: translate3d(0, 20px, 0) scaleY(0.9);\n }\n\n to {\n opacity: 0;\n transform: translate3d(0, -2000px, 0) scaleY(3);\n }\n`;\n\nfunction getStyles$6(reverse, direction) {\n switch (direction) {\n case \"down\":\n return reverse ? bounceOutDown : bounceInDown;\n case \"left\":\n return reverse ? bounceOutLeft : bounceInLeft;\n case \"right\":\n return reverse ? bounceOutRight : bounceInRight;\n case \"up\":\n return reverse ? bounceOutUp : bounceInUp;\n default:\n return reverse ? bounceOut : bounceIn;\n }\n}\nconst Bounce = (props) => {\n const { direction, reverse = false, ...rest } = props;\n const keyframes = useMemo(\n () => getStyles$6(reverse, direction),\n [direction, reverse]\n );\n return /* @__PURE__ */ jsx(Reveal, { keyframes, ...rest });\n};\n\nconst fadeOut = keyframes`\n from {\n opacity: 1;\n }\n\n to {\n opacity: 0;\n }\n`;\n\nconst fadeOutBottomLeft = keyframes`\n from {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n\n to {\n opacity: 0;\n transform: translate3d(-100%, 100%, 0);\n }\n`;\n\nconst fadeOutBottomRight = keyframes`\n from {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n\n to {\n opacity: 0;\n transform: translate3d(100%, 100%, 0);\n }\n`;\n\nconst fadeOutDown = keyframes`\n from {\n opacity: 1;\n }\n\n to {\n opacity: 0;\n transform: translate3d(0, 100%, 0);\n }\n`;\n\nconst fadeOutDownBig = keyframes`\n from {\n opacity: 1;\n }\n\n to {\n opacity: 0;\n transform: translate3d(0, 2000px, 0);\n }\n`;\n\nconst fadeOutLeft = keyframes`\n from {\n opacity: 1;\n }\n\n to {\n opacity: 0;\n transform: translate3d(-100%, 0, 0);\n }\n`;\n\nconst fadeOutLeftBig = keyframes`\n from {\n opacity: 1;\n }\n\n to {\n opacity: 0;\n transform: translate3d(-2000px, 0, 0);\n }\n`;\n\nconst fadeOutRight = keyframes`\n from {\n opacity: 1;\n }\n\n to {\n opacity: 0;\n transform: translate3d(100%, 0, 0);\n }\n`;\n\nconst fadeOutRightBig = keyframes`\n from {\n opacity: 1;\n }\n\n to {\n opacity: 0;\n transform: translate3d(2000px, 0, 0);\n }\n`;\n\nconst fadeOutTopLeft = keyframes`\n from {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n\n to {\n opacity: 0;\n transform: translate3d(-100%, -100%, 0);\n }\n`;\n\nconst fadeOutTopRight = keyframes`\n from {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n\n to {\n opacity: 0;\n transform: translate3d(100%, -100%, 0);\n }\n`;\n\nconst fadeOutUp = keyframes`\n from {\n opacity: 1;\n }\n\n to {\n opacity: 0;\n transform: translate3d(0, -100%, 0);\n }\n`;\n\nconst fadeOutUpBig = keyframes`\n from {\n opacity: 1;\n }\n\n to {\n opacity: 0;\n transform: translate3d(0, -2000px, 0);\n }\n`;\n\nfunction getStyles$5(big, reverse, direction) {\n switch (direction) {\n case \"bottom-left\":\n return reverse ? fadeOutBottomLeft : fadeInBottomLeft;\n case \"bottom-right\":\n return reverse ? fadeOutBottomRight : fadeInBottomRight;\n case \"down\":\n return big ? reverse ? fadeOutDownBig : fadeInDownBig : reverse ? fadeOutDown : fadeInDown;\n case \"left\":\n return big ? reverse ? fadeOutLeftBig : fadeInLeftBig : reverse ? fadeOutLeft : fadeInLeft;\n case \"right\":\n return big ? reverse ? fadeOutRightBig : fadeInRightBig : reverse ? fadeOutRight : fadeInRight;\n case \"top-left\":\n return reverse ? fadeOutTopLeft : fadeInTopLeft;\n case \"top-right\":\n return reverse ? fadeOutTopRight : fadeInTopRight;\n case \"up\":\n return big ? reverse ? fadeOutUpBig : fadeInUpBig : reverse ? fadeOutUp : fadeInUp;\n default:\n return reverse ? fadeOut : fadeIn;\n }\n}\nconst Fade = (props) => {\n const { big = false, direction, reverse = false, ...rest } = props;\n const keyframes = useMemo(\n () => getStyles$5(big, reverse, direction),\n [big, direction, reverse]\n );\n return /* @__PURE__ */ jsx(Reveal, { keyframes, ...rest });\n};\n\nconst flip = keyframes`\n from {\n transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);\n animation-timing-function: ease-out;\n }\n\n 40% {\n transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)\n rotate3d(0, 1, 0, -190deg);\n animation-timing-function: ease-out;\n }\n\n 50% {\n transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)\n rotate3d(0, 1, 0, -170deg);\n animation-timing-function: ease-in;\n }\n\n 80% {\n transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)\n rotate3d(0, 1, 0, 0deg);\n animation-timing-function: ease-in;\n }\n\n to {\n transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);\n animation-timing-function: ease-in;\n }\n`;\n\nconst flipInX = keyframes`\n from {\n transform: perspective(400px) rotate3d(1, 0, 0, 90deg);\n animation-timing-function: ease-in;\n opacity: 0;\n }\n\n 40% {\n transform: perspective(400px) rotate3d(1, 0, 0, -20deg);\n animation-timing-function: ease-in;\n }\n\n 60% {\n transform: perspective(400px) rotate3d(1, 0, 0, 10deg);\n opacity: 1;\n }\n\n 80% {\n transform: perspective(400px) rotate3d(1, 0, 0, -5deg);\n }\n\n to {\n transform: perspective(400px);\n }\n`;\n\nconst flipInY = keyframes`\n from {\n transform: perspective(400px) rotate3d(0, 1, 0, 90deg);\n animation-timing-function: ease-in;\n opacity: 0;\n }\n\n 40% {\n transform: perspective(400px) rotate3d(0, 1, 0, -20deg);\n animation-timing-function: ease-in;\n }\n\n 60% {\n transform: perspective(400px) rotate3d(0, 1, 0, 10deg);\n opacity: 1;\n }\n\n 80% {\n transform: perspective(400px) rotate3d(0, 1, 0, -5deg);\n }\n\n to {\n transform: perspective(400px);\n }\n`;\n\nconst flipOutX = keyframes`\n from {\n transform: perspective(400px);\n }\n\n 30% {\n transform: perspective(400px) rotate3d(1, 0, 0, -20deg);\n opacity: 1;\n }\n\n to {\n transform: perspective(400px) rotate3d(1, 0, 0, 90deg);\n opacity: 0;\n }\n`;\n\nconst flipOutY = keyframes`\n from {\n transform: perspective(400px);\n }\n\n 30% {\n transform: perspective(400px) rotate3d(0, 1, 0, -15deg);\n opacity: 1;\n }\n\n to {\n transform: perspective(400px) rotate3d(0, 1, 0, 90deg);\n opacity: 0;\n }\n`;\n\nfunction getStyles$4(reverse, direction) {\n switch (direction) {\n case \"horizontal\":\n return reverse ? flipOutX : flipInX;\n case \"vertical\":\n return reverse ? flipOutY : flipInY;\n default:\n return flip;\n }\n}\nconst animationCss$1 = {\n backfaceVisibility: \"visible\"\n};\nconst Flip = (props) => {\n const { direction, reverse = false, style, ...rest } = props;\n const keyframes = useMemo(\n () => getStyles$4(reverse, direction),\n [direction, reverse]\n );\n return /* @__PURE__ */ jsx(\n Reveal,\n {\n keyframes,\n style: Object.assign({}, style, animationCss$1),\n ...rest\n }\n );\n};\n\nconst hinge = keyframes`\n 0% {\n animation-timing-function: ease-in-out;\n }\n\n 20%,\n 60% {\n transform: rotate3d(0, 0, 1, 80deg);\n animation-timing-function: ease-in-out;\n }\n\n 40%,\n 80% {\n transform: rotate3d(0, 0, 1, 60deg);\n animation-timing-function: ease-in-out;\n opacity: 1;\n }\n\n to {\n transform: translate3d(0, 700px, 0);\n opacity: 0;\n }\n`;\n\nconst jackInTheBox = keyframes`\n from {\n opacity: 0;\n transform: scale(0.1) rotate(30deg);\n transform-origin: center bottom;\n }\n\n 50% {\n transform: rotate(-10deg);\n }\n\n 70% {\n transform: rotate(3deg);\n }\n\n to {\n opacity: 1;\n transform: scale(1);\n }\n`;\n\nconst rollIn = keyframes`\n from {\n opacity: 0;\n transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);\n }\n\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst rollOut = keyframes`\n from {\n opacity: 1;\n }\n\n to {\n opacity: 0;\n transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);\n }\n`;\n\nconst animationCss = {\n transformOrigin: \"top left\"\n};\nconst Hinge = (props) => {\n const { style, ...rest } = props;\n return /* @__PURE__ */ jsx(\n Reveal,\n {\n keyframes: hinge,\n style: Object.assign({}, style, animationCss),\n ...rest\n }\n );\n};\n\nconst JackInTheBox = (props) => {\n return /* @__PURE__ */ jsx(Reveal, { keyframes: jackInTheBox, ...props });\n};\n\nfunction getStyles$3(reverse) {\n return reverse ? rollOut : rollIn;\n}\nconst Roll = (props) => {\n const { reverse = false, ...rest } = props;\n const keyframes = useMemo(() => getStyles$3(reverse), [reverse]);\n return /* @__PURE__ */ jsx(Reveal, { keyframes, ...rest });\n};\n\nconst rotateIn = keyframes`\n from {\n transform: rotate3d(0, 0, 1, -200deg);\n opacity: 0;\n }\n\n to {\n transform: translate3d(0, 0, 0);\n opacity: 1;\n }\n`;\n\nconst rotateInDownLeft = keyframes`\n from {\n transform: rotate3d(0, 0, 1, -45deg);\n opacity: 0;\n }\n\n to {\n transform: translate3d(0, 0, 0);\n opacity: 1;\n }\n`;\n\nconst rotateInDownRight = keyframes`\n from {\n transform: rotate3d(0, 0, 1, 45deg);\n opacity: 0;\n }\n\n to {\n transform: translate3d(0, 0, 0);\n opacity: 1;\n }\n`;\n\nconst rotateInUpLeft = keyframes`\n from {\n transform: rotate3d(0, 0, 1, 45deg);\n opacity: 0;\n }\n\n to {\n transform: translate3d(0, 0, 0);\n opacity: 1;\n }\n`;\n\nconst rotateInUpRight = keyframes`\n from {\n transform: rotate3d(0, 0, 1, -90deg);\n opacity: 0;\n }\n\n to {\n transform: translate3d(0, 0, 0);\n opacity: 1;\n }\n`;\n\nconst rotateOut = keyframes`\n from {\n opacity: 1;\n }\n\n to {\n transform: rotate3d(0, 0, 1, 200deg);\n opacity: 0;\n }\n`;\n\nconst rotateOutDownLeft = keyframes`\n from {\n opacity: 1;\n }\n\n to {\n transform: rotate3d(0, 0, 1, 45deg);\n opacity: 0;\n }\n`;\n\nconst rotateOutDownRight = keyframes`\n from {\n opacity: 1;\n }\n\n to {\n transform: rotate3d(0, 0, 1, -45deg);\n opacity: 0;\n }\n`;\n\nconst rotateOutUpLeft = keyframes`\n from {\n opacity: 1;\n }\n\n to {\n transform: rotate3d(0, 0, 1, -45deg);\n opacity: 0;\n }\n`;\n\nconst rotateOutUpRight = keyframes`\n from {\n opacity: 1;\n }\n\n to {\n transform: rotate3d(0, 0, 1, 90deg);\n opacity: 0;\n }\n`;\n\nfunction getStyles$2(reverse, direction) {\n switch (direction) {\n case \"bottom-left\":\n return reverse ? [rotateOutDownLeft, { transformOrigin: \"left bottom\" }] : [rotateInDownLeft, { transformOrigin: \"left bottom\" }];\n case \"bottom-right\":\n return reverse ? [rotateOutDownRight, { transformOrigin: \"right bottom\" }] : [rotateInDownRight, { transformOrigin: \"right bottom\" }];\n case \"top-left\":\n return reverse ? [rotateOutUpLeft, { transformOrigin: \"left bottom\" }] : [rotateInUpLeft, { transformOrigin: \"left bottom\" }];\n case \"top-right\":\n return reverse ? [rotateOutUpRight, { transformOrigin: \"right bottom\" }] : [rotateInUpRight, { transformOrigin: \"right bottom\" }];\n default:\n return reverse ? [rotateOut, { transformOrigin: \"center\" }] : [rotateIn, { transformOrigin: \"center\" }];\n }\n}\nconst Rotate = (props) => {\n const { direction, reverse = false, style, ...rest } = props;\n const [keyframes, animationCss] = useMemo(\n () => getStyles$2(reverse, direction),\n [direction, reverse]\n );\n return /* @__PURE__ */ jsx(\n Reveal,\n {\n keyframes,\n style: Object.assign({}, style, animationCss),\n ...rest\n }\n );\n};\n\nconst slideInDown = keyframes`\n from {\n transform: translate3d(0, -100%, 0);\n visibility: visible;\n }\n\n to {\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst slideInLeft = keyframes`\n from {\n transform: translate3d(-100%, 0, 0);\n visibility: visible;\n }\n\n to {\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst slideInRight = keyframes`\n from {\n transform: translate3d(100%, 0, 0);\n visibility: visible;\n }\n\n to {\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst slideInUp = keyframes`\n from {\n transform: translate3d(0, 100%, 0);\n visibility: visible;\n }\n\n to {\n transform: translate3d(0, 0, 0);\n }\n`;\n\nconst slideOutDown = keyframes`\n from {\n transform: translate3d(0, 0, 0);\n }\n\n to {\n visibility: hidden;\n transform: translate3d(0, 100%, 0);\n }\n`;\n\nconst slideOutLeft = keyframes`\n from {\n transform: translate3d(0, 0, 0);\n }\n\n to {\n visibility: hidden;\n transform: translate3d(-100%, 0, 0);\n }\n`;\n\nconst slideOutRight = keyframes`\n from {\n transform: translate3d(0, 0, 0);\n }\n\n to {\n visibility: hidden;\n transform: translate3d(100%, 0, 0);\n }\n`;\n\nconst slideOutUp = keyframes`\n from {\n transform: translate3d(0, 0, 0);\n }\n\n to {\n visibility: hidden;\n transform: translate3d(0, -100%, 0);\n }\n`;\n\nfunction getStyles$1(reverse, direction) {\n switch (direction) {\n case \"down\":\n return reverse ? slideOutDown : slideInDown;\n case \"right\":\n return reverse ? slideOutRight : slideInRight;\n case \"up\":\n return reverse ? slideOutUp : slideInUp;\n case \"left\":\n default:\n return reverse ? slideOutLeft : slideInLeft;\n }\n}\nconst Slide = (props) => {\n const { direction, reverse = false, ...rest } = props;\n const keyframes = useMemo(\n () => getStyles$1(reverse, direction),\n [direction, reverse]\n );\n return /* @__PURE__ */ jsx(Reveal, { keyframes, ...rest });\n};\n\nconst zoomIn = keyframes`\n from {\n opacity: 0;\n transform: scale3d(0.3, 0.3, 0.3);\n }\n\n 50% {\n opacity: 1;\n }\n`;\n\nconst zoomInDown = keyframes`\n from {\n opacity: 0;\n transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);\n animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);\n }\n\n 60% {\n opacity: 1;\n transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);\n animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);\n }\n`;\n\nconst zoomInLeft = keyframes`\n from {\n opacity: 0;\n transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);\n animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);\n }\n\n 60% {\n opacity: 1;\n transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);\n animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);\n }\n`;\n\nconst zoomInRight = keyframes`\n from {\n opacity: 0;\n transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);\n animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);\n }\n\n 60% {\n opacity: 1;\n transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);\n animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);\n }\n`;\n\nconst zoomInUp = keyframes`\n from {\n opacity: 0;\n transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);\n animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);\n }\n\n 60% {\n opacity: 1;\n transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);\n animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);\n }\n`;\n\nconst zoomOut = keyframes`\n from {\n opacity: 1;\n }\n\n 50% {\n opacity: 0;\n transform: scale3d(0.3, 0.3, 0.3);\n }\n\n to {\n opacity: 0;\n }\n`;\n\nconst zoomOutDown = keyframes`\n 40% {\n opacity: 1;\n transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);\n animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);\n }\n\n to {\n opacity: 0;\n transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);\n animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);\n }\n`;\n\nconst zoomOutLeft = keyframes`\n 40% {\n opacity: 1;\n transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);\n }\n\n to {\n opacity: 0;\n transform: scale(0.1) translate3d(-2000px, 0, 0);\n }\n`;\n\nconst zoomOutRight = keyframes`\n 40% {\n opacity: 1;\n transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);\n }\n\n to {\n opacity: 0;\n transform: scale(0.1) translate3d(2000px, 0, 0);\n }\n`;\n\nconst zoomOutUp = keyframes`\n 40% {\n opacity: 1;\n transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);\n animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);\n }\n\n to {\n opacity: 0;\n transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);\n animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);\n }\n`;\n\nfunction getStyles(reverse, direction) {\n switch (direction) {\n case \"down\":\n return reverse ? zoomOutDown : zoomInDown;\n case \"left\":\n return reverse ? zoomOutLeft : zoomInLeft;\n case \"right\":\n return reverse ? zoomOutRight : zoomInRight;\n case \"up\":\n return reverse ? zoomOutUp : zoomInUp;\n default:\n return reverse ? zoomOut : zoomIn;\n }\n}\nconst Zoom = (props) => {\n const { direction, reverse = false, ...rest } = props;\n const keyframes = useMemo(\n () => getStyles(reverse, direction),\n [direction, reverse]\n );\n return /* @__PURE__ */ jsx(Reveal, { keyframes, ...rest });\n};\n\nexport { AttentionSeeker, Bounce, Fade, Flip, Hinge, JackInTheBox, Reveal, Roll, Rotate, Slide, Zoom, Reveal as default };\n//# sourceMappingURL=index.js.map\n","import React from 'react'\r\n\r\nimport { keyframes } from '@emotion/react'\r\n// import Slide from 'react-awesome-reveal'\r\nimport Reveal from 'react-awesome-reveal'\r\n\r\nexport function getAnimation(animationType: string) {\r\n switch (animationType) {\r\n case `fade-in`:\r\n return keyframes`\r\n from {\r\n opacity: 0;\r\n }\r\n \r\n to {\r\n opacity: 1;\r\n }\r\n `\r\n \r\n case `fade-from-top`:\r\n return keyframes`\r\n from {\r\n opacity: 0;\r\n transform: translate(0, -200px);\r\n }\r\n \r\n to {\r\n opacity: 1;\r\n transform: translate(0, 0);\r\n }\r\n `\r\n \r\n case `fade-from-left`:\r\n return keyframes`\r\n from {\r\n opacity: 0;\r\n transform: translate(-200px, 0);\r\n }\r\n \r\n to {\r\n opacity: 1;\r\n transform: translate(0, 0);\r\n }\r\n `\r\n \r\n case `fade-from-right`:\r\n return keyframes`\r\n from {\r\n opacity: 0;\r\n transform: translate(200px, 0);\r\n }\r\n \r\n to {\r\n opacity: 1;\r\n transform: translate(0, 0);\r\n }\r\n `\r\n \r\n default:\r\n return null\r\n }\r\n}\r\n\r\nexport function getAnimationWrapper(widgetChildren, isEnabled, widgetAnimation) {\r\n if (isEnabled && widgetAnimation) {\r\n return (\r\n \r\n {widgetChildren}\r\n \r\n )\r\n } else {\r\n return widgetChildren\r\n }\r\n}","import \"./WidgetContainer.scss\";\r\n\r\nimport React, { FunctionComponent } from \"react\";\r\nimport { getAnimation, getAnimationWrapper } from '../../utils/getAnimation'\r\n\r\n// import PuxAnchor from '../PuxAnchor/PuxAnchor'\r\nimport { WidgetMetadata, WidgetProperitesPart, WidgetAnimationPart } from \"./WidgetBuilder\";\r\n\r\ninterface WidgetContainerProps extends WidgetProperitesPart, WidgetMetadata, WidgetAnimationPart {\r\n children: React.ReactNode;\r\n thin?: boolean;\r\n cropped?: boolean;\r\n}\r\n\r\ninterface WidgetAttributes {\r\n className: string;\r\n id?: string;\r\n}\r\n\r\nconst WidgetContainer: FunctionComponent = (props) => {\r\n let className = `WidgetContainer`;\r\n\r\n className += props.thin ? ` WidgetContainer--thin` : ``;\r\n\r\n className += props.cropped ? ` WidgetContainer--cropped` : ``;\r\n\r\n props.widgetPropertiesMarginBottom\r\n ? (className += ` ${props.widgetPropertiesMarginBottom}`)\r\n : null;\r\n props.widgetPropertiesMarginTop\r\n ? (className += ` ${props.widgetPropertiesMarginTop}`)\r\n : null;\r\n props.widgetPropertiesPaddingBottom\r\n ? (className += ` ${props.widgetPropertiesPaddingBottom}`)\r\n : null;\r\n props.widgetPropertiesPaddingTop\r\n ? (className += ` ${props.widgetPropertiesPaddingTop}`)\r\n : null;\r\n props.widgetPropertiesPartMobileOrder\r\n ? (className += ` mobile-order-${props.widgetPropertiesPartMobileOrder}`)\r\n : null;\r\n props.size ? (className += ` WidgetContainer--${props.size}`) : null;\r\n props.alignment ? (className += ` ${props.alignment}`) : null;\r\n\r\n const widgetAttributes: WidgetAttributes = {\r\n className: className,\r\n };\r\n\r\n // props.widgetPropertiesPartID\r\n // ? (widgetAttributes.id = props.widgetPropertiesPartID)\r\n // : null\r\n\r\n const widgetAnimation = getAnimation(props.widgetAnimationPartType)\r\n\r\n if (!props.widgetPropertiesPartID) {\r\n return
{props.children}
;\r\n } else if (props.widgetPropertiesPartID === `remove-position-relative`) {\r\n return (\r\n
\r\n {props.children}\r\n
\r\n );\r\n } else {\r\n return (\r\n
\r\n {/* */}\r\n {getAnimationWrapper(props.children, props.widgetAnimationPartIsEnabled, widgetAnimation)}\r\n
\r\n );\r\n }\r\n};\r\n\r\nexport default WidgetContainer;\r\n","import \"./SalmonSoftwarePerson.scss\";\r\n\r\nimport React, { FunctionComponent } from \"react\";\r\n\r\nimport PuxMediaSelector, {\r\n PuxMediaSelectorType,\r\n} from \"../../contentParts/mediaImage/PuxMediaSelector\";\r\n\r\nexport interface SalmonSoftwarePersonType {\r\n contentItemId?: string;\r\n displayText: string;\r\n personJob: string;\r\n personPhoto: PuxMediaSelectorType;\r\n}\r\n\r\nconst SalmonSoftwarePerson: FunctionComponent = (\r\n props\r\n) => {\r\n\r\n return (\r\n
\r\n
\r\n \r\n
\r\n
{props.displayText}
\r\n
{props.personJob}
\r\n
\r\n );\r\n};\r\n\r\nexport default SalmonSoftwarePerson;\r\n","import \"./SalmonSoftwarePersonsContainer.scss\";\r\n\r\nimport React, { FunctionComponent } from \"react\";\r\n\r\nimport SalmonSoftwarePerson, {\r\n SalmonSoftwarePersonType,\r\n} from \"../SalmonSoftwarePerson/SalmonSoftwarePerson\";\r\n\r\nexport interface SalmonSoftwarePersonsContainerType {\r\n contentItemId?: string;\r\n displayText: string;\r\n personsContainerItems: {\r\n contentItems: SalmonSoftwarePersonType[];\r\n };\r\n}\r\n\r\nconst SalmonSoftwarePersonsContainer: FunctionComponent<\r\n SalmonSoftwarePersonsContainerType\r\n> = (props) => {\r\n return (\r\n
\r\n

{props.displayText}

\r\n
\r\n {props.personsContainerItems.contentItems.map((person, idx) => (\r\n \r\n ))}\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default SalmonSoftwarePersonsContainer;\r\n","import React, { FunctionComponent } from 'react'\r\nimport { WidgetBase } from '../builders/WidgetBuilder'\r\nimport WidgetContainer from '../builders/WidgetContainer'\r\n\r\nimport SalmonSoftwarePersonsContainer, { SalmonSoftwarePersonsContainerType } from '../contentTypes/SalmonSoftwarePersonsContainer/SalmonSoftwarePersonsContainer'\r\n\r\nexport interface WidgetSalmonSoftwarePersonsContainerType extends WidgetBase, SalmonSoftwarePersonsContainerType {\r\n contentType: 'SalmonSoftwarePersonsContainer'\r\n}\r\n\r\nconst WidgetSalmonSoftwarePersonsContainer: FunctionComponent = (props) => (\r\n \r\n \r\n \r\n)\r\n\r\nexport default WidgetSalmonSoftwarePersonsContainer\r\n","import './PuxSection.scss';\r\n\r\nimport React, { FunctionComponent } from 'react';\r\nimport WidgetBuilder, {\r\n WidgetData,\r\n WidgetAnimationPart,\r\n WidgetProperitesPart,\r\n} from '../../builders/WidgetBuilder'\r\n// import PuxAnchor from 'Shared/components/PuxAnchor/PuxAnchor'\r\n// import PuxModal from 'Shared/components/PuxModal/PuxModal'\r\n\r\nimport { getAnimation, getAnimationWrapper } from '../../../utils/getAnimation';\r\nimport LottieAnimation from '../../../utils/LottieAnimation';\r\n\r\nexport interface PuxSectionType {\r\n contentType: 'PuxSection'\r\n contentItemId?: string\r\n sectionUseContainer: boolean\r\n sectionBordersBetweenWidgets: boolean\r\n sectionIsModal?: boolean\r\n sectionModalId?: string\r\n noSpacing: boolean\r\n template: [\r\n {\r\n contentItemId: string\r\n }\r\n ]\r\n puxBackgroundDefinition: {\r\n backgroundDefinitionColor: string\r\n }\r\n flow: {\r\n widgets: [WidgetData]\r\n }\r\n puxWidgetProperties: WidgetProperitesPart\r\n puxWidgetAnimation: WidgetAnimationPart\r\n}\r\n\r\nconst PuxSection: FunctionComponent = (props) => {\r\n interface WidgetAttributes {\r\n className: string\r\n id?: string\r\n }\r\n\r\n const hasAnimation = props.flow?.widgets.find((widget) => widget.contentType === \"SalmonSoftwareAccordionsContainer\") ?? false\r\n\r\n/* console.log(\"🚀 ~ inView:\", inView)*/\r\n\r\n const { template } = props\r\n\r\n if (props.template?.length > 1) {\r\n props.flow?.widgets.sort((widget1, widget2) => {\r\n const index1 = template.findIndex(\r\n (x) => x.contentItemId === widget1.contentItemId\r\n )\r\n const index2 = template.findIndex(\r\n (x) => x.contentItemId === widget2.contentItemId\r\n )\r\n return index1 - index2\r\n })\r\n }\r\n\r\n const widgetProperties = props.puxWidgetProperties\r\n let className = `Section`\r\n props.puxBackgroundDefinition?.backgroundDefinitionColor\r\n ? (className += ` Section${props.puxBackgroundDefinition.backgroundDefinitionColor}`)\r\n : null\r\n widgetProperties.widgetPropertiesPartMarginBottom\r\n ? (className += ` ${widgetProperties.widgetPropertiesPartMarginBottom}`)\r\n : null\r\n widgetProperties.widgetPropertiesPartMarginTop\r\n ? (className += ` ${widgetProperties.widgetPropertiesPartMarginTop}`)\r\n : null\r\n widgetProperties.widgetPropertiesPartPaddingBottom\r\n ? (className += ` ${widgetProperties.widgetPropertiesPartPaddingBottom}`)\r\n : null\r\n widgetProperties.widgetPropertiesPartPaddingTop\r\n ? (className += ` ${widgetProperties.widgetPropertiesPartPaddingTop}`)\r\n : null\r\n\r\n const widgetAttributes: WidgetAttributes = {\r\n className: className,\r\n }\r\n\r\n const widgetAnimation = getAnimation(props.puxWidgetAnimation?.widgetAnimationPartType)\r\n\r\n const content = (\r\n
\r\n {hasAnimation ? : null}\r\n \r\n
\r\n {props.puxWidgetAnimation?.widgetAnimationPartIsEnabled ?\r\n getAnimationWrapper(, props.puxWidgetAnimation?.widgetAnimationPartIsEnabled, widgetAnimation)\r\n :\r\n \r\n }\r\n
\r\n \r\n
\r\n )\r\n\r\n if (\r\n props.sectionIsModal &&\r\n typeof props.sectionModalId === `string` &&\r\n props.sectionModalId.length > 0\r\n ) {\r\n return content //{content}\r\n } else if (widgetProperties.widgetPropertiesPartID) {\r\n return content\r\n // (\r\n // \r\n // {content}\r\n // \r\n // )\r\n } else {\r\n return content\r\n }\r\n}\r\n\r\nexport default PuxSection\r\n","import React, { FunctionComponent } from 'react'\r\nimport {\r\n WidgetBase\r\n} from '../builders/WidgetBuilder'\r\nimport PuxSection, { PuxSectionType } from '../contentTypes/PuxSection/PuxSection'\r\n// import PuxAnchor from 'Shared/components/PuxAnchor/PuxAnchor'\r\n// import PuxModal from 'Shared/components/PuxModal/PuxModal'\r\n\r\nexport interface WidgetPuxSectionType extends WidgetBase, PuxSectionType {\r\n contentType: 'PuxSection'\r\n}\r\n\r\nconst WidgetPuxSection: FunctionComponent = (props) => {\r\n return \r\n}\r\n\r\nexport default WidgetPuxSection\r\n","// import './PuxButton.scss'\r\n\r\nimport { useLocation } from \"@reach/router\";\r\nimport { Link } from \"gatsby\";\r\n// import { AnchorLink } from 'gatsby-plugin-anchor-links'\r\nimport React, { FunctionComponent } from \"react\";\r\n// import { getModalTriggerId } from 'Shared/components/PuxModal/PuxModal'\r\nimport { getHrefLang, getLocalizedUrl } from \"../../../utils/localeURL\";\r\n\r\nexport interface PuxButtonType {\r\n buttonNewWindow?: boolean;\r\n buttonOpenModalId?: string;\r\n buttonLink: {\r\n url: [string];\r\n internal: [boolean];\r\n text: [string];\r\n };\r\n buttonType: string;\r\n}\r\n\r\nconst PuxButton: FunctionComponent = (props) => {\r\n const target = props.buttonNewWindow ? `_blank` : undefined;\r\n const url = props.buttonLink?.url?.length && props.buttonLink.url[0];\r\n const text = props.buttonLink?.text?.length && props.buttonLink.text[0];\r\n\r\n if (!text) return null;\r\n\r\n const classes: string[] = [\"Button\", `${props.buttonType}`];\r\n\r\n const openModal = (event) => {\r\n event.preventDefault();\r\n // const trigger = document.getElementById(\r\n // getModalTriggerId(props.buttonOpenModalId)\r\n // )\r\n // if (trigger) {\r\n // trigger.click()\r\n // } else {\r\n // console.log(\r\n // `Modal error: Section-modal with ID \"${props.buttonOpenModalId}\" not found`\r\n // )\r\n // }\r\n };\r\n\r\n if (url && props.buttonLink.internal[0]) {\r\n // to={`${getLocalizedUrl(url)}`}\r\n return (\r\n \r\n {text}\r\n \r\n );\r\n } else {\r\n if (url && !url.includes(`#`)) {\r\n return (\r\n \r\n {text}\r\n \r\n );\r\n }\r\n // else if (url && url.includes(`#`)) {\r\n // const location = useLocation()\r\n // const pathname = location.pathname\r\n // return (\r\n // \r\n // {text}\r\n // \r\n // )\r\n // }\r\n else {\r\n return (\r\n \r\n {text}\r\n \r\n );\r\n }\r\n }\r\n};\r\n\r\nexport default PuxButton;\r\n","// import './PuxTopImage.scss'\r\n\r\nimport React, { FunctionComponent } from 'react'\r\nimport PuxWysiwyg, {\r\n PuxWysiwygHtmlBodyType,\r\n} from '../PuxWysiwyg/PuxWysiwyg'\r\n\r\nimport PuxMediaSelector, {\r\n PuxMediaSelectorType,\r\n} from '../../contentParts/mediaImage/PuxMediaSelector'\r\nimport PuxButton, { PuxButtonType } from '../../contentParts/button/PuxButton'\r\n// import PuxIconBuilder from '../PuxIconBuilder/PuxIconBuilder'\r\n// import PuxVideo, { PuxVideoType } from '../PuxVideo/PuxVideo'\r\n\r\nexport enum TopImageContentAlign {\r\n LEFT = `left`,\r\n CENTER = `center`,\r\n}\r\n\r\nexport enum TopImageContentColor {\r\n DEFAULT = `none`,\r\n WHITE = `white`,\r\n}\r\n\r\ntype TopImageButtonAlign = TopImageContentAlign\r\n\r\nexport enum TopImageImageStyle {\r\n BACKGROUND_GRADIENT = `background-gradient`,\r\n BACKGROUND = `background`,\r\n INSIDE = `inside`,\r\n}\r\n\r\nexport interface PuxTopImageType {\r\n contentItemId?: string\r\n displayText: string\r\n topImageContent: PuxWysiwygHtmlBodyType\r\n topImageContentAlign: TopImageContentAlign\r\n topImageContentColor: TopImageContentColor\r\n topImageButtonAlign: TopImageButtonAlign\r\n topImageBenefit1: PuxWysiwygHtmlBodyType\r\n topImageBenefit2: PuxWysiwygHtmlBodyType\r\n topImageImageStyle: TopImageImageStyle\r\n topImageButton: PuxButtonType\r\n topImageSecondaryButton: PuxButtonType\r\n topImageBackground: PuxMediaSelectorType\r\n // puxVideo: PuxVideoType\r\n}\r\n\r\nconst rootClass = `topimage`\r\n\r\nconst PuxTopImage: FunctionComponent = (props) => {\r\n const hasTopImageVideo = (url: string) => {\r\n return url ? TopImageImageStyle.INSIDE : props.topImageImageStyle\r\n }\r\n\r\n let contentColorClass: string\r\n switch (props.topImageContentColor ?? TopImageContentColor.DEFAULT) {\r\n case TopImageContentColor.WHITE:\r\n contentColorClass = `is-white`\r\n break\r\n default:\r\n contentColorClass = ``\r\n break\r\n }\r\n\r\n const classes =\r\n `${rootClass}-${props.topImageContentAlign} ` +\r\n `${rootClass}-${hasTopImageVideo(props.puxVideo?.videoYTID?.html)} ` +\r\n `${rootClass}-container`\r\n\r\n return (\r\n
\r\n
\r\n
\r\n \r\n {/* {props.puxVideo?.videoYTID?.html && (\r\n \r\n )} */}\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n {props.topImageBenefit1?.html.trim() && (\r\n
\r\n {/* */}\r\n \r\n
\r\n )}\r\n {props.topImageBenefit2?.html.trim() && (\r\n
\r\n {/* */}\r\n \r\n
\r\n )}\r\n
\r\n \r\n \r\n {props.topImageSecondaryButton && (\r\n \r\n )}\r\n
\r\n
\r\n
\r\n
\r\n \r\n )\r\n}\r\n\r\nexport default PuxTopImage\r\n","import React, { FunctionComponent } from 'react'\r\nimport { WidgetBase } from '../builders/WidgetBuilder'\r\nimport WidgetContainer from '../builders/WidgetContainer'\r\n\r\nimport PuxTopImage, { PuxTopImageType } from '../contentTypes/PuxTopImage/PuxTopImage'\r\n\r\nexport interface WidgetPuxTopImageType extends WidgetBase, PuxTopImageType {\r\n contentType: 'PuxTopImage'\r\n}\r\n\r\nconst WidgetPuxTopImage: FunctionComponent = (props) => (\r\n \r\n \r\n \r\n)\r\n\r\nexport default WidgetPuxTopImage\r\n","import React, { FunctionComponent } from 'react'\r\nimport { WidgetBase } from '../builders/WidgetBuilder'\r\nimport WidgetContainer from '../builders/WidgetContainer'\r\nimport PuxWysiwyg, {\r\n PuxWysiwygHtmlBodyType,\r\n} from '../contentTypes/PuxWysiwyg/PuxWysiwyg'\r\n\r\nexport interface WidgetPuxWysiwygType extends WidgetBase {\r\n contentType: 'PuxWysiwyg'\r\n wysiwygSmallContainer: boolean\r\n htmlBody: PuxWysiwygHtmlBodyType\r\n}\r\n\r\nconst WidgetPuxWysiwyg: FunctionComponent = (props) => (\r\n \r\n \r\n \r\n)\r\nexport default WidgetPuxWysiwyg\r\n","import \"./SalmonSoftwareBenefit.scss\";\r\n\r\nimport React, { FunctionComponent } from \"react\";\r\n\r\nimport PuxMediaSelector, {\r\n PuxMediaSelectorType,\r\n} from \"../../contentParts/mediaImage/PuxMediaSelector\";\r\nimport PuxWysiwyg, { PuxWysiwygHtmlBodyType } from \"../PuxWysiwyg/PuxWysiwyg\";\r\n\r\nexport interface SalmonSoftwareBenefitType {\r\n contentItemId?: string;\r\n displayText: string;\r\n benefitContent: PuxWysiwygHtmlBodyType;\r\n benefitIcon: PuxMediaSelectorType;\r\n}\r\n\r\nconst SalmonSoftwareBenefit: FunctionComponent = (\r\n props\r\n) => {\r\n return (\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default SalmonSoftwareBenefit;\r\n","import \"./SalmonSoftwareBenefitsContainer.scss\";\r\n\r\nimport React, { FunctionComponent } from \"react\";\r\nimport SalmonSoftwareBenefit, {\r\n SalmonSoftwareBenefitType,\r\n} from \"../SalmonSoftwareBenefit/SalmonSoftwareBenefit\";\r\nimport PuxButton, { PuxButtonType } from \"../../contentParts/button/PuxButton\";\r\n\r\nexport interface SalmonSoftwareBenefitsContainerType {\r\n contentItemId?: string;\r\n displayText: string;\r\n puxButton: PuxButtonType;\r\n benefitsContainerItems: {\r\n contentItems: SalmonSoftwareBenefitType[];\r\n };\r\n}\r\n\r\nconst SalmonSoftwarePersonsContainer: FunctionComponent<\r\n SalmonSoftwareBenefitsContainerType\r\n> = (props) => {\r\n return (\r\n
\r\n
\r\n

{props.displayText}

\r\n \r\n
\r\n
\r\n {props.benefitsContainerItems.contentItems.map((benefit, idx) => (\r\n \r\n ))}\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default SalmonSoftwarePersonsContainer;\r\n","import React, { FunctionComponent } from 'react'\r\nimport { WidgetBase } from '../builders/WidgetBuilder'\r\nimport WidgetContainer from '../builders/WidgetContainer'\r\n\r\nimport SalmonSoftwareBenefitsContainer, { SalmonSoftwareBenefitsContainerType } from '../contentTypes/SalmonSoftwareBenefitsContainer/SalmonSoftwareBenefitsContainer'\r\n\r\nexport interface WidgetSalmonSoftwareBenefitsContainerType extends WidgetBase, SalmonSoftwareBenefitsContainerType {\r\n contentType: 'SalmonSoftwareBenefitsContainer'\r\n}\r\n\r\nconst WidgetSalmonSoftwareBenefitsContainer: FunctionComponent = (props) => (\r\n \r\n \r\n \r\n)\r\n\r\nexport default WidgetSalmonSoftwareBenefitsContainer\r\n","import \"./SalmonSoftwareTestimonial.scss\";\r\n\r\nimport React, { FunctionComponent } from \"react\";\r\n\r\nimport PuxMediaSelector, {\r\n PuxMediaSelectorType,\r\n} from \"../../contentParts/mediaImage/PuxMediaSelector\";\r\nimport PuxWysiwyg, { PuxWysiwygHtmlBodyType } from \"../PuxWysiwyg/PuxWysiwyg\";\r\n\r\nexport interface SalmonSoftwareTestimonialType {\r\n contentItemId?: string;\r\n testimonialJob: string;\r\n testimonialName: string;\r\n testimonialCompany: string;\r\n testimonialContent: PuxWysiwygHtmlBodyType;\r\n testimonialPhoto: PuxMediaSelectorType;\r\n}\r\n\r\nconst SalmonSoftwareTestimonial: FunctionComponent<\r\n SalmonSoftwareTestimonialType\r\n> = (props) => {\r\n return (\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{props.testimonialName}
\r\n
\r\n {props.testimonialCompany} / {props.testimonialJob}\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default SalmonSoftwareTestimonial;\r\n","// node_modules/@splidejs/splide/dist/js/splide.esm.js\nvar PROJECT_CODE = \"splide\";\nvar DATA_ATTRIBUTE = `data-${PROJECT_CODE}`;\nvar CREATED = 1;\nvar MOUNTED = 2;\nvar IDLE = 3;\nvar MOVING = 4;\nvar DESTROYED = 5;\nvar STATES = {\n CREATED,\n MOUNTED,\n IDLE,\n MOVING,\n DESTROYED\n};\nvar DEFAULT_EVENT_PRIORITY = 10;\nvar DEFAULT_USER_EVENT_PRIORITY = 20;\nfunction empty(array) {\n array.length = 0;\n}\nfunction isObject(subject) {\n return !isNull(subject) && typeof subject === \"object\";\n}\nfunction isArray(subject) {\n return Array.isArray(subject);\n}\nfunction isFunction(subject) {\n return typeof subject === \"function\";\n}\nfunction isString(subject) {\n return typeof subject === \"string\";\n}\nfunction isUndefined(subject) {\n return typeof subject === \"undefined\";\n}\nfunction isNull(subject) {\n return subject === null;\n}\nfunction isHTMLElement(subject) {\n return subject instanceof HTMLElement;\n}\nfunction toArray(value) {\n return isArray(value) ? value : [value];\n}\nfunction forEach(values, iteratee) {\n toArray(values).forEach(iteratee);\n}\nfunction includes(array, value) {\n return array.indexOf(value) > -1;\n}\nfunction push(array, items) {\n array.push(...toArray(items));\n return array;\n}\nvar arrayProto = Array.prototype;\nfunction slice(arrayLike, start, end) {\n return arrayProto.slice.call(arrayLike, start, end);\n}\nfunction find(arrayLike, predicate) {\n return slice(arrayLike).filter(predicate)[0];\n}\nfunction toggleClass(elm, classes, add) {\n if (elm) {\n forEach(classes, (name) => {\n if (name) {\n elm.classList[add ? \"add\" : \"remove\"](name);\n }\n });\n }\n}\nfunction addClass(elm, classes) {\n toggleClass(elm, isString(classes) ? classes.split(\" \") : classes, true);\n}\nfunction append(parent, children2) {\n forEach(children2, parent.appendChild.bind(parent));\n}\nfunction before(nodes, ref) {\n forEach(nodes, (node) => {\n const parent = ref.parentNode;\n if (parent) {\n parent.insertBefore(node, ref);\n }\n });\n}\nfunction matches(elm, selector) {\n return isHTMLElement(elm) && (elm[\"msMatchesSelector\"] || elm.matches).call(elm, selector);\n}\nfunction children(parent, selector) {\n return parent ? slice(parent.children).filter((child2) => matches(child2, selector)) : [];\n}\nfunction child(parent, selector) {\n return selector ? children(parent, selector)[0] : parent.firstElementChild;\n}\nfunction forOwn(object, iteratee, right) {\n if (object) {\n let keys = Object.keys(object);\n keys = right ? keys.reverse() : keys;\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n if (key !== \"__proto__\") {\n if (iteratee(object[key], key) === false) {\n break;\n }\n }\n }\n }\n return object;\n}\nfunction assign(object) {\n slice(arguments, 1).forEach((source) => {\n forOwn(source, (value, key) => {\n object[key] = source[key];\n });\n });\n return object;\n}\nfunction merge(object, source) {\n forOwn(source, (value, key) => {\n if (isArray(value)) {\n object[key] = value.slice();\n } else if (isObject(value)) {\n object[key] = merge(isObject(object[key]) ? object[key] : {}, value);\n } else {\n object[key] = value;\n }\n });\n return object;\n}\nfunction removeAttribute(elm, attrs) {\n if (elm) {\n forEach(attrs, (attr) => {\n elm.removeAttribute(attr);\n });\n }\n}\nfunction setAttribute(elm, attrs, value) {\n if (isObject(attrs)) {\n forOwn(attrs, (value2, name) => {\n setAttribute(elm, name, value2);\n });\n } else {\n isNull(value) ? removeAttribute(elm, attrs) : elm.setAttribute(attrs, String(value));\n }\n}\nfunction create(tag, attrs, parent) {\n const elm = document.createElement(tag);\n if (attrs) {\n isString(attrs) ? addClass(elm, attrs) : setAttribute(elm, attrs);\n }\n parent && append(parent, elm);\n return elm;\n}\nfunction style(elm, prop, value) {\n if (isUndefined(value)) {\n return getComputedStyle(elm)[prop];\n }\n if (!isNull(value)) {\n const { style: style2 } = elm;\n value = `${value}`;\n if (style2[prop] !== value) {\n style2[prop] = value;\n }\n }\n}\nfunction display(elm, display2) {\n style(elm, \"display\", display2);\n}\nfunction focus(elm) {\n elm[\"setActive\"] && elm[\"setActive\"]() || elm.focus({ preventScroll: true });\n}\nfunction getAttribute(elm, attr) {\n return elm.getAttribute(attr);\n}\nfunction hasClass(elm, className) {\n return elm && elm.classList.contains(className);\n}\nfunction rect(target) {\n return target.getBoundingClientRect();\n}\nfunction remove(nodes) {\n forEach(nodes, (node) => {\n if (node && node.parentNode) {\n node.parentNode.removeChild(node);\n }\n });\n}\nfunction measure(parent, value) {\n if (isString(value)) {\n const div = create(\"div\", { style: `width: ${value}; position: absolute;` }, parent);\n value = rect(div).width;\n remove(div);\n }\n return value;\n}\nfunction parseHtml(html) {\n return child(new DOMParser().parseFromString(html, \"text/html\").body);\n}\nfunction prevent(e, stopPropagation) {\n e.preventDefault();\n if (stopPropagation) {\n e.stopPropagation();\n e.stopImmediatePropagation();\n }\n}\nfunction query(parent, selector) {\n return parent && parent.querySelector(selector);\n}\nfunction queryAll(parent, selector) {\n return slice(parent.querySelectorAll(selector));\n}\nfunction removeClass(elm, classes) {\n toggleClass(elm, classes, false);\n}\nfunction unit(value) {\n return isString(value) ? value : value ? `${value}px` : \"\";\n}\nfunction assert(condition, message = \"\") {\n if (!condition) {\n throw new Error(`[${PROJECT_CODE}] ${message}`);\n }\n}\nfunction nextTick(callback) {\n setTimeout(callback);\n}\nvar noop = () => {\n};\nfunction raf(func) {\n return requestAnimationFrame(func);\n}\nvar { min, max, floor, ceil, abs } = Math;\nfunction approximatelyEqual(x, y, epsilon) {\n return abs(x - y) < epsilon;\n}\nfunction between(number, minOrMax, maxOrMin, exclusive) {\n const minimum = min(minOrMax, maxOrMin);\n const maximum = max(minOrMax, maxOrMin);\n return exclusive ? minimum < number && number < maximum : minimum <= number && number <= maximum;\n}\nfunction clamp(number, x, y) {\n const minimum = min(x, y);\n const maximum = max(x, y);\n return min(max(minimum, number), maximum);\n}\nfunction sign(x) {\n return +(x > 0) - +(x < 0);\n}\nfunction format(string, replacements) {\n forEach(replacements, (replacement) => {\n string = string.replace(\"%s\", `${replacement}`);\n });\n return string;\n}\nfunction pad(number) {\n return number < 10 ? `0${number}` : `${number}`;\n}\nvar ids = {};\nfunction uniqueId(prefix) {\n return `${prefix}${pad(ids[prefix] = (ids[prefix] || 0) + 1)}`;\n}\nfunction EventBus() {\n let handlers = {};\n function on(events, callback, key, priority = DEFAULT_EVENT_PRIORITY) {\n forEachEvent(events, (event, namespace) => {\n handlers[event] = handlers[event] || [];\n push(handlers[event], {\n _event: event,\n _callback: callback,\n _namespace: namespace,\n _priority: priority,\n _key: key\n }).sort((handler1, handler2) => handler1._priority - handler2._priority);\n });\n }\n function off(events, key) {\n forEachEvent(events, (event, namespace) => {\n const eventHandlers = handlers[event];\n handlers[event] = eventHandlers && eventHandlers.filter((handler) => {\n return handler._key ? handler._key !== key : key || handler._namespace !== namespace;\n });\n });\n }\n function offBy(key) {\n forOwn(handlers, (eventHandlers, event) => {\n off(event, key);\n });\n }\n function emit(event) {\n (handlers[event] || []).forEach((handler) => {\n handler._callback.apply(handler, slice(arguments, 1));\n });\n }\n function destroy() {\n handlers = {};\n }\n function forEachEvent(events, iteratee) {\n toArray(events).join(\" \").split(\" \").forEach((eventNS) => {\n const fragments = eventNS.split(\".\");\n iteratee(fragments[0], fragments[1]);\n });\n }\n return {\n on,\n off,\n offBy,\n emit,\n destroy\n };\n}\nvar EVENT_MOUNTED = \"mounted\";\nvar EVENT_READY = \"ready\";\nvar EVENT_MOVE = \"move\";\nvar EVENT_MOVED = \"moved\";\nvar EVENT_SHIFTED = \"shifted\";\nvar EVENT_CLICK = \"click\";\nvar EVENT_ACTIVE = \"active\";\nvar EVENT_INACTIVE = \"inactive\";\nvar EVENT_VISIBLE = \"visible\";\nvar EVENT_HIDDEN = \"hidden\";\nvar EVENT_SLIDE_KEYDOWN = \"slide:keydown\";\nvar EVENT_REFRESH = \"refresh\";\nvar EVENT_UPDATED = \"updated\";\nvar EVENT_RESIZE = \"resize\";\nvar EVENT_RESIZED = \"resized\";\nvar EVENT_REPOSITIONED = \"repositioned\";\nvar EVENT_DRAG = \"drag\";\nvar EVENT_DRAGGING = \"dragging\";\nvar EVENT_DRAGGED = \"dragged\";\nvar EVENT_SCROLL = \"scroll\";\nvar EVENT_SCROLLED = \"scrolled\";\nvar EVENT_DESTROY = \"destroy\";\nvar EVENT_ARROWS_MOUNTED = \"arrows:mounted\";\nvar EVENT_ARROWS_UPDATED = \"arrows:updated\";\nvar EVENT_PAGINATION_MOUNTED = \"pagination:mounted\";\nvar EVENT_PAGINATION_UPDATED = \"pagination:updated\";\nvar EVENT_NAVIGATION_MOUNTED = \"navigation:mounted\";\nvar EVENT_AUTOPLAY_PLAY = \"autoplay:play\";\nvar EVENT_AUTOPLAY_PLAYING = \"autoplay:playing\";\nvar EVENT_AUTOPLAY_PAUSE = \"autoplay:pause\";\nvar EVENT_LAZYLOAD_LOADED = \"lazyload:loaded\";\nfunction EventInterface(Splide22) {\n const { event } = Splide22;\n const key = {};\n let listeners = [];\n function on(events, callback, priority) {\n event.on(events, callback, key, priority);\n }\n function off(events) {\n event.off(events, key);\n }\n function bind(targets, events, callback, options) {\n forEachEvent(targets, events, (target, event2) => {\n listeners.push([target, event2, callback, options]);\n target.addEventListener(event2, callback, options);\n });\n }\n function unbind(targets, events, callback) {\n forEachEvent(targets, events, (target, event2) => {\n listeners = listeners.filter((listener) => {\n if (listener[0] === target && listener[1] === event2 && (!callback || listener[2] === callback)) {\n target.removeEventListener(event2, listener[2], listener[3]);\n return false;\n }\n return true;\n });\n });\n }\n function forEachEvent(targets, events, iteratee) {\n forEach(targets, (target) => {\n if (target) {\n events.split(\" \").forEach(iteratee.bind(null, target));\n }\n });\n }\n function destroy() {\n listeners = listeners.filter((data) => unbind(data[0], data[1]));\n event.offBy(key);\n }\n event.on(EVENT_DESTROY, destroy, key);\n return {\n on,\n off,\n emit: event.emit,\n bind,\n unbind,\n destroy\n };\n}\nfunction RequestInterval(interval, onInterval, onUpdate, limit) {\n const { now } = Date;\n let startTime;\n let rate = 0;\n let id;\n let paused = true;\n let count = 0;\n function update() {\n if (!paused) {\n const elapsed = now() - startTime;\n if (elapsed >= interval) {\n rate = 1;\n startTime = now();\n } else {\n rate = elapsed / interval;\n }\n if (onUpdate) {\n onUpdate(rate);\n }\n if (rate === 1) {\n onInterval();\n if (limit && ++count >= limit) {\n return pause();\n }\n }\n raf(update);\n }\n }\n function start(resume) {\n !resume && cancel();\n startTime = now() - (resume ? rate * interval : 0);\n paused = false;\n raf(update);\n }\n function pause() {\n paused = true;\n }\n function rewind() {\n startTime = now();\n rate = 0;\n if (onUpdate) {\n onUpdate(rate);\n }\n }\n function cancel() {\n cancelAnimationFrame(id);\n rate = 0;\n id = 0;\n paused = true;\n }\n function set(time) {\n interval = time;\n }\n function isPaused() {\n return paused;\n }\n return {\n start,\n rewind,\n pause,\n cancel,\n set,\n isPaused\n };\n}\nfunction State(initialState) {\n let state = initialState;\n function set(value) {\n state = value;\n }\n function is(states) {\n return includes(toArray(states), state);\n }\n return { set, is };\n}\nfunction Throttle(func, duration) {\n let interval;\n function throttled() {\n if (!interval) {\n interval = RequestInterval(duration || 0, () => {\n func.apply(this, arguments);\n interval = null;\n }, null, 1);\n interval.start();\n }\n }\n return throttled;\n}\nfunction Options(Splide22, Components2, options) {\n const throttledObserve = Throttle(observe);\n let initialOptions;\n let points;\n let currPoint;\n function setup() {\n try {\n merge(options, JSON.parse(getAttribute(Splide22.root, DATA_ATTRIBUTE)));\n } catch (e) {\n assert(false, e.message);\n }\n initialOptions = merge({}, options);\n const { breakpoints } = options;\n if (breakpoints) {\n const isMin = options.mediaQuery === \"min\";\n points = Object.keys(breakpoints).sort((n, m) => isMin ? +m - +n : +n - +m).map((point) => [\n point,\n matchMedia(`(${isMin ? \"min\" : \"max\"}-width:${point}px)`)\n ]);\n observe();\n }\n }\n function mount() {\n if (points) {\n addEventListener(\"resize\", throttledObserve);\n }\n }\n function destroy(completely) {\n if (completely) {\n removeEventListener(\"resize\", throttledObserve);\n }\n }\n function observe() {\n const item = find(points, (item2) => item2[1].matches) || [];\n if (item[0] !== currPoint) {\n onMatch(currPoint = item[0]);\n }\n }\n function onMatch(point) {\n const newOptions = options.breakpoints[point] || initialOptions;\n if (newOptions.destroy) {\n Splide22.options = initialOptions;\n Splide22.destroy(newOptions.destroy === \"completely\");\n } else {\n if (Splide22.state.is(DESTROYED)) {\n destroy(true);\n Splide22.mount();\n }\n Splide22.options = newOptions;\n }\n }\n return {\n setup,\n mount,\n destroy\n };\n}\nvar RTL = \"rtl\";\nvar TTB = \"ttb\";\nvar ORIENTATION_MAP = {\n marginRight: [\"marginBottom\", \"marginLeft\"],\n autoWidth: [\"autoHeight\"],\n fixedWidth: [\"fixedHeight\"],\n paddingLeft: [\"paddingTop\", \"paddingRight\"],\n paddingRight: [\"paddingBottom\", \"paddingLeft\"],\n width: [\"height\"],\n left: [\"top\", \"right\"],\n right: [\"bottom\", \"left\"],\n x: [\"y\"],\n X: [\"Y\"],\n Y: [\"X\"],\n ArrowLeft: [\"ArrowUp\", \"ArrowRight\"],\n ArrowRight: [\"ArrowDown\", \"ArrowLeft\"]\n};\nfunction Direction(Splide22, Components2, options) {\n function resolve(prop, axisOnly) {\n const { direction } = options;\n const index = direction === RTL && !axisOnly ? 1 : direction === TTB ? 0 : -1;\n return ORIENTATION_MAP[prop][index] || prop;\n }\n function orient(value) {\n return value * (options.direction === RTL ? 1 : -1);\n }\n return {\n resolve,\n orient\n };\n}\nvar CLASS_ROOT = PROJECT_CODE;\nvar CLASS_SLIDER = `${PROJECT_CODE}__slider`;\nvar CLASS_TRACK = `${PROJECT_CODE}__track`;\nvar CLASS_LIST = `${PROJECT_CODE}__list`;\nvar CLASS_SLIDE = `${PROJECT_CODE}__slide`;\nvar CLASS_CLONE = `${CLASS_SLIDE}--clone`;\nvar CLASS_CONTAINER = `${CLASS_SLIDE}__container`;\nvar CLASS_ARROWS = `${PROJECT_CODE}__arrows`;\nvar CLASS_ARROW = `${PROJECT_CODE}__arrow`;\nvar CLASS_ARROW_PREV = `${CLASS_ARROW}--prev`;\nvar CLASS_ARROW_NEXT = `${CLASS_ARROW}--next`;\nvar CLASS_PAGINATION = `${PROJECT_CODE}__pagination`;\nvar CLASS_PAGINATION_PAGE = `${CLASS_PAGINATION}__page`;\nvar CLASS_PROGRESS = `${PROJECT_CODE}__progress`;\nvar CLASS_PROGRESS_BAR = `${CLASS_PROGRESS}__bar`;\nvar CLASS_AUTOPLAY = `${PROJECT_CODE}__autoplay`;\nvar CLASS_PLAY = `${PROJECT_CODE}__play`;\nvar CLASS_PAUSE = `${PROJECT_CODE}__pause`;\nvar CLASS_SPINNER = `${PROJECT_CODE}__spinner`;\nvar CLASS_INITIALIZED = \"is-initialized\";\nvar CLASS_ACTIVE = \"is-active\";\nvar CLASS_PREV = \"is-prev\";\nvar CLASS_NEXT = \"is-next\";\nvar CLASS_VISIBLE = \"is-visible\";\nvar CLASS_LOADING = \"is-loading\";\nvar STATUS_CLASSES = [CLASS_ACTIVE, CLASS_VISIBLE, CLASS_PREV, CLASS_NEXT, CLASS_LOADING];\nvar CLASSES = {\n slide: CLASS_SLIDE,\n clone: CLASS_CLONE,\n arrows: CLASS_ARROWS,\n arrow: CLASS_ARROW,\n prev: CLASS_ARROW_PREV,\n next: CLASS_ARROW_NEXT,\n pagination: CLASS_PAGINATION,\n page: CLASS_PAGINATION_PAGE,\n spinner: CLASS_SPINNER\n};\nfunction Elements(Splide22, Components2, options) {\n const { on } = EventInterface(Splide22);\n const { root } = Splide22;\n const elements = {};\n const slides = [];\n let classes;\n let slider;\n let track;\n let list;\n function setup() {\n collect();\n identify();\n addClass(root, classes = getClasses());\n }\n function mount() {\n on(EVENT_REFRESH, refresh, DEFAULT_EVENT_PRIORITY - 2);\n on(EVENT_UPDATED, update);\n }\n function destroy() {\n [root, track, list].forEach((elm) => {\n removeAttribute(elm, \"style\");\n });\n empty(slides);\n removeClass(root, classes);\n }\n function refresh() {\n destroy();\n setup();\n }\n function update() {\n removeClass(root, classes);\n addClass(root, classes = getClasses());\n }\n function collect() {\n slider = child(root, `.${CLASS_SLIDER}`);\n track = query(root, `.${CLASS_TRACK}`);\n list = child(track, `.${CLASS_LIST}`);\n assert(track && list, \"A track/list element is missing.\");\n push(slides, children(list, `.${CLASS_SLIDE}:not(.${CLASS_CLONE})`));\n const autoplay = find2(`.${CLASS_AUTOPLAY}`);\n const arrows = find2(`.${CLASS_ARROWS}`);\n assign(elements, {\n root,\n slider,\n track,\n list,\n slides,\n arrows,\n autoplay,\n prev: query(arrows, `.${CLASS_ARROW_PREV}`),\n next: query(arrows, `.${CLASS_ARROW_NEXT}`),\n bar: query(find2(`.${CLASS_PROGRESS}`), `.${CLASS_PROGRESS_BAR}`),\n play: query(autoplay, `.${CLASS_PLAY}`),\n pause: query(autoplay, `.${CLASS_PAUSE}`)\n });\n }\n function identify() {\n const id = root.id || uniqueId(PROJECT_CODE);\n root.id = id;\n track.id = track.id || `${id}-track`;\n list.id = list.id || `${id}-list`;\n }\n function find2(selector) {\n return child(root, selector) || child(slider, selector);\n }\n function getClasses() {\n return [\n `${CLASS_ROOT}--${options.type}`,\n `${CLASS_ROOT}--${options.direction}`,\n options.drag && `${CLASS_ROOT}--draggable`,\n options.isNavigation && `${CLASS_ROOT}--nav`,\n CLASS_ACTIVE\n ];\n }\n return assign(elements, {\n setup,\n mount,\n destroy\n });\n}\nvar ROLE = \"role\";\nvar ARIA_CONTROLS = \"aria-controls\";\nvar ARIA_CURRENT = \"aria-current\";\nvar ARIA_LABEL = \"aria-label\";\nvar ARIA_HIDDEN = \"aria-hidden\";\nvar TAB_INDEX = \"tabindex\";\nvar DISABLED = \"disabled\";\nvar ARIA_ORIENTATION = \"aria-orientation\";\nvar ALL_ATTRIBUTES = [\n ROLE,\n ARIA_CONTROLS,\n ARIA_CURRENT,\n ARIA_LABEL,\n ARIA_HIDDEN,\n ARIA_ORIENTATION,\n TAB_INDEX,\n DISABLED\n];\nvar SLIDE = \"slide\";\nvar LOOP = \"loop\";\nvar FADE = \"fade\";\nfunction Slide$1(Splide22, index, slideIndex, slide) {\n const { on, emit, bind, destroy: destroyEvents } = EventInterface(Splide22);\n const { Components, root, options } = Splide22;\n const { isNavigation, updateOnMove } = options;\n const { resolve } = Components.Direction;\n const styles = getAttribute(slide, \"style\");\n const isClone = slideIndex > -1;\n const container = child(slide, `.${CLASS_CONTAINER}`);\n const focusableNodes = options.focusableNodes && queryAll(slide, options.focusableNodes);\n let destroyed;\n function mount() {\n if (!isClone) {\n slide.id = `${root.id}-slide${pad(index + 1)}`;\n }\n bind(slide, \"click keydown\", (e) => {\n emit(e.type === \"click\" ? EVENT_CLICK : EVENT_SLIDE_KEYDOWN, self, e);\n });\n on([EVENT_REFRESH, EVENT_REPOSITIONED, EVENT_SHIFTED, EVENT_MOVED, EVENT_SCROLLED], update);\n on(EVENT_NAVIGATION_MOUNTED, initNavigation);\n if (updateOnMove) {\n on(EVENT_MOVE, onMove);\n }\n }\n function destroy() {\n destroyed = true;\n destroyEvents();\n removeClass(slide, STATUS_CLASSES);\n removeAttribute(slide, ALL_ATTRIBUTES);\n setAttribute(slide, \"style\", styles);\n }\n function initNavigation() {\n const idx = isClone ? slideIndex : index;\n const label = format(options.i18n.slideX, idx + 1);\n const controls = Splide22.splides.map((target) => target.splide.root.id).join(\" \");\n setAttribute(slide, ARIA_LABEL, label);\n setAttribute(slide, ARIA_CONTROLS, controls);\n setAttribute(slide, ROLE, \"menuitem\");\n updateActivity(isActive());\n }\n function onMove() {\n if (!destroyed) {\n update();\n }\n }\n function update() {\n if (!destroyed) {\n const { index: currIndex } = Splide22;\n updateActivity(isActive());\n updateVisibility(isVisible());\n toggleClass(slide, CLASS_PREV, index === currIndex - 1);\n toggleClass(slide, CLASS_NEXT, index === currIndex + 1);\n }\n }\n function updateActivity(active) {\n if (active !== hasClass(slide, CLASS_ACTIVE)) {\n toggleClass(slide, CLASS_ACTIVE, active);\n if (isNavigation) {\n setAttribute(slide, ARIA_CURRENT, active || null);\n }\n emit(active ? EVENT_ACTIVE : EVENT_INACTIVE, self);\n }\n }\n function updateVisibility(visible) {\n const hidden = !visible && (!isActive() || isClone);\n setAttribute(slide, ARIA_HIDDEN, hidden || null);\n setAttribute(slide, TAB_INDEX, !hidden && options.slideFocus ? 0 : null);\n if (focusableNodes) {\n focusableNodes.forEach((node) => {\n setAttribute(node, TAB_INDEX, hidden ? -1 : null);\n });\n }\n if (visible !== hasClass(slide, CLASS_VISIBLE)) {\n toggleClass(slide, CLASS_VISIBLE, visible);\n emit(visible ? EVENT_VISIBLE : EVENT_HIDDEN, self);\n }\n }\n function style$1(prop, value, useContainer) {\n style(useContainer && container || slide, prop, value);\n }\n function isActive() {\n const { index: curr } = Splide22;\n return curr === index || options.cloneStatus && curr === slideIndex;\n }\n function isVisible() {\n if (Splide22.is(FADE)) {\n return isActive();\n }\n const trackRect = rect(Components.Elements.track);\n const slideRect = rect(slide);\n const left = resolve(\"left\");\n const right = resolve(\"right\");\n return floor(trackRect[left]) <= ceil(slideRect[left]) && floor(slideRect[right]) <= ceil(trackRect[right]);\n }\n function isWithin(from, distance) {\n let diff = abs(from - index);\n if (!isClone && (options.rewind || Splide22.is(LOOP))) {\n diff = min(diff, Splide22.length - diff);\n }\n return diff <= distance;\n }\n const self = {\n index,\n slideIndex,\n slide,\n container,\n isClone,\n mount,\n destroy,\n update,\n style: style$1,\n isWithin\n };\n return self;\n}\nfunction Slides(Splide22, Components2, options) {\n const { on, emit, bind } = EventInterface(Splide22);\n const { slides, list } = Components2.Elements;\n const Slides2 = [];\n function mount() {\n init();\n on(EVENT_REFRESH, refresh);\n on([EVENT_MOUNTED, EVENT_REFRESH], () => {\n Slides2.sort((Slide1, Slide2) => Slide1.index - Slide2.index);\n });\n }\n function init() {\n slides.forEach((slide, index) => {\n register(slide, index, -1);\n });\n }\n function destroy() {\n forEach$1((Slide2) => {\n Slide2.destroy();\n });\n empty(Slides2);\n }\n function refresh() {\n destroy();\n init();\n }\n function update() {\n forEach$1((Slide2) => {\n Slide2.update();\n });\n }\n function register(slide, index, slideIndex) {\n const object = Slide$1(Splide22, index, slideIndex, slide);\n object.mount();\n Slides2.push(object);\n }\n function get(excludeClones) {\n return excludeClones ? filter((Slide2) => !Slide2.isClone) : Slides2;\n }\n function getIn(page) {\n const { Controller: Controller2 } = Components2;\n const index = Controller2.toIndex(page);\n const max2 = Controller2.hasFocus() ? 1 : options.perPage;\n return filter((Slide2) => between(Slide2.index, index, index + max2 - 1));\n }\n function getAt(index) {\n return filter(index)[0];\n }\n function add(items, index) {\n forEach(items, (slide) => {\n if (isString(slide)) {\n slide = parseHtml(slide);\n }\n if (isHTMLElement(slide)) {\n const ref = slides[index];\n ref ? before(slide, ref) : append(list, slide);\n addClass(slide, options.classes.slide);\n observeImages(slide, emit.bind(null, EVENT_RESIZE));\n }\n });\n emit(EVENT_REFRESH);\n }\n function remove$1(matcher) {\n remove(filter(matcher).map((Slide2) => Slide2.slide));\n emit(EVENT_REFRESH);\n }\n function forEach$1(iteratee, excludeClones) {\n get(excludeClones).forEach(iteratee);\n }\n function filter(matcher) {\n return Slides2.filter(isFunction(matcher) ? matcher : (Slide2) => isString(matcher) ? matches(Slide2.slide, matcher) : includes(toArray(matcher), Slide2.index));\n }\n function style2(prop, value, useContainer) {\n forEach$1((Slide2) => {\n Slide2.style(prop, value, useContainer);\n });\n }\n function observeImages(elm, callback) {\n const images = queryAll(elm, \"img\");\n let { length } = images;\n if (length) {\n images.forEach((img) => {\n bind(img, \"load error\", () => {\n if (!--length) {\n callback();\n }\n });\n });\n } else {\n callback();\n }\n }\n function getLength(excludeClones) {\n return excludeClones ? slides.length : Slides2.length;\n }\n function isEnough() {\n return Slides2.length > options.perPage;\n }\n return {\n mount,\n destroy,\n update,\n register,\n get,\n getIn,\n getAt,\n add,\n remove: remove$1,\n forEach: forEach$1,\n filter,\n style: style2,\n getLength,\n isEnough\n };\n}\nfunction Layout(Splide22, Components2, options) {\n const { on, bind, emit } = EventInterface(Splide22);\n const { Slides: Slides2 } = Components2;\n const { resolve } = Components2.Direction;\n const { root, track, list } = Components2.Elements;\n const { getAt } = Slides2;\n let vertical;\n let rootRect;\n function mount() {\n init();\n bind(window, \"resize load\", Throttle(emit.bind(this, EVENT_RESIZE)));\n on([EVENT_UPDATED, EVENT_REFRESH], init);\n on(EVENT_RESIZE, resize);\n }\n function init() {\n rootRect = null;\n vertical = options.direction === TTB;\n style(root, \"maxWidth\", unit(options.width));\n style(track, resolve(\"paddingLeft\"), cssPadding(false));\n style(track, resolve(\"paddingRight\"), cssPadding(true));\n resize();\n }\n function resize() {\n const newRect = rect(root);\n if (!rootRect || rootRect.width !== newRect.width || rootRect.height !== newRect.height) {\n style(track, \"height\", cssTrackHeight());\n Slides2.style(resolve(\"marginRight\"), unit(options.gap));\n Slides2.style(\"width\", cssSlideWidth() || null);\n setSlidesHeight();\n rootRect = newRect;\n emit(EVENT_RESIZED);\n }\n }\n function setSlidesHeight() {\n Slides2.style(\"height\", cssSlideHeight() || null, true);\n }\n function cssPadding(right) {\n const { padding } = options;\n const prop = resolve(right ? \"right\" : \"left\");\n return padding && unit(padding[prop] || (isObject(padding) ? 0 : padding)) || \"0px\";\n }\n function cssTrackHeight() {\n let height = \"\";\n if (vertical) {\n height = cssHeight();\n assert(height, \"height or heightRatio is missing.\");\n height = `calc(${height} - ${cssPadding(false)} - ${cssPadding(true)})`;\n }\n return height;\n }\n function cssHeight() {\n return unit(options.height || rect(list).width * options.heightRatio);\n }\n function cssSlideWidth() {\n return options.autoWidth ? \"\" : unit(options.fixedWidth) || (vertical ? \"\" : cssSlideSize());\n }\n function cssSlideHeight() {\n return unit(options.fixedHeight) || (vertical ? options.autoHeight ? \"\" : cssSlideSize() : cssHeight());\n }\n function cssSlideSize() {\n const gap = unit(options.gap);\n return `calc((100%${gap && ` + ${gap}`})/${options.perPage || 1}${gap && ` - ${gap}`})`;\n }\n function listSize() {\n return rect(list)[resolve(\"width\")];\n }\n function slideSize(index, withoutGap) {\n const Slide2 = getAt(index || 0);\n return Slide2 ? rect(Slide2.slide)[resolve(\"width\")] + (withoutGap ? 0 : getGap()) : 0;\n }\n function totalSize(index, withoutGap) {\n const Slide2 = getAt(index);\n if (Slide2) {\n const right = rect(Slide2.slide)[resolve(\"right\")];\n const left = rect(list)[resolve(\"left\")];\n return abs(right - left) + (withoutGap ? 0 : getGap());\n }\n return 0;\n }\n function sliderSize() {\n return totalSize(Splide22.length - 1, true) - totalSize(-1, true);\n }\n function getGap() {\n const Slide2 = getAt(0);\n return Slide2 && parseFloat(style(Slide2.slide, resolve(\"marginRight\"))) || 0;\n }\n function getPadding(right) {\n return parseFloat(style(track, resolve(`padding${right ? \"Right\" : \"Left\"}`))) || 0;\n }\n return {\n mount,\n listSize,\n slideSize,\n sliderSize,\n totalSize,\n getPadding\n };\n}\nfunction Clones(Splide22, Components2, options) {\n const { on, emit } = EventInterface(Splide22);\n const { Elements: Elements2, Slides: Slides2 } = Components2;\n const { resolve } = Components2.Direction;\n const clones = [];\n let cloneCount;\n function mount() {\n init();\n on(EVENT_REFRESH, refresh);\n on([EVENT_UPDATED, EVENT_RESIZE], observe);\n }\n function init() {\n if (cloneCount = computeCloneCount()) {\n generate(cloneCount);\n emit(EVENT_RESIZE);\n }\n }\n function destroy() {\n remove(clones);\n empty(clones);\n }\n function refresh() {\n destroy();\n init();\n }\n function observe() {\n if (cloneCount < computeCloneCount()) {\n emit(EVENT_REFRESH);\n }\n }\n function generate(count) {\n const slides = Slides2.get().slice();\n const { length } = slides;\n if (length) {\n while (slides.length < count) {\n push(slides, slides);\n }\n push(slides.slice(-count), slides.slice(0, count)).forEach((Slide2, index) => {\n const isHead = index < count;\n const clone = cloneDeep(Slide2.slide, index);\n isHead ? before(clone, slides[0].slide) : append(Elements2.list, clone);\n push(clones, clone);\n Slides2.register(clone, index - count + (isHead ? 0 : length), Slide2.index);\n });\n }\n }\n function cloneDeep(elm, index) {\n const clone = elm.cloneNode(true);\n addClass(clone, options.classes.clone);\n clone.id = `${Splide22.root.id}-clone${pad(index + 1)}`;\n return clone;\n }\n function computeCloneCount() {\n let { clones: clones2 } = options;\n if (!Splide22.is(LOOP)) {\n clones2 = 0;\n } else if (!clones2) {\n const fixedSize = measure(Elements2.list, options[resolve(\"fixedWidth\")]);\n const fixedCount = fixedSize && ceil(rect(Elements2.track)[resolve(\"width\")] / fixedSize);\n const baseCount = fixedCount || options[resolve(\"autoWidth\")] && Splide22.length || options.perPage;\n clones2 = baseCount * (options.drag ? (options.flickMaxPages || 1) + 1 : 2);\n }\n return clones2;\n }\n return {\n mount,\n destroy\n };\n}\nfunction Move(Splide22, Components2, options) {\n const { on, emit } = EventInterface(Splide22);\n const { slideSize, getPadding, totalSize, listSize, sliderSize } = Components2.Layout;\n const { resolve, orient } = Components2.Direction;\n const { list, track } = Components2.Elements;\n let Transition;\n function mount() {\n Transition = Components2.Transition;\n on([EVENT_MOUNTED, EVENT_RESIZED, EVENT_UPDATED, EVENT_REFRESH], reposition);\n }\n function destroy() {\n removeAttribute(list, \"style\");\n }\n function reposition() {\n if (!isBusy()) {\n Components2.Scroll.cancel();\n jump(Splide22.index);\n emit(EVENT_REPOSITIONED);\n }\n }\n function move(dest, index, prev, callback) {\n if (!isBusy()) {\n const { set } = Splide22.state;\n const position = getPosition();\n if (dest !== index) {\n Transition.cancel();\n translate(shift(position, dest > index), true);\n }\n set(MOVING);\n emit(EVENT_MOVE, index, prev, dest);\n Transition.start(index, () => {\n set(IDLE);\n emit(EVENT_MOVED, index, prev, dest);\n if (options.trimSpace === \"move\" && dest !== prev && position === getPosition()) {\n Components2.Controller.go(dest > prev ? \">\" : \"<\", false, callback);\n } else {\n callback && callback();\n }\n });\n }\n }\n function jump(index) {\n translate(toPosition(index, true));\n }\n function translate(position, preventLoop) {\n if (!Splide22.is(FADE)) {\n const destination = preventLoop ? position : loop(position);\n list.style.transform = `translate${resolve(\"X\")}(${destination}px)`;\n position !== destination && emit(EVENT_SHIFTED);\n }\n }\n function loop(position) {\n if (Splide22.is(LOOP)) {\n const diff = orient(position - getPosition());\n const exceededMin = exceededLimit(false, position) && diff < 0;\n const exceededMax = exceededLimit(true, position) && diff > 0;\n if (exceededMin || exceededMax) {\n position = shift(position, exceededMax);\n }\n }\n return position;\n }\n function shift(position, backwards) {\n const excess = position - getLimit(backwards);\n const size = sliderSize();\n position -= orient(size * (ceil(abs(excess) / size) || 1)) * (backwards ? 1 : -1);\n return position;\n }\n function cancel() {\n translate(getPosition());\n Transition.cancel();\n }\n function toIndex(position) {\n const Slides2 = Components2.Slides.get();\n let index = 0;\n let minDistance = Infinity;\n for (let i = 0; i < Slides2.length; i++) {\n const slideIndex = Slides2[i].index;\n const distance = abs(toPosition(slideIndex, true) - position);\n if (distance <= minDistance) {\n minDistance = distance;\n index = slideIndex;\n } else {\n break;\n }\n }\n return index;\n }\n function toPosition(index, trimming) {\n const position = orient(totalSize(index - 1) - offset(index));\n return trimming ? trim(position) : position;\n }\n function getPosition() {\n const left = resolve(\"left\");\n return rect(list)[left] - rect(track)[left] + orient(getPadding(false));\n }\n function trim(position) {\n if (options.trimSpace && Splide22.is(SLIDE)) {\n position = clamp(position, 0, orient(sliderSize() - listSize()));\n }\n return position;\n }\n function offset(index) {\n const { focus: focus2 } = options;\n return focus2 === \"center\" ? (listSize() - slideSize(index, true)) / 2 : +focus2 * slideSize(index) || 0;\n }\n function getLimit(max2) {\n return toPosition(max2 ? Components2.Controller.getEnd() : 0, !!options.trimSpace);\n }\n function isBusy() {\n return Splide22.state.is(MOVING) && options.waitForTransition;\n }\n function exceededLimit(max2, position) {\n position = isUndefined(position) ? getPosition() : position;\n const exceededMin = max2 !== true && orient(position) < orient(getLimit(false));\n const exceededMax = max2 !== false && orient(position) > orient(getLimit(true));\n return exceededMin || exceededMax;\n }\n return {\n mount,\n destroy,\n move,\n jump,\n translate,\n shift,\n cancel,\n toIndex,\n toPosition,\n getPosition,\n getLimit,\n isBusy,\n exceededLimit\n };\n}\nfunction Controller(Splide22, Components2, options) {\n const { on } = EventInterface(Splide22);\n const { Move: Move2 } = Components2;\n const { getPosition, getLimit } = Move2;\n const { isEnough, getLength } = Components2.Slides;\n const isLoop = Splide22.is(LOOP);\n const isSlide = Splide22.is(SLIDE);\n let currIndex = options.start || 0;\n let prevIndex = currIndex;\n let slideCount;\n let perMove;\n let perPage;\n function mount() {\n init();\n on([EVENT_UPDATED, EVENT_REFRESH], init, DEFAULT_EVENT_PRIORITY - 1);\n }\n function init() {\n slideCount = getLength(true);\n perMove = options.perMove;\n perPage = options.perPage;\n currIndex = clamp(currIndex, 0, slideCount - 1);\n }\n function go(control, allowSameIndex, callback) {\n const dest = parse(control);\n if (options.useScroll) {\n scroll(dest, true, true, options.speed, callback);\n } else {\n const index = loop(dest);\n if (index > -1 && !Move2.isBusy() && (allowSameIndex || index !== currIndex)) {\n setIndex(index);\n Move2.move(dest, index, prevIndex, callback);\n }\n }\n }\n function scroll(destination, useIndex, snap, duration, callback) {\n const dest = useIndex ? destination : toDest(destination);\n Components2.Scroll.scroll(useIndex || snap ? Move2.toPosition(dest, true) : destination, duration, () => {\n setIndex(Move2.toIndex(Move2.getPosition()));\n callback && callback();\n });\n }\n function parse(control) {\n let index = currIndex;\n if (isString(control)) {\n const [, indicator, number] = control.match(/([+\\-<>])(\\d+)?/) || [];\n if (indicator === \"+\" || indicator === \"-\") {\n index = computeDestIndex(currIndex + +`${indicator}${+number || 1}`, currIndex, true);\n } else if (indicator === \">\") {\n index = number ? toIndex(+number) : getNext(true);\n } else if (indicator === \"<\") {\n index = getPrev(true);\n }\n } else {\n index = isLoop ? control : clamp(control, 0, getEnd());\n }\n return index;\n }\n function getNext(destination) {\n return getAdjacent(false, destination);\n }\n function getPrev(destination) {\n return getAdjacent(true, destination);\n }\n function getAdjacent(prev, destination) {\n const number = perMove || (hasFocus() ? 1 : perPage);\n const dest = computeDestIndex(currIndex + number * (prev ? -1 : 1), currIndex);\n if (dest === -1 && isSlide) {\n if (!approximatelyEqual(getPosition(), getLimit(!prev), 1)) {\n return prev ? 0 : getEnd();\n }\n }\n return destination ? dest : loop(dest);\n }\n function computeDestIndex(dest, from, incremental) {\n if (isEnough()) {\n const end = getEnd();\n if (dest < 0 || dest > end) {\n if (between(0, dest, from, true) || between(end, from, dest, true)) {\n dest = toIndex(toPage(dest));\n } else {\n if (isLoop) {\n dest = perMove || hasFocus() ? dest : dest < 0 ? -(slideCount % perPage || perPage) : slideCount;\n } else if (options.rewind) {\n dest = dest < 0 ? end : 0;\n } else {\n dest = -1;\n }\n }\n } else {\n if (!incremental && dest !== from) {\n dest = perMove ? dest : toIndex(toPage(from) + (dest < from ? -1 : 1));\n }\n }\n } else {\n dest = -1;\n }\n return dest;\n }\n function getEnd() {\n let end = slideCount - perPage;\n if (hasFocus() || isLoop && perMove) {\n end = slideCount - 1;\n }\n return max(end, 0);\n }\n function loop(index) {\n if (isLoop) {\n return isEnough() ? index % slideCount + (index < 0 ? slideCount : 0) : -1;\n }\n return index;\n }\n function toIndex(page) {\n return clamp(hasFocus() ? page : perPage * page, 0, getEnd());\n }\n function toPage(index) {\n if (!hasFocus()) {\n index = between(index, slideCount - perPage, slideCount - 1) ? slideCount - 1 : index;\n index = floor(index / perPage);\n }\n return index;\n }\n function toDest(destination) {\n const closest = Move2.toIndex(destination);\n return isSlide ? clamp(closest, 0, getEnd()) : closest;\n }\n function setIndex(index) {\n if (index !== currIndex) {\n prevIndex = currIndex;\n currIndex = index;\n }\n }\n function getIndex(prev) {\n return prev ? prevIndex : currIndex;\n }\n function hasFocus() {\n return !isUndefined(options.focus) || options.isNavigation;\n }\n return {\n mount,\n go,\n scroll,\n getNext,\n getPrev,\n getAdjacent,\n getEnd,\n setIndex,\n getIndex,\n toIndex,\n toPage,\n toDest,\n hasFocus\n };\n}\nvar XML_NAME_SPACE = \"http://www.w3.org/2000/svg\";\nvar PATH = \"m15.5 0.932-4.3 4.38 14.5 14.6-14.5 14.5 4.3 4.4 14.6-14.6 4.4-4.3-4.4-4.4-14.6-14.6z\";\nvar SIZE = 40;\nfunction Arrows(Splide22, Components2, options) {\n const { on, bind, emit } = EventInterface(Splide22);\n const { classes, i18n } = options;\n const { Elements: Elements2, Controller: Controller2 } = Components2;\n let wrapper = Elements2.arrows;\n let prev = Elements2.prev;\n let next = Elements2.next;\n let created;\n const arrows = {};\n function mount() {\n init();\n on(EVENT_UPDATED, init);\n }\n function init() {\n if (options.arrows) {\n if (!prev || !next) {\n createArrows();\n }\n }\n if (prev && next) {\n if (!arrows.prev) {\n const { id } = Elements2.track;\n setAttribute(prev, ARIA_CONTROLS, id);\n setAttribute(next, ARIA_CONTROLS, id);\n arrows.prev = prev;\n arrows.next = next;\n listen();\n emit(EVENT_ARROWS_MOUNTED, prev, next);\n } else {\n display(wrapper, options.arrows === false ? \"none\" : \"\");\n }\n }\n }\n function destroy() {\n if (created) {\n remove(wrapper);\n } else {\n removeAttribute(prev, ALL_ATTRIBUTES);\n removeAttribute(next, ALL_ATTRIBUTES);\n }\n }\n function listen() {\n const { go } = Controller2;\n on([EVENT_MOUNTED, EVENT_MOVED, EVENT_UPDATED, EVENT_REFRESH, EVENT_SCROLLED], update);\n bind(next, \"click\", () => {\n go(\">\", true);\n });\n bind(prev, \"click\", () => {\n go(\"<\", true);\n });\n }\n function createArrows() {\n wrapper = create(\"div\", classes.arrows);\n prev = createArrow(true);\n next = createArrow(false);\n created = true;\n append(wrapper, [prev, next]);\n before(wrapper, child(options.arrows === \"slider\" && Elements2.slider || Splide22.root));\n }\n function createArrow(prev2) {\n const arrow = ` : null}\r\n \r\n \r\n );\r\n\r\n if (props.accordionLink?.contentItems[0]?.path) {\r\n return (\r\n \r\n {accordionBody}\r\n \r\n );\r\n }\r\n\r\n return
{accordionBody}
;\r\n};\r\n\r\nexport default SalmonSoftwareAccordion;\r\n","import * as React from 'react';\n\nconst LEFT = \"Left\";\nconst RIGHT = \"Right\";\nconst UP = \"Up\";\nconst DOWN = \"Down\";\n\n/* global document */\nconst defaultProps = {\n delta: 10,\n preventScrollOnSwipe: false,\n rotationAngle: 0,\n trackMouse: false,\n trackTouch: true,\n swipeDuration: Infinity,\n touchEventOptions: { passive: true },\n};\nconst initialState = {\n first: true,\n initial: [0, 0],\n start: 0,\n swiping: false,\n xy: [0, 0],\n};\nconst mouseMove = \"mousemove\";\nconst mouseUp = \"mouseup\";\nconst touchEnd = \"touchend\";\nconst touchMove = \"touchmove\";\nconst touchStart = \"touchstart\";\nfunction getDirection(absX, absY, deltaX, deltaY) {\n if (absX > absY) {\n if (deltaX > 0) {\n return RIGHT;\n }\n return LEFT;\n }\n else if (deltaY > 0) {\n return DOWN;\n }\n return UP;\n}\nfunction rotateXYByAngle(pos, angle) {\n if (angle === 0)\n return pos;\n const angleInRadians = (Math.PI / 180) * angle;\n const x = pos[0] * Math.cos(angleInRadians) + pos[1] * Math.sin(angleInRadians);\n const y = pos[1] * Math.cos(angleInRadians) - pos[0] * Math.sin(angleInRadians);\n return [x, y];\n}\nfunction getHandlers(set, handlerProps) {\n const onStart = (event) => {\n const isTouch = \"touches\" in event;\n // if more than a single touch don't track, for now...\n if (isTouch && event.touches.length > 1)\n return;\n set((state, props) => {\n // setup mouse listeners on document to track swipe since swipe can leave container\n if (props.trackMouse && !isTouch) {\n document.addEventListener(mouseMove, onMove);\n document.addEventListener(mouseUp, onUp);\n }\n const { clientX, clientY } = isTouch ? event.touches[0] : event;\n const xy = rotateXYByAngle([clientX, clientY], props.rotationAngle);\n props.onTouchStartOrOnMouseDown &&\n props.onTouchStartOrOnMouseDown({ event });\n return Object.assign(Object.assign(Object.assign({}, state), initialState), { initial: xy.slice(), xy, start: event.timeStamp || 0 });\n });\n };\n const onMove = (event) => {\n set((state, props) => {\n const isTouch = \"touches\" in event;\n // Discount a swipe if additional touches are present after\n // a swipe has started.\n if (isTouch && event.touches.length > 1) {\n return state;\n }\n // if swipe has exceeded duration stop tracking\n if (event.timeStamp - state.start > props.swipeDuration) {\n return state.swiping ? Object.assign(Object.assign({}, state), { swiping: false }) : state;\n }\n const { clientX, clientY } = isTouch ? event.touches[0] : event;\n const [x, y] = rotateXYByAngle([clientX, clientY], props.rotationAngle);\n const deltaX = x - state.xy[0];\n const deltaY = y - state.xy[1];\n const absX = Math.abs(deltaX);\n const absY = Math.abs(deltaY);\n const time = (event.timeStamp || 0) - state.start;\n const velocity = Math.sqrt(absX * absX + absY * absY) / (time || 1);\n const vxvy = [deltaX / (time || 1), deltaY / (time || 1)];\n const dir = getDirection(absX, absY, deltaX, deltaY);\n // if swipe is under delta and we have not started to track a swipe: skip update\n const delta = typeof props.delta === \"number\"\n ? props.delta\n : props.delta[dir.toLowerCase()] ||\n defaultProps.delta;\n if (absX < delta && absY < delta && !state.swiping)\n return state;\n const eventData = {\n absX,\n absY,\n deltaX,\n deltaY,\n dir,\n event,\n first: state.first,\n initial: state.initial,\n velocity,\n vxvy,\n };\n // call onSwipeStart if present and is first swipe event\n eventData.first && props.onSwipeStart && props.onSwipeStart(eventData);\n // call onSwiping if present\n props.onSwiping && props.onSwiping(eventData);\n // track if a swipe is cancelable (handler for swiping or swiped(dir) exists)\n // so we can call preventDefault if needed\n let cancelablePageSwipe = false;\n if (props.onSwiping ||\n props.onSwiped ||\n props[`onSwiped${dir}`]) {\n cancelablePageSwipe = true;\n }\n if (cancelablePageSwipe &&\n props.preventScrollOnSwipe &&\n props.trackTouch &&\n event.cancelable) {\n event.preventDefault();\n }\n return Object.assign(Object.assign({}, state), { \n // first is now always false\n first: false, eventData, swiping: true });\n });\n };\n const onEnd = (event) => {\n set((state, props) => {\n let eventData;\n if (state.swiping && state.eventData) {\n // if swipe is less than duration fire swiped callbacks\n if (event.timeStamp - state.start < props.swipeDuration) {\n eventData = Object.assign(Object.assign({}, state.eventData), { event });\n props.onSwiped && props.onSwiped(eventData);\n const onSwipedDir = props[`onSwiped${eventData.dir}`];\n onSwipedDir && onSwipedDir(eventData);\n }\n }\n else {\n props.onTap && props.onTap({ event });\n }\n props.onTouchEndOrOnMouseUp && props.onTouchEndOrOnMouseUp({ event });\n return Object.assign(Object.assign(Object.assign({}, state), initialState), { eventData });\n });\n };\n const cleanUpMouse = () => {\n // safe to just call removeEventListener\n document.removeEventListener(mouseMove, onMove);\n document.removeEventListener(mouseUp, onUp);\n };\n const onUp = (e) => {\n cleanUpMouse();\n onEnd(e);\n };\n /**\n * The value of passive on touchMove depends on `preventScrollOnSwipe`:\n * - true => { passive: false }\n * - false => { passive: true } // Default\n *\n * NOTE: When preventScrollOnSwipe is true, we attempt to call preventDefault to prevent scroll.\n *\n * props.touchEventOptions can also be set for all touch event listeners,\n * but for `touchmove` specifically when `preventScrollOnSwipe` it will\n * supersede and force passive to false.\n *\n */\n const attachTouch = (el, props) => {\n let cleanup = () => { };\n if (el && el.addEventListener) {\n const baseOptions = Object.assign(Object.assign({}, defaultProps.touchEventOptions), props.touchEventOptions);\n // attach touch event listeners and handlers\n const tls = [\n [touchStart, onStart, baseOptions],\n // preventScrollOnSwipe option supersedes touchEventOptions.passive\n [\n touchMove,\n onMove,\n Object.assign(Object.assign({}, baseOptions), (props.preventScrollOnSwipe ? { passive: false } : {})),\n ],\n [touchEnd, onEnd, baseOptions],\n ];\n tls.forEach(([e, h, o]) => el.addEventListener(e, h, o));\n // return properly scoped cleanup method for removing listeners, options not required\n cleanup = () => tls.forEach(([e, h]) => el.removeEventListener(e, h));\n }\n return cleanup;\n };\n const onRef = (el) => {\n // \"inline\" ref functions are called twice on render, once with null then again with DOM element\n // ignore null here\n if (el === null)\n return;\n set((state, props) => {\n // if the same DOM el as previous just return state\n if (state.el === el)\n return state;\n const addState = {};\n // if new DOM el clean up old DOM and reset cleanUpTouch\n if (state.el && state.el !== el && state.cleanUpTouch) {\n state.cleanUpTouch();\n addState.cleanUpTouch = void 0;\n }\n // only attach if we want to track touch\n if (props.trackTouch && el) {\n addState.cleanUpTouch = attachTouch(el, props);\n }\n // store event attached DOM el for comparison, clean up, and re-attachment\n return Object.assign(Object.assign(Object.assign({}, state), { el }), addState);\n });\n };\n // set ref callback to attach touch event listeners\n const output = {\n ref: onRef,\n };\n // if track mouse attach mouse down listener\n if (handlerProps.trackMouse) {\n output.onMouseDown = onStart;\n }\n return [output, attachTouch];\n}\nfunction updateTransientState(state, props, previousProps, attachTouch) {\n // if trackTouch is off or there is no el, then remove handlers if necessary and exit\n if (!props.trackTouch || !state.el) {\n if (state.cleanUpTouch) {\n state.cleanUpTouch();\n }\n return Object.assign(Object.assign({}, state), { cleanUpTouch: undefined });\n }\n // trackTouch is on, so if there are no handlers attached, attach them and exit\n if (!state.cleanUpTouch) {\n return Object.assign(Object.assign({}, state), { cleanUpTouch: attachTouch(state.el, props) });\n }\n // trackTouch is on and handlers are already attached, so if preventScrollOnSwipe changes value,\n // remove and reattach handlers (this is required to update the passive option when attaching\n // the handlers)\n if (props.preventScrollOnSwipe !== previousProps.preventScrollOnSwipe ||\n props.touchEventOptions.passive !== previousProps.touchEventOptions.passive) {\n state.cleanUpTouch();\n return Object.assign(Object.assign({}, state), { cleanUpTouch: attachTouch(state.el, props) });\n }\n return state;\n}\nfunction useSwipeable(options) {\n const { trackMouse } = options;\n const transientState = React.useRef(Object.assign({}, initialState));\n const transientProps = React.useRef(Object.assign({}, defaultProps));\n // track previous rendered props\n const previousProps = React.useRef(Object.assign({}, transientProps.current));\n previousProps.current = Object.assign({}, transientProps.current);\n // update current render props & defaults\n transientProps.current = Object.assign(Object.assign({}, defaultProps), options);\n // Force defaults for config properties\n let defaultKey;\n for (defaultKey in defaultProps) {\n if (transientProps.current[defaultKey] === void 0) {\n transientProps.current[defaultKey] = defaultProps[defaultKey];\n }\n }\n const [handlers, attachTouch] = React.useMemo(() => getHandlers((stateSetter) => (transientState.current = stateSetter(transientState.current, transientProps.current)), { trackMouse }), [trackMouse]);\n transientState.current = updateTransientState(transientState.current, transientProps.current, previousProps.current, attachTouch);\n return handlers;\n}\n\nexport { DOWN, LEFT, RIGHT, UP, useSwipeable };\n//# sourceMappingURL=index.js.map\n","import \"./SalmonSoftwareAccordionsContainer.scss\";\r\n\r\nimport React, { FunctionComponent, useEffect, useRef, useState } from \"react\";\r\n\r\nimport SalmonSoftwareAccordion, {\r\n SalmonSoftwareAccordionType,\r\n} from \"../SalmonSoftwareAccordion/SalmonSoftwareAccordion\";\r\nimport PuxWysiwyg, { PuxWysiwygHtmlBodyType } from \"../PuxWysiwyg/PuxWysiwyg\";\r\nimport PuxMediaSelector from \"../../contentParts/mediaImage/PuxMediaSelector\";\r\nimport { useSwipeable } from \"react-swipeable\";\r\n\r\nexport interface SalmonSoftwareAccordionsContainerType {\r\n contentItemId?: string;\r\n displayText: string;\r\n accordionsContainerContent: PuxWysiwygHtmlBodyType;\r\n accordionsContainerItems: {\r\n contentItems: SalmonSoftwareAccordionType[];\r\n };\r\n accordionsContainerInterval: number;\r\n}\r\n\r\nconst SalmonSoftwareAccordionsContainer: FunctionComponent<\r\n SalmonSoftwareAccordionsContainerType\r\n> = (props) => {\r\n const accordions = props.accordionsContainerItems.contentItems;\r\n\r\n const [active, setActive] = useState(0)\r\n const [intervalTime, setIntervalTime] = useState(props.accordionsContainerInterval)\r\n const interval = useRef();\r\n\r\n useEffect(() => {\r\n if (intervalTime && intervalTime > 0) {\r\n interval.current = setInterval(() => {\r\n setActive((active) => (active + 1) % accordions.length)\r\n }, props.accordionsContainerInterval)\r\n }\r\n\r\n return () => clearInterval(interval.current);\r\n }, []);\r\n\r\n const stopInterval = (idx) => {\r\n clearInterval(interval.current);\r\n setActive(idx);\r\n setIntervalTime(0)\r\n }\r\n\r\n const swipeHandlers = useSwipeable({\r\n onSwipedLeft: () => {\r\n stopInterval((active + 1) % accordions.length)\r\n },\r\n onSwipedRight: () => {\r\n stopInterval((active + accordions.length - 1) % accordions.length)\r\n },\r\n trackTouch: true,\r\n trackMouse: true, \r\n });\r\n\r\n return (\r\n 0 ? intervalTime : 0) + \"ms\" }}\r\n >\r\n {props.displayText &&

{props.displayText}

}\r\n \r\n
\r\n {accordions.map((feature, idx) => \r\n \r\n )}\r\n
\r\n
\r\n {accordions.map((feature, idx) => \r\n feature.accordionImage ?

{feature.accordionDescription}

: null\r\n )}\r\n {accordions.map((feature, idx) => \r\n feature.accordionImage ?
: null\r\n )}\r\n {accordions.map((feature, idx) => (\r\n \r\n ))}\r\n
\r\n
\r\n {accordions.map((feature, idx) => \r\n feature.accordionImage ?
: null\r\n \r\n )}\r\n
\r\n
\r\n {accordions.map((feature, idx) => \r\n \r\n )}\r\n
\r\n \r\n );\r\n};\r\n\r\nexport default SalmonSoftwareAccordionsContainer;\r\n\r\n","import React, { FunctionComponent } from 'react'\r\nimport { WidgetBase } from '../builders/WidgetBuilder'\r\nimport WidgetContainer from '../builders/WidgetContainer'\r\n\r\nimport SalmonSoftwareAccordionsContainer, { SalmonSoftwareAccordionsContainerType } from '../contentTypes/SalmonSoftwareAccordionsContainer/SalmonSoftwareAccordionsContainer'\r\n\r\nexport interface WidgetSalmonSoftwareAccordionsContainerType extends WidgetBase, SalmonSoftwareAccordionsContainerType {\r\n contentType: 'SalmonSoftwareAccordionsContainer'\r\n}\r\n\r\nconst WidgetSalmonSoftwareAccordionsContainer: FunctionComponent = (props) => (\r\n \r\n \r\n \r\n)\r\n\r\nexport default WidgetSalmonSoftwareAccordionsContainer\r\n","import React, { FunctionComponent } from 'react'\r\n\r\ninterface MediaVideoFile {\r\n paths: [string]\r\n}\r\n\r\nexport interface PuxMediaVideoSelectorType extends MediaVideoFile {\r\n file: MediaVideoFile\r\n muted?: boolean\r\n autoplay?: boolean\r\n controls?: boolean\r\n loop?: boolean\r\n width?: string | number\r\n height?: string | number\r\n refProp?: any,\r\n playsinline?: boolean\r\n}\r\n\r\nconst DEFAULT_VIDEO_WIDTH = 1200\r\nconst DEFAULT_VIDEO_HEIGHT = 1200\r\n\r\nconst PuxMediaVideoSelector: FunctionComponent = (\r\n props\r\n) => {\r\n const isEmpty = props.file?.paths.length < 1\r\n\r\n if (!isEmpty) {\r\n return (\r\n \r\n \r\n \r\n )\r\n } else {\r\n return null\r\n }\r\n}\r\n\r\nexport default PuxMediaVideoSelector\r\n","import \"./SalmonSoftwareHeroVideo.scss\";\r\n\r\nimport React, { FunctionComponent, useEffect, useRef } from \"react\";\r\n\r\nimport PuxWysiwyg, { PuxWysiwygHtmlBodyType } from \"../PuxWysiwyg/PuxWysiwyg\";\r\nimport PuxButton, { PuxButtonType } from \"../../contentParts/button/PuxButton\";\r\nimport PuxMediaVideoSelector, { PuxMediaVideoSelectorType } from \"../../contentParts/mediaVideo/PuxMediaVideoSelector\";\r\n\r\nexport interface SalmonSoftwareHeroVideoType {\r\n contentItemId?: string;\r\n displayText: string;\r\n htmlBody: PuxWysiwygHtmlBodyType;\r\n puxButton: PuxButtonType;\r\n heroVideoVideo: PuxMediaVideoSelectorType;\r\n heroVideoAutoplay: boolean;\r\n}\r\n\r\nconst SalmonSoftwareHeroVideo: FunctionComponent<\r\n SalmonSoftwareHeroVideoType\r\n > = (props) => {\r\n\r\n let paths = { paths: props.heroVideoVideo.paths }\r\n \r\n const videoRef = useRef(null);\r\n \r\n var isSafari = false\r\n if (typeof window !== 'undefined') {\r\n isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);\r\n }\r\n const [playing, setPlaying] = React.useState(isSafari ? false : props.heroVideoAutoplay);\r\n const [muted, setMuted] = React.useState(true);\r\n\r\n useEffect(() => {\r\n if (videoRef.current) {\r\n videoRef.current.muted = muted\r\n }\r\n }, [muted])\r\n\r\n useEffect(() => { \r\n playing ? videoRef.current?.play() : videoRef.current?.pause()\r\n }, [playing])\r\n \r\n return (\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default SalmonSoftwareHeroVideo;\r\n\r\n","import React, { FunctionComponent } from 'react'\r\nimport { WidgetBase } from '../builders/WidgetBuilder'\r\nimport WidgetContainer from '../builders/WidgetContainer'\r\n\r\nimport SalmonSoftwareHeroVideo, { SalmonSoftwareHeroVideoType } from '../contentTypes/SalmonSoftwareHeroVideo/SalmonSoftwareHeroVideo'\r\n\r\nexport interface WidgetSalmonSoftwareHeroVideoType extends WidgetBase, SalmonSoftwareHeroVideoType {\r\n contentType: 'SalmonSoftwareHeroVideo'\r\n}\r\n\r\nconst WidgetSalmonSoftwareHeroVideo: FunctionComponent = (props) => (\r\n \r\n \r\n \r\n)\r\n\r\nexport default WidgetSalmonSoftwareHeroVideo\r\n","import \"./PuxImageContent.scss\";\r\n\r\nimport React, { FunctionComponent } from \"react\";\r\n\r\nimport PuxMediaSelector, {\r\n PuxMediaSelectorType,\r\n} from \"../../contentParts/mediaImage/PuxMediaSelector\";\r\nimport PuxButton, { PuxButtonType } from \"../../contentParts/button/PuxButton\";\r\nimport PuxWysiwyg, { PuxWysiwygHtmlBodyType } from \"../PuxWysiwyg/PuxWysiwyg\";\r\n\r\nexport interface PuxImageContentType {\r\n imageContentText: PuxWysiwygHtmlBodyType;\r\n imageContentImagePosition: string;\r\n imageContentImage: PuxMediaSelectorType;\r\n imageContentButton: PuxButtonType;\r\n}\r\n\r\nconst PuxImageContent: FunctionComponent = (props) => {\r\n return (\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n );\r\n};\r\n\r\nexport default PuxImageContent;\r\n","import React, { FunctionComponent } from 'react'\r\nimport { WidgetBase } from '../builders/WidgetBuilder'\r\nimport WidgetContainer from '../builders/WidgetContainer'\r\n\r\nimport PuxImageContent, {\r\n PuxImageContentType,\r\n} from '../contentTypes/PuxImageContent/PuxImageContent'\r\n\r\nexport interface WidgetPuxImageContentType\r\n extends WidgetBase,\r\n PuxImageContentType {\r\n contentType: 'PuxImageContent'\r\n}\r\n\r\nconst WidgetPuxImageContent: FunctionComponent = (\r\n props\r\n) => (\r\n \r\n \r\n \r\n)\r\n\r\nexport default WidgetPuxImageContent\r\n","import \"./SalmonSoftwareCTABanner.scss\";\r\n\r\nimport React, { FunctionComponent } from \"react\";\r\n\r\nimport PuxMediaSelector, {\r\n PuxMediaSelectorType,\r\n} from \"../../contentParts/mediaImage/PuxMediaSelector\";\r\nimport PuxButton, { PuxButtonType } from \"../../contentParts/button/PuxButton\";\r\nimport PuxWysiwyg, { PuxWysiwygHtmlBodyType } from \"../PuxWysiwyg/PuxWysiwyg\";\r\n\r\nexport interface SalmonSoftwareCTABannerType {\r\n cTABannerContent: PuxWysiwygHtmlBodyType;\r\n cTABannerImage: PuxMediaSelectorType;\r\n cTABannerButton: PuxButtonType;\r\n}\r\n\r\nconst SalmonSoftwareCTABanner: FunctionComponent<\r\n SalmonSoftwareCTABannerType\r\n> = (props) => {\r\n return (\r\n
\r\n {props.cTABannerImage.mediaSelectorImage.resizePaths.length > 0 && (\r\n
\r\n \r\n
\r\n )}\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default SalmonSoftwareCTABanner;\r\n","import React, { FunctionComponent } from 'react'\r\nimport { WidgetBase } from '../builders/WidgetBuilder'\r\nimport WidgetContainer from '../builders/WidgetContainer'\r\n\r\nimport SalmonSoftwareCTABanner, { SalmonSoftwareCTABannerType } from '../contentTypes/SalmonSoftwareCTABanner/SalmonSoftwareCTABanner'\r\n\r\nexport interface WidgetSalmonSoftwareCTABannerType extends WidgetBase, SalmonSoftwareCTABannerType {\r\n contentType: 'SalmonSoftwareCTABanner'\r\n}\r\n\r\nconst WidgetSalmonSoftwareCTABanner: FunctionComponent = (props) => (\r\n \r\n \r\n \r\n)\r\n\r\nexport default WidgetSalmonSoftwareCTABanner\r\n","/* eslint-disable indent */\r\nimport \"./PuxVideo.scss\";\r\n\r\nimport FsLightbox from \"fslightbox-react\";\r\nimport React, { FunctionComponent, useState } from \"react\";\r\nimport PuxPicture, { PuxPictureType } from \"../mediaImage/PuxPicture\";\r\n\r\nexport interface PuxVideoType {\r\n videoYTID: {\r\n html: string;\r\n };\r\n videoThumbnail: PuxPictureType;\r\n videoStructuredDataName: string;\r\n videoStructuredDataDescription: string;\r\n videoStructuredDataUploadDate: string;\r\n videoStructuredDataContentUrl: string;\r\n isBanner?: boolean;\r\n}\r\n\r\nconst PuxVideo: FunctionComponent = (props) => {\r\n const [toggler, setToggler] = useState(false);\r\n\r\n const videoSources: JSX.Element[] = [];\r\n videoSources.push(\r\n \r\n );\r\n\r\n const structuredData = {\r\n \"@context\": `https://schema.org`,\r\n \"@type\": `VideoObject`,\r\n name: props.videoStructuredDataName,\r\n description: props.videoStructuredDataDescription,\r\n uploadDate: props.videoStructuredDataUploadDate, //Date format `2016-03-31T08:00:00+08:00`\r\n thumbnailUrl: [\r\n props.videoThumbnail?.resizePaths ?? ``,\r\n props.videoThumbnail?.resizePathsTablet ?? ``,\r\n props.videoThumbnail?.resizePathsMobile ?? ``,\r\n ],\r\n contentUrl: props.videoStructuredDataContentUrl,\r\n };\r\n\r\n if (props.videoYTID?.html) {\r\n return (\r\n
\r\n
setToggler(!toggler)}>\r\n {!props.isBanner && }\r\n \r\n
\r\n \r\n {/* {props.videoStructuredDataName &&\r\n props.videoStructuredDataDescription &&\r\n props.videoStructuredDataUploadDate &&\r\n props.videoStructuredDataContentUrl && (\r\n \r\n )} */}\r\n
\r\n );\r\n } else {\r\n return null;\r\n }\r\n};\r\n\r\nexport default PuxVideo;\r\n","import \"./SalmonSoftwareVideoBanner.scss\";\r\n\r\nimport React, { FunctionComponent } from \"react\";\r\nimport PuxMediaSelector from \"../../contentParts/mediaImage/PuxMediaSelector\";\r\nimport PuxButton, { PuxButtonType } from \"../../contentParts/button/PuxButton\";\r\nimport PuxVideo, { PuxVideoType } from \"../../contentParts/PuxVideo/PuxVideo\";\r\nimport PuxWysiwyg, { PuxWysiwygHtmlBodyType } from \"../PuxWysiwyg/PuxWysiwyg\";\r\n\r\nexport interface SalmonSoftwareVideoBannerType {\r\n contentItemId?: string;\r\n displayText: string;\r\n videoBannerContent: PuxWysiwygHtmlBodyType;\r\n videoBannerPrimaryButton: PuxButtonType;\r\n videoBannerSecondaryButton: PuxButtonType;\r\n puxVideo: PuxVideoType;\r\n}\r\n\r\nconst SalmonSoftwareVideoBanner: FunctionComponent<\r\n SalmonSoftwareVideoBannerType\r\n> = (props) => {\r\n return (\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default SalmonSoftwareVideoBanner;\r\n","import React, { FunctionComponent } from 'react'\r\nimport { WidgetBase } from '../builders/WidgetBuilder'\r\nimport WidgetContainer from '../builders/WidgetContainer'\r\n\r\nimport SalmonSoftwareVideoBanner, { SalmonSoftwareVideoBannerType } from '../contentTypes/SalmonSoftwareVideoBanner/SalmonSoftwareVideoBanner'\r\n\r\nexport interface WidgetSalmonSoftwareVideoBannerType extends WidgetBase, SalmonSoftwareVideoBannerType {\r\n contentType: 'SalmonSoftwareVideoBanner'\r\n}\r\n\r\nconst WidgetSalmonSoftwareVideoBanner: FunctionComponent = (props) => (\r\n \r\n \r\n \r\n)\r\n\r\nexport default WidgetSalmonSoftwareVideoBanner\r\n","import \"./SalmonSoftwareTopImage.scss\";\r\n\r\nimport React, { FunctionComponent } from \"react\";\r\nimport PuxMediaSelector, {\r\n PuxMediaSelectorType,\r\n} from \"../../contentParts/mediaImage/PuxMediaSelector\";\r\nimport PuxButton, { PuxButtonType } from \"../../contentParts/button/PuxButton\";\r\nimport PuxWysiwyg, { PuxWysiwygHtmlBodyType } from \"../PuxWysiwyg/PuxWysiwyg\";\r\n\r\nexport interface SalmonSoftwareTopImageType {\r\n contentItemId?: string;\r\n displayText: string;\r\n topImagePerex: PuxWysiwygHtmlBodyType;\r\n topImageBackground: PuxMediaSelectorType;\r\n topImagePrimaryButton: PuxButtonType;\r\n}\r\n\r\nconst SalmonSoftwareTopImage: FunctionComponent = (\r\n props\r\n) => {\r\n return (\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default SalmonSoftwareTopImage;\r\n","import \"./SalmonSoftwareTopImageContainer.scss\";\r\nimport \"@splidejs/splide/dist/css/splide.min.css\";\r\nimport \"../../../scss/slider.scss\";\r\n\r\nimport React, { FunctionComponent } from \"react\";\r\nimport { Splide, SplideSlide } from \"@splidejs/react-splide\";\r\nimport SalmonSoftwareTopImage, {\r\n SalmonSoftwareTopImageType,\r\n} from \"../SalmonSoftwareTopImage/SalmonSoftwareTopImage\";\r\n\r\nexport interface SalmonSoftwareTopImageContainerType {\r\n contentItemId?: string;\r\n displayText: string;\r\n sliderArrows?: boolean;\r\n sliderAutoPlay?: boolean;\r\n sliderDots?: boolean;\r\n topImageContainerItems: {\r\n contentItems: SalmonSoftwareTopImageType[];\r\n };\r\n}\r\n\r\nconst SalmonSoftwareTopImageContainer: FunctionComponent<\r\n SalmonSoftwareTopImageContainerType\r\n> = (props) => {\r\n const topImages = props.topImageContainerItems.contentItems;\r\n\r\n if (topImages.length > 1) {\r\n return (\r\n
\r\n \r\n {props.topImageContainerItems.contentItems.map((topImage, idx) => (\r\n \r\n \r\n \r\n ))}\r\n \r\n
\r\n );\r\n }\r\n\r\n return (\r\n
\r\n {topImages.map((topImage, idx) => (\r\n \r\n ))}\r\n
\r\n );\r\n};\r\n\r\nexport default SalmonSoftwareTopImageContainer;\r\n","import React, { FunctionComponent } from 'react'\r\nimport { WidgetBase } from '../builders/WidgetBuilder'\r\nimport WidgetContainer from '../builders/WidgetContainer'\r\n\r\nimport SalmonSoftwareTopImageContainer, { SalmonSoftwareTopImageContainerType } from '../contentTypes/SalmonSoftwareTopImageContainer/SalmonSoftwareTopImageContainer'\r\n\r\nexport interface WidgetSalmonSoftwareTopImageContainerType extends WidgetBase, SalmonSoftwareTopImageContainerType {\r\n contentType: 'SalmonSoftwareTopImageContainer'\r\n}\r\n\r\nconst WidgetSalmonSoftwareTopImageContainer: FunctionComponent = (props) => (\r\n \r\n \r\n \r\n)\r\n\r\nexport default WidgetSalmonSoftwareTopImageContainer","import React, { FunctionComponent } from 'react'\r\nimport { WidgetBase } from '../builders/WidgetBuilder'\r\nimport WidgetContainer from '../builders/WidgetContainer'\r\nimport PuxRepeater, { PuxRepeaterType } from '../contentTypes/PuxRepeater/PuxRepeater'\r\n\r\nexport interface WidgetPuxRepeaterType extends WidgetBase, PuxRepeaterType {\r\n contentType: 'PuxRepeater'\r\n}\r\n\r\nconst WidgetPuxRepeater: FunctionComponent = (props) => {\r\n return (\r\n \r\n \r\n \r\n )\r\n}\r\n\r\nexport default WidgetPuxRepeater\r\n","import \"./SalmonSoftwareCrossroad.scss\";\r\n\r\nimport React, { FunctionComponent } from \"react\";\r\nimport { Link } from \"gatsby\";\r\nimport { getLocalizedUrl } from \"../../../utils/localeURL\";\r\n\r\nexport interface SalmonSoftwareCrossroadType {\r\n contentItemId?: string;\r\n displayText: string;\r\n crossroadItems: {\r\n contentItems: [\r\n {\r\n displayText: string;\r\n path: string;\r\n salmonSoftwareIcon: {\r\n iconSelector: string\r\n }\r\n }\r\n ];\r\n };\r\n}\r\n\r\nconst getCrossroadIcon = (icon: string): string => {\r\n if (icon) {\r\n return \" \" + icon\r\n }\r\n\r\n return \"\"\r\n};\r\n\r\nconst SalmonSoftwareCrossroad: FunctionComponent<\r\n SalmonSoftwareCrossroadType\r\n> = (props) => {\r\n return (\r\n
\r\n

{props.displayText}

\r\n
\r\n {props.crossroadItems.contentItems.map((crossroadItem, idx) => (\r\n \r\n \r\n

{crossroadItem.displayText}

\r\n
\r\n \r\n ))}\r\n
\r\n \r\n );\r\n};\r\n\r\nexport default SalmonSoftwareCrossroad;\r\n","import React, { FunctionComponent } from 'react'\r\nimport { WidgetBase } from '../builders/WidgetBuilder'\r\nimport WidgetContainer from '../builders/WidgetContainer'\r\n\r\nimport SalmonSoftwareCrossroad, { SalmonSoftwareCrossroadType } from '../contentTypes/SalmonSoftwareCrossroad/SalmonSoftwareCrossroad'\r\n\r\nexport interface WidgetSalmonSoftwareCrossroadType extends WidgetBase, SalmonSoftwareCrossroadType {\r\n contentType: 'SalmonSoftwareCrossroad'\r\n}\r\n\r\nconst WidgetSalmonSoftwareCrossroad: FunctionComponent = (props) => (\r\n \r\n \r\n \r\n)\r\n\r\nexport default WidgetSalmonSoftwareCrossroad\r\n","import \"./SalmonSoftwareGalleryItem.scss\";\r\n\r\nimport React, { FunctionComponent } from \"react\";\r\nimport PuxMediaSelector, {\r\n PuxMediaSelectorType,\r\n} from \"../../contentParts/mediaImage/PuxMediaSelector\";\r\n\r\nexport interface SalmonSoftwareGalleryItemType {\r\n galleryItemUrl: string;\r\n galleryItemImage: PuxMediaSelectorType;\r\n}\r\n\r\nconst SalmonSoftwareGalleryItem: FunctionComponent<\r\n SalmonSoftwareGalleryItemType\r\n> = (props) => {\r\n if (props.galleryItemUrl) {\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n return (\r\n
\r\n \r\n
\r\n );\r\n};\r\n\r\nexport default SalmonSoftwareGalleryItem;\r\n","import \"./SalmonSoftwareGallery.scss\";\r\n\r\nimport React, { FunctionComponent } from \"react\";\r\n\r\nimport SalmonSoftwareGalleryItem, {\r\n SalmonSoftwareGalleryItemType,\r\n} from \"../SalmonSoftwareGalleryItem/SalmonSoftwareGalleryItem\";\r\nimport { Splide, SplideSlide } from \"@splidejs/react-splide\";\r\n\r\nexport interface SalmonSoftwareGalleryType {\r\n bag: {\r\n contentItems: SalmonSoftwareGalleryItemType[];\r\n };\r\n}\r\n\r\nconst SalmonSoftwareGallery: FunctionComponent = (\r\n props\r\n) => {\r\n const gallery = props.bag.contentItems;\r\n\r\n if (gallery.length > 6) {\r\n return (\r\n
\r\n \r\n {props.bag.contentItems.map((gallery, idx) => (\r\n \r\n \r\n \r\n ))}\r\n \r\n
\r\n );\r\n }\r\n\r\n return (\r\n
\r\n {props.bag.contentItems.map((gallery, idx) => (\r\n \r\n ))}\r\n
\r\n );\r\n};\r\n\r\nexport default SalmonSoftwareGallery;\r\n","import \"./SalmonSoftwareGalleryContainer.scss\";\r\n\r\nimport React, { FunctionComponent } from \"react\";\r\nimport SalmonSoftwareGallery, {\r\n SalmonSoftwareGalleryType,\r\n} from \"../SalmonSoftwareGallery/SalmonSoftwareGallery\";\r\n\r\nexport interface SalmonSoftwareGalleryContainerType {\r\n galleryContainerItems: {\r\n contentItems: SalmonSoftwareGalleryType[];\r\n };\r\n displayText: string;\r\n}\r\n\r\nconst SalmonSoftwareGalleryContainer: FunctionComponent<\r\n SalmonSoftwareGalleryContainerType\r\n> = (props) => {\r\n return (\r\n
\r\n {props.displayText && (\r\n

{props.displayText}

\r\n )}\r\n {props.galleryContainerItems.contentItems.map((gallery, idx) => (\r\n \r\n ))}\r\n
\r\n );\r\n};\r\n\r\nexport default SalmonSoftwareGalleryContainer;\r\n","import React, { FunctionComponent } from \"react\";\r\nimport { WidgetBase } from \"../builders/WidgetBuilder\";\r\nimport WidgetContainer from \"../builders/WidgetContainer\";\r\n\r\nimport SalmonSoftwareGalleryContainer, {\r\n SalmonSoftwareGalleryContainerType,\r\n} from \"../contentTypes/SalmonSoftwareGalleryContainer/SalmonSoftwareGalleryContainer\";\r\n\r\nexport interface WidgetSalmonSoftwareGalleryContainerType\r\n extends WidgetBase,\r\n SalmonSoftwareGalleryContainerType {\r\n contentType: \"SalmonSoftwareGalleryContainer\";\r\n}\r\n\r\nconst WidgetSalmonSoftwareGalleryContainer: FunctionComponent<\r\n WidgetSalmonSoftwareGalleryContainerType\r\n> = (props) => (\r\n \r\n \r\n \r\n);\r\n\r\nexport default WidgetSalmonSoftwareGalleryContainer;\r\n","import \"./SalmonSoftwareImageFromLibrary.scss\";\r\n\r\nimport React, { FunctionComponent } from \"react\";\r\n\r\nimport PuxMediaSelector, {\r\n PuxMediaSelectorType,\r\n} from \"../../contentParts/mediaImage/PuxMediaSelector\";\r\n\r\nexport interface SalmonSoftwareImageFromLibraryType {\r\n imageFromLibraryDescription: string;\r\n imageFromLibraryImage: PuxMediaSelectorType;\r\n}\r\n\r\nconst SalmonSoftwareImageFromLibrary: FunctionComponent<\r\n SalmonSoftwareImageFromLibraryType\r\n> = (props) => {\r\n return (\r\n
\r\n \r\n
\r\n {props.imageFromLibraryDescription}\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default SalmonSoftwareImageFromLibrary;\r\n","import React, { FunctionComponent } from 'react'\r\nimport { WidgetBase } from '../builders/WidgetBuilder'\r\nimport WidgetContainer from '../builders/WidgetContainer'\r\n\r\nimport SalmonSoftwareImageFromLibrary, { SalmonSoftwareImageFromLibraryType } from '../contentTypes/SalmonSoftwareImageFromLibrary/SalmonSoftwareImageFromLibrary'\r\n\r\nexport interface WidgetSalmonSoftwareImageFromLibraryType extends WidgetBase, SalmonSoftwareImageFromLibraryType {\r\n contentType: 'SalmonSoftwareImageFromLibrary'\r\n}\r\n\r\nconst WidgetSalmonSoftwareImageFromLibrary: FunctionComponent = (props) => (\r\n \r\n \r\n \r\n)\r\n\r\nexport default WidgetSalmonSoftwareImageFromLibrary\r\n","import \"./SalmonSoftwareVideo.scss\";\r\n\r\nimport React, { FunctionComponent } from \"react\";\r\nimport PuxMediaSelector from \"../../contentParts/mediaImage/PuxMediaSelector\";\r\nimport PuxVideo, { PuxVideoType } from \"../../contentParts/PuxVideo/PuxVideo\";\r\n\r\nexport interface SalmonSoftwareVideoType {\r\n contentItemId?: string;\r\n displayText: string;\r\n puxVideo: PuxVideoType;\r\n}\r\n\r\nconst SalmonSoftwareVideo: FunctionComponent = (\r\n props\r\n) => {\r\n return (\r\n
\r\n \r\n
\r\n );\r\n};\r\n\r\nexport default SalmonSoftwareVideo;\r\n","import React, { FunctionComponent } from \"react\";\r\nimport { WidgetBase } from \"../builders/WidgetBuilder\";\r\nimport WidgetContainer from \"../builders/WidgetContainer\";\r\n\r\nimport SalmonSoftwareVideo, {\r\n SalmonSoftwareVideoType,\r\n} from \"../contentTypes/SalmonSoftwareVideo/SalmonSoftwareVideo\";\r\n\r\nexport interface WidgetSalmonSoftwareVideoType\r\n extends WidgetBase,\r\n SalmonSoftwareVideoType {\r\n contentType: \"SalmonSoftwareVideo\";\r\n}\r\n\r\nconst WidgetSalmonSoftwareVideo: FunctionComponent<\r\n WidgetSalmonSoftwareVideoType\r\n> = (props) => (\r\n \r\n \r\n \r\n);\r\n\r\nexport default WidgetSalmonSoftwareVideo;\r\n","import React, { FunctionComponent, Suspense } from \"react\";\r\nimport WidgetSalmonSoftwarePersonsContainer, {\r\n WidgetSalmonSoftwarePersonsContainerType,\r\n} from \"../widgets/WidgetSalmonSoftwarePersonsContainer\";\r\nimport WidgetSection, {\r\n WidgetPuxSectionType,\r\n} from \"../widgets/WidgetPuxSection\";\r\nimport WidgetPuxTopImage, {\r\n WidgetPuxTopImageType,\r\n} from \"../widgets/WidgetPuxTopImage\";\r\nimport WidgetPuxWysiwyg, {\r\n WidgetPuxWysiwygType,\r\n} from \"../widgets/WidgetPuxWysiwyg\";\r\nimport WidgetSalmonSoftwareBenefitsContainer, {\r\n WidgetSalmonSoftwareBenefitsContainerType,\r\n} from \"../widgets/WidgetSalmonSoftwareBenefitsContainer\";\r\nimport WidgetSalmonSoftwareTestimonialsContainer, {\r\n WidgetSalmonSoftwareTestimonialsContainerType,\r\n} from \"../widgets/WidgetSalmonSoftwareTestimonialsContainer\";\r\nimport WidgetSalmonSoftwareFeaturesContainer, {\r\n WidgetSalmonSoftwareFeaturesContainerType,\r\n} from \"../widgets/WidgetSalmonSoftwareFeaturesContainer\";\r\nimport WidgetSalmonSoftwareAccordionsContainer, {\r\n WidgetSalmonSoftwareAccordionsContainerType,\r\n} from \"../widgets/WidgetSalmonSoftwareAccordionsContainer\";\r\nimport WidgetSalmonSoftwareHeroVideo, {\r\n WidgetSalmonSoftwareHeroVideoType,\r\n} from \"../widgets/WidgetSalmonSoftwareHeroVideo\";\r\nimport WidgetPuxImageContent, {\r\n WidgetPuxImageContentType,\r\n} from \"../widgets/WidgetPuxImageContent\";\r\nimport WidgetSalmonSoftwareCTABanner, {\r\n WidgetSalmonSoftwareCTABannerType,\r\n} from \"../widgets/WidgetSalmonSoftwareCTABanner\";\r\nimport WidgetSalmonSoftwareVideoBanner, {\r\n WidgetSalmonSoftwareVideoBannerType,\r\n} from \"../widgets/WidgetSalmonSoftwareVideoBanner\";\r\nimport WidgetSalmonSoftwareTopImageContainer, {\r\n WidgetSalmonSoftwareTopImageContainerType,\r\n} from \"../widgets/WidgetSalmonSoftwareTopImageContainer\";\r\nimport WidgetPuxRepeater, {\r\n WidgetPuxRepeaterType,\r\n} from \"../widgets/WidgetPuxRepeater\";\r\nimport WidgetSalmonSoftwareCrossroad, {\r\n WidgetSalmonSoftwareCrossroadType,\r\n} from \"../widgets/WidgetSalmonSoftwareCrossroad\";\r\nimport WidgetSalmonSoftwareGalleryContainer, {\r\n WidgetSalmonSoftwareGalleryContainerType,\r\n} from \"../widgets/WidgetSalmonSoftwareGalleryContainer\";\r\nimport WidgetSalmonSoftwareImageFromLibrary, { WidgetSalmonSoftwareImageFromLibraryType } from '../widgets/WidgetSalmonSoftwareImageFromLibrary'\r\nimport WidgetSalmonSoftwareVideo, { WidgetSalmonSoftwareVideoType } from \"../widgets/WidgetSalmonSoftwareVideo\";\r\n\r\nexport type WidgetData =\r\n | WidgetPuxSectionType\r\n | WidgetPuxRepeaterType\r\n | WidgetPuxWysiwygType\r\n | WidgetPuxTopImageType\r\n | WidgetPuxImageContentType\r\n | WidgetSalmonSoftwarePersonsContainerType\r\n | WidgetSalmonSoftwareBenefitsContainerType\r\n | WidgetSalmonSoftwareTestimonialsContainerType\r\n | WidgetSalmonSoftwareFeaturesContainerType\r\n | WidgetSalmonSoftwareAccordionsContainerType\r\n | WidgetSalmonSoftwareHeroVideoType\r\n | WidgetSalmonSoftwareCTABannerType\r\n | WidgetSalmonSoftwareVideoBannerType\r\n | WidgetSalmonSoftwareTopImageContainerType\r\n | WidgetSalmonSoftwareCrossroadType\r\n | WidgetSalmonSoftwareGalleryContainerType\r\n | WidgetSalmonSoftwareImageFromLibraryType\r\n | WidgetSalmonSoftwareVideoType\r\n\r\nexport interface WidgetPageContextData {\r\n [widgetZone: string]: [WidgetData];\r\n}\r\n\r\nexport interface WidgetMetadata {\r\n alignment: string;\r\n size: number;\r\n}\r\n\r\nexport interface WidgetProperitesPart {\r\n widgetPropertiesPartID: string;\r\n widgetPropertiesPartMobileOrder: string;\r\n widgetPropertiesMarginBottom: string;\r\n widgetPropertiesMarginTop: string;\r\n widgetPropertiesPaddingBottom: string;\r\n widgetPropertiesPaddingTop: string;\r\n}\r\n\r\nexport interface WidgetAnimationPart {\r\n widgetAnimationPartIsEnabled: boolean\r\n widgetAnimationPartType: string\r\n}\r\n\r\nexport interface WidgetBase {\r\n contentItemId?: string;\r\n metadata: WidgetMetadata;\r\n puxWidgetProperties: WidgetProperitesPart;\r\n puxWidgetAnimation: WidgetAnimationPart;\r\n}\r\n\r\nexport interface WidgetBuilderProps {\r\n widgetBuilderData: [WidgetData];\r\n}\r\n\r\nconst buildWidget = (widgetData: WidgetData, id: number) => {\r\n if (!widgetData?.contentItemId) {\r\n console.log(`denied by widgetbuilder`, widgetData?.contentType);\r\n return;\r\n }\r\n\r\n switch (widgetData.contentType) {\r\n case `PuxSection`:\r\n return (\r\n }>\r\n \r\n \r\n );\r\n\r\n case `PuxWysiwyg`:\r\n return (\r\n }>\r\n \r\n \r\n );\r\n\r\n case `PuxTopImage`:\r\n return (\r\n }>\r\n \r\n \r\n );\r\n\r\n case `PuxImageContent`:\r\n return (\r\n }>\r\n \r\n \r\n );\r\n\r\n case `PuxRepeater`:\r\n return (\r\n }>\r\n \r\n \r\n );\r\n\r\n case \"SalmonSoftwarePersonsContainer\":\r\n return (\r\n }>\r\n \r\n \r\n );\r\n\r\n case \"SalmonSoftwareBenefitsContainer\":\r\n return (\r\n }>\r\n \r\n \r\n );\r\n\r\n case \"SalmonSoftwareTestimonialsContainer\":\r\n return (\r\n }>\r\n \r\n \r\n );\r\n\r\n case \"SalmonSoftwareFeaturesContainer\":\r\n return (\r\n }>\r\n \r\n \r\n );\r\n\r\n case \"SalmonSoftwareAccordionsContainer\":\r\n return (\r\n }>\r\n \r\n \r\n );\r\n\r\n case \"SalmonSoftwareHeroVideo\":\r\n return (\r\n }>\r\n \r\n \r\n );\r\n\r\n case \"SalmonSoftwareCTABanner\":\r\n return (\r\n }>\r\n \r\n \r\n );\r\n\r\n case \"SalmonSoftwareVideoBanner\":\r\n return (\r\n }>\r\n \r\n \r\n );\r\n\r\n case \"SalmonSoftwareTopImageContainer\":\r\n return (\r\n }>\r\n \r\n \r\n );\r\n\r\n case \"SalmonSoftwareCrossroad\":\r\n return (\r\n }>\r\n \r\n \r\n );\r\n\r\n case \"SalmonSoftwareGalleryContainer\":\r\n return (\r\n }>\r\n \r\n \r\n );\r\n\r\n case \"SalmonSoftwareVideo\":\r\n return (\r\n }>\r\n \r\n \r\n );\r\n\r\n case 'SalmonSoftwareImageFromLibrary':\r\n return (\r\n }>\r\n \r\n \r\n )\r\n\r\n default:\r\n return null;\r\n }\r\n};\r\n\r\nconst WidgetBuilder: FunctionComponent = (props) => {\r\n const widgetBuilderData = props.widgetBuilderData ?? [];\r\n return (\r\n <>\r\n {widgetBuilderData.map((widgetData: WidgetData, idx: number) =>\r\n buildWidget(widgetData, idx)\r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default WidgetBuilder;\r\n","/**\n * @license React\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var b=Symbol.for(\"react.element\"),c=Symbol.for(\"react.portal\"),d=Symbol.for(\"react.fragment\"),e=Symbol.for(\"react.strict_mode\"),f=Symbol.for(\"react.profiler\"),g=Symbol.for(\"react.provider\"),h=Symbol.for(\"react.context\"),k=Symbol.for(\"react.server_context\"),l=Symbol.for(\"react.forward_ref\"),m=Symbol.for(\"react.suspense\"),n=Symbol.for(\"react.suspense_list\"),p=Symbol.for(\"react.memo\"),q=Symbol.for(\"react.lazy\"),t=Symbol.for(\"react.offscreen\"),u;u=Symbol.for(\"react.module.reference\");\nfunction v(a){if(\"object\"===typeof a&&null!==a){var r=a.$$typeof;switch(r){case b:switch(a=a.type,a){case d:case f:case e:case m:case n:return a;default:switch(a=a&&a.$$typeof,a){case k:case h:case l:case q:case p:case g:return a;default:return r}}case c:return r}}}exports.ContextConsumer=h;exports.ContextProvider=g;exports.Element=b;exports.ForwardRef=l;exports.Fragment=d;exports.Lazy=q;exports.Memo=p;exports.Portal=c;exports.Profiler=f;exports.StrictMode=e;exports.Suspense=m;\nexports.SuspenseList=n;exports.isAsyncMode=function(){return!1};exports.isConcurrentMode=function(){return!1};exports.isContextConsumer=function(a){return v(a)===h};exports.isContextProvider=function(a){return v(a)===g};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===b};exports.isForwardRef=function(a){return v(a)===l};exports.isFragment=function(a){return v(a)===d};exports.isLazy=function(a){return v(a)===q};exports.isMemo=function(a){return v(a)===p};\nexports.isPortal=function(a){return v(a)===c};exports.isProfiler=function(a){return v(a)===f};exports.isStrictMode=function(a){return v(a)===e};exports.isSuspense=function(a){return v(a)===m};exports.isSuspenseList=function(a){return v(a)===n};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===d||a===f||a===e||a===m||a===n||a===t||\"object\"===typeof a&&null!==a&&(a.$$typeof===q||a.$$typeof===p||a.$$typeof===g||a.$$typeof===h||a.$$typeof===l||a.$$typeof===u||void 0!==a.getModuleId)?!0:!1};exports.typeOf=v;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n"],"names":["_taggedTemplateLiteralLoose","strings","raw","slice","Fragment","type","props","key","h","call","jsx","E","c","__defProp","Object","defineProperty","__publicField","obj","value","enumerable","configurable","writable","__defNormalProp","observerMap","Map","RootIds","WeakMap","rootId","unsupportedValue","optionsToId","options","keys","sort","filter","map","root","has","set","toString","get","observe","element","callback","fallbackInView","window","IntersectionObserver","bounds","getBoundingClientRect","isIntersecting","target","intersectionRatio","threshold","time","boundingClientRect","intersectionRect","rootBounds","id","observer","elements","instance","thresholds","entries","forEach","entry","_a","inView","some","trackVisibility","isVisible","Array","isArray","createObserver","callbacks","push","splice","indexOf","length","delete","unobserve","size","disconnect","InView","constructor","super","this","node","triggerOnce","skip","setState","initialInView","observeNode","children","isPlainChildren","onChange","state","componentDidMount","componentDidUpdate","prevProps","rootMargin","delay","componentWillUnmount","_unobserveCb","handleChange","render","ref","handleNode","as","useInView","setRef","current","entryTarget","previousEntryTarget","result","fadeInLeft","matchIf","onTrue","onFalse","condition","matchIfOrNull","hideWhen","opacity","Reveal","cascade","damping","duration","fraction","keyframes","className","style","childClassName","childStyle","onVisibilityChange","animationStyles","useMemo","timingFunction","iterationCount","getAnimationCss","TextReveal","String","isFragment","FragmentReveal","Children","index","isValidElement","nodeDelay","cx","assign","css","animationDelay","textBaseStyles","display","whiteSpace","split","char","getAnimation","animationType","getAnimationWrapper","widgetChildren","isEnabled","widgetAnimation","React","transitionTimingFunction","animationFillMode","width","thin","cropped","widgetPropertiesMarginBottom","widgetPropertiesMarginTop","widgetPropertiesPaddingBottom","widgetPropertiesPaddingTop","widgetPropertiesPartMobileOrder","alignment","widgetAttributes","widgetAnimationPartType","widgetPropertiesPartID","widgetAnimationPartIsEnabled","PuxMediaSelector","mediaSelectorImage","personPhoto","displayText","personJob","personsContainerItems","contentItems","person","idx","SalmonSoftwarePerson","WidgetContainer","puxWidgetProperties","metadata","SalmonSoftwarePersonsContainer","contentItemId","hasAnimation","flow","widgets","find","widget","contentType","template","widget1","widget2","findIndex","x","widgetProperties","puxBackgroundDefinition","backgroundDefinitionColor","widgetPropertiesPartMarginBottom","widgetPropertiesPartMarginTop","widgetPropertiesPartPaddingBottom","widgetPropertiesPartPaddingTop","puxWidgetAnimation","content","LottieAnimation","sectionUseContainer","WidgetBuilder","widgetBuilderData","sectionIsModal","sectionModalId","PuxSection","buttonNewWindow","undefined","url","buttonLink","text","classes","buttonType","openModal","event","preventDefault","internal","Link","join","to","getLocalizedUrl","onClick","buttonOpenModalId","includes","href","rel","TopImageContentColor","TopImageImageStyle","rootClass","contentColorClass","topImageContentColor","DEFAULT","WHITE","topImageContentAlign","puxVideo","videoYTID","html","INSIDE","topImageImageStyle","disableLazyload","topImageBackground","PuxWysiwyg","topImageContent","topImageBenefit1","trim","inline","topImageBenefit2","topImageButtonAlign","PuxButton","topImageButton","topImageSecondaryButton","fullWidth","PuxTopImage","htmlBody","wysiwygId","small","wysiwygSmallContainer","benefitIcon","benefitContent","puxButton","benefitsContainerItems","benefit","SalmonSoftwareBenefit","SalmonSoftwareBenefitsContainer","testimonialContent","testimonialPhoto","testimonialName","testimonialCompany","testimonialJob","PROJECT_CODE","DATA_ATTRIBUTE","STATES","CREATED","MOUNTED","IDLE","MOVING","DESTROYED","empty","array","isObject","subject","isNull","isString","isUndefined","isHTMLElement","HTMLElement","toArray","values","iteratee","items","arrayProto","prototype","arrayLike","start","end","toggleClass","elm","add","name","classList","addClass","append","parent","children2","appendChild","bind","before","nodes","parentNode","insertBefore","matches","selector","child2","child","firstElementChild","forOwn","object","right","reverse","i","arguments","source","merge","removeAttribute","attrs","attr","setAttribute","value2","create","tag","document","createElement","prop","getComputedStyle","style2","display2","getAttribute","hasClass","contains","rect","remove","removeChild","parseHtml","DOMParser","parseFromString","body","prevent","e","stopPropagation","stopImmediatePropagation","query","querySelector","queryAll","querySelectorAll","removeClass","unit","assert","message","Error","nextTick","setTimeout","noop","raf","func","requestAnimationFrame","min","max","floor","ceil","abs","Math","between","number","minOrMax","maxOrMin","exclusive","minimum","maximum","clamp","y","sign","format","string","replacements","replacement","replace","pad","ids","EVENT_MOUNTED","EVENT_READY","EVENT_MOVE","EVENT_MOVED","EVENT_SHIFTED","EVENT_CLICK","EVENT_ACTIVE","EVENT_INACTIVE","EVENT_VISIBLE","EVENT_HIDDEN","EVENT_SLIDE_KEYDOWN","EVENT_REFRESH","EVENT_UPDATED","EVENT_RESIZE","EVENT_RESIZED","EVENT_REPOSITIONED","EVENT_DRAG","EVENT_DRAGGING","EVENT_DRAGGED","EVENT_SCROLL","EVENT_SCROLLED","EVENT_DESTROY","EVENT_ARROWS_MOUNTED","EVENT_ARROWS_UPDATED","EVENT_PAGINATION_MOUNTED","EVENT_PAGINATION_UPDATED","EVENT_NAVIGATION_MOUNTED","EVENT_AUTOPLAY_PLAY","EVENT_AUTOPLAY_PLAYING","EVENT_AUTOPLAY_PAUSE","EVENT_LAZYLOAD_LOADED","EventInterface","Splide22","listeners","unbind","targets","events","forEachEvent","event2","listener","removeEventListener","destroy","data","offBy","on","priority","off","emit","addEventListener","RequestInterval","interval","onInterval","onUpdate","limit","now","Date","startTime","rate","paused","count","update","elapsed","pause","cancel","cancelAnimationFrame","resume","rewind","isPaused","Throttle","apply","TTB","ORIENTATION_MAP","marginRight","autoWidth","fixedWidth","paddingLeft","paddingRight","left","X","Y","ArrowLeft","ArrowRight","CLASS_ROOT","CLASS_SLIDER","CLASS_TRACK","CLASS_LIST","CLASS_SLIDE","CLASS_CLONE","CLASS_CONTAINER","CLASS_ARROWS","CLASS_ARROW","CLASS_ARROW_PREV","CLASS_ARROW_NEXT","CLASS_PAGINATION","CLASS_PROGRESS","CLASS_PROGRESS_BAR","CLASS_AUTOPLAY","CLASS_PLAY","CLASS_PAUSE","CLASS_ACTIVE","CLASS_PREV","CLASS_NEXT","CLASS_VISIBLE","CLASS_LOADING","STATUS_CLASSES","CLASSES","slide","clone","arrows","arrow","prev","next","pagination","page","spinner","ROLE","ARIA_CONTROLS","ARIA_CURRENT","ARIA_LABEL","ARIA_HIDDEN","TAB_INDEX","ARIA_ORIENTATION","ALL_ATTRIBUTES","SLIDE","LOOP","FADE","Slide$1","slideIndex","destroyEvents","Components","isNavigation","updateOnMove","resolve","Direction","styles","isClone","container","focusableNodes","destroyed","initNavigation","label","i18n","slideX","controls","splides","splide","updateActivity","isActive","onMove","currIndex","visible","hidden","slideFocus","self","updateVisibility","is","trackRect","Elements","track","slideRect","active","curr","cloneStatus","mount","useContainer","isWithin","from","distance","diff","INTERVAL_DATA_ATTRIBUTE","SCROLL_LISTENER_OPTIONS","passive","capture","POINTER_MOVE_EVENTS","POINTER_UP_EVENTS","IE_ARROW_KEYS","KEYBOARD_EVENT","SRC_DATA_ATTRIBUTE","SRCSET_DATA_ATTRIBUTE","IMAGE_SELECTOR","TRIGGER_KEYS","ComponentConstructors","freeze","__proto__","Options","Components2","throttledObserve","initialOptions","points","currPoint","completely","item","predicate","item2","point","newOptions","breakpoints","onMatch","setup","JSON","parse","isMin","mediaQuery","n","m","matchMedia","axisOnly","direction","orient","slides","slider","list","autoplay","find2","bar","play","collect","prefix","identify","getClasses","refresh","drag","DEFAULT_EVENT_PRIORITY","Slides","Slides2","init","register","forEach$1","Slide2","excludeClones","matcher","Slide1","getIn","Controller","Controller2","toIndex","max2","hasFocus","perPage","getAt","images","img","observeImages","getLength","isEnough","Layout","vertical","rootRect","cssPadding","resize","newRect","height","cssHeight","cssTrackHeight","gap","cssSlideSize","fixedHeight","autoHeight","padding","heightRatio","totalSize","withoutGap","getGap","parseFloat","listSize","slideSize","sliderSize","getPadding","Clones","Elements2","clones","cloneCount","computeCloneCount","isHead","cloneNode","cloneDeep","generate","clones2","fixedSize","div","measure","flickMaxPages","Move","Transition","reposition","isBusy","Scroll","jump","translate","toPosition","position","preventLoop","destination","getPosition","exceededMin","exceededLimit","exceededMax","shift","loop","transform","backwards","excess","getLimit","trimming","focus","focus2","offset","trimSpace","getEnd","waitForTransition","move","dest","go","minDistance","Infinity","Move2","isLoop","isSlide","slideCount","perMove","prevIndex","scroll","useIndex","snap","toDest","setIndex","getNext","getAdjacent","getPrev","computeDestIndex","epsilon","incremental","toPage","closest","control","allowSameIndex","indicator","match","useScroll","speed","getIndex","Arrows","created","wrapper","createArrow","listen","prev2","arrowPath","nextIndex","prevLabel","last","nextLabel","first","disabled","Autoplay","hovered","focused","initButton","forPause","button","resetProgress","manual","autoToggle","updateInterval","pauseOnHover","pauseOnFocus","Cover","cover","src","toggle","scrollCallback","suppressConstraint","friction","clear","onScrolled","t","easingFunc","pow","easing","Drag","Scroll2","basePosition","baseEvent","prevBaseEvent","lastEvent","isFree","dragging","clickPrevented","hasExceeded","disable","onPointerDown","noDrag","isTouch","isTouchEvent","isDraggable","onPointerMove","onPointerUp","save","cancelable","coordOf","constrain","expired","timeOf","exceeded","dragMinThreshold","mouse","touch","isSliderDirection","velocity","base","diffCoord","diffTime","isFlick","computeVelocity","flickPower","computeDestination","orthogonal","touches","timeStamp","TouchEvent","isDragging","Keyboard","keyboard","onKeydown","_disabled","onUpdated","normalizedKey","LazyLoad","isSequential","lazyLoad","_Slide","_img","srcset","parentElement","_spinner","loadNext","preloadPages","load","error","onLoad","Pagination","li","class","pageX","createPagination","preventScroll","Sync","isParent","navigate","remount","Wheel","onWheel","deltaY","releaseWheel","shouldPrevent","wheel","DEFAULTS","done","endCallback","transition","rewindSpeed","getSpeed","_Splide","handlers","namespace","eventHandlers","handler","_key","_namespace","eventNS","fragments","_event","_callback","_priority","handler1","handler2","EventBus","initialState","states","State","_options","_Extensions","defaults","Extensions","_Components","_Transition","Component","component","sync","Splide","EVENTS","classNames","Boolean","isObject2","isEqualDeep","subject1","subject2","keys1","keys2","hasOwnProperty","merge2","merged","forOwn2","Splide2","splideRef","getSlides","newSlides","array1","array2","args","renderTrack","hasSliderWrapper","hasAutoplayProgress","hasAutoplayControls","playButtonLabel","pauseButtonLabel","renderControls","SplideSlide","testimonialsContainerItems","testimonial","SalmonSoftwareTestimonial","SalmonSoftwareTestimonialsContainer","featureBody","salmonSoftwareIcon","iconSelector","featureDescription","featureContent","featureLink","path","features","featuresContainerItems","featuresContainerContent","feature","SalmonSoftwareFeature","SalmonSoftwareFeaturesContainer","accordionBody","accordionDescription","accordionContent","accordionLinkText","accordionLink","LEFT","RIGHT","UP","DOWN","defaultProps","delta","preventScrollOnSwipe","rotationAngle","trackMouse","trackTouch","swipeDuration","touchEventOptions","initial","swiping","xy","mouseMove","mouseUp","touchEnd","touchMove","touchStart","rotateXYByAngle","pos","angle","angleInRadians","PI","cos","sin","getHandlers","handlerProps","onStart","onUp","clientX","clientY","onTouchStartOrOnMouseDown","deltaX","absX","absY","sqrt","vxvy","dir","getDirection","toLowerCase","eventData","onSwipeStart","onSwiping","cancelablePageSwipe","onSwiped","onEnd","onSwipedDir","onTap","onTouchEndOrOnMouseUp","attachTouch","el","cleanup","baseOptions","tls","o","output","addState","cleanUpTouch","onMouseDown","useSwipeable","transientState","transientProps","previousProps","defaultKey","stateSetter","updateTransientState","accordions","accordionsContainerItems","setActive","useState","intervalTime","setIntervalTime","accordionsContainerInterval","useRef","useEffect","setInterval","clearInterval","stopInterval","swipeHandlers","onSwipedLeft","onSwipedRight","accordionsContainerContent","accordionImage","SalmonSoftwareAccordion","SalmonSoftwareAccordionsContainer","file","paths","autoPlay","muted","refProp","playsInline","playsinline","process","heroVideoVideo","videoRef","isSafari","test","navigator","userAgent","playing","setPlaying","heroVideoAutoplay","setMuted","PuxMediaVideoSelector","SalmonSoftwareHeroVideo","imageContentImagePosition","imageContentImage","imageContentText","imageContentButton","PuxImageContent","cTABannerImage","resizePaths","cTABannerContent","cTABannerButton","SalmonSoftwareCTABanner","toggler","setToggler","videoSources","frameBorder","allow","videoStructuredDataName","videoStructuredDataDescription","videoStructuredDataUploadDate","videoThumbnail","resizePathsTablet","resizePathsMobile","videoStructuredDataContentUrl","isBanner","PuxPicture","FsLightbox","sources","videoBannerContent","videoBannerPrimaryButton","videoBannerSecondaryButton","PuxVideo","SalmonSoftwareVideoBanner","topImagePerex","topImagePrimaryButton","topImages","topImageContainerItems","sliderArrows","sliderAutoPlay","sliderDots","topImage","SalmonSoftwareTopImage","SalmonSoftwareTopImageContainer","PuxRepeater","crossroadItems","crossroadItem","icon","SalmonSoftwareCrossroad","galleryItemUrl","galleryItemImage","bag","gallery","SalmonSoftwareGalleryItem","galleryContainerItems","SalmonSoftwareGallery","SalmonSoftwareGalleryContainer","imageFromLibraryImage","imageFromLibraryDescription","SalmonSoftwareImageFromLibrary","SalmonSoftwareVideo","widgetData","buildWidget","Suspense","fallback","WidgetSection","WidgetPuxWysiwyg","WidgetPuxTopImage","WidgetPuxImageContent","WidgetPuxRepeater","WidgetSalmonSoftwarePersonsContainer","WidgetSalmonSoftwareBenefitsContainer","WidgetSalmonSoftwareTestimonialsContainer","WidgetSalmonSoftwareFeaturesContainer","WidgetSalmonSoftwareAccordionsContainer","WidgetSalmonSoftwareHeroVideo","WidgetSalmonSoftwareCTABanner","WidgetSalmonSoftwareVideoBanner","WidgetSalmonSoftwareTopImageContainer","WidgetSalmonSoftwareCrossroad","WidgetSalmonSoftwareGalleryContainer","WidgetSalmonSoftwareVideo","WidgetSalmonSoftwareImageFromLibrary","console","log","u","b","Symbol","for","d","f","g","k","l","p","q","v","a","r","$$typeof","exports","module"],"sourceRoot":""}