{"version":3,"file":"main.a35b0e7fa81b9e7a3c47.js","mappings":";gkCAAA,IAAIA,EAAM,CACT,mBAAoB,MACpB,0BAA2B,KAC3B,mBAAoB,MACpB,2BAA4B,MAC5B,oBAAqB,MACrB,iBAAkB,MAClB,mBAAoB,MACpB,mBAAoB,KACpB,oBAAqB,MACrB,iBAAkB,MAClB,gBAAiB,MACjB,wBAAyB,MACzB,iBAAkB,MAClB,iBAAkB,MAClB,cAAe,MACf,qBAAsB,MACtB,qBAAsB,MACtB,oBAAqB,MACrB,qBAAsB,MACtB,oBAAqB,MACrB,wBAAyB,MACzB,aAAc,MACd,cAAe,MACf,iBAAkB,MAClB,iBAAkB,MAClB,aAAc,MACd,cAAe,MACf,iBAAkB,MAClB,eAAgB,MAChB,mBAAoB,MACpB,aAAc,MACd,aAAc,MACd,aAAc,MACd,aAAc,MACd,cAAe,MACf,mBAAoB,MACpB,aAAc,MACd,gBAAiB,IACjB,iBAAkB,MAClB,eAAgB,MAChB,6BAA8B,MAC9B,sBAAuB,MACvB,gBAAiB,MACjB,sBAAuB,MACvB,cAAe,MACf,eAAgB,MAChB,gBAAiB,OAIlB,SAASC,EAAeC,GACvB,IAAIC,EAAKC,EAAsBF,GAC/B,OAAOG,EAAoBF,EAC5B,CACA,SAASC,EAAsBF,GAC9B,IAAIG,EAAoBC,EAAEN,EAAKE,GAAM,CACpC,IAAIK,EAAI,IAAIC,MAAM,uBAAyBN,EAAM,KAEjD,MADAK,EAAEE,KAAO,mBACHF,CACP,CACA,OAAOP,EAAIE,EACZ,CACAD,EAAeS,KAAO,WACrB,OAAOC,OAAOD,KAAKV,EACpB,EACAC,EAAeW,QAAUR,EACzBS,EAAOC,QAAUb,EACjBA,EAAeE,GAAK,2BCpEpB,IAAIH,EAAM,CACT,wBAAyB,MACzB,yBAA0B,OAI3B,SAASC,EAAeC,GACvB,IAAIC,EAAKC,EAAsBF,GAC/B,OAAOG,EAAoBF,EAC5B,CACA,SAASC,EAAsBF,GAC9B,IAAIG,EAAoBC,EAAEN,EAAKE,GAAM,CACpC,IAAIK,EAAI,IAAIC,MAAM,uBAAyBN,EAAM,KAEjD,MADAK,EAAEE,KAAO,mBACHF,CACP,CACA,OAAOP,EAAIE,EACZ,CACAD,EAAeS,KAAO,WACrB,OAAOC,OAAOD,KAAKV,EACpB,EACAC,EAAeW,QAAUR,EACzBS,EAAOC,QAAUb,EACjBA,EAAeE,GAAK,6BCvBpB,IAAIH,EAAM,CACT,mBAAoB,MACpB,0BAA2B,MAC3B,mBAAoB,MACpB,oBAAqB,MACrB,iBAAkB,MAClB,mBAAoB,MACpB,mBAAoB,MACpB,oBAAqB,KACrB,iBAAkB,MAClB,wBAAyB,MACzB,iBAAkB,MAClB,cAAe,MACf,qBAAsB,MACtB,qBAAsB,MACtB,oBAAqB,MACrB,qBAAsB,MACtB,oBAAqB,MACrB,wBAAyB,MACzB,cAAe,MACf,iBAAkB,MAClB,cAAe,IACf,mBAAoB,MACpB,aAAc,MACd,cAAe,MACf,aAAc,MACd,gBAAiB,MACjB,iBAAkB,MAClB,eAAgB,KAChB,sBAAuB,MACvB,gBAAiB,MACjB,sBAAuB,MACvB,cAAe,GACf,gBAAiB,MACjB,aAAc,OAIf,SAASC,EAAeC,GACvB,IAAIC,EAAKC,EAAsBF,GAC/B,OAAOG,EAAoBF,EAC5B,CACA,SAASC,EAAsBF,GAC9B,IAAIG,EAAoBC,EAAEN,EAAKE,GAAM,CACpC,IAAIK,EAAI,IAAIC,MAAM,uBAAyBN,EAAM,KAEjD,MADAK,EAAEE,KAAO,mBACHF,CACP,CACA,OAAOP,EAAIE,EACZ,CACAD,EAAeS,KAAO,WACrB,OAAOC,OAAOD,KAAKV,EACpB,EACAC,EAAeW,QAAUR,EACzBS,EAAOC,QAAUb,EACjBA,EAAeE,GAAK,sMCjDb,SAASY,EACdC,GACmC,IAAAC,EACnC,OACwC,QAAtCA,EAA2BD,EAAOE,YAAI,IAAAD,OAAA,EAAtCA,EAAwCE,SACtC,0CACGC,EAAAA,EAAAA,IAA0BJ,EAEnC,CAcO,SAASK,EAAiBL,GAC/B,OACY,MAATA,GACyC,iBAAhBA,EAAOE,MACU,iBAAjBF,EAAOM,QACjCC,EAAAA,EAAAA,IAAgBP,EAEpB,4+DClCAQ,EAAA,kBAAAjB,CAAA,MAAAkB,EAAAlB,EAAA,GAAAmB,EAAAf,OAAAgB,UAAAC,EAAAF,EAAAG,eAAAvB,EAAAK,OAAAmB,gBAAA,SAAAL,EAAAlB,EAAAmB,GAAAD,EAAAlB,GAAAmB,EAAAK,KAAA,EAAAC,EAAA,mBAAAC,OAAAA,OAAA,GAAAC,EAAAF,EAAAG,UAAA,aAAAC,EAAAJ,EAAAK,eAAA,kBAAAC,EAAAN,EAAAO,aAAA,yBAAAC,EAAAf,EAAAlB,EAAAmB,GAAA,OAAAf,OAAAmB,eAAAL,EAAAlB,EAAA,CAAAwB,MAAAL,EAAAe,YAAA,EAAAC,cAAA,EAAAC,UAAA,IAAAlB,EAAAlB,EAAA,KAAAiC,EAAA,aAAAf,GAAAe,EAAA,SAAAf,EAAAlB,EAAAmB,GAAA,OAAAD,EAAAlB,GAAAmB,CAAA,WAAAkB,EAAAnB,EAAAlB,EAAAmB,EAAAE,GAAA,IAAAI,EAAAzB,GAAAA,EAAAoB,qBAAAkB,EAAAtC,EAAAsC,EAAAX,EAAAvB,OAAAmC,OAAAd,EAAAL,WAAAS,EAAA,IAAAW,EAAAnB,GAAA,WAAAtB,EAAA4B,EAAA,WAAAH,MAAAiB,EAAAvB,EAAAC,EAAAU,KAAAF,CAAA,UAAAe,EAAAxB,EAAAlB,EAAAmB,GAAA,WAAAR,KAAA,SAAAgC,IAAAzB,EAAA0B,KAAA5C,EAAAmB,GAAA,OAAAD,GAAA,OAAAP,KAAA,QAAAgC,IAAAzB,EAAA,EAAAlB,EAAAqC,KAAAA,EAAA,IAAAQ,EAAA,iBAAAC,EAAA,iBAAAC,EAAA,YAAAC,EAAA,YAAAC,EAAA,YAAAX,IAAA,UAAAY,IAAA,UAAAC,IAAA,KAAAC,EAAA,GAAAnB,EAAAmB,EAAAzB,GAAA,8BAAA0B,EAAAjD,OAAAkD,eAAAC,EAAAF,GAAAA,EAAAA,EAAAG,EAAA,MAAAD,GAAAA,IAAApC,GAAAE,EAAAuB,KAAAW,EAAA5B,KAAAyB,EAAAG,GAAA,IAAAE,EAAAN,EAAA/B,UAAAkB,EAAAlB,UAAAhB,OAAAmC,OAAAa,GAAA,SAAAM,EAAAxC,GAAA,0BAAAyC,SAAA,SAAA3D,GAAAiC,EAAAf,EAAAlB,GAAA,SAAAkB,GAAA,YAAA0C,QAAA5D,EAAAkB,EAAA,gBAAA2C,EAAA3C,EAAAlB,GAAA,SAAA8D,EAAA3C,EAAApB,EAAA0B,EAAAE,GAAA,IAAAE,EAAAa,EAAAxB,EAAAC,GAAAD,EAAAnB,GAAA,aAAA8B,EAAAlB,KAAA,KAAAoB,EAAAF,EAAAc,IAAAE,EAAAd,EAAAP,MAAA,OAAAqB,GAAA,UAAAkB,EAAAlB,IAAAxB,EAAAuB,KAAAC,EAAA,WAAA7C,EAAAK,QAAAwC,EAAAmB,SAAAC,MAAA,SAAA/C,GAAA4C,EAAA,OAAA5C,EAAAO,EAAAE,EAAA,aAAAT,GAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAA3B,EAAAK,QAAAwC,GAAAoB,MAAA,SAAA/C,GAAAa,EAAAP,MAAAN,EAAAO,EAAAM,EAAA,aAAAb,GAAA,OAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAAA,EAAAE,EAAAc,IAAA,KAAAxB,EAAApB,EAAA,gBAAAyB,MAAA,SAAAN,EAAAG,GAAA,SAAA6C,IAAA,WAAAlE,GAAA,SAAAA,EAAAmB,GAAA2C,EAAA5C,EAAAG,EAAArB,EAAAmB,EAAA,WAAAA,EAAAA,EAAAA,EAAA8C,KAAAC,EAAAA,GAAAA,GAAA,aAAAzB,EAAAzC,EAAAmB,EAAAE,GAAA,IAAAtB,EAAA8C,EAAA,gBAAApB,EAAAE,GAAA,GAAA5B,IAAAgD,EAAA,MAAA9C,MAAA,mCAAAF,IAAAiD,EAAA,cAAAvB,EAAA,MAAAE,EAAA,OAAAH,MAAAN,EAAAiD,MAAA,OAAA9C,EAAA+C,OAAA3C,EAAAJ,EAAAsB,IAAAhB,IAAA,KAAAE,EAAAR,EAAAgD,SAAA,GAAAxC,EAAA,KAAAE,EAAAuC,EAAAzC,EAAAR,GAAA,GAAAU,EAAA,IAAAA,IAAAkB,EAAA,gBAAAlB,CAAA,cAAAV,EAAA+C,OAAA/C,EAAAkD,KAAAlD,EAAAmD,MAAAnD,EAAAsB,SAAA,aAAAtB,EAAA+C,OAAA,IAAArE,IAAA8C,EAAA,MAAA9C,EAAAiD,EAAA3B,EAAAsB,IAAAtB,EAAAoD,kBAAApD,EAAAsB,IAAA,gBAAAtB,EAAA+C,QAAA/C,EAAAqD,OAAA,SAAArD,EAAAsB,KAAA5C,EAAAgD,EAAA,IAAAK,EAAAV,EAAA1C,EAAAmB,EAAAE,GAAA,cAAA+B,EAAAzC,KAAA,IAAAZ,EAAAsB,EAAA8C,KAAAnB,EAAAF,EAAAM,EAAAT,MAAAM,EAAA,gBAAAzB,MAAA4B,EAAAT,IAAAwB,KAAA9C,EAAA8C,KAAA,WAAAf,EAAAzC,OAAAZ,EAAAiD,EAAA3B,EAAA+C,OAAA,QAAA/C,EAAAsB,IAAAS,EAAAT,IAAA,YAAA2B,EAAAtE,EAAAmB,GAAA,IAAAE,EAAAF,EAAAiD,OAAArE,EAAAC,EAAA4B,SAAAP,GAAA,GAAAtB,IAAAmB,EAAA,OAAAC,EAAAkD,SAAA,eAAAhD,GAAArB,EAAA4B,SAAA+C,SAAAxD,EAAAiD,OAAA,SAAAjD,EAAAwB,IAAAzB,EAAAoD,EAAAtE,EAAAmB,GAAA,UAAAA,EAAAiD,SAAA,WAAA/C,IAAAF,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAvD,EAAA,aAAA4B,EAAA,IAAAxB,EAAAiB,EAAA3C,EAAAC,EAAA4B,SAAAT,EAAAwB,KAAA,aAAAlB,EAAAd,KAAA,OAAAQ,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAAlB,EAAAkB,IAAAxB,EAAAkD,SAAA,KAAApB,EAAA,IAAAtB,EAAAF,EAAAkB,IAAA,OAAAhB,EAAAA,EAAAwC,MAAAhD,EAAAnB,EAAA6E,YAAAlD,EAAAH,MAAAL,EAAA2D,KAAA9E,EAAA+E,QAAA,WAAA5D,EAAAiD,SAAAjD,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,GAAAC,EAAAkD,SAAA,KAAApB,GAAAtB,GAAAR,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAzD,EAAAkD,SAAA,KAAApB,EAAA,UAAA+B,EAAA9D,GAAA,IAAAlB,EAAA,CAAAiF,OAAA/D,EAAA,SAAAA,IAAAlB,EAAAkF,SAAAhE,EAAA,SAAAA,IAAAlB,EAAAmF,WAAAjE,EAAA,GAAAlB,EAAAoF,SAAAlE,EAAA,SAAAmE,WAAAC,KAAAtF,EAAA,UAAAuF,EAAArE,GAAA,IAAAlB,EAAAkB,EAAAsE,YAAA,GAAAxF,EAAAW,KAAA,gBAAAX,EAAA2C,IAAAzB,EAAAsE,WAAAxF,CAAA,UAAAwC,EAAAtB,GAAA,KAAAmE,WAAA,EAAAJ,OAAA,SAAA/D,EAAAyC,QAAAqB,EAAA,WAAAS,OAAA,YAAAjC,EAAAxD,GAAA,GAAAA,GAAA,KAAAA,EAAA,KAAAmB,EAAAnB,EAAA2B,GAAA,GAAAR,EAAA,OAAAA,EAAAyB,KAAA5C,GAAA,sBAAAA,EAAA8E,KAAA,OAAA9E,EAAA,IAAA0F,MAAA1F,EAAA2F,QAAA,KAAA5F,GAAA,EAAA0B,EAAA,SAAAqD,IAAA,OAAA/E,EAAAC,EAAA2F,QAAA,GAAAtE,EAAAuB,KAAA5C,EAAAD,GAAA,OAAA+E,EAAAtD,MAAAxB,EAAAD,GAAA+E,EAAAX,MAAA,EAAAW,EAAA,OAAAA,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,SAAArD,EAAAqD,KAAArD,CAAA,YAAAmD,UAAAb,EAAA/D,GAAA,2BAAAkD,EAAA9B,UAAA+B,EAAApD,EAAA0D,EAAA,eAAAjC,MAAA2B,EAAAhB,cAAA,IAAApC,EAAAoD,EAAA,eAAA3B,MAAA0B,EAAAf,cAAA,IAAAe,EAAA0C,YAAA3D,EAAAkB,EAAApB,EAAA,qBAAA/B,EAAA6F,oBAAA,SAAA3E,GAAA,IAAAlB,EAAA,mBAAAkB,GAAAA,EAAA4E,YAAA,QAAA9F,IAAAA,IAAAkD,GAAA,uBAAAlD,EAAA4F,aAAA5F,EAAA+F,MAAA,EAAA/F,EAAAgG,KAAA,SAAA9E,GAAA,OAAAd,OAAA6F,eAAA7F,OAAA6F,eAAA/E,EAAAiC,IAAAjC,EAAAgF,UAAA/C,EAAAlB,EAAAf,EAAAa,EAAA,sBAAAb,EAAAE,UAAAhB,OAAAmC,OAAAkB,GAAAvC,CAAA,EAAAlB,EAAAmG,MAAA,SAAAjF,GAAA,OAAA8C,QAAA9C,EAAA,EAAAwC,EAAAG,EAAAzC,WAAAa,EAAA4B,EAAAzC,UAAAS,GAAA,0BAAA7B,EAAA6D,cAAAA,EAAA7D,EAAAoG,MAAA,SAAAlF,EAAAC,EAAAE,EAAAtB,EAAA0B,QAAA,IAAAA,IAAAA,EAAA4E,SAAA,IAAA1E,EAAA,IAAAkC,EAAAxB,EAAAnB,EAAAC,EAAAE,EAAAtB,GAAA0B,GAAA,OAAAzB,EAAA6F,oBAAA1E,GAAAQ,EAAAA,EAAAmD,OAAAb,MAAA,SAAA/C,GAAA,OAAAA,EAAAiD,KAAAjD,EAAAM,MAAAG,EAAAmD,MAAA,KAAApB,EAAAD,GAAAxB,EAAAwB,EAAA1B,EAAA,aAAAE,EAAAwB,EAAA9B,GAAA,0BAAAM,EAAAwB,EAAA,qDAAAzD,EAAAG,KAAA,SAAAe,GAAA,IAAAlB,EAAAI,OAAAc,GAAAC,EAAA,WAAAE,KAAArB,EAAAmB,EAAAmE,KAAAjE,GAAA,OAAAF,EAAAmF,UAAA,SAAAxB,IAAA,KAAA3D,EAAAwE,QAAA,KAAAzE,EAAAC,EAAAoF,MAAA,GAAArF,KAAAlB,EAAA,OAAA8E,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,QAAAA,EAAAX,MAAA,EAAAW,CAAA,GAAA9E,EAAAwD,OAAAA,EAAAhB,EAAApB,UAAA,CAAA0E,YAAAtD,EAAAiD,MAAA,SAAAzF,GAAA,QAAAwG,KAAA,OAAA1B,KAAA,OAAAP,KAAA,KAAAC,MAAAtD,EAAA,KAAAiD,MAAA,OAAAE,SAAA,UAAAD,OAAA,YAAAzB,IAAAzB,EAAA,KAAAmE,WAAA1B,QAAA4B,IAAAvF,EAAA,QAAAmB,KAAA,WAAAA,EAAAsF,OAAA,IAAApF,EAAAuB,KAAA,KAAAzB,KAAAuE,OAAAvE,EAAAuF,MAAA,WAAAvF,GAAAD,EAAA,EAAAyF,KAAA,gBAAAxC,MAAA,MAAAjD,EAAA,KAAAmE,WAAA,GAAAG,WAAA,aAAAtE,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,YAAAiE,IAAA,EAAAnC,kBAAA,SAAAzE,GAAA,QAAAmE,KAAA,MAAAnE,EAAA,IAAAmB,EAAA,cAAA0F,EAAAxF,EAAAtB,GAAA,OAAA4B,EAAAhB,KAAA,QAAAgB,EAAAgB,IAAA3C,EAAAmB,EAAA2D,KAAAzD,EAAAtB,IAAAoB,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,KAAAnB,CAAA,SAAAA,EAAA,KAAAsF,WAAAM,OAAA,EAAA5F,GAAA,IAAAA,EAAA,KAAA0B,EAAA,KAAA4D,WAAAtF,GAAA4B,EAAAF,EAAA+D,WAAA,YAAA/D,EAAAwD,OAAA,OAAA4B,EAAA,UAAApF,EAAAwD,QAAA,KAAAuB,KAAA,KAAA3E,EAAAR,EAAAuB,KAAAnB,EAAA,YAAAM,EAAAV,EAAAuB,KAAAnB,EAAA,iBAAAI,GAAAE,EAAA,SAAAyE,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,WAAAsB,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,SAAAtD,GAAA,QAAA2E,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,YAAAnD,EAAA,MAAA9B,MAAA,kDAAAuG,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,KAAAT,OAAA,SAAAxD,EAAAlB,GAAA,QAAAmB,EAAA,KAAAkE,WAAAM,OAAA,EAAAxE,GAAA,IAAAA,EAAA,KAAApB,EAAA,KAAAsF,WAAAlE,GAAA,GAAApB,EAAAkF,QAAA,KAAAuB,MAAAnF,EAAAuB,KAAA7C,EAAA,oBAAAyG,KAAAzG,EAAAoF,WAAA,KAAA1D,EAAA1B,EAAA,OAAA0B,IAAA,UAAAP,GAAA,aAAAA,IAAAO,EAAAwD,QAAAjF,GAAAA,GAAAyB,EAAA0D,aAAA1D,EAAA,UAAAE,EAAAF,EAAAA,EAAA+D,WAAA,UAAA7D,EAAAhB,KAAAO,EAAAS,EAAAgB,IAAA3C,EAAAyB,GAAA,KAAA2C,OAAA,YAAAU,KAAArD,EAAA0D,WAAAlC,GAAA,KAAA6D,SAAAnF,EAAA,EAAAmF,SAAA,SAAA5F,EAAAlB,GAAA,aAAAkB,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,gBAAAzB,EAAAP,MAAA,aAAAO,EAAAP,KAAA,KAAAmE,KAAA5D,EAAAyB,IAAA,WAAAzB,EAAAP,MAAA,KAAAiG,KAAA,KAAAjE,IAAAzB,EAAAyB,IAAA,KAAAyB,OAAA,cAAAU,KAAA,kBAAA5D,EAAAP,MAAAX,IAAA,KAAA8E,KAAA9E,GAAAiD,CAAA,EAAA8D,OAAA,SAAA7F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAAgE,aAAAjE,EAAA,YAAA4F,SAAA3F,EAAAqE,WAAArE,EAAAiE,UAAAG,EAAApE,GAAA8B,CAAA,GAAA+D,MAAA,SAAA9F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAA8D,SAAA/D,EAAA,KAAAG,EAAAF,EAAAqE,WAAA,aAAAnE,EAAAV,KAAA,KAAAZ,EAAAsB,EAAAsB,IAAA4C,EAAApE,EAAA,QAAApB,CAAA,QAAAE,MAAA,0BAAAgH,cAAA,SAAAjH,EAAAmB,EAAAE,GAAA,YAAAgD,SAAA,CAAAzC,SAAA4B,EAAAxD,GAAA6E,WAAA1D,EAAA4D,QAAA1D,GAAA,cAAA+C,SAAA,KAAAzB,IAAAzB,GAAA+B,CAAA,GAAAjD,CAAA,UAAAkH,EAAA7F,EAAAH,EAAAlB,EAAAmB,EAAApB,EAAA4B,EAAAE,GAAA,QAAAJ,EAAAJ,EAAAM,GAAAE,GAAAE,EAAAN,EAAAD,KAAA,OAAAH,GAAA,YAAArB,EAAAqB,EAAA,CAAAI,EAAA0C,KAAAjD,EAAAa,GAAAsE,QAAAhG,QAAA0B,GAAAkC,KAAA9C,EAAApB,EAAA,UAAAoH,EAAAnH,EAAAmB,GAAA,IAAAD,EAAAd,OAAAD,KAAAH,GAAA,GAAAI,OAAAgH,sBAAA,KAAArH,EAAAK,OAAAgH,sBAAApH,GAAAmB,IAAApB,EAAAA,EAAAsH,QAAA,SAAAlG,GAAA,OAAAf,OAAAkH,yBAAAtH,EAAAmB,GAAAe,UAAA,KAAAhB,EAAAoE,KAAAiC,MAAArG,EAAAnB,EAAA,QAAAmB,CAAA,UAAAsG,EAAAxH,GAAA,QAAAmB,EAAA,EAAAA,EAAAsG,UAAA9B,OAAAxE,IAAA,KAAAD,EAAA,MAAAuG,UAAAtG,GAAAsG,UAAAtG,GAAA,GAAAA,EAAA,EAAAgG,EAAA/G,OAAAc,IAAA,GAAAyC,SAAA,SAAAxC,GAAAuG,EAAA1H,EAAAmB,EAAAD,EAAAC,GAAA,IAAAf,OAAAuH,0BAAAvH,OAAAwH,iBAAA5H,EAAAI,OAAAuH,0BAAAzG,IAAAiG,EAAA/G,OAAAc,IAAAyC,SAAA,SAAAxC,GAAAf,OAAAmB,eAAAvB,EAAAmB,EAAAf,OAAAkH,yBAAApG,EAAAC,GAAA,WAAAnB,CAAA,UAAA6H,EAAA7H,EAAAmB,GAAA,QAAAD,EAAA,EAAAA,EAAAC,EAAAwE,OAAAzE,IAAA,KAAAnB,EAAAoB,EAAAD,GAAAnB,EAAAmC,WAAAnC,EAAAmC,aAAA,EAAAnC,EAAAoC,cAAA,YAAApC,IAAAA,EAAAqC,UAAA,GAAAhC,OAAAmB,eAAAvB,EAAA8H,EAAA/H,EAAAgI,KAAAhI,EAAA,WAAAiI,EAAAhI,EAAAmB,EAAAD,GAAA,OAAAC,GAAA0G,EAAA7H,EAAAoB,UAAAD,GAAAD,GAAA2G,EAAA7H,EAAAkB,GAAAd,OAAAmB,eAAAvB,EAAA,aAAAoC,UAAA,IAAApC,CAAA,UAAAiI,EAAAtG,EAAAN,GAAA,KAAAM,aAAAN,GAAA,UAAAuD,UAAA,8CAAA8C,EAAA1H,EAAAmB,EAAAD,GAAA,OAAAC,EAAA2G,EAAA3G,MAAAnB,EAAAI,OAAAmB,eAAAvB,EAAAmB,EAAA,CAAAK,MAAAN,EAAAgB,YAAA,EAAAC,cAAA,EAAAC,UAAA,IAAApC,EAAAmB,GAAAD,EAAAlB,CAAA,UAAA8H,EAAA5G,GAAA,IAAAO,EAAA,SAAAP,GAAA,aAAA6C,EAAA7C,KAAAA,EAAA,OAAAA,EAAA,IAAAlB,EAAAkB,EAAAQ,OAAAwG,aAAA,YAAAlI,EAAA,KAAAyB,EAAAzB,EAAA4C,KAAA1B,EAAAC,UAAA,aAAA4C,EAAAtC,GAAA,OAAAA,EAAA,UAAAmD,UAAA,uDAAAuD,OAAAjH,EAAA,CAAAkH,CAAAlH,GAAA,gBAAA6C,EAAAtC,GAAAA,EAAAA,EAAA,GAmBO,UAAM4G,EAAOL,GAAA,SAAAK,IAAAJ,EAAA,KAAAI,GAAAX,EAAA,yBACW,SAACY,GAG5B,GADAC,WAAWC,EAAAA,GAAM,GACM,QAAnBF,EAAQlE,QAAuC,SAAnBkE,EAAQlE,OACtC,OAAOiC,QAAQhG,QAAQiI,GAEzB,IAAMG,EAAYC,KAMlB,OAJAJ,EAAQK,QAAOnB,EAAAA,EAAA,GACVc,EAAQK,SAAO,IAClB,CAACF,EAAUG,iBAAmBH,EAAUI,eAEnCxC,QAAQhG,QAAQiI,EACzB,IAACZ,EAAA,sCAjCHrG,EAiCGyH,GAjCHzH,EAiCGJ,IAAA+E,MAE2B,SAAA+C,EAC1BC,EACAC,EACAC,GAA8C,IAAAC,EAAAC,EAAA3I,EAAA4I,EAAAC,EAAA,OAAArI,IAAAoB,MAAA,SAAAkH,GAAA,cAAAA,EAAA/C,KAAA+C,EAAAzE,MAAA,OAG5B,IADlB0E,EAAAA,EAAAA,MACAC,EAAAA,KACKR,EAASS,GAAI,CAAFH,EAAAzE,KAAA,SAGiC,MADM,QADpCqE,EACqB,QADrBC,EACfH,EAASN,QAAQgB,IAAI,uBAAe,IAAAP,OAAA,EAApCA,EAAsCQ,qBAAa,IAAAT,EAAAA,EAAI,cAC9BU,QAAQ,SAAW,GAClC,CAAFN,EAAAzE,KAAA,gBAAAyE,EAAAzE,KAAA,EACYmE,EAASa,QAAQC,OAAM,OACvCvJ,EADEC,EAAK8I,EAAAhF,OAETyF,EAAAA,EAAAA,IACE,cDjC0DC,EAChD,QAApBA,ECiC6BxJ,EDjCdM,aAAK,IAAAkJ,EAAAA,EAHI,0CAMWC,EC+BJzJ,ED/BuC0J,SAC/D/J,OAAOoD,OAAqB,QAAf2G,EAACD,EAAQE,cAAM,IAAAD,EAAAA,EAAI,CAAC,GACrCE,SAAQ,SAACrK,GAAC,OAAKA,CAAC,IAChBsK,KAAK,QC8BSxJ,EAAiBL,IAC1BuJ,EAAAA,EAAAA,IACE,QACW,QADJX,EACP5I,EAAMM,aAAK,IAAAsI,EAAAA,EAAI,uBACH,QADyBC,EACrC7I,EAAM8J,cAAM,IAAAjB,EAAAA,OAAIkB,IAGlBR,EAAAA,EAAAA,IAAgB,QAASvJ,EAAMgK,SAChC,eAAAlB,EAAA7E,OAAA,SAIEwE,EAAWD,IAAS,yBAAAM,EAAA5C,OD7CxB,IAA8BuD,EAAmCC,EAJFF,CCiDvC,GAAAlB,EAAA,IAlE/B,eAAA7H,EAAA,KAAAlB,EAAAyH,UAAA,WAAApB,SAAA,SAAAlF,EAAApB,GAAA,IAAA4B,EAAAN,EAAAkG,MAAArG,EAAAlB,GAAA,SAAA0K,EAAArJ,GAAA6F,EAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,OAAAtJ,EAAA,UAAAsJ,EAAAtJ,GAAA6F,EAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,QAAAtJ,EAAA,CAAAqJ,OAAA,QAmEG,gBAAAE,EAAAC,EAAAC,GAAA,OAAAhC,EAAAvB,MAAA,KAAAE,UAAA,EAlCA,GAkCA,IAQUsD,EAAW,SAAAC,GAKpB,SAAAD,EAAYE,EAAkBC,GAA2E,IAAAC,EAGxE,OAHwElD,EAAA,KAAA8C,GAC7FrD,EAARyD,EAAAC,EAAA,KAAAL,GAAQ,wBAHiEP,GAIzEW,EAAKD,KAAOA,GAAcG,OAC1BF,EAAKF,QAAUA,QAAAA,EAAW,GAAGE,CACjC,CAAC,OAAAG,EAAAP,EAAAC,GAAAhD,EAAA+C,EAAA,EAAAhD,IAAA,YAAAvG,MAED,SAAU+J,GAAiD,IAAAC,EAAA,KACnDC,EAAOC,KAAKT,QAAU,oBAC1BQ,EAAOA,EAAKE,QAAQ,QAAS,IAE7B,IAAIC,EAAwB,CACxBxH,OAAQ,MACRmH,OAAAA,EACA5C,QAAS,CACL,OAAU,qBAIlB,OAAO+C,KAAKG,iBAAiBD,GAAU3H,MAAK,SAAA6H,GACxC,OAAON,EAAKN,KAAKa,MAAMN,EAAMK,EACjC,IAAG7H,MAAK,SAAC+H,GACL,OAAOR,EAAKS,gBAAgBR,EAAMO,GAAW,SAACA,GAAmB,OAAKR,EAAKU,iBAAiBF,EAAU,GAC1G,GACJ,GAAC,CAAAjE,IAAA,mBAAAvG,MAED,SAA2ByH,GAA+C,IAAAkD,EAAA,KAChEC,EAASnD,EAASmD,OACpBC,EAAgB,CAAC,EACrB,OAD4BpD,EAASN,SAAWM,EAASN,QAAQhF,SAAWsF,EAASN,QAAQhF,SAAQ,SAACJ,EAAQ+I,GAAM,OAAKD,EAASC,GAAK/I,CAAC,IACzH,MAAX6I,EACOnD,EAASsD,OAAOtI,MAAK,SAACuI,GAG7B,MAD8B,KAAlBA,EAAuB,KAAOC,KAAKC,MAAMF,EAAeL,EAAKQ,iBAEzE,IACkB,MAAXP,GAA6B,MAAXA,EAClBnD,EAASsD,OAAOtI,MAAK,SAACuI,GAC7B,OAAOI,GAAe,uCAAwCR,EAAQI,EAAeH,EACrF,IAEGhG,QAAQhG,QAA0B,KAC7C,IAAC,CA7CmB,CAASgI,GAuEpBwE,EAAa,SAAAC,GAKtB,SAAAD,EAAY5B,EAAkBC,GAA2E,IAAA6B,EAGxE,OAHwE9E,EAAA,KAAA4E,GAC7FnF,EAARqF,EAAA3B,EAAA,KAAAyB,GAAQ,wBAHiErC,GAIzEuC,EAAK7B,KAAOA,GAAcG,OAC1B0B,EAAK9B,QAAUA,QAAAA,EAAW,GAAG8B,CACjC,CAAC,OAAAzB,EAAAuB,EAAAC,GAAA9E,EAAA6E,EAAA,EAAA9E,IAAA,MAAAvG,MAED,SAAIwL,EAAmBC,EAAiDC,EAA4C3B,GAAgD,IAAA4B,EAAA,KAC5J1B,EAAOC,KAAKT,QAAU,uCAC1B,GAAI+B,QACA,MAAM,IAAI/M,MAAM,8CACpBwL,EAAOA,EAAKE,QAAQ,cAAeyB,mBAAmB,GAAKJ,IACvDC,UACAxB,GAAQ,wBAA0B2B,mBAAmB,GAAKH,GAAwB,KAClFC,UACAzB,GAAQ,mBAAqB2B,mBAAmB,GAAKF,GAAmB,KAC5EzB,EAAOA,EAAKE,QAAQ,QAAS,IAE7B,IAAIC,EAAwB,CACxBxH,OAAQ,MACRmH,OAAAA,EACA5C,QAAS,CACL,OAAU,qBAIlB,OAAO+C,KAAKG,iBAAiBD,GAAU3H,MAAK,SAAA6H,GACxC,OAAOqB,EAAKjC,KAAKa,MAAMN,EAAMK,EACjC,IAAG7H,MAAK,SAAC+H,GACL,OAAOmB,EAAKlB,gBAAgBR,EAAMO,GAAW,SAACA,GAAmB,OAAKmB,EAAKE,WAAWrB,EAAU,GACpG,GACJ,GAAC,CAAAjE,IAAA,aAAAvG,MAED,SAAqByH,GAA8C,IAAAqE,EAAA,KACzDlB,EAASnD,EAASmD,OACpBC,EAAgB,CAAC,EACrB,OAD4BpD,EAASN,SAAWM,EAASN,QAAQhF,SAAWsF,EAASN,QAAQhF,SAAQ,SAACJ,EAAQ+I,GAAM,OAAKD,EAASC,GAAK/I,CAAC,IACzH,MAAX6I,EACOnD,EAASsD,OAAOtI,MAAK,SAACuI,GAG7B,MAD8B,KAAlBA,EAAuB,KAAOC,KAAKC,MAAMF,EAAec,EAAKX,iBAEzE,IACkB,MAAXP,GAA6B,MAAXA,EAClBnD,EAASsD,OAAOtI,MAAK,SAACuI,GAC7B,OAAOI,GAAe,uCAAwCR,EAAQI,EAAeH,EACrF,IAEGhG,QAAQhG,QAAyB,KAC5C,GAAC,CAAA0H,IAAA,kBAAAvG,MAED,SAAgBwL,EAAmBE,EAA4CK,EAA0BC,EAA4DjC,GAAgD,IAAAkC,EAAA,KAC7MhC,EAAOC,KAAKT,QAAU,+CAC1B,GAAI+B,QACA,MAAM,IAAI/M,MAAM,8CAEpB,GADAwL,EAAOA,EAAKE,QAAQ,cAAeyB,mBAAmB,GAAKJ,IACvDO,QACA,MAAM,IAAItN,MAAM,8CACpBwL,EAAOA,EAAKE,QAAQ,cAAeyB,mBAAmB,GAAKG,IACvDL,UACAzB,GAAQ,mBAAqB2B,mBAAmB,GAAKF,GAAmB,KAC5EzB,EAAOA,EAAKE,QAAQ,QAAS,IAE7B,IAEIC,EAAwB,CACxB8B,KAHajB,KAAKkB,UAAUH,GAI5BpJ,OAAQ,OACRmH,OAAAA,EACA5C,QAAS,CACL,eAAgB,mBAChB,OAAU,qBAIlB,OAAO+C,KAAKG,iBAAiBD,GAAU3H,MAAK,SAAA6H,GACxC,OAAO2B,EAAKvC,KAAKa,MAAMN,EAAMK,EACjC,IAAG7H,MAAK,SAAC+H,GACL,OAAOyB,EAAKxB,gBAAgBR,EAAMO,GAAW,SAACA,GAAmB,OAAKyB,EAAKG,uBAAuB5B,EAAU,GAChH,GACJ,GAAC,CAAAjE,IAAA,yBAAAvG,MAED,SAAiCyH,GAA8C,IAAA4E,EAAA,KACrEzB,EAASnD,EAASmD,OACpBC,EAAgB,CAAC,EACrB,OAD4BpD,EAASN,SAAWM,EAASN,QAAQhF,SAAWsF,EAASN,QAAQhF,SAAQ,SAACJ,EAAQ+I,GAAM,OAAKD,EAASC,GAAK/I,CAAC,IACzH,MAAX6I,EACOnD,EAASsD,OAAOtI,MAAK,SAACuI,GAG7B,MAD8B,KAAlBA,EAAuB,KAAOC,KAAKC,MAAMF,EAAeqB,EAAKlB,iBAEzE,IACkB,MAAXP,GAA6B,MAAXA,EAClBnD,EAASsD,OAAOtI,MAAK,SAACuI,GAC7B,OAAOI,GAAe,uCAAwCR,EAAQI,EAAeH,EACrF,IAEGhG,QAAQhG,QAAyB,KAC5C,GAAC,CAAA0H,IAAA,2BAAAvG,MAED,SAAyBwL,EAA+BO,EAAmBO,EAAkCN,EAA4DjC,GAAuC,IAAAwC,EAAA,KACxMtC,EAAOC,KAAKT,QAAU,kFAC1B,GAAIsC,QACA,MAAM,IAAItN,MAAM,8CAEpB,GADAwL,EAAOA,EAAKE,QAAQ,cAAeyB,mBAAmB,GAAKG,IACvDO,QACA,MAAM,IAAI7N,MAAM,6DAEpB,GADAwL,EAAOA,EAAKE,QAAQ,6BAA8ByB,mBAAmB,GAAKU,IACxD,OAAdd,EACA,MAAM,IAAI/M,MAAM,kDACGuK,IAAdwC,IACLvB,GAAQ,aAAe2B,mBAAmB,GAAKJ,GAAa,KAChEvB,EAAOA,EAAKE,QAAQ,QAAS,IAE7B,IAEIC,EAAwB,CACxB8B,KAHajB,KAAKkB,UAAUH,GAI5BpJ,OAAQ,OACRmH,OAAAA,EACA5C,QAAS,CACL,eAAgB,mBAChB,OAAU,qBAIlB,OAAO+C,KAAKG,iBAAiBD,GAAU3H,MAAK,SAAA6H,GACxC,OAAOiC,EAAK7C,KAAKa,MAAMN,EAAMK,EACjC,IAAG7H,MAAK,SAAC+H,GACL,OAAO+B,EAAK9B,gBAAgBR,EAAMO,GAAW,SAACA,GAAmB,OAAK+B,EAAKC,gCAAgChC,EAAU,GACzH,GACJ,GAAC,CAAAjE,IAAA,kCAAAvG,MAED,SAA0CyH,GAAqC,IAAAgF,EAAA,KACrE7B,EAASnD,EAASmD,OACpBC,EAAgB,CAAC,EACrB,OAD4BpD,EAASN,SAAWM,EAASN,QAAQhF,SAAWsF,EAASN,QAAQhF,SAAQ,SAACJ,EAAQ+I,GAAM,OAAKD,EAASC,GAAK/I,CAAC,IACzH,MAAX6I,EACOnD,EAASsD,OAAOtI,MAAK,SAACuI,GAG7B,MAD8B,KAAlBA,EAAuB,KAAOC,KAAKC,MAAMF,EAAeyB,EAAKtB,iBAEzE,IACkB,MAAXP,GAA6B,MAAXA,EAClBnD,EAASsD,OAAOtI,MAAK,SAACuI,GAC7B,OAAOI,GAAe,uCAAwCR,EAAQI,EAAeH,EACrF,IAEGhG,QAAQhG,QAAgB,KACnC,GAAC,CAAA0H,IAAA,oBAAAvG,MAED,SAAkB+L,EAAmBO,EAAkCI,EAAyB3C,GAA6C,IAAA4C,EAAA,KACrI1C,EAAOC,KAAKT,QAAU,+EAC1B,GAAIsC,QACA,MAAM,IAAItN,MAAM,8CAEpB,GADAwL,EAAOA,EAAKE,QAAQ,cAAeyB,mBAAmB,GAAKG,IACvDO,QACA,MAAM,IAAI7N,MAAM,6DAEpBwL,GADAA,EAAOA,EAAKE,QAAQ,6BAA8ByB,mBAAmB,GAAKU,KAC9DnC,QAAQ,QAAS,IAE7B,IAEIC,EAAwB,CACxB8B,KAHajB,KAAKkB,UAAUO,GAI5B9J,OAAQ,OACRmH,OAAAA,EACA5C,QAAS,CACL,eAAgB,mBAChB,OAAU,6BAIlB,OAAO+C,KAAKG,iBAAiBD,GAAU3H,MAAK,SAAA6H,GACxC,OAAOqC,EAAKjD,KAAKa,MAAMN,EAAMK,EACjC,IAAG7H,MAAK,SAAC+H,GACL,OAAOmC,EAAKlC,gBAAgBR,EAAMO,GAAW,SAACA,GAAmB,OAAKmC,EAAKC,yBAAyBpC,EAAU,GAClH,GACJ,GAAC,CAAAjE,IAAA,2BAAAvG,MAED,SAAmCyH,GAC/B,IAAMmD,EAASnD,EAASmD,OACpBC,EAAgB,CAAC,EACrB,GAD4BpD,EAASN,SAAWM,EAASN,QAAQhF,SAAWsF,EAASN,QAAQhF,SAAQ,SAACJ,EAAQ+I,GAAM,OAAKD,EAASC,GAAK/I,CAAC,IACzH,MAAX6I,GAA6B,MAAXA,EAAgB,CAClC,IAAMiC,EAAqBpF,EAASN,QAAUM,EAASN,QAAQgB,IAAI,4BAAyBa,EACxF8D,EAAgBD,EAAqB,6DAA6DE,KAAKF,QAAsB7D,EAC7HgE,EAAWF,GAAiBA,EAAc3I,OAAS,EAAI2I,EAAc,IAAMA,EAAc,QAAK9D,EAOlG,OANIgE,EACAA,EAAWC,mBAAmBD,IAE9BF,EAAgBD,EAAqB,8BAA8BE,KAAKF,QAAsB7D,EAC9FgE,EAAWF,GAAiBA,EAAc3I,OAAS,EAAI2I,EAAc,QAAK9D,GAEvEvB,EAASyF,OAAOzK,MAAK,SAAAyK,GAAU,MAAO,CAAEF,SAAUA,EAAUG,KAAMD,EAAMtC,OAAQA,EAAQzD,QAAS0D,EAAY,GACxH,CAAO,OAAe,MAAXD,GAA6B,MAAXA,EAClBnD,EAASsD,OAAOtI,MAAK,SAACuI,GAC7B,OAAOI,GAAe,uCAAwCR,EAAQI,EAAeH,EACrF,IAEGhG,QAAQhG,QAAsB,KACzC,GAAC,CAAA0H,IAAA,WAAAvG,MAED,SAASwL,EAAmBO,EAA0BqB,EAAqCrD,GAAkD,IAAAsD,EAAA,KACrIpD,EAAOC,KAAKT,QAAU,uDAC1B,GAAI+B,QACA,MAAM,IAAI/M,MAAM,8CAEpB,GADAwL,EAAOA,EAAKE,QAAQ,cAAeyB,mBAAmB,GAAKJ,IACvDO,QACA,MAAM,IAAItN,MAAM,8CAEpBwL,GADAA,EAAOA,EAAKE,QAAQ,cAAeyB,mBAAmB,GAAKG,KAC/C5B,QAAQ,QAAS,IAE7B,IAEIC,EAAwB,CACxB8B,KAHajB,KAAKkB,UAAUiB,GAI5BxK,OAAQ,OACRmH,OAAAA,EACA5C,QAAS,CACL,eAAgB,mBAChB,OAAU,qBAIlB,OAAO+C,KAAKG,iBAAiBD,GAAU3H,MAAK,SAAA6H,GACxC,OAAO+C,EAAK3D,KAAKa,MAAMN,EAAMK,EACjC,IAAG7H,MAAK,SAAC+H,GACL,OAAO6C,EAAK5C,gBAAgBR,EAAMO,GAAW,SAACA,GAAmB,OAAK6C,EAAKC,gBAAgB9C,EAAU,GACzG,GACJ,GAAC,CAAAjE,IAAA,kBAAAvG,MAED,SAA0ByH,GAAgD,IAAA8F,EAAA,KAChE3C,EAASnD,EAASmD,OACpBC,EAAgB,CAAC,EACrB,OAD4BpD,EAASN,SAAWM,EAASN,QAAQhF,SAAWsF,EAASN,QAAQhF,SAAQ,SAACJ,EAAQ+I,GAAM,OAAKD,EAASC,GAAK/I,CAAC,IACzH,MAAX6I,EACOnD,EAASsD,OAAOtI,MAAK,SAACuI,GAG7B,MAD8B,KAAlBA,EAAuB,KAAOC,KAAKC,MAAMF,EAAeuC,EAAKpC,iBAEzE,IACkB,MAAXP,GAA6B,MAAXA,EAClBnD,EAASsD,OAAOtI,MAAK,SAACuI,GAC7B,OAAOI,GAAe,uCAAwCR,EAAQI,EAAeH,EACrF,IAEGhG,QAAQhG,QAA2B,KAC9C,GAAC,CAAA0H,IAAA,cAAAvG,MAED,SAAY+L,EAAmBL,EAA4C8B,EAAwBzD,GAAgD,IAAA0D,EAAA,KAC3IxD,EAAOC,KAAKT,QAAU,+CAC1B,GAAIsC,QACA,MAAM,IAAItN,MAAM,8CACpBwL,EAAOA,EAAKE,QAAQ,cAAeyB,mBAAmB,GAAKG,IACvDL,UACAzB,GAAQ,mBAAqB2B,mBAAmB,GAAKF,GAAmB,KAC5EzB,EAAOA,EAAKE,QAAQ,QAAS,IAE7B,IAEIC,EAAwB,CACxB8B,KAHajB,KAAKkB,UAAUqB,GAI5B5K,OAAQ,OACRmH,OAAAA,EACA5C,QAAS,CACL,eAAgB,mBAChB,OAAU,qBAIlB,OAAO+C,KAAKG,iBAAiBD,GAAU3H,MAAK,SAAA6H,GACxC,OAAOmD,EAAK/D,KAAKa,MAAMN,EAAMK,EACjC,IAAG7H,MAAK,SAAC+H,GACL,OAAOiD,EAAKhD,gBAAgBR,EAAMO,GAAW,SAACA,GAAmB,OAAKiD,EAAKC,mBAAmBlD,EAAU,GAC5G,GACJ,GAAC,CAAAjE,IAAA,qBAAAvG,MAED,SAA6ByH,GAA8C,IAAAkG,EAAA,KACjE/C,EAASnD,EAASmD,OACpBC,EAAgB,CAAC,EACrB,OAD4BpD,EAASN,SAAWM,EAASN,QAAQhF,SAAWsF,EAASN,QAAQhF,SAAQ,SAACJ,EAAQ+I,GAAM,OAAKD,EAASC,GAAK/I,CAAC,IACzH,MAAX6I,EACOnD,EAASsD,OAAOtI,MAAK,SAACuI,GAG7B,MAD8B,KAAlBA,EAAuB,KAAOC,KAAKC,MAAMF,EAAe2C,EAAKxC,iBAEzE,IACkB,MAAXP,GAA6B,MAAXA,EAClBnD,EAASsD,OAAOtI,MAAK,SAACuI,GAC7B,OAAOI,GAAe,uCAAwCR,EAAQI,EAAeH,EACrF,IAEGhG,QAAQhG,QAAyB,KAC5C,GAAC,CAAA0H,IAAA,YAAAvG,MAED,SAAU0L,EAA4CK,EAA0BqB,EAA2BrD,GAAgD,IAAA6D,EAAA,KACnJ3D,EAAOC,KAAKT,QAAU,6CAC1B,GAAIsC,QACA,MAAM,IAAItN,MAAM,8CACpBwL,EAAOA,EAAKE,QAAQ,cAAeyB,mBAAmB,GAAKG,IACvDL,UACAzB,GAAQ,mBAAqB2B,mBAAmB,GAAKF,GAAmB,KAC5EzB,EAAOA,EAAKE,QAAQ,QAAS,IAE7B,IAEIC,EAAwB,CACxB8B,KAHajB,KAAKkB,UAAUiB,GAI5BxK,OAAQ,OACRmH,OAAAA,EACA5C,QAAS,CACL,eAAgB,mBAChB,OAAU,qBAIlB,OAAO+C,KAAKG,iBAAiBD,GAAU3H,MAAK,SAAA6H,GACxC,OAAOsD,EAAKlE,KAAKa,MAAMN,EAAMK,EACjC,IAAG7H,MAAK,SAAC+H,GACL,OAAOoD,EAAKnD,gBAAgBR,EAAMO,GAAW,SAACA,GAAmB,OAAKoD,EAAKC,iBAAiBrD,EAAU,GAC1G,GACJ,GAAC,CAAAjE,IAAA,mBAAAvG,MAED,SAA2ByH,GAA8C,IAAAqG,EAAA,KAC/DlD,EAASnD,EAASmD,OACpBC,EAAgB,CAAC,EACrB,OAD4BpD,EAASN,SAAWM,EAASN,QAAQhF,SAAWsF,EAASN,QAAQhF,SAAQ,SAACJ,EAAQ+I,GAAM,OAAKD,EAASC,GAAK/I,CAAC,IACzH,MAAX6I,EACOnD,EAASsD,OAAOtI,MAAK,SAACuI,GAG7B,MAD8B,KAAlBA,EAAuB,KAAOC,KAAKC,MAAMF,EAAe8C,EAAK3C,iBAEzE,IACkB,MAAXP,GAA6B,MAAXA,EAClBnD,EAASsD,OAAOtI,MAAK,SAACuI,GAC7B,OAAOI,GAAe,uCAAwCR,EAAQI,EAAeH,EACrF,IAEGhG,QAAQhG,QAAyB,KAC5C,GAAC,CAAA0H,IAAA,mCAAAvG,MAED,SAAiC+N,EAA2CC,EAAgCjC,EAA+BhC,GAA0E,IAAAkE,EAAA,KAC7MhE,EAAOC,KAAKT,QAAU,uDAC1BQ,EAAOA,EAAKE,QAAQ,QAAS,IAE7B,IAAM+D,EAAW,IAAIC,SAGrB,GAFIJ,SACAA,EAAM5L,SAAQ,SAAAiM,GAAK,OAAIF,EAASG,OAAO,QAASD,EAAMjB,KAAMiB,EAAMpB,SAAWoB,EAAMpB,SAAW,QAAQ,IACtGgB,QACA,MAAM,IAAIvP,MAAM,8CAGpB,GADIyP,EAASG,OAAO,aAAcL,EAAWM,YACzCvC,QACA,MAAM,IAAItN,MAAM,6CAEhByP,EAASG,OAAO,YAAatC,EAAUuC,YAE3C,IAAIlE,EAAwB,CACxB8B,KAAMgC,EACNtL,OAAQ,OACRmH,OAAAA,EACA5C,QAAS,CACL,OAAU,qBAIlB,OAAO+C,KAAKG,iBAAiBD,GAAU3H,MAAK,SAAA6H,GACxC,OAAO2D,EAAKvE,KAAKa,MAAMN,EAAMK,EACjC,IAAG7H,MAAK,SAAC+H,GACL,OAAOyD,EAAKxD,gBAAgBR,EAAMO,GAAW,SAACA,GAAmB,OAAKyD,EAAKM,wCAAwC/D,EAAU,GACjI,GACJ,GAAC,CAAAjE,IAAA,0CAAAvG,MAED,SAAkDyH,GAAwE,IAAA+G,EAAA,KAChH5D,EAASnD,EAASmD,OACpBC,EAAgB,CAAC,EACrB,OAD4BpD,EAASN,SAAWM,EAASN,QAAQhF,SAAWsF,EAASN,QAAQhF,SAAQ,SAACJ,EAAQ+I,GAAM,OAAKD,EAASC,GAAK/I,CAAC,IACzH,MAAX6I,EACOnD,EAASsD,OAAOtI,MAAK,SAACuI,GAG7B,MAD8B,KAAlBA,EAAuB,KAAOC,KAAKC,MAAMF,EAAewD,EAAKrD,iBAEzE,IACkB,MAAXP,GAA6B,MAAXA,EAClBnD,EAASsD,OAAOtI,MAAK,SAACuI,GAC7B,OAAOI,GAAe,uCAAwCR,EAAQI,EAAeH,EACrF,IAEGhG,QAAQhG,QAAmD,KACtE,GAAC,CAAA0H,IAAA,iCAAAvG,MAED,SAA+B+L,EAAmBhC,GAAwE,IAAA0E,EAAA,KAClHxE,EAAOC,KAAKT,QAAU,iEAC1B,GAAIsC,QACA,MAAM,IAAItN,MAAM,8CAEpBwL,GADAA,EAAOA,EAAKE,QAAQ,cAAeyB,mBAAmB,GAAKG,KAC/C5B,QAAQ,QAAS,IAE7B,IAAIC,EAAwB,CACxBxH,OAAQ,SACRmH,OAAAA,EACA5C,QAAS,CACL,OAAU,qBAIlB,OAAO+C,KAAKG,iBAAiBD,GAAU3H,MAAK,SAAA6H,GACxC,OAAOmE,EAAK/E,KAAKa,MAAMN,EAAMK,EACjC,IAAG7H,MAAK,SAAC+H,GACL,OAAOiE,EAAKhE,gBAAgBR,EAAMO,GAAW,SAACA,GAAmB,OAAKiE,EAAKC,sCAAsClE,EAAU,GAC/H,GACJ,GAAC,CAAAjE,IAAA,wCAAAvG,MAED,SAAgDyH,GAAsE,IAAAkH,EAAA,KAC5G/D,EAASnD,EAASmD,OACpBC,EAAgB,CAAC,EACrB,OAD4BpD,EAASN,SAAWM,EAASN,QAAQhF,SAAWsF,EAASN,QAAQhF,SAAQ,SAACJ,EAAQ+I,GAAM,OAAKD,EAASC,GAAK/I,CAAC,IACzH,MAAX6I,EACOnD,EAASsD,OAAOtI,MAAK,SAACuI,GAG7B,MAD8B,KAAlBA,EAAuB,KAAOC,KAAKC,MAAMF,EAAe2D,EAAKxD,iBAEzE,IACkB,MAAXP,GAA6B,MAAXA,EAClBnD,EAASsD,OAAOtI,MAAK,SAACuI,GAC7B,OAAOI,GAAe,uCAAwCR,EAAQI,EAAeH,EACrF,IAEGhG,QAAQhG,QAAiD,KACpE,GAAC,CAAA0H,IAAA,aAAAvG,MAED,SAAW+L,EAAmByB,EAAoC9B,EAA4C3B,GAA6C,IAAA6E,EAAA,KACnJ3E,EAAOC,KAAKT,QAAU,8CAC1B,GAAIsC,QACA,MAAM,IAAItN,MAAM,8CAEpB,GADAwL,EAAOA,EAAKE,QAAQ,cAAeyB,mBAAmB,GAAKG,IACpC,OAAnByB,EACA,MAAM,IAAI/O,MAAM,uDACQuK,IAAnBwE,IACLvD,GAAQ,kBAAoB2B,mBAAmB,GAAK4B,GAAkB,KACtE9B,UACAzB,GAAQ,mBAAqB2B,mBAAmB,GAAKF,GAAmB,KAC5EzB,EAAOA,EAAKE,QAAQ,QAAS,IAE7B,IAAIC,EAAwB,CACxBxH,OAAQ,OACRmH,OAAAA,EACA5C,QAAS,CACL,OAAU,6BAIlB,OAAO+C,KAAKG,iBAAiBD,GAAU3H,MAAK,SAAA6H,GACxC,OAAOsE,EAAKlF,KAAKa,MAAMN,EAAMK,EACjC,IAAG7H,MAAK,SAAC+H,GACL,OAAOoE,EAAKnE,gBAAgBR,EAAMO,GAAW,SAACA,GAAmB,OAAKoE,EAAKC,kBAAkBrE,EAAU,GAC3G,GACJ,GAAC,CAAAjE,IAAA,oBAAAvG,MAED,SAA4ByH,GACxB,IAAMmD,EAASnD,EAASmD,OACpBC,EAAgB,CAAC,EACrB,GAD4BpD,EAASN,SAAWM,EAASN,QAAQhF,SAAWsF,EAASN,QAAQhF,SAAQ,SAACJ,EAAQ+I,GAAM,OAAKD,EAASC,GAAK/I,CAAC,IACzH,MAAX6I,GAA6B,MAAXA,EAAgB,CAClC,IAAMiC,EAAqBpF,EAASN,QAAUM,EAASN,QAAQgB,IAAI,4BAAyBa,EACxF8D,EAAgBD,EAAqB,6DAA6DE,KAAKF,QAAsB7D,EAC7HgE,EAAWF,GAAiBA,EAAc3I,OAAS,EAAI2I,EAAc,IAAMA,EAAc,QAAK9D,EAOlG,OANIgE,EACAA,EAAWC,mBAAmBD,IAE9BF,EAAgBD,EAAqB,8BAA8BE,KAAKF,QAAsB7D,EAC9FgE,EAAWF,GAAiBA,EAAc3I,OAAS,EAAI2I,EAAc,QAAK9D,GAEvEvB,EAASyF,OAAOzK,MAAK,SAAAyK,GAAU,MAAO,CAAEF,SAAUA,EAAUG,KAAMD,EAAMtC,OAAQA,EAAQzD,QAAS0D,EAAY,GACxH,CAAO,OAAe,MAAXD,GAA6B,MAAXA,EAClBnD,EAASsD,OAAOtI,MAAK,SAACuI,GAC7B,OAAOI,GAAe,uCAAwCR,EAAQI,EAAeH,EACrF,IAEGhG,QAAQhG,QAAsB,KACzC,IAAC,CA3dqB,CAASgI,GA8hBtBiI,EAAe,SAAAC,GAKxB,SAAAD,EAAYrF,EAAkBC,GAA2E,IAAAsF,EAGxE,OAHwEvI,EAAA,KAAAqI,GAC7F5I,EAAR8I,EAAApF,EAAA,KAAAkF,GAAQ,wBAHiE9F,GAIzEgG,EAAKtF,KAAOA,GAAcG,OAC1BmF,EAAKvF,QAAUA,QAAAA,EAAW,GAAGuF,CACjC,CAAC,OAAAlF,EAAAgF,EAAAC,GAAAvI,EAAAsI,EAAA,EAAAvI,IAAA,eAAAvG,MAED,SAAawL,EAAmBO,EAAmBkD,EAAuCxD,EAAiD1B,GAAmD,IAAAmF,EAAA,KACtLjF,EAAOC,KAAKT,QAAU,qDAC1B,GAAI+B,QACA,MAAM,IAAI/M,MAAM,8CAEpB,GADAwL,EAAOA,EAAKE,QAAQ,cAAeyB,mBAAmB,GAAKJ,IACvDO,QACA,MAAM,IAAItN,MAAM,8CAEpB,GADAwL,EAAOA,EAAKE,QAAQ,cAAeyB,mBAAmB,GAAKG,IAClC,OAArBkD,EACA,MAAM,IAAIxQ,MAAM,yDACUuK,IAArBiG,IACLhF,GAAQ,oBAAsB2B,mBAAmB,GAAKqD,GAAoB,KAC1ExD,UACAxB,GAAQ,wBAA0B2B,mBAAmB,GAAKH,GAAwB,KACtFxB,EAAOA,EAAKE,QAAQ,QAAS,IAE7B,IAAIC,EAAwB,CACxBxH,OAAQ,MACRmH,OAAAA,EACA5C,QAAS,CACL,OAAU,qBAIlB,OAAO+C,KAAKG,iBAAiBD,GAAU3H,MAAK,SAAA6H,GACxC,OAAO4E,EAAKxF,KAAKa,MAAMN,EAAMK,EACjC,IAAG7H,MAAK,SAAC+H,GACL,OAAO0E,EAAKzE,gBAAgBR,EAAMO,GAAW,SAACA,GAAmB,OAAK0E,EAAKC,oBAAoB3E,EAAU,GAC7G,GACJ,GAAC,CAAAjE,IAAA,sBAAAvG,MAED,SAA8ByH,GAAiD,IAAA2H,EAAA,KACrExE,EAASnD,EAASmD,OACpBC,EAAgB,CAAC,EACrB,OAD4BpD,EAASN,SAAWM,EAASN,QAAQhF,SAAWsF,EAASN,QAAQhF,SAAQ,SAACJ,EAAQ+I,GAAM,OAAKD,EAASC,GAAK/I,CAAC,IACzH,MAAX6I,EACOnD,EAASsD,OAAOtI,MAAK,SAACuI,GAG7B,MAD8B,KAAlBA,EAAuB,KAAOC,KAAKC,MAAMF,EAAeoE,EAAKjE,iBAEzE,IACkB,MAAXP,GAA6B,MAAXA,EAClBnD,EAASsD,OAAOtI,MAAK,SAACuI,GAC7B,OAAOI,GAAe,uCAAwCR,EAAQI,EAAeH,EACrF,IAEGhG,QAAQhG,QAA4B,KAC/C,IAAC,CAzDuB,CAASgI,GAiExBwI,EAAa,SAAAC,GAKtB,SAAAD,EAAY5F,EAAkBC,GAA2E,IAAA6F,EAGxE,OAHwE9I,EAAA,KAAA4I,GAC7FnJ,EAARqJ,EAAA3F,EAAA,KAAAyF,GAAQ,wBAHiErG,GAIzEuG,EAAK7F,KAAOA,GAAcG,OAC1B0F,EAAK9F,QAAUA,QAAAA,EAAW,GAAG8F,CACjC,CAAC,OAAAzF,EAAAuF,EAAAC,GAAA9I,EAAA6I,EAAA,EAAA9I,IAAA,aAAAvG,MAED,SAAW+J,GAAuC,IAAAyF,EAAA,KAC1CvF,EAAOC,KAAKT,QAAU,0BAC1BQ,EAAOA,EAAKE,QAAQ,QAAS,IAE7B,IAAIC,EAAwB,CACxBxH,OAAQ,MACRmH,OAAAA,EACA5C,QAAS,CACL,OAAU,qBAIlB,OAAO+C,KAAKG,iBAAiBD,GAAU3H,MAAK,SAAA6H,GACxC,OAAOkF,EAAK9F,KAAKa,MAAMN,EAAMK,EACjC,IAAG7H,MAAK,SAAC+H,GACL,OAAOgF,EAAK/E,gBAAgBR,EAAMO,GAAW,SAACA,GAAmB,OAAKgF,EAAKC,kBAAkBjF,EAAU,GAC3G,GACJ,GAAC,CAAAjE,IAAA,oBAAAvG,MAED,SAA4ByH,GAAqC,IAAAiI,EAAA,KACvD9E,EAASnD,EAASmD,OACpBC,EAAgB,CAAC,EACrB,OAD4BpD,EAASN,SAAWM,EAASN,QAAQhF,SAAWsF,EAASN,QAAQhF,SAAQ,SAACJ,EAAQ+I,GAAM,OAAKD,EAASC,GAAK/I,CAAC,IACzH,MAAX6I,EACOnD,EAASsD,OAAOtI,MAAK,SAACuI,GAG7B,MAD8B,KAAlBA,EAAuB,KAAOC,KAAKC,MAAMF,EAAe0E,EAAKvE,iBAEzE,IACkB,MAAXP,GAA6B,MAAXA,EAClBnD,EAASsD,OAAOtI,MAAK,SAACuI,GAC7B,OAAOI,GAAe,uCAAwCR,EAAQI,EAAeH,EACrF,IAEGhG,QAAQhG,QAAgB,KACnC,IAAC,CA7CqB,CAASgI,GAsGvB8I,EAAM,SAANA,GAAM,OAANA,EAAM,sBAANA,EAAM,gBAANA,EAAM,4BAANA,CAAM,MAMNC,EAAe,SAAfA,GAAe,OAAfA,EAAe,4BAAfA,EAAe,sBAAfA,EAAe,iCAAfA,CAAe,MAMfC,EAAuB,SAAvBA,GAAuB,OAAvBA,EAAuB,iCAAvBA,EAAuB,sCAAvBA,EAAuB,wDAAvBA,CAAuB,MA4FvBC,EAAa,SAAbA,GAAa,OAAbA,EAAa,cAAbA,EAAa,cAAbA,EAAa,cAAbA,EAAa,kBAAbA,CAAa,MA4BbC,EAAiB,SAAjBA,GAAiB,OAAjBA,EAAiB,4BAAjBA,EAAiB,cAAjBA,EAAiB,kBAAjBA,CAAiB,MA0BjBC,EAAkB,SAAlBA,GAAkB,OAAlBA,EAAkB,8BAAlBA,EAAkB,iCAAlBA,EAAkB,kCAAlBA,CAAkB,MAMlBC,EAAQ,SAARA,GAAQ,OAARA,EAAQ,mBAARA,EAAQ,kBAARA,CAAQ,MAWRC,EAAe,SAAfA,GAAe,OAAfA,EAAe,8BAAfA,EAAe,0BAAfA,EAAe,kCAAfA,EAAe,oCAAfA,EAAe,sCAAfA,EAAe,4CAAfA,CAAe,MAiCfC,EAAsB,SAAtBA,GAAsB,OAAtBA,EAAsB,wBAAtBA,EAAsB,kBAAtBA,EAAsB,kBAAtBA,EAAsB,4BAAtBA,CAAsB,MAOtBC,EAAK,SAALA,GAAK,OAALA,EAAK,wBAALA,EAAK,QAALA,EAAK,UAALA,EAAK,kBAALA,CAAK,MAOLC,EAAS,SAATA,GAAS,OAATA,EAAS,wBAATA,EAAS,sBAATA,EAAS,0BAATA,EAAS,4BAATA,EAAS,wBAATA,EAAS,oBAATA,CAAS,MAmCTC,GAAO,SAAPA,GAAO,OAAPA,EAAO,mBAAPA,EAAO,kBAAPA,CAAO,MAuMNC,GAAY,SAAAC,GAOrB,SAAAD,EAAYtH,EAAiB2B,EAAgBnD,EAAkBN,EAAkCsJ,GAAa,IAAAC,EAOrF,OAPqFjK,EAAA,KAAA8J,GAClGrK,EAARwK,EAAA9G,EAAA,KAAA2G,GAAQ,kBASe,GAPvBG,EAAKzH,QAAUA,EACfyH,EAAK9F,OAASA,EACd8F,EAAKjJ,SAAWA,EAChBiJ,EAAKvJ,QAAUA,EACfuJ,EAAKD,OAASA,EAAOC,CACzB,CAAC,OAAA5G,EAAAyG,EAAAC,GAAAhK,EAAA+J,EAAA,OAAAhK,IAAA,iBAAAvG,MAID,SAAsB2Q,GAClB,OAA8B,IAAvBA,EAAIC,cACf,IAAC,CArBoB,CAqBpBC,EArB6BpS,QAwBlC,SAAS2M,GAAenC,EAAiB2B,EAAgBnD,EAAkBN,EAAkCsJ,GACzG,MAAIA,QACMA,EAEA,IAAIF,GAAatH,EAAS2B,EAAQnD,EAAUN,EAAS,KACnE,CCpzCA,IAAM2J,GAAUjH,OAAOkH,aACVC,GAAOF,GAAQG,YACfC,GAA8B,QAAxBC,EAAGL,GAAQM,qBAAa,IAAAD,EAAAA,EAAI,GAClCE,GAAyB,QAAnBC,EAAGR,GAAQS,gBAAQ,IAAAD,EAAAA,OAAItI,EAC7BwI,GAAmC,QAA3BC,EAAGX,GAAQY,wBAAgB,IAAAD,EAAAA,OAAIzI,EACrC2I,GACbb,GADaa,MAAOC,GACpBd,GADoBc,OAAQC,GAC5Bf,GAD4Be,qBAAsBC,GAClDhB,GADkDgB,SAAUC,GAC5DjB,GAD4DiB,QAASC,GACrElB,GADqEkB,QAG1DC,GAAsBnB,GAAQmB,oBAC9B/K,GAA0B,WAAH,OAClC2C,OAAOkH,aAAamB,oBAAoB,sCCjB7BC,GAA+B,SAC1CC,GAEA,OAAOA,EAAehT,SAAS6Q,EAASoC,QACpC/B,GAAQ+B,OACR/B,GAAQgC,OACd,EAEaC,GAAgB,SAACC,GAC5B,OAAOA,IAAWlC,GAAQgC,QAAU,KAAO,IAC7C,EAEaG,GAAoB,SAC/Bd,EACAa,GACW,IAAAE,EACX,OAAKf,GAEoB,QAAzBe,EAAOf,EADaY,GAAcC,WACT,IAAAE,EAAAA,EAFN,EAGrB,gsCCnBO,IAAMC,GAAU,SAACC,GACtB,OAAOhU,OAAOD,KAAKiU,GAAQC,QAAO,SAACC,EAAMvM,GACvC,IAAK3H,OAAOgB,UAAUE,eAAesB,KAAKwR,EAAQrM,GAAM,OAAOuM,EAC/D,GAA2B,WAAvBvQ,GAAOqQ,EAAOrM,KAAqC,OAAhBqM,EAAOrM,GAAe,CAC3D,IAAMwM,EAAOJ,GAAQC,EAAOrM,IAC5B,OAAAP,GAAAA,GAAA,GACK8M,GACAlU,OAAOD,KAAKoU,GAAMF,QAAO,SAACG,EAAWC,GACtC,OAAKrU,OAAOgB,UAAUE,eAAesB,KAAK2R,EAAME,GAGhDjN,GAAAA,GAAA,GAAYgN,GAAS,IAAE,CAAC,GAADE,OAAI3M,EAAG,KAAA2M,OAAID,IAAaF,EAAKE,KAF3CD,CAGX,GAAG,CAAC,GAER,CACA,OAAAhN,GAAAA,GAAA,GAAY8M,GAAI,IAAE,CAACvM,GAAMqM,EAAOrM,IAClC,GAAG,CAAC,EACN,0BClBa4M,GAAW,UAIXC,GAAuB,iuCCF7B,IAAMC,GAAY,uCAgCnBtC,GAAe,CACnByB,OAAQlC,GAAQ+B,OAChBiB,oBAAgBtK,EAChBuK,gBAAYvK,EACZ0D,gBAAgB,GAGZ8G,GAA6D,WAG9D,IAFHC,EAAKxN,UAAA9B,OAAA,QAAA6E,IAAA/C,UAAA,GAAAA,UAAA,GAAG8K,GACR2C,EAAMzN,UAAA9B,OAAA,EAAA8B,UAAA,QAAA+C,EAEN,OAAQ0K,EAAOvU,MACb,IA1Ce,aA2Cb,OAAA6G,GAAAA,GAAA,GAAYyN,GAAK,IAAEjB,OAAQkB,EAAOC,UACpC,IA3CmB,iBA4CjB,OAAA3N,GAAAA,GAAA,GACKyN,GAAK,IACRF,WAAYG,EAAOC,QACnBL,gBACqB,IAAnBI,EAAOC,QAAmBF,EAAMH,oBAAiBtK,IAEvD,IAjDuB,qBAkDrB,OAAAhD,GAAAA,GAAA,GAAYyN,GAAK,IAAEH,eAAgBI,EAAOC,UAC5C,IAlDuB,qBAmDrB,OAAA3N,GAAAA,GAAA,GAAYyN,GAAK,IAAE/G,eAAgBgH,EAAOC,UAC5C,QACE,OAAOF,EAEb,EAOaG,IAAeC,EAAAA,EAAAA,eAA6B,CACvD9C,GACA,kBAAM,IAAI,IAEC+C,GAAkB,WAAH,OAAwBC,EAAAA,EAAAA,YAAWH,GAAa,EAmB5E,GAboD,SAAHtM,GAAqB,IAAf0M,EAAQ1M,EAAR0M,SACrD,OACEC,EAAAA,GAAAA,KAACL,GAAaM,SAAQ,CACpBlU,OAAOmU,EAAAA,EAAAA,YACLX,GACAzC,IACAiD,SAEDA,GAGP,EC3FaI,GAAS,CACpBC,QAAS,SAAC7I,GAA0B,kBAAA0H,OAAiB1H,EAAS,EAC9D8I,UAAW,SAAC9I,EAA4B+I,GAAmB,SAAArB,OACtDkB,GAAOC,QAAQ7I,GAAU,eAAA0H,OAAcqB,EAAW,EACvDC,OAAQ,SAAChJ,EAA4B+I,GAAmB,SAAArB,OACnDkB,GAAOC,QAAQ7I,GAAU,YAAA0H,OAAWqB,EAAW,EACpDE,UAAW,SAACjJ,EAA4ByD,GAAwB,SAAAiE,OAC3DkB,GAAOC,QAAQ7I,GAAU,eAAA0H,OAAcjE,EAAgB,EAC5DyF,WAAY,SAAClJ,GAA0B,cAAA0H,OAAa1H,EAAS,EAC7DmJ,aAAc,SAACnJ,EAA4B+I,GAAmB,cAAArB,OACpD1H,EAAS,eAAA0H,OAAcqB,EAAW,EAC5CK,UAAW,SAACpJ,EAA4B+I,GAAmB,cAAArB,OACjD1H,EAAS,YAAA0H,OAAWqB,EAAW,GCN9BM,GAAW,SAACC,EAAiBT,GAA6B,IAAAU,EACrE,OAC+C,QAD/CA,EACEV,EAAQW,QAAQC,MAAK,SAACpV,GAAC,OAAKA,EAAEzB,KAAO0W,CAAO,WAAC,IAAAC,EAAAA,EAC7CV,EAAQW,QAAQE,MAAK,SAAC/U,EAAGgV,GAAC,OAAKhV,EAAEiV,WAAaD,EAAEC,UAAU,IAAE,EAEhE,EAcaC,GAAc,QAGdC,GAAiB,SAC5BR,EACA3V,GAA4B,SAAA+T,OACTmC,GAAW,KAAAnC,OAAI4B,EAAO,KAAA5B,OAAI/T,EAAI,EAKtCoW,GAAiB,WAGjBC,GAAoB,SAC/BC,EACAtW,GAA+B,SAAA+T,OACTqC,GAAc,KAAArC,OAAIuC,EAAU,KAAAvC,OAAI/T,EAAI,gsCC1BrD,IAAMuW,GAAW,SAAIC,GAC1B,OAAQA,QAAAA,EAAS,IAAIxR,OAAS,EAAIwR,OAAQ3M,CAC5C,EAEa4M,GAAY,SAAIjF,GAA8B,IAAArJ,EACzD,OAAiB,QAAVA,EAACqJ,QAAAA,EAAO,UAAE,IAAArJ,OAAA,EAAVA,EAAagH,WAAWuH,OAAO1R,QAAS,EAAIwM,OAAM3H,CAC3D,EAEa8M,GAAqB,SAChCxB,EACAtS,GAEA,OAAAgE,GAAAA,GAAA,GACKsO,GAAS,IACZU,QAASpW,OAAOoD,OACbpD,OAAOD,KAAKqD,GACV/D,KACC,SAACsI,GAAG,OACFA,EAAIwP,MAAM,IAAI,IAMjBlQ,QAAO,SAAClH,GAAI,OAAKA,EAAK,KAAO0W,EAAW,IACxCxC,QACC,SAACmD,EAAKlD,GAAI,IAAAmD,EAAA,OAAAjQ,GAAAA,GAAA,GACLgQ,GAAG,IACN,CAAClD,EAAK,IAAE9M,GAAAA,GAAA,GACU,QADViQ,EACFD,EAAIlD,EAAK,WAAG,IAAAmD,EAAAA,EACb,CACCnB,SAAUhC,EAAK,KAChB,IACH,CAACA,EAAK,IAAK9Q,EAAOsT,GAAexC,EAAK,GAAIA,EAAK,QAChD,GAEH,CAAC,IAGPoD,WAAUtX,OAAOoD,OACdpD,OAAOD,KAAKqD,GACV/D,KACC,SAACsI,GAAG,OACFA,EAAIwP,MAAM,IAAI,IAMjBlQ,QAAO,SAAClH,GAAI,OAAKA,EAAK,KAAO4W,EAAc,IAC3C1C,QACC,SAACmD,EAAKlD,GAAI,IAAAqD,EAAA,OAAAnQ,GAAAA,GAAA,GACLgQ,GAAG,IACN,CAAClD,EAAK,IAAE9M,GAAAA,GAAA,GACU,QADVmQ,EACFH,EAAIlD,EAAK,WAAG,IAAAqD,EAAAA,EACb,CAAEV,cAAa3C,EAAK,KAAI,IAC3B,CAACA,EAAK,IAAK9Q,EAAOwT,GAAkB1C,EAAK,GAAIA,EAAK,QACnD,GAEH,CAAC,KAIX,EClEasD,GAAuB,SAAC7V,GAA0B,OAC7DA,GAAKA,IAAM4P,EAAuBkG,UAAU,EACjCC,GAAc,SAAC/V,GAAS,OAAKA,GAAKA,IAAM6P,EAAMiG,UAAU,EACxDE,GAAkB,SAAChW,GAAa,OAC3CA,GAAKA,IAAM8P,EAAUgG,UAAU,EACpBG,GAAgB,SAACjW,GAAoC,OAChEA,GAAKA,EAAE4D,OAAS,GAAK5D,EAAEkW,MAAK,SAACC,GAAI,OAAwB,IAAnBA,EAAKC,SAAmB,GAAC,EACpDC,GAAkB,SAACrW,GAAiB,OAAKA,GAAKA,EAAEsV,MAAM,EACtDgB,GAAkB,SAACtW,GAAoC,OAClEA,GAAKA,EAAE4D,OAAS,GAAK5D,EAAEkW,MAAK,SAACC,GAAI,OAAwB,IAAnBA,EAAKC,SAAkB,GAAC,EACnDG,GAAgB,SAACvW,GAA4C,OACxEA,GAAKA,EAAE4D,OAAS,CAAC,EAKN4S,GAAqB,SAACxW,GAAwB,OACzDA,GAAKA,EAAE4D,OAAS,CAAC,EACN6S,GAAkB,SAACzW,GAAiB,OAAKA,GAAKA,EAAEsV,MAAM,EACtDoB,GAAa,SAAC1W,GAAe,QAAOA,CAAC,EACrC2W,GAAgB,SAAC3W,GAAiB,QAAOA,GAAW,IAANA,CAAO,EAErD4W,GAAe,SAAC5W,GAAiB,OAC3CA,GAAW,IAANA,GAAYA,GAAK,GAAKA,GAAK,YAAc6W,OAAOC,UAAU9W,EAAG,EAExD+W,GAAkB,SAC7B/W,EACAgX,GAAwD,OACpDP,GAAgBzW,IAAMgX,EAAUhX,EAAE,EAE3BiX,GAAoB,SAAClD,GAAsC,OACtE8B,GAAqB9B,aAAS,EAATA,EAAWmD,yBAChCnB,GAAYhC,aAAS,EAATA,EAAWoD,QACvBnB,GAAgBjC,aAAS,EAATA,EAAWqD,YAC3BnB,GAAclC,aAAS,EAATA,EAAWsD,yBACzBf,GAAgBvC,aAAS,EAATA,EAAWsD,yBAC3BhB,GAAgBtC,aAAS,EAATA,EAAWuD,YAC3Bf,GAAcxC,aAAS,EAATA,EAAWwD,UACzBZ,GAAc5C,aAAS,EAATA,EAAWyD,UACzBf,GAAgB1C,aAAS,EAATA,EAAW0D,YAC3Bf,GAAW3C,aAAS,EAATA,EAAW2D,OACtBlB,GAAmBzC,aAAS,EAATA,EAAW4D,aAAa,EAUhCC,GAAkB,SAC7BC,GAAe,MACuB,CACtCC,WAAY,SAACC,GAAK,OAAKzO,OAAO0O,WAAWC,KAAKF,EAAgB,EAC9DrP,QAASmP,EAAKK,cAAc,CAAEra,GAAI,yCACnC,EC7DD,cAAe,IAEbsa,EAAMzS,UAAA9B,OAAA,QAAA6E,IAAA/C,UAAA,IAAAA,UAAA,GAAQ,OADwCA,UAAA9B,OAAA,QAAA6E,IAAA/C,UAAA,GAAAA,UAAA,GAAG,IAItDJ,QAAO,SAACtF,GAAC,OAAKmY,GD+CW,SAACpE,GAAyC,OACtE8B,GAAqB9B,EAAUqE,mBAC/B/B,GAAgBtC,EAAUsE,kBAAkB,CCjDjBC,CAAetY,EAAE,IACzCtC,KACC,SAACsC,GAAC,MACC,CACCnC,GAAImC,EAAEuU,QACN6D,iBACEpY,EAAEoY,mBAAqBxI,EAAuBkG,WAC1C9V,EAAEoY,sBACF3P,EACN4P,kBAAmBhD,GAAUrV,EAAEqY,mBAChC,GACJ,gsCCZL,gBACE7M,EACAuI,EACA5H,EACAoM,EACAJ,EACA1W,GAEA,IAAM+W,ECTR,WAAe,IAEbL,EAAMzS,UAAA9B,OAAA,QAAA6E,IAAA/C,UAAA,IAAAA,UAAA,GAAQ,OADuCA,UAAA9B,OAAA,QAAA6E,IAAA/C,UAAA,GAAAA,UAAA,GAAG,IAIrDJ,QAAO,SAACtF,GAAC,OAAKmY,GAAUlB,GAAkBjX,EAAE,IAC5CtC,KACC,SAACsC,GAAC,IAAAyY,EAAAC,EAAA,MACC,CACC7a,GAAImC,EAAEkV,WACNgC,uBACElX,EAAEkX,yBAA2BtH,EAAuBkG,WAChD9V,EAAEkX,4BACFzO,EACN0O,MAAOnX,EAAEmX,QAAUtH,EAAMiG,WAAa9V,EAAEmX,WAAQ1O,EAChD2O,UACEpX,EAAEoX,YAActH,EAAUgG,WAAa9V,EAAEoX,eAAY3O,EACvD6O,UAAWjC,GAAUrV,EAAEsX,WACvBG,UAAWpC,GAAUrV,EAAEyX,WACvBD,QAASnC,GAAUrV,EAAEwX,SACrBE,KAAMrC,GAAUrV,EAAE0X,MAClBC,aAAcxC,GAASnV,EAAE2X,cACzBN,yBAAwBlC,GACE,QADMsD,EAC9BzY,EAAEqX,8BAAsB,IAAAoB,OAAA,EAAxBA,EAA0B/a,KAAI,SAACyY,GAAI,OAAKA,EAAKwC,gBAAgB,KAE/DC,iBAAkBzD,GACQ,QADAuD,EACxB1Y,EAAEqX,8BAAsB,IAAAqB,OAAA,EAAxBA,EACIpT,QAAO,SAAC6Q,GAAI,IAAA0C,EAAA,OAA0B,QAA1BA,EAAK1C,EAAKyC,wBAAgB,IAAAC,OAAA,EAArBA,EAAuBvD,MAAM,IAC/C5X,KACC,SAACyY,GAAI,MACF,CACCwC,iBAAkBxC,EAAKwC,iBACvBC,iBAAkBzC,EAAKyC,iBACxB,KAGV,GACJ,CD5BwBE,CACzB/E,aAAS,EAATA,EAAW4B,SACXwC,GAEIY,EElBR,WAAe,IAEbZ,EAAMzS,UAAA9B,OAAA,QAAA6E,IAAA/C,UAAA,IAAAA,UAAA,GAAQ,OADqCA,UAAA9B,OAAA,QAAA6E,IAAA/C,UAAA,GAAAA,UAAA,GAAG,IAInDJ,QAAO,SAACtF,GAAC,OAAKmY,IJ+CjB,CI/C8C,IAC3Cza,KACC,SAACsC,GAAC,MACC,CACCnC,GAAImC,EAAEgZ,UACP,GACJ,CFOuBC,CACxBlF,aAAS,EAATA,EAAWmF,UACXf,GAIIgB,EAAmC,CACvC3N,UAAAA,EACAW,eAAAA,EACAqM,mBAAAA,EACAO,kBAAAA,EACAK,gBAPsBC,GAAqBtF,aAAS,EAATA,EAAWU,QAAS0D,GAQ/DmB,cAAaf,GAGf,OAAI9W,EACFgE,GAAAA,GAAA,GACK0T,GAAE,IACLI,UAAW,CACTC,KAAM/X,EAAO+X,KACbC,MAAOhY,EAAOgY,MACdC,WAAYjY,EAAOiY,UACnBC,cAAelY,EAAOkY,cACtBC,SAAUnY,EAAOmY,SACjBC,MAAOpY,EAAOoY,MACdC,QAASrY,EAAOqY,QAChBC,UAAW1b,OAAOD,KAAKqD,EAAOsY,WAC3BzU,QAAO,SAACU,GAAG,OAAKvE,EAAOsY,UAAU/T,EAAI,IACrCtI,KAAI,SAACsI,GAAG,OAAMA,CAAG,OAKnBmT,CACR,yPGzDDja,GAAA,kBAAAjB,CAAA,MAAAkB,EAAAlB,EAAA,GAAAmB,EAAAf,OAAAgB,UAAAC,EAAAF,EAAAG,eAAAvB,EAAAK,OAAAmB,gBAAA,SAAAL,EAAAlB,EAAAmB,GAAAD,EAAAlB,GAAAmB,EAAAK,KAAA,EAAAC,EAAA,mBAAAC,OAAAA,OAAA,GAAAC,EAAAF,EAAAG,UAAA,aAAAC,EAAAJ,EAAAK,eAAA,kBAAAC,EAAAN,EAAAO,aAAA,yBAAAC,EAAAf,EAAAlB,EAAAmB,GAAA,OAAAf,OAAAmB,eAAAL,EAAAlB,EAAA,CAAAwB,MAAAL,EAAAe,YAAA,EAAAC,cAAA,EAAAC,UAAA,IAAAlB,EAAAlB,EAAA,KAAAiC,EAAA,aAAAf,GAAAe,EAAA,SAAAf,EAAAlB,EAAAmB,GAAA,OAAAD,EAAAlB,GAAAmB,CAAA,WAAAkB,EAAAnB,EAAAlB,EAAAmB,EAAAE,GAAA,IAAAI,EAAAzB,GAAAA,EAAAoB,qBAAAkB,EAAAtC,EAAAsC,EAAAX,EAAAvB,OAAAmC,OAAAd,EAAAL,WAAAS,EAAA,IAAAW,EAAAnB,GAAA,WAAAtB,EAAA4B,EAAA,WAAAH,MAAAiB,EAAAvB,EAAAC,EAAAU,KAAAF,CAAA,UAAAe,EAAAxB,EAAAlB,EAAAmB,GAAA,WAAAR,KAAA,SAAAgC,IAAAzB,EAAA0B,KAAA5C,EAAAmB,GAAA,OAAAD,GAAA,OAAAP,KAAA,QAAAgC,IAAAzB,EAAA,EAAAlB,EAAAqC,KAAAA,EAAA,IAAAQ,EAAA,iBAAAC,EAAA,iBAAAC,EAAA,YAAAC,EAAA,YAAAC,EAAA,YAAAX,IAAA,UAAAY,IAAA,UAAAC,IAAA,KAAAC,EAAA,GAAAnB,EAAAmB,EAAAzB,GAAA,8BAAA0B,EAAAjD,OAAAkD,eAAAC,EAAAF,GAAAA,EAAAA,EAAAG,EAAA,MAAAD,GAAAA,IAAApC,GAAAE,EAAAuB,KAAAW,EAAA5B,KAAAyB,EAAAG,GAAA,IAAAE,EAAAN,EAAA/B,UAAAkB,EAAAlB,UAAAhB,OAAAmC,OAAAa,GAAA,SAAAM,EAAAxC,GAAA,0BAAAyC,SAAA,SAAA3D,GAAAiC,EAAAf,EAAAlB,GAAA,SAAAkB,GAAA,YAAA0C,QAAA5D,EAAAkB,EAAA,gBAAA2C,EAAA3C,EAAAlB,GAAA,SAAA8D,EAAA3C,EAAApB,EAAA0B,EAAAE,GAAA,IAAAE,EAAAa,EAAAxB,EAAAC,GAAAD,EAAAnB,GAAA,aAAA8B,EAAAlB,KAAA,KAAAoB,EAAAF,EAAAc,IAAAE,EAAAd,EAAAP,MAAA,OAAAqB,GAAA,UAAAkB,GAAAlB,IAAAxB,EAAAuB,KAAAC,EAAA,WAAA7C,EAAAK,QAAAwC,EAAAmB,SAAAC,MAAA,SAAA/C,GAAA4C,EAAA,OAAA5C,EAAAO,EAAAE,EAAA,aAAAT,GAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAA3B,EAAAK,QAAAwC,GAAAoB,MAAA,SAAA/C,GAAAa,EAAAP,MAAAN,EAAAO,EAAAM,EAAA,aAAAb,GAAA,OAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAAA,EAAAE,EAAAc,IAAA,KAAAxB,EAAApB,EAAA,gBAAAyB,MAAA,SAAAN,EAAAG,GAAA,SAAA6C,IAAA,WAAAlE,GAAA,SAAAA,EAAAmB,GAAA2C,EAAA5C,EAAAG,EAAArB,EAAAmB,EAAA,WAAAA,EAAAA,EAAAA,EAAA8C,KAAAC,EAAAA,GAAAA,GAAA,aAAAzB,EAAAzC,EAAAmB,EAAAE,GAAA,IAAAtB,EAAA8C,EAAA,gBAAApB,EAAAE,GAAA,GAAA5B,IAAAgD,EAAA,MAAA9C,MAAA,mCAAAF,IAAAiD,EAAA,cAAAvB,EAAA,MAAAE,EAAA,OAAAH,MAAAN,EAAAiD,MAAA,OAAA9C,EAAA+C,OAAA3C,EAAAJ,EAAAsB,IAAAhB,IAAA,KAAAE,EAAAR,EAAAgD,SAAA,GAAAxC,EAAA,KAAAE,EAAAuC,EAAAzC,EAAAR,GAAA,GAAAU,EAAA,IAAAA,IAAAkB,EAAA,gBAAAlB,CAAA,cAAAV,EAAA+C,OAAA/C,EAAAkD,KAAAlD,EAAAmD,MAAAnD,EAAAsB,SAAA,aAAAtB,EAAA+C,OAAA,IAAArE,IAAA8C,EAAA,MAAA9C,EAAAiD,EAAA3B,EAAAsB,IAAAtB,EAAAoD,kBAAApD,EAAAsB,IAAA,gBAAAtB,EAAA+C,QAAA/C,EAAAqD,OAAA,SAAArD,EAAAsB,KAAA5C,EAAAgD,EAAA,IAAAK,EAAAV,EAAA1C,EAAAmB,EAAAE,GAAA,cAAA+B,EAAAzC,KAAA,IAAAZ,EAAAsB,EAAA8C,KAAAnB,EAAAF,EAAAM,EAAAT,MAAAM,EAAA,gBAAAzB,MAAA4B,EAAAT,IAAAwB,KAAA9C,EAAA8C,KAAA,WAAAf,EAAAzC,OAAAZ,EAAAiD,EAAA3B,EAAA+C,OAAA,QAAA/C,EAAAsB,IAAAS,EAAAT,IAAA,YAAA2B,EAAAtE,EAAAmB,GAAA,IAAAE,EAAAF,EAAAiD,OAAArE,EAAAC,EAAA4B,SAAAP,GAAA,GAAAtB,IAAAmB,EAAA,OAAAC,EAAAkD,SAAA,eAAAhD,GAAArB,EAAA4B,SAAA+C,SAAAxD,EAAAiD,OAAA,SAAAjD,EAAAwB,IAAAzB,EAAAoD,EAAAtE,EAAAmB,GAAA,UAAAA,EAAAiD,SAAA,WAAA/C,IAAAF,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAvD,EAAA,aAAA4B,EAAA,IAAAxB,EAAAiB,EAAA3C,EAAAC,EAAA4B,SAAAT,EAAAwB,KAAA,aAAAlB,EAAAd,KAAA,OAAAQ,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAAlB,EAAAkB,IAAAxB,EAAAkD,SAAA,KAAApB,EAAA,IAAAtB,EAAAF,EAAAkB,IAAA,OAAAhB,EAAAA,EAAAwC,MAAAhD,EAAAnB,EAAA6E,YAAAlD,EAAAH,MAAAL,EAAA2D,KAAA9E,EAAA+E,QAAA,WAAA5D,EAAAiD,SAAAjD,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,GAAAC,EAAAkD,SAAA,KAAApB,GAAAtB,GAAAR,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAzD,EAAAkD,SAAA,KAAApB,EAAA,UAAA+B,EAAA9D,GAAA,IAAAlB,EAAA,CAAAiF,OAAA/D,EAAA,SAAAA,IAAAlB,EAAAkF,SAAAhE,EAAA,SAAAA,IAAAlB,EAAAmF,WAAAjE,EAAA,GAAAlB,EAAAoF,SAAAlE,EAAA,SAAAmE,WAAAC,KAAAtF,EAAA,UAAAuF,EAAArE,GAAA,IAAAlB,EAAAkB,EAAAsE,YAAA,GAAAxF,EAAAW,KAAA,gBAAAX,EAAA2C,IAAAzB,EAAAsE,WAAAxF,CAAA,UAAAwC,EAAAtB,GAAA,KAAAmE,WAAA,EAAAJ,OAAA,SAAA/D,EAAAyC,QAAAqB,EAAA,WAAAS,OAAA,YAAAjC,EAAAxD,GAAA,GAAAA,GAAA,KAAAA,EAAA,KAAAmB,EAAAnB,EAAA2B,GAAA,GAAAR,EAAA,OAAAA,EAAAyB,KAAA5C,GAAA,sBAAAA,EAAA8E,KAAA,OAAA9E,EAAA,IAAA0F,MAAA1F,EAAA2F,QAAA,KAAA5F,GAAA,EAAA0B,EAAA,SAAAqD,IAAA,OAAA/E,EAAAC,EAAA2F,QAAA,GAAAtE,EAAAuB,KAAA5C,EAAAD,GAAA,OAAA+E,EAAAtD,MAAAxB,EAAAD,GAAA+E,EAAAX,MAAA,EAAAW,EAAA,OAAAA,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,SAAArD,EAAAqD,KAAArD,CAAA,YAAAmD,UAAAb,GAAA/D,GAAA,2BAAAkD,EAAA9B,UAAA+B,EAAApD,EAAA0D,EAAA,eAAAjC,MAAA2B,EAAAhB,cAAA,IAAApC,EAAAoD,EAAA,eAAA3B,MAAA0B,EAAAf,cAAA,IAAAe,EAAA0C,YAAA3D,EAAAkB,EAAApB,EAAA,qBAAA/B,EAAA6F,oBAAA,SAAA3E,GAAA,IAAAlB,EAAA,mBAAAkB,GAAAA,EAAA4E,YAAA,QAAA9F,IAAAA,IAAAkD,GAAA,uBAAAlD,EAAA4F,aAAA5F,EAAA+F,MAAA,EAAA/F,EAAAgG,KAAA,SAAA9E,GAAA,OAAAd,OAAA6F,eAAA7F,OAAA6F,eAAA/E,EAAAiC,IAAAjC,EAAAgF,UAAA/C,EAAAlB,EAAAf,EAAAa,EAAA,sBAAAb,EAAAE,UAAAhB,OAAAmC,OAAAkB,GAAAvC,CAAA,EAAAlB,EAAAmG,MAAA,SAAAjF,GAAA,OAAA8C,QAAA9C,EAAA,EAAAwC,EAAAG,EAAAzC,WAAAa,EAAA4B,EAAAzC,UAAAS,GAAA,0BAAA7B,EAAA6D,cAAAA,EAAA7D,EAAAoG,MAAA,SAAAlF,EAAAC,EAAAE,EAAAtB,EAAA0B,QAAA,IAAAA,IAAAA,EAAA4E,SAAA,IAAA1E,EAAA,IAAAkC,EAAAxB,EAAAnB,EAAAC,EAAAE,EAAAtB,GAAA0B,GAAA,OAAAzB,EAAA6F,oBAAA1E,GAAAQ,EAAAA,EAAAmD,OAAAb,MAAA,SAAA/C,GAAA,OAAAA,EAAAiD,KAAAjD,EAAAM,MAAAG,EAAAmD,MAAA,KAAApB,EAAAD,GAAAxB,EAAAwB,EAAA1B,EAAA,aAAAE,EAAAwB,EAAA9B,GAAA,0BAAAM,EAAAwB,EAAA,qDAAAzD,EAAAG,KAAA,SAAAe,GAAA,IAAAlB,EAAAI,OAAAc,GAAAC,EAAA,WAAAE,KAAArB,EAAAmB,EAAAmE,KAAAjE,GAAA,OAAAF,EAAAmF,UAAA,SAAAxB,IAAA,KAAA3D,EAAAwE,QAAA,KAAAzE,EAAAC,EAAAoF,MAAA,GAAArF,KAAAlB,EAAA,OAAA8E,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,QAAAA,EAAAX,MAAA,EAAAW,CAAA,GAAA9E,EAAAwD,OAAAA,EAAAhB,EAAApB,UAAA,CAAA0E,YAAAtD,EAAAiD,MAAA,SAAAzF,GAAA,QAAAwG,KAAA,OAAA1B,KAAA,OAAAP,KAAA,KAAAC,MAAAtD,EAAA,KAAAiD,MAAA,OAAAE,SAAA,UAAAD,OAAA,YAAAzB,IAAAzB,EAAA,KAAAmE,WAAA1B,QAAA4B,IAAAvF,EAAA,QAAAmB,KAAA,WAAAA,EAAAsF,OAAA,IAAApF,EAAAuB,KAAA,KAAAzB,KAAAuE,OAAAvE,EAAAuF,MAAA,WAAAvF,GAAAD,EAAA,EAAAyF,KAAA,gBAAAxC,MAAA,MAAAjD,EAAA,KAAAmE,WAAA,GAAAG,WAAA,aAAAtE,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,YAAAiE,IAAA,EAAAnC,kBAAA,SAAAzE,GAAA,QAAAmE,KAAA,MAAAnE,EAAA,IAAAmB,EAAA,cAAA0F,EAAAxF,EAAAtB,GAAA,OAAA4B,EAAAhB,KAAA,QAAAgB,EAAAgB,IAAA3C,EAAAmB,EAAA2D,KAAAzD,EAAAtB,IAAAoB,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,KAAAnB,CAAA,SAAAA,EAAA,KAAAsF,WAAAM,OAAA,EAAA5F,GAAA,IAAAA,EAAA,KAAA0B,EAAA,KAAA4D,WAAAtF,GAAA4B,EAAAF,EAAA+D,WAAA,YAAA/D,EAAAwD,OAAA,OAAA4B,EAAA,UAAApF,EAAAwD,QAAA,KAAAuB,KAAA,KAAA3E,EAAAR,EAAAuB,KAAAnB,EAAA,YAAAM,EAAAV,EAAAuB,KAAAnB,EAAA,iBAAAI,GAAAE,EAAA,SAAAyE,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,WAAAsB,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,SAAAtD,GAAA,QAAA2E,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,YAAAnD,EAAA,MAAA9B,MAAA,kDAAAuG,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,KAAAT,OAAA,SAAAxD,EAAAlB,GAAA,QAAAmB,EAAA,KAAAkE,WAAAM,OAAA,EAAAxE,GAAA,IAAAA,EAAA,KAAApB,EAAA,KAAAsF,WAAAlE,GAAA,GAAApB,EAAAkF,QAAA,KAAAuB,MAAAnF,EAAAuB,KAAA7C,EAAA,oBAAAyG,KAAAzG,EAAAoF,WAAA,KAAA1D,EAAA1B,EAAA,OAAA0B,IAAA,UAAAP,GAAA,aAAAA,IAAAO,EAAAwD,QAAAjF,GAAAA,GAAAyB,EAAA0D,aAAA1D,EAAA,UAAAE,EAAAF,EAAAA,EAAA+D,WAAA,UAAA7D,EAAAhB,KAAAO,EAAAS,EAAAgB,IAAA3C,EAAAyB,GAAA,KAAA2C,OAAA,YAAAU,KAAArD,EAAA0D,WAAAlC,GAAA,KAAA6D,SAAAnF,EAAA,EAAAmF,SAAA,SAAA5F,EAAAlB,GAAA,aAAAkB,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,gBAAAzB,EAAAP,MAAA,aAAAO,EAAAP,KAAA,KAAAmE,KAAA5D,EAAAyB,IAAA,WAAAzB,EAAAP,MAAA,KAAAiG,KAAA,KAAAjE,IAAAzB,EAAAyB,IAAA,KAAAyB,OAAA,cAAAU,KAAA,kBAAA5D,EAAAP,MAAAX,IAAA,KAAA8E,KAAA9E,GAAAiD,CAAA,EAAA8D,OAAA,SAAA7F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAAgE,aAAAjE,EAAA,YAAA4F,SAAA3F,EAAAqE,WAAArE,EAAAiE,UAAAG,EAAApE,GAAA8B,CAAA,GAAA+D,MAAA,SAAA9F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAA8D,SAAA/D,EAAA,KAAAG,EAAAF,EAAAqE,WAAA,aAAAnE,EAAAV,KAAA,KAAAZ,EAAAsB,EAAAsB,IAAA4C,EAAApE,EAAA,QAAApB,CAAA,QAAAE,MAAA,0BAAAgH,cAAA,SAAAjH,EAAAmB,EAAAE,GAAA,YAAAgD,SAAA,CAAAzC,SAAA4B,EAAAxD,GAAA6E,WAAA1D,EAAA4D,QAAA1D,GAAA,cAAA+C,SAAA,KAAAzB,IAAAzB,GAAA+B,CAAA,GAAAjD,CAAA,UAAAkH,GAAA7F,EAAAH,EAAAlB,EAAAmB,EAAApB,EAAA4B,EAAAE,GAAA,QAAAJ,EAAAJ,EAAAM,GAAAE,GAAAE,EAAAN,EAAAD,KAAA,OAAAH,GAAA,YAAArB,EAAAqB,EAAA,CAAAI,EAAA0C,KAAAjD,EAAAa,GAAAsE,QAAAhG,QAAA0B,GAAAkC,KAAA9C,EAAApB,EAAA,UAAAgc,GAAA1a,GAAA,sBAAAH,EAAA,KAAAlB,EAAAyH,UAAA,WAAApB,SAAA,SAAAlF,EAAApB,GAAA,IAAA4B,EAAAN,EAAAkG,MAAArG,EAAAlB,GAAA,SAAA0K,EAAArJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,OAAAtJ,EAAA,UAAAsJ,EAAAtJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,QAAAtJ,EAAA,CAAAqJ,OAAA,gBAAAvD,GAAAnH,EAAAmB,GAAA,IAAAD,EAAAd,OAAAD,KAAAH,GAAA,GAAAI,OAAAgH,sBAAA,KAAArH,EAAAK,OAAAgH,sBAAApH,GAAAmB,IAAApB,EAAAA,EAAAsH,QAAA,SAAAlG,GAAA,OAAAf,OAAAkH,yBAAAtH,EAAAmB,GAAAe,UAAA,KAAAhB,EAAAoE,KAAAiC,MAAArG,EAAAnB,EAAA,QAAAmB,CAAA,UAAAsG,GAAAxH,GAAA,QAAAmB,EAAA,EAAAA,EAAAsG,UAAA9B,OAAAxE,IAAA,KAAAD,EAAA,MAAAuG,UAAAtG,GAAAsG,UAAAtG,GAAA,GAAAA,EAAA,EAAAgG,GAAA/G,OAAAc,IAAA,GAAAyC,SAAA,SAAAxC,GAAAuG,GAAA1H,EAAAmB,EAAAD,EAAAC,GAAA,IAAAf,OAAAuH,0BAAAvH,OAAAwH,iBAAA5H,EAAAI,OAAAuH,0BAAAzG,IAAAiG,GAAA/G,OAAAc,IAAAyC,SAAA,SAAAxC,GAAAf,OAAAmB,eAAAvB,EAAAmB,EAAAf,OAAAkH,yBAAApG,EAAAC,GAAA,WAAAnB,CAAA,UAAA0H,GAAA1H,EAAAmB,EAAAD,GAAA,OAAAC,EAAA,SAAAD,GAAA,IAAAO,EAAA,SAAAP,GAAA,aAAA6C,GAAA7C,KAAAA,EAAA,OAAAA,EAAA,IAAAlB,EAAAkB,EAAAQ,OAAAwG,aAAA,YAAAlI,EAAA,KAAAyB,EAAAzB,EAAA4C,KAAA1B,EAAAC,UAAA,aAAA4C,GAAAtC,GAAA,OAAAA,EAAA,UAAAmD,UAAA,uDAAAuD,OAAAjH,EAAA,CAAAkH,CAAAlH,GAAA,gBAAA6C,GAAAtC,GAAAA,EAAAA,EAAA,GAAAqG,CAAA3G,MAAAnB,EAAAI,OAAAmB,eAAAvB,EAAAmB,EAAA,CAAAK,MAAAN,EAAAgB,YAAA,EAAAC,cAAA,EAAAC,UAAA,IAAApC,EAAAmB,GAAAD,EAAAlB,CAAA,UAAAgc,GAAA7a,EAAAnB,GAAA,gBAAAmB,GAAA,GAAA8a,MAAAC,QAAA/a,GAAA,OAAAA,CAAA,CAAAgb,CAAAhb,IAAA,SAAAA,EAAA2B,GAAA,IAAA5B,EAAA,MAAAC,EAAA,yBAAAO,QAAAP,EAAAO,OAAAE,WAAAT,EAAA,uBAAAD,EAAA,KAAAlB,EAAAqB,EAAAI,EAAAM,EAAAJ,EAAA,GAAAoB,GAAA,EAAAhD,GAAA,SAAA0B,GAAAP,EAAAA,EAAA0B,KAAAzB,IAAA2D,KAAA,IAAAhC,EAAA,IAAA1C,OAAAc,KAAAA,EAAA,OAAA6B,GAAA,cAAAA,GAAA/C,EAAAyB,EAAAmB,KAAA1B,IAAAiD,QAAAxC,EAAA2D,KAAAtF,EAAAwB,OAAAG,EAAAgE,SAAA7C,GAAAC,GAAA,UAAA5B,GAAApB,GAAA,EAAAsB,EAAAF,CAAA,iBAAA4B,GAAA,MAAA7B,EAAAyD,SAAA5C,EAAAb,EAAAyD,SAAAvE,OAAA2B,KAAAA,GAAA,kBAAAhC,EAAA,MAAAsB,CAAA,SAAAM,CAAA,EAAAya,CAAAjb,EAAAnB,IAAA,SAAAmB,EAAAQ,GAAA,GAAAR,EAAA,qBAAAA,EAAA,OAAAkb,GAAAlb,EAAAQ,GAAA,IAAAT,EAAA,GAAA4O,SAAAlN,KAAAzB,GAAAuF,MAAA,uBAAAxF,GAAAC,EAAA2E,cAAA5E,EAAAC,EAAA2E,YAAAC,MAAA,QAAA7E,GAAA,QAAAA,EAAA+a,MAAAK,KAAAnb,GAAA,cAAAD,GAAA,2CAAA8Y,KAAA9Y,GAAAmb,GAAAlb,EAAAQ,QAAA,GAAA4a,CAAApb,EAAAnB,IAAA,qBAAA4E,UAAA,6IAAA4X,EAAA,UAAAH,GAAAlb,EAAAQ,IAAA,MAAAA,GAAAA,EAAAR,EAAAwE,UAAAhE,EAAAR,EAAAwE,QAAA,QAAA3F,EAAA,EAAAqB,EAAA4a,MAAAta,GAAA3B,EAAA2B,EAAA3B,IAAAqB,EAAArB,GAAAmB,EAAAnB,GAAA,OAAAqB,CAAA,CAqBA,IAAMob,GAAgB,IAAI5P,EACpB6P,GAAkB,IAAIpM,EACtBqM,GAAc,IAAI5R,EAClB6R,GAAgB,IAAI/L,EAEpBgM,GAAY,CAChBC,mBAAmB,EACnBC,mBAAmB,EACnBC,uBAAuB,GAGZC,GAAY,WACvB,OAAOC,EAAAA,GAAAA,IAAO,UAAU,kBAAMP,GAAYQ,WAAW,GAAEN,GACzD,EAEaO,GAAY,WAEvB,OADsCpB,GAAjB1G,KAAiB,GAAvB,GAANtB,MAEX,EAEaqJ,GAAe,WAC1B,IAAQ9P,GAAc+P,EAAAA,EAAAA,KAAd/P,UAGR,OAAOA,QAAAA,EAAasH,EACtB,EASa0I,GAAsB,WAIjC,OAH6BD,EAAAA,EAAAA,KAArB7M,gBAIV,EAOa+M,GAAqB,WAAM,IAAAC,EAEtC,OAAwC,QAAxCA,EADwCzB,IAAjB0B,EAAAA,EAAAA,MAAiB,GAArB,GACC/T,IVnES,0BUmEW,IAAA8T,EAAAA,OAAIjT,CAC9C,EAEamT,GAAqB,WAAM,IAAAC,EAEtC,OAA6C,QAA7CA,EADwC5B,IAAjB0B,EAAAA,EAAAA,MAAiB,GAArB,GACC/T,IAAIiL,WAAqB,IAAAgJ,EAAAA,OAAIpT,CACnD,EAOaqT,GAAe,WAI1B,OAHsBP,EAAAA,EAAAA,KAAdtQ,SAIV,EAEa8Q,GAAa,WACxB,IAAM9Q,EAAY6Q,KACZ5Q,EAAuB0Q,KACvBzQ,EAAkBsQ,KACxB,OAAON,EAAAA,GAAAA,IACLtH,GAAOC,QAAQ7I,IACf,kBAAMyP,GAAc9S,KAAKqD,EAAYC,EAAsBC,EAAgB,GAAA1F,GAAAA,GAAA,GACtEqV,IAAS,IAAEkB,UAAU,IAE9B,EAEaC,GAAe,WAC1B,IAAMvN,EAAmB8M,KACnBvQ,EAAY6Q,KACZ9H,EAAcsH,KACdpQ,EAAuB0Q,KAEvBM,GAAsBC,EAAAA,EAAAA,kBAAiBnI,GAE7C,OAAOmH,EAAAA,GAAAA,IACLtH,GAAOE,UAAU9I,EAAWyD,QAAAA,EAAoBsF,GAAYgG,GAAA9a,KAAA+E,MAC5D,SAAA+C,IAAA,OAAA9H,KAAAoB,MAAA,SAAAkH,GAAA,cAAAA,EAAA/C,KAAA+C,EAAAzE,MAAA,cAAAyE,EAAA7E,OAAA,SACEgY,GAAgByB,cACbnR,EACDyD,QAAAA,EAAoBsF,IAClBtF,EACFxD,IACD,wBAAA1D,EAAA5C,OAAA,GAAAoC,EAAA,KAAAvB,GAAAA,GAAA,GAEEqV,IAAS,IACZkB,SAAUhI,IAAgBkI,IAGhC,ECxFA,GAtBY,WACV,IAAMjK,EAASoJ,KACTgB,GAAWC,EAAAA,EAAAA,MAGjB,OAFAC,EAAAA,GAAAA,OAGE7I,EAAAA,GAAAA,KAAC8I,GAAAA,EAAY,CAACvK,OAAO,KAAKwK,SAAUrK,GAAQhB,GAAMY,GAAcC,KAAUwB,UACxEiJ,EAAAA,GAAAA,MAAA,OAAKC,KAAI,GAAAhK,OAAKX,GAAcC,GAAO,OAAMwB,SAAA,EACvCC,EAAAA,GAAAA,KAACkJ,EAAAA,GAAM,KACLP,EAASQ,SAAShe,SAAS,SAC3B6d,EAAAA,GAAAA,MAAAI,GAAAA,SAAA,CAAArJ,SAAA,EACEC,EAAAA,GAAAA,KAACqJ,EAAAA,GAAQ,KACTrJ,EAAAA,GAAAA,KAACsJ,GAAAA,GAAY,KACbtJ,EAAAA,GAAAA,KAAChM,EAAAA,GAAU,KACXgM,EAAAA,GAAAA,KAACuJ,EAAAA,GAAa,CAACC,cAAY,WAMvC,0BC3BA,GANyB,SAAHnW,GAAwD,IAAlD/H,EAAK+H,EAAL/H,MAG1B,OAFIA,IAAOme,SAASne,MAAQA,GAErB,IACT,smFCcA,IAsEA,GAtEuB,SAAH+H,GAId,IAAAqW,EAAAC,EAHJpS,EAASlE,EAATkE,UAIM4M,GAAOyF,EAAAA,GAAAA,KACkDC,EAAAtD,IAAfuD,EAAAA,EAAAA,WAAS,GAAM,GAAxDC,EAAgBF,EAAA,GAAEG,EAAmBH,EAAA,GACrCI,EAAiC1D,IAAjB0B,EAAAA,EAAAA,MAAiB,GAArB,GACb1J,EAASoJ,KAEfsC,EAAaC,IAAI,WAAY3L,GACzBhH,GAAW0S,EAAaC,IAAI,YAAa,GAAFjL,OAAK1H,IAEhD,IAAM4S,GACJnK,EAAAA,GAAAA,KAAA,KACEoK,KAA+B,QAA3BV,EAAE9L,cAAoB,EAApBA,GAAsByM,WAAG,IAAAX,EAAAA,EAAA,YAAAzK,OAAgBgL,EAAa5P,YAC5DiQ,OAAQ1M,UAAAA,GAAsB2M,MAAQ,cAAWxV,EACjDyV,IAAK5M,UAAAA,GAAsB2M,MAAQ,2BAAwBxV,EAAUgL,UAErEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,kCAInBugB,EAAQ,GAAHzL,OAAA0L,IACLhN,SAAAA,GAAU,IAAI3T,KAAI,SAACsD,GAAC,OACtB0S,EAAAA,GAAAA,KAAA,KACEoK,KAAM9c,EAAE+c,IACRC,OAAQhd,EAAEid,MAAQ,cAAWxV,EAC7ByV,IAAKld,EAAEid,MAAQ,2BAAwBxV,EAAUgL,SAEhDzS,EAAEsd,OACD,KACJ,CACFT,GACAnK,EAAAA,GAAAA,KAAA,OACE6K,SAAU,EACVC,KAAK,OACLC,QAAS,WAAF,OAAQf,GAAoB,EAAK,EACxCgB,WAAWA,EAAAA,GAAAA,IAAU,kBAAMhB,GAAoB,EAAK,IAAEjK,UAEtDC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,oCAIzB,OACE6e,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,SAAQlL,SAAA,EACrBC,EAAAA,GAAAA,KAACkL,GAAAA,EAAM,CAACC,MAAOT,KACf1K,EAAAA,GAAAA,KAACoL,GAAAA,EAAY,CACXC,iBAAiBC,EAAAA,GAAAA,IAAgB,CAACC,GAAAA,KAClCjgB,MAAO6Y,EAAKK,cAAc,CAAEra,GAAI,4BAChCqhB,QAAS,CAAAzZ,GAAAA,GAAA,IAEF0Z,EAAAA,GAAAA,IAAgBd,GACb,CAACpN,GAAWmO,GAAAA,GAAqB,MAAM9Z,OACzC+Z,YAEF,IACFC,YAA6C,QAAlCjC,GAAE8B,EAAAA,GAAAA,IAAiB,IAAIG,mBAAW,IAAAjC,OAAA,EAAhCA,EAAkCzT,QAC7C,0BACA,OAINnD,KAAMgX,EACN8B,SAAU,WAAF,OAAQ7B,GAAoB,EAAM,MAIlD,yGChFA,ICJA,GDIgB,SAAH3W,GAIP,IAIAyY,MAPJC,EAAI1Y,EAAJ0Y,KAIM5H,GAAOyF,EAAAA,GAAAA,KACNoC,MAAU/D,EAAAA,EAAAA,QAAiB,w4BAArB,GAIb,OAAQ8D,GACN,IAAK,cACHD,GACE9L,EAAAA,GAAAA,KAAA,MAAIiL,UAAU,kBAAiBlL,UAC7BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,iCAGzB,MACF,IAAK,WACH2hB,GACE9L,EAAAA,GAAAA,KAAA,MAAIiL,UAAU,kBAAiBlL,UAC7BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,4BAGzB,MACF,IAAK,UACH2hB,GACE9C,EAAAA,GAAAA,MAAAI,GAAAA,SAAA,CAAArJ,SAAA,EACEC,EAAAA,GAAAA,KAAA,MAAIiL,UAAU,kBAAiBlL,UAC7BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,6BAGvB6V,EAAAA,GAAAA,KAAA,KAEEiM,wBAAyB,CACvBC,OAAQ/H,EAAKK,cAAc,CAAEra,GAAI,+BAIrC6V,EAAAA,GAAAA,KAAA,MAAIiL,UAAU,OAAMlL,UAClBC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,8CAEvB6V,EAAAA,GAAAA,KAAA,KAAAD,UACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,oCAGvB6V,EAAAA,GAAAA,KAAA,MAAIiL,UAAU,OAAMlL,UAClBC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,2CAEvB6V,EAAAA,GAAAA,KAAA,KAAAD,UACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,mCAI3B,MACF,QACE2hB,GACE9L,EAAAA,GAAAA,KAAA,MAAIiL,UAAU,kBAAiBlL,UAC7BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,gDAM7B,OACE6e,EAAAA,GAAAA,MAAAI,GAAAA,SAAA,CAAArJ,SAAA,EACEC,EAAAA,GAAAA,KAACmM,GAAgB,CAAC7gB,MAAO0S,MACzBgC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,OAAMlL,UACnBC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,OAAMlL,UACnBC,EAAAA,GAAAA,KAAA,QAAM7V,GAAG,OAAO8gB,UAAU,6BAA4BlL,SACnD+L,SAIP9L,EAAAA,GAAAA,KAACoM,GAAc,CAAC7U,UAAWyU,EAAO9X,IAAI,iBAG5C,4OEjFO,IAAMmY,GAAwB,WACnC,IACE,IAAMC,EAAU1W,OAAO2W,cAAgBC,EAAAA,EAAOD,aACxCE,EAAI,mBAEV,OADAH,EAAQI,QAAQD,EAAGA,GACfH,EAAQK,QAAQF,KAAOA,IAG3BH,EAAQM,WAAWH,IACZ,EACT,CAAE,MAAOliB,GACP,OAAO,CACT,CACF,EAOasiB,GAAa,SAACtV,GACzB,OAAI8U,MACKrV,KAAKC,MAAMsV,aAAaI,QAAQ,GAAD1N,OAAI1H,MAErC,EACT,EAEauV,GAAoB,SAC/BvV,EACAgJ,GAEA,GAAKA,GAAWA,EAAOzI,WACnBuU,KAAyB,CAC3B,IAAMU,EAAUF,GAAWtV,GACrByV,EAAQD,EAAQE,WAAU,SAAC3gB,GAAC,OAAKA,EAAEwL,YAAcyI,EAAOzI,SAAS,KACxD,IAAXkV,EACFT,aAAaG,QAAQ,GAADzN,OACf1H,GACHP,KAAKkB,WAAUgV,EAAAA,GAAAA,IAAOH,EAASC,EAAOzM,KAGxCgM,aAAaG,QAAQ,GAADzN,OACf1H,GACHP,KAAKkB,UAAU,GAAD+G,uDAAK8N,wjBAAO,CAAExM,KAGlC,MACF,EAEa4M,GAAe,SAC1B5V,EACAO,GAEA,GAAIuU,KAAyB,CAC3B,IAAMU,EAAUF,GAAWtV,GACrByV,EAAQD,EAAQE,WAAU,SAAC3gB,GAAC,OAAKA,EAAEwL,YAAcA,CAAS,KACjD,IAAXkV,GACFT,aAAaG,QAAQ,GAADzN,OACf1H,GACHP,KAAKkB,WAAUkV,EAAAA,GAAAA,IAAOL,EAASC,IAGrC,CACF,ECjEaK,GAAc,eC0D3B,GA3CoB,SAAHha,GAAyC,IAAnCia,EAAOja,EAAPia,QACf/V,EAAY6Q,KACZ2E,EAAUF,GAAWtV,GAE3B,OACEyI,EAAAA,GAAAA,KAACuN,GAAAA,EAAK,CACJpjB,GAAImjB,EACJhiB,OAAO0U,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,sBAC5BqjB,qBAAmB,EACnBC,cAAczN,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,2BAA4B4V,UAE/DC,EAAAA,GAAAA,KAAC0N,GAAAA,EAAY,CAAA3N,SACVgN,EACE9L,MAAK,SAAC/U,EAAGgV,GAAC,OACTyM,EAAAA,GAAAA,IAAYC,EAAAA,GAAAA,IAAU1hB,EAAE2hB,SAAUD,EAAAA,GAAAA,IAAU1M,EAAE2M,QAAS,IAExD7jB,KAAI,SAACuW,GAAM,OACVP,EAAAA,GAAAA,KAAC8N,GAAAA,EAAe,CAAwBC,MAAM,OAAMhO,SACjD,SAAAiO,GAAmB,IAAhB/C,EAAS+C,EAAT/C,UACF,OACEjC,EAAAA,GAAAA,MAACiF,EAAAA,GAAI,CACHC,GAAI/N,GAAOI,OAAOhJ,EAAWgJ,EAAOzI,WACpCiT,QAAS,YACPoD,EAAAA,GAAAA,IAAMb,EACR,EACArC,UAAWA,EAAUlL,SAAA,EAErBC,EAAAA,GAAAA,KAACoO,GAAAA,EAAgB,CAAArO,UACfC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,oCAEvB6V,EAAAA,GAAAA,KAACoO,GAAAA,EAAgB,CAACC,KAAK,QAAQC,OAAK,EAAAvO,UACjCwO,EAAAA,GAAAA,IAAWhO,EAAOsN,OD5CZ,gCCgDf,GAlBoBtN,EAAOzI,UAmBX,OAK9B,2yCC5CA,IAiIA,GAjIuB,SAAHzE,GAQd,IAAAmb,EAAAC,EAPJC,EAAiBrb,EAAjBqb,kBACAC,EAAStb,EAATsb,UAASC,EAAAvb,EACTN,KAAAA,OAAI,IAAA6b,GAAQA,EAMExO,EAAYiI,KAAlBnP,KACMmH,EAAckI,KAApBrP,KAER,IAAKnG,IAASsN,EAAW,OAAO,KAEhC,IAAQvI,EAA0BuI,EAA1BvI,UAAW+W,EAAexO,EAAfwO,WAEnB,OACE7F,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,0BAAyBlL,SAAA,EACtCiJ,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,4BAA2BlL,SAAA,CACvCK,EAAQ0O,qBAAuB/S,EAAmBgT,gBACjD/O,EAAAA,GAAAA,KAACgP,GAAAA,EAAU,CACT5E,KAAMjK,GAAOC,QAAQC,EAAU4O,UAC/BhE,UAAU,gBAAelL,SAExB,SAACmP,GACA,OACElP,EAAAA,GAAAA,KAACiO,EAAAA,GAAIlc,GAAAA,GAAA,GACCmd,GAAK,IACThB,GAAIgB,EAAM9E,KACVI,IAAI,sBACJF,OAAO,SAAQvK,UAEfC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,oCAG3B,KAGJ6e,EAAAA,GAAAA,MAACgG,GAAAA,EAAU,CACT1E,OAAO,SACPE,IAAI,sBACJJ,KAAI,GAAAnL,OAAKlC,GAAKoS,oBAAmB,KAAAlQ,OAAInH,GACrCmT,UAAU,gBAAelL,SAAA,EAEzBC,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAACC,KAAK,WAAWnkB,KAAK,QAAQokB,UAAU,YAC7CtP,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,8CAGzB6e,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,4BAA2BlL,SAAA,EACxCC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,eAAclL,UAC3BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,gCAEvB6V,EAAAA,GAAAA,KAAA,OAAAD,UACEC,EAAAA,GAAAA,KAACuP,GAAAA,EAAY,CAACC,KAAsB,QAAlBhB,EAAEnO,EAAU1J,cAAM,IAAA6X,EAAAA,EAAI,WAG5CxF,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,aAAYlL,SAAA,EACzBiJ,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,wCAAuClL,SAAA,EACpDC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,eAAclL,UAC3BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,mCAEtB0kB,GACC7O,EAAAA,GAAAA,KAAA,MAAAD,UACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,iCAGvBkW,EAAUoP,kBAGdzG,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,wCAAuClL,SAAA,EACpDC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,eAAclL,UAC3BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,qCAEtBkW,EAAUqP,UACTnB,EAAAA,GAAAA,IAA4B,QAAlBE,EAACpO,EAAUsP,eAAO,IAAAlB,EAAAA,EAAI,IAAImB,KAAQvC,KAE5CrN,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,uCAGzB6e,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,wCAAuClL,SAAA,EACpDC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,eAAclL,SAC1BM,EAAUwP,SAAWnU,EAAOoU,cAC7BzP,EAAU0P,8BACR1P,EAAU0P,+BAEV/P,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,kCAGxB0kB,GAAcxO,EAAUwP,SAAWnU,EAAOoU,cACzC9P,EAAAA,GAAAA,KAAA,MAAAD,UACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,iCAGvBkW,EAAU2P,aAGb3P,EAAU2F,WACTgD,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,wCAAuClL,SAAA,EACpDC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,eAAclL,UAC3BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,kCAEtBkW,EAAU2F,aAEX,SAENgD,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,aAAYlL,SAAA,CACxB2O,GACC1F,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,2BAA0BlL,SAAA,EACvCC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,eAAclL,UAC3BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,iCAEtBukB,KAED,KACHC,GAA2B,YAAdA,GACZ3O,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,2BAA0BlL,UACvCiJ,EAAAA,GAAAA,MAAA,QAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,eAAclL,UAC3BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,0BAEtBwkB,OAGH,UAIZ,qHCtIA,IAoEA,GApEuB,SAAHtb,GAYd,QAXJ4c,EAAmB5c,EAAnB4c,oBACAlF,EAAO1X,EAAP0X,QACAmF,EAAW7c,EAAX6c,YACAC,EAAQ9c,EAAR8c,SACAC,EAAiB/c,EAAjB+c,kBAQMjM,GAAOyF,EAAAA,GAAAA,KACN0D,MAAW+C,EAAAA,GAAAA,OAAU,w4BAAd,GACd,OAAKJ,GAAwBE,IAAaC,EAA2B,KAejED,GAEAnQ,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,YAAWlL,UACxBC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,oCAAmClL,UAChDC,EAAAA,GAAAA,KAAA,UAAAD,UACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,wDAQ7B6e,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,YAAWlL,SAAA,EACxBC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,oCAAmClL,UAChDC,EAAAA,GAAAA,KAACsQ,GAAAA,EAAM,CAACvF,QA5BS,WACjBmF,GACFnd,EAAAA,GAAAA,IAAKua,GAELvC,GAEJ,EAsBuCwF,SAAUJ,EAASpQ,UAClDC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,sDAGzB6V,EAAAA,GAAAA,KAACuN,GAAAA,EAAK,CACJpjB,GAAImjB,EACJhiB,MAAO6Y,EAAKK,cAAc,CAAEra,GAAI,8BAChCqmB,2BAAyB,EACzBC,YACEzH,EAAAA,GAAAA,MAAAI,GAAAA,SAAA,CAAArJ,SAAA,EACEC,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAACC,KAAK,QAAQC,UAAU,YAC7BtP,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,mCAGzBumB,OAlCiB,YACrBvC,EAAAA,GAAAA,IAAMb,GACNvC,GACF,EAgCM0C,cAAczN,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,sBAAuB4V,UAE1DC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,iCAI7B,qHCnEA,IAwCA,GAxCwC,SAAHkJ,GAQ/B,QAPJ4c,EAAmB5c,EAAnB4c,oBACAlF,EAAO1X,EAAP0X,QACAqF,EAAiB/c,EAAjB+c,kBAMyCO,MAAVN,EAAAA,GAAAA,OAAU,w4BAAlC/C,EAAOqD,EAAA,GAAE5d,EAAI4d,EAAA,GAAExC,EAAKwC,EAAA,GAE3B,OAAKV,GAGHjH,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,YAAWlL,SAAA,EACxBC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,oCAAmClL,UAChDC,EAAAA,GAAAA,KAAC4Q,GAAAA,EAAQ,CACPC,OACE7Q,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,iDAEvB2mB,SAAU,SAACvmB,GAAC,OAAMA,EAAE+f,OAAOyG,QAAUhe,IAASgY,GAAQ,EAAM,EAC5DgG,QAASX,OAGbpQ,EAAAA,GAAAA,KAACuN,GAAAA,EAAK,CACJpjB,GAAImjB,EACJkD,2BAAyB,EACzBE,OAAQ,WACN3F,GAAQ,GACRoD,GACF,EACAsC,YAAYzQ,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,kBACjCsjB,cAAczN,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,sBAAuB4V,UAE1DC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,oDAvBM,IA2BnC,cCzCA,GAAuF,qtCCChF,IAAM6mB,GACJ,QADIA,GAGD,WAGCC,GAAa,SAAC/lB,EAAcf,GAAmB,SAAA8U,OACvD/T,EAAI,KAAA+T,OAAI9U,EAAE,EAET+mB,GAAiB,CACrBC,QAAQ,EACRC,SAAU,KAaCC,GAAW,SACtB/gB,EACAuC,GAAyC,OACtCye,GAAAA,GAASD,SAAS/gB,EAAIyB,GAAAA,GAAA,GAAOmf,IAAmBre,GAAU,ECrBzD0e,GAAU,SACd/L,GAIoB,IAHpBgM,EAAgBxf,UAAA9B,OAAA,QAAA6E,IAAA/C,UAAA,IAAAA,UAAA,GAChBuM,EAAevM,UAAA9B,OAAA,EAAA8B,UAAA,QAAA+C,EACf0c,EAASzf,UAAA9B,OAAA,QAAA6E,IAAA/C,UAAA,GAAAA,UAAA,GAAG,EAEN0f,EAAUlM,EAAU,GAC1B,IAAKkM,EAAS,OAAO,KAErB,IAAMC,EAAYnM,EAAUyH,WAAU,SAAC1f,GAAC,OAAKA,EAAEqkB,OAASF,EAAQE,IAAI,IAC9DC,EAASrT,GAAkBkT,EAAQG,OAAQtT,GAEjD,OAAImT,EAAQE,KAAOH,GAEfzI,EAAAA,GAAAA,MAAAI,GAAAA,SAAA,CAAArJ,SAAA,EACEiJ,EAAAA,GAAAA,MAAA,MAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAAA,MAAIiL,UAAW6G,GAA+B/R,UAC5CC,EAAAA,GAAAA,KAACiO,GAAAA,EAAI,CACH7D,KAAI,YAAAnL,OAAcyS,EAAQvnB,IAC1B4gB,QAAS,WAAF,OAAQsG,GAAS,WAADpS,OAAYyS,EAAQvnB,IAAK,EAAC4V,SAAA,GAAAd,OAE7CuS,EAAmBK,EAAS,GAAH5S,OAAMyS,EAAQK,YAAW,KAAA9S,OAAI4S,QAG7DN,GACC/L,EAAUvU,MAAM,GAAkB,IAAf0gB,OAAmB5c,EAAY4c,GAClDH,EACAjT,EACAmT,EAAQE,UAGI,IAAfD,GACCJ,GACE/L,EAAUvU,MAAM0gB,GAChBH,EACAjT,EACAiH,EAAUmM,EAAY,GAAGC,UAOjC5I,EAAAA,GAAAA,MAAAI,GAAAA,SAAA,CAAArJ,SAAA,EACEC,EAAAA,GAAAA,KAAA,MAAIiL,UAAW6G,GAA+B/R,UAC5CC,EAAAA,GAAAA,KAACiO,GAAAA,EAAI,CACHlD,QAAS,WAAF,OAAQsG,GAAS,WAADpS,OAAYyS,EAAQvnB,IAAK,EAChDigB,KAAI,YAAAnL,OAAcyS,EAAQvnB,IAAK4V,SAAA,GAAAd,OAE3BuS,EAAmBK,EAAS,GAAH5S,OAAMyS,EAAQK,YAAW,KAAA9S,OAAI4S,QAG7DN,GAAQ/L,EAAUvU,MAAM,GAAIugB,EAAkBjT,EAAQmT,EAAQE,QAGrE,EC7DA,GD+D4B,SAAHve,GAMnB,IAAA2e,EAAA3e,EALJmS,UAAAA,OAAS,IAAAwM,EAAG,GAAEA,EAAAC,EAAA5e,EACdme,iBAAAA,OAAgB,IAAAS,GAAQA,EAKlB1T,EAASoJ,KACf,OAAyB,IAArBnC,EAAUtV,OAAqB,MAGjC8P,EAAAA,GAAAA,KAAA,MAAIiL,UF3E8B,uBE2EQlL,SACvCwR,GACC/L,EAAU5T,QAAO,SAACrE,GAAC,OAAKA,EAAEqkB,MAAQ,CAAC,IACnCJ,EACAjT,IAIR,yPEnFA/S,GAAA,kBAAAjB,CAAA,MAAAkB,EAAAlB,EAAA,GAAAmB,EAAAf,OAAAgB,UAAAC,EAAAF,EAAAG,eAAAvB,EAAAK,OAAAmB,gBAAA,SAAAL,EAAAlB,EAAAmB,GAAAD,EAAAlB,GAAAmB,EAAAK,KAAA,EAAAC,EAAA,mBAAAC,OAAAA,OAAA,GAAAC,EAAAF,EAAAG,UAAA,aAAAC,EAAAJ,EAAAK,eAAA,kBAAAC,EAAAN,EAAAO,aAAA,yBAAAC,EAAAf,EAAAlB,EAAAmB,GAAA,OAAAf,OAAAmB,eAAAL,EAAAlB,EAAA,CAAAwB,MAAAL,EAAAe,YAAA,EAAAC,cAAA,EAAAC,UAAA,IAAAlB,EAAAlB,EAAA,KAAAiC,EAAA,aAAAf,GAAAe,EAAA,SAAAf,EAAAlB,EAAAmB,GAAA,OAAAD,EAAAlB,GAAAmB,CAAA,WAAAkB,EAAAnB,EAAAlB,EAAAmB,EAAAE,GAAA,IAAAI,EAAAzB,GAAAA,EAAAoB,qBAAAkB,EAAAtC,EAAAsC,EAAAX,EAAAvB,OAAAmC,OAAAd,EAAAL,WAAAS,EAAA,IAAAW,EAAAnB,GAAA,WAAAtB,EAAA4B,EAAA,WAAAH,MAAAiB,EAAAvB,EAAAC,EAAAU,KAAAF,CAAA,UAAAe,EAAAxB,EAAAlB,EAAAmB,GAAA,WAAAR,KAAA,SAAAgC,IAAAzB,EAAA0B,KAAA5C,EAAAmB,GAAA,OAAAD,GAAA,OAAAP,KAAA,QAAAgC,IAAAzB,EAAA,EAAAlB,EAAAqC,KAAAA,EAAA,IAAAQ,EAAA,iBAAAC,EAAA,iBAAAC,EAAA,YAAAC,EAAA,YAAAC,EAAA,YAAAX,IAAA,UAAAY,IAAA,UAAAC,IAAA,KAAAC,EAAA,GAAAnB,EAAAmB,EAAAzB,GAAA,8BAAA0B,EAAAjD,OAAAkD,eAAAC,EAAAF,GAAAA,EAAAA,EAAAG,EAAA,MAAAD,GAAAA,IAAApC,GAAAE,EAAAuB,KAAAW,EAAA5B,KAAAyB,EAAAG,GAAA,IAAAE,EAAAN,EAAA/B,UAAAkB,EAAAlB,UAAAhB,OAAAmC,OAAAa,GAAA,SAAAM,EAAAxC,GAAA,0BAAAyC,SAAA,SAAA3D,GAAAiC,EAAAf,EAAAlB,GAAA,SAAAkB,GAAA,YAAA0C,QAAA5D,EAAAkB,EAAA,gBAAA2C,EAAA3C,EAAAlB,GAAA,SAAA8D,EAAA3C,EAAApB,EAAA0B,EAAAE,GAAA,IAAAE,EAAAa,EAAAxB,EAAAC,GAAAD,EAAAnB,GAAA,aAAA8B,EAAAlB,KAAA,KAAAoB,EAAAF,EAAAc,IAAAE,EAAAd,EAAAP,MAAA,OAAAqB,GAAA,UAAAkB,GAAAlB,IAAAxB,EAAAuB,KAAAC,EAAA,WAAA7C,EAAAK,QAAAwC,EAAAmB,SAAAC,MAAA,SAAA/C,GAAA4C,EAAA,OAAA5C,EAAAO,EAAAE,EAAA,aAAAT,GAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAA3B,EAAAK,QAAAwC,GAAAoB,MAAA,SAAA/C,GAAAa,EAAAP,MAAAN,EAAAO,EAAAM,EAAA,aAAAb,GAAA,OAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAAA,EAAAE,EAAAc,IAAA,KAAAxB,EAAApB,EAAA,gBAAAyB,MAAA,SAAAN,EAAAG,GAAA,SAAA6C,IAAA,WAAAlE,GAAA,SAAAA,EAAAmB,GAAA2C,EAAA5C,EAAAG,EAAArB,EAAAmB,EAAA,WAAAA,EAAAA,EAAAA,EAAA8C,KAAAC,EAAAA,GAAAA,GAAA,aAAAzB,EAAAzC,EAAAmB,EAAAE,GAAA,IAAAtB,EAAA8C,EAAA,gBAAApB,EAAAE,GAAA,GAAA5B,IAAAgD,EAAA,MAAA9C,MAAA,mCAAAF,IAAAiD,EAAA,cAAAvB,EAAA,MAAAE,EAAA,OAAAH,MAAAN,EAAAiD,MAAA,OAAA9C,EAAA+C,OAAA3C,EAAAJ,EAAAsB,IAAAhB,IAAA,KAAAE,EAAAR,EAAAgD,SAAA,GAAAxC,EAAA,KAAAE,EAAAuC,EAAAzC,EAAAR,GAAA,GAAAU,EAAA,IAAAA,IAAAkB,EAAA,gBAAAlB,CAAA,cAAAV,EAAA+C,OAAA/C,EAAAkD,KAAAlD,EAAAmD,MAAAnD,EAAAsB,SAAA,aAAAtB,EAAA+C,OAAA,IAAArE,IAAA8C,EAAA,MAAA9C,EAAAiD,EAAA3B,EAAAsB,IAAAtB,EAAAoD,kBAAApD,EAAAsB,IAAA,gBAAAtB,EAAA+C,QAAA/C,EAAAqD,OAAA,SAAArD,EAAAsB,KAAA5C,EAAAgD,EAAA,IAAAK,EAAAV,EAAA1C,EAAAmB,EAAAE,GAAA,cAAA+B,EAAAzC,KAAA,IAAAZ,EAAAsB,EAAA8C,KAAAnB,EAAAF,EAAAM,EAAAT,MAAAM,EAAA,gBAAAzB,MAAA4B,EAAAT,IAAAwB,KAAA9C,EAAA8C,KAAA,WAAAf,EAAAzC,OAAAZ,EAAAiD,EAAA3B,EAAA+C,OAAA,QAAA/C,EAAAsB,IAAAS,EAAAT,IAAA,YAAA2B,EAAAtE,EAAAmB,GAAA,IAAAE,EAAAF,EAAAiD,OAAArE,EAAAC,EAAA4B,SAAAP,GAAA,GAAAtB,IAAAmB,EAAA,OAAAC,EAAAkD,SAAA,eAAAhD,GAAArB,EAAA4B,SAAA+C,SAAAxD,EAAAiD,OAAA,SAAAjD,EAAAwB,IAAAzB,EAAAoD,EAAAtE,EAAAmB,GAAA,UAAAA,EAAAiD,SAAA,WAAA/C,IAAAF,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAvD,EAAA,aAAA4B,EAAA,IAAAxB,EAAAiB,EAAA3C,EAAAC,EAAA4B,SAAAT,EAAAwB,KAAA,aAAAlB,EAAAd,KAAA,OAAAQ,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAAlB,EAAAkB,IAAAxB,EAAAkD,SAAA,KAAApB,EAAA,IAAAtB,EAAAF,EAAAkB,IAAA,OAAAhB,EAAAA,EAAAwC,MAAAhD,EAAAnB,EAAA6E,YAAAlD,EAAAH,MAAAL,EAAA2D,KAAA9E,EAAA+E,QAAA,WAAA5D,EAAAiD,SAAAjD,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,GAAAC,EAAAkD,SAAA,KAAApB,GAAAtB,GAAAR,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAzD,EAAAkD,SAAA,KAAApB,EAAA,UAAA+B,EAAA9D,GAAA,IAAAlB,EAAA,CAAAiF,OAAA/D,EAAA,SAAAA,IAAAlB,EAAAkF,SAAAhE,EAAA,SAAAA,IAAAlB,EAAAmF,WAAAjE,EAAA,GAAAlB,EAAAoF,SAAAlE,EAAA,SAAAmE,WAAAC,KAAAtF,EAAA,UAAAuF,EAAArE,GAAA,IAAAlB,EAAAkB,EAAAsE,YAAA,GAAAxF,EAAAW,KAAA,gBAAAX,EAAA2C,IAAAzB,EAAAsE,WAAAxF,CAAA,UAAAwC,EAAAtB,GAAA,KAAAmE,WAAA,EAAAJ,OAAA,SAAA/D,EAAAyC,QAAAqB,EAAA,WAAAS,OAAA,YAAAjC,EAAAxD,GAAA,GAAAA,GAAA,KAAAA,EAAA,KAAAmB,EAAAnB,EAAA2B,GAAA,GAAAR,EAAA,OAAAA,EAAAyB,KAAA5C,GAAA,sBAAAA,EAAA8E,KAAA,OAAA9E,EAAA,IAAA0F,MAAA1F,EAAA2F,QAAA,KAAA5F,GAAA,EAAA0B,EAAA,SAAAqD,IAAA,OAAA/E,EAAAC,EAAA2F,QAAA,GAAAtE,EAAAuB,KAAA5C,EAAAD,GAAA,OAAA+E,EAAAtD,MAAAxB,EAAAD,GAAA+E,EAAAX,MAAA,EAAAW,EAAA,OAAAA,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,SAAArD,EAAAqD,KAAArD,CAAA,YAAAmD,UAAAb,GAAA/D,GAAA,2BAAAkD,EAAA9B,UAAA+B,EAAApD,EAAA0D,EAAA,eAAAjC,MAAA2B,EAAAhB,cAAA,IAAApC,EAAAoD,EAAA,eAAA3B,MAAA0B,EAAAf,cAAA,IAAAe,EAAA0C,YAAA3D,EAAAkB,EAAApB,EAAA,qBAAA/B,EAAA6F,oBAAA,SAAA3E,GAAA,IAAAlB,EAAA,mBAAAkB,GAAAA,EAAA4E,YAAA,QAAA9F,IAAAA,IAAAkD,GAAA,uBAAAlD,EAAA4F,aAAA5F,EAAA+F,MAAA,EAAA/F,EAAAgG,KAAA,SAAA9E,GAAA,OAAAd,OAAA6F,eAAA7F,OAAA6F,eAAA/E,EAAAiC,IAAAjC,EAAAgF,UAAA/C,EAAAlB,EAAAf,EAAAa,EAAA,sBAAAb,EAAAE,UAAAhB,OAAAmC,OAAAkB,GAAAvC,CAAA,EAAAlB,EAAAmG,MAAA,SAAAjF,GAAA,OAAA8C,QAAA9C,EAAA,EAAAwC,EAAAG,EAAAzC,WAAAa,EAAA4B,EAAAzC,UAAAS,GAAA,0BAAA7B,EAAA6D,cAAAA,EAAA7D,EAAAoG,MAAA,SAAAlF,EAAAC,EAAAE,EAAAtB,EAAA0B,QAAA,IAAAA,IAAAA,EAAA4E,SAAA,IAAA1E,EAAA,IAAAkC,EAAAxB,EAAAnB,EAAAC,EAAAE,EAAAtB,GAAA0B,GAAA,OAAAzB,EAAA6F,oBAAA1E,GAAAQ,EAAAA,EAAAmD,OAAAb,MAAA,SAAA/C,GAAA,OAAAA,EAAAiD,KAAAjD,EAAAM,MAAAG,EAAAmD,MAAA,KAAApB,EAAAD,GAAAxB,EAAAwB,EAAA1B,EAAA,aAAAE,EAAAwB,EAAA9B,GAAA,0BAAAM,EAAAwB,EAAA,qDAAAzD,EAAAG,KAAA,SAAAe,GAAA,IAAAlB,EAAAI,OAAAc,GAAAC,EAAA,WAAAE,KAAArB,EAAAmB,EAAAmE,KAAAjE,GAAA,OAAAF,EAAAmF,UAAA,SAAAxB,IAAA,KAAA3D,EAAAwE,QAAA,KAAAzE,EAAAC,EAAAoF,MAAA,GAAArF,KAAAlB,EAAA,OAAA8E,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,QAAAA,EAAAX,MAAA,EAAAW,CAAA,GAAA9E,EAAAwD,OAAAA,EAAAhB,EAAApB,UAAA,CAAA0E,YAAAtD,EAAAiD,MAAA,SAAAzF,GAAA,QAAAwG,KAAA,OAAA1B,KAAA,OAAAP,KAAA,KAAAC,MAAAtD,EAAA,KAAAiD,MAAA,OAAAE,SAAA,UAAAD,OAAA,YAAAzB,IAAAzB,EAAA,KAAAmE,WAAA1B,QAAA4B,IAAAvF,EAAA,QAAAmB,KAAA,WAAAA,EAAAsF,OAAA,IAAApF,EAAAuB,KAAA,KAAAzB,KAAAuE,OAAAvE,EAAAuF,MAAA,WAAAvF,GAAAD,EAAA,EAAAyF,KAAA,gBAAAxC,MAAA,MAAAjD,EAAA,KAAAmE,WAAA,GAAAG,WAAA,aAAAtE,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,YAAAiE,IAAA,EAAAnC,kBAAA,SAAAzE,GAAA,QAAAmE,KAAA,MAAAnE,EAAA,IAAAmB,EAAA,cAAA0F,EAAAxF,EAAAtB,GAAA,OAAA4B,EAAAhB,KAAA,QAAAgB,EAAAgB,IAAA3C,EAAAmB,EAAA2D,KAAAzD,EAAAtB,IAAAoB,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,KAAAnB,CAAA,SAAAA,EAAA,KAAAsF,WAAAM,OAAA,EAAA5F,GAAA,IAAAA,EAAA,KAAA0B,EAAA,KAAA4D,WAAAtF,GAAA4B,EAAAF,EAAA+D,WAAA,YAAA/D,EAAAwD,OAAA,OAAA4B,EAAA,UAAApF,EAAAwD,QAAA,KAAAuB,KAAA,KAAA3E,EAAAR,EAAAuB,KAAAnB,EAAA,YAAAM,EAAAV,EAAAuB,KAAAnB,EAAA,iBAAAI,GAAAE,EAAA,SAAAyE,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,WAAAsB,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,SAAAtD,GAAA,QAAA2E,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,YAAAnD,EAAA,MAAA9B,MAAA,kDAAAuG,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,KAAAT,OAAA,SAAAxD,EAAAlB,GAAA,QAAAmB,EAAA,KAAAkE,WAAAM,OAAA,EAAAxE,GAAA,IAAAA,EAAA,KAAApB,EAAA,KAAAsF,WAAAlE,GAAA,GAAApB,EAAAkF,QAAA,KAAAuB,MAAAnF,EAAAuB,KAAA7C,EAAA,oBAAAyG,KAAAzG,EAAAoF,WAAA,KAAA1D,EAAA1B,EAAA,OAAA0B,IAAA,UAAAP,GAAA,aAAAA,IAAAO,EAAAwD,QAAAjF,GAAAA,GAAAyB,EAAA0D,aAAA1D,EAAA,UAAAE,EAAAF,EAAAA,EAAA+D,WAAA,UAAA7D,EAAAhB,KAAAO,EAAAS,EAAAgB,IAAA3C,EAAAyB,GAAA,KAAA2C,OAAA,YAAAU,KAAArD,EAAA0D,WAAAlC,GAAA,KAAA6D,SAAAnF,EAAA,EAAAmF,SAAA,SAAA5F,EAAAlB,GAAA,aAAAkB,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,gBAAAzB,EAAAP,MAAA,aAAAO,EAAAP,KAAA,KAAAmE,KAAA5D,EAAAyB,IAAA,WAAAzB,EAAAP,MAAA,KAAAiG,KAAA,KAAAjE,IAAAzB,EAAAyB,IAAA,KAAAyB,OAAA,cAAAU,KAAA,kBAAA5D,EAAAP,MAAAX,IAAA,KAAA8E,KAAA9E,GAAAiD,CAAA,EAAA8D,OAAA,SAAA7F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAAgE,aAAAjE,EAAA,YAAA4F,SAAA3F,EAAAqE,WAAArE,EAAAiE,UAAAG,EAAApE,GAAA8B,CAAA,GAAA+D,MAAA,SAAA9F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAA8D,SAAA/D,EAAA,KAAAG,EAAAF,EAAAqE,WAAA,aAAAnE,EAAAV,KAAA,KAAAZ,EAAAsB,EAAAsB,IAAA4C,EAAApE,EAAA,QAAApB,CAAA,QAAAE,MAAA,0BAAAgH,cAAA,SAAAjH,EAAAmB,EAAAE,GAAA,YAAAgD,SAAA,CAAAzC,SAAA4B,EAAAxD,GAAA6E,WAAA1D,EAAA4D,QAAA1D,GAAA,cAAA+C,SAAA,KAAAzB,IAAAzB,GAAA+B,CAAA,GAAAjD,CAAA,UAAAkH,GAAA7F,EAAAH,EAAAlB,EAAAmB,EAAApB,EAAA4B,EAAAE,GAAA,QAAAJ,EAAAJ,EAAAM,GAAAE,GAAAE,EAAAN,EAAAD,KAAA,OAAAH,GAAA,YAAArB,EAAAqB,EAAA,CAAAI,EAAA0C,KAAAjD,EAAAa,GAAAsE,QAAAhG,QAAA0B,GAAAkC,KAAA9C,EAAApB,EAAA,UAAAsc,GAAAlb,EAAAQ,IAAA,MAAAA,GAAAA,EAAAR,EAAAwE,UAAAhE,EAAAR,EAAAwE,QAAA,QAAA3F,EAAA,EAAAqB,EAAA4a,MAAAta,GAAA3B,EAAA2B,EAAA3B,IAAAqB,EAAArB,GAAAmB,EAAAnB,GAAA,OAAAqB,CAAA,CASA,IAAMsmB,GAAS,IAAI9a,EA+CnB,GA7CyB,SAAH/D,GAMhB,IAjBN3H,EAAAnB,EAYE8N,EAAwBhF,EAAxBgF,yBACA8Z,EAAQ9e,EAAR8e,SAKc/R,EAAYiI,KAAlBnP,KACFqF,EAASoJ,KACDtH,EAAckI,KAApBrP,KACAnL,GAAWqkB,EAAAA,GAAAA,KAAXrkB,OACC0K,GAtBX/M,EAsB+BmU,KAtB/BtV,EAsBgD,EAtBhD,SAAAmB,GAAA,GAAA8a,MAAAC,QAAA/a,GAAA,OAAAA,CAAA,CAAAgb,CAAAhb,IAAA,SAAAA,EAAA2B,GAAA,IAAA5B,EAAA,MAAAC,EAAA,yBAAAO,QAAAP,EAAAO,OAAAE,WAAAT,EAAA,uBAAAD,EAAA,KAAAlB,EAAAqB,EAAAI,EAAAM,EAAAJ,EAAA,GAAAoB,GAAA,EAAAhD,GAAA,SAAA0B,GAAAP,EAAAA,EAAA0B,KAAAzB,IAAA2D,KAAA,IAAAhC,EAAA,IAAA1C,OAAAc,KAAAA,EAAA,OAAA6B,GAAA,cAAAA,GAAA/C,EAAAyB,EAAAmB,KAAA1B,IAAAiD,QAAAxC,EAAA2D,KAAAtF,EAAAwB,OAAAG,EAAAgE,SAAA7C,GAAAC,GAAA,UAAA5B,GAAApB,GAAA,EAAAsB,EAAAF,CAAA,iBAAA4B,GAAA,MAAA7B,EAAAyD,SAAA5C,EAAAb,EAAAyD,SAAAvE,OAAA2B,KAAAA,GAAA,kBAAAhC,EAAA,MAAAsB,CAAA,SAAAM,CAAA,EAAAya,CAAAjb,EAAAnB,IAAA,SAAAmB,EAAAQ,GAAA,GAAAR,EAAA,qBAAAA,EAAA,OAAAkb,GAAAlb,EAAAQ,GAAA,IAAAT,EAAA,GAAA4O,SAAAlN,KAAAzB,GAAAuF,MAAA,uBAAAxF,GAAAC,EAAA2E,cAAA5E,EAAAC,EAAA2E,YAAAC,MAAA,QAAA7E,GAAA,QAAAA,EAAA+a,MAAAK,KAAAnb,GAAA,cAAAD,GAAA,2CAAA8Y,KAAA9Y,GAAAmb,GAAAlb,EAAAQ,QAAA,GAAA4a,CAAApb,EAAAnB,IAAA,qBAAA4E,UAAA,6IAAA4X,IAsByB,GAAdtO,eACH4Z,EAAgB,eAvBxBzmB,EAuBwBoiB,GAvBxBpiB,EAuBwBJ,KAAA+E,MAAG,SAAA+C,IAAA,IAAAgf,EAAA7M,EAAA,OAAAja,KAAAoB,MAAA,SAAAkH,GAAA,cAAAA,EAAA/C,KAAA+C,EAAAzE,MAAA,OAQtB,OAPD0D,EAAAA,EAAAA,MACM0S,EAAK8M,GACTlS,EAAWvI,UACX+J,GAAmBxB,EAAYtS,GAC/B0K,EACA8F,GACA,GACDzK,EAAAzE,KAAA,EACK6iB,GAAOM,yBACXpS,EAAQjW,GACY,QADVmoB,EACVjS,aAAS,EAATA,EAAWvI,iBAAS,IAAAwa,EAAAA,EAAIlT,GACxB/G,EACAoN,GACD,QACD1R,EAAAA,EAAAA,MACA6B,OAAO+S,SAASyB,KAAO+H,EAAS,wBAAAre,EAAA5C,OAAA,GAAAoC,EAAA,IAvCpC,eAAA7H,EAAA,KAAAlB,EAAAyH,UAAA,WAAApB,SAAA,SAAAlF,EAAApB,GAAA,IAAA4B,EAAAN,EAAAkG,MAAArG,EAAAlB,GAAA,SAAA0K,EAAArJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,OAAAtJ,EAAA,UAAAsJ,EAAAtJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,QAAAtJ,EAAA,CAAAqJ,OAAA,QAwCG,kBAjBqB,OAAA+Y,EAAAlc,MAAA,KAAAE,UAAA,KAmBtB,OACEgO,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,kDAAiDlL,UAC9DC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,uCAAsClL,UACnDC,EAAAA,GAAAA,KAACsQ,GAAAA,EAAM,CACLrF,UAAU,4DACVF,QAAS,WAAF,OAAQsH,GAAkB,EAACtS,UAElCC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,qCAK/B,khCCpCO,IAAMsoB,GAAkB,SAAHpf,EAE1BwN,GAEG,IAAAmN,EAAAzH,GAAAlT,EAAA,GAHF4W,EAAY+D,EAAA,GAAE0E,EAAe1E,EAAA,GAE9B2E,EAA+B3gB,UAAA9B,OAAA,QAAA6E,IAAA/C,UAAA,IAAAA,UAAA,GAE/BiY,EAAaC,IAAIhL,GAAU,GAAFD,OAAK4B,IAC9B6R,EAAgBzI,IACM,IAAlB0I,EACFtB,GAASJ,GAAWD,GAAkBnQ,IAC7B8R,EACTtB,GAASsB,GJGXtB,GAAS,eAAgB,CACvBuB,QAAS,IIAb,8sCChCApnB,GAAA,kBAAAjB,CAAA,MAAAkB,EAAAlB,EAAA,GAAAmB,EAAAf,OAAAgB,UAAAC,EAAAF,EAAAG,eAAAvB,EAAAK,OAAAmB,gBAAA,SAAAL,EAAAlB,EAAAmB,GAAAD,EAAAlB,GAAAmB,EAAAK,KAAA,EAAAC,EAAA,mBAAAC,OAAAA,OAAA,GAAAC,EAAAF,EAAAG,UAAA,aAAAC,EAAAJ,EAAAK,eAAA,kBAAAC,EAAAN,EAAAO,aAAA,yBAAAC,EAAAf,EAAAlB,EAAAmB,GAAA,OAAAf,OAAAmB,eAAAL,EAAAlB,EAAA,CAAAwB,MAAAL,EAAAe,YAAA,EAAAC,cAAA,EAAAC,UAAA,IAAAlB,EAAAlB,EAAA,KAAAiC,EAAA,aAAAf,GAAAe,EAAA,SAAAf,EAAAlB,EAAAmB,GAAA,OAAAD,EAAAlB,GAAAmB,CAAA,WAAAkB,EAAAnB,EAAAlB,EAAAmB,EAAAE,GAAA,IAAAI,EAAAzB,GAAAA,EAAAoB,qBAAAkB,EAAAtC,EAAAsC,EAAAX,EAAAvB,OAAAmC,OAAAd,EAAAL,WAAAS,EAAA,IAAAW,EAAAnB,GAAA,WAAAtB,EAAA4B,EAAA,WAAAH,MAAAiB,EAAAvB,EAAAC,EAAAU,KAAAF,CAAA,UAAAe,EAAAxB,EAAAlB,EAAAmB,GAAA,WAAAR,KAAA,SAAAgC,IAAAzB,EAAA0B,KAAA5C,EAAAmB,GAAA,OAAAD,GAAA,OAAAP,KAAA,QAAAgC,IAAAzB,EAAA,EAAAlB,EAAAqC,KAAAA,EAAA,IAAAQ,EAAA,iBAAAC,EAAA,iBAAAC,EAAA,YAAAC,EAAA,YAAAC,EAAA,YAAAX,IAAA,UAAAY,IAAA,UAAAC,IAAA,KAAAC,EAAA,GAAAnB,EAAAmB,EAAAzB,GAAA,8BAAA0B,EAAAjD,OAAAkD,eAAAC,EAAAF,GAAAA,EAAAA,EAAAG,EAAA,MAAAD,GAAAA,IAAApC,GAAAE,EAAAuB,KAAAW,EAAA5B,KAAAyB,EAAAG,GAAA,IAAAE,EAAAN,EAAA/B,UAAAkB,EAAAlB,UAAAhB,OAAAmC,OAAAa,GAAA,SAAAM,EAAAxC,GAAA,0BAAAyC,SAAA,SAAA3D,GAAAiC,EAAAf,EAAAlB,GAAA,SAAAkB,GAAA,YAAA0C,QAAA5D,EAAAkB,EAAA,gBAAA2C,EAAA3C,EAAAlB,GAAA,SAAA8D,EAAA3C,EAAApB,EAAA0B,EAAAE,GAAA,IAAAE,EAAAa,EAAAxB,EAAAC,GAAAD,EAAAnB,GAAA,aAAA8B,EAAAlB,KAAA,KAAAoB,EAAAF,EAAAc,IAAAE,EAAAd,EAAAP,MAAA,OAAAqB,GAAA,UAAAkB,GAAAlB,IAAAxB,EAAAuB,KAAAC,EAAA,WAAA7C,EAAAK,QAAAwC,EAAAmB,SAAAC,MAAA,SAAA/C,GAAA4C,EAAA,OAAA5C,EAAAO,EAAAE,EAAA,aAAAT,GAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAA3B,EAAAK,QAAAwC,GAAAoB,MAAA,SAAA/C,GAAAa,EAAAP,MAAAN,EAAAO,EAAAM,EAAA,aAAAb,GAAA,OAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAAA,EAAAE,EAAAc,IAAA,KAAAxB,EAAApB,EAAA,gBAAAyB,MAAA,SAAAN,EAAAG,GAAA,SAAA6C,IAAA,WAAAlE,GAAA,SAAAA,EAAAmB,GAAA2C,EAAA5C,EAAAG,EAAArB,EAAAmB,EAAA,WAAAA,EAAAA,EAAAA,EAAA8C,KAAAC,EAAAA,GAAAA,GAAA,aAAAzB,EAAAzC,EAAAmB,EAAAE,GAAA,IAAAtB,EAAA8C,EAAA,gBAAApB,EAAAE,GAAA,GAAA5B,IAAAgD,EAAA,MAAA9C,MAAA,mCAAAF,IAAAiD,EAAA,cAAAvB,EAAA,MAAAE,EAAA,OAAAH,MAAAN,EAAAiD,MAAA,OAAA9C,EAAA+C,OAAA3C,EAAAJ,EAAAsB,IAAAhB,IAAA,KAAAE,EAAAR,EAAAgD,SAAA,GAAAxC,EAAA,KAAAE,EAAAuC,EAAAzC,EAAAR,GAAA,GAAAU,EAAA,IAAAA,IAAAkB,EAAA,gBAAAlB,CAAA,cAAAV,EAAA+C,OAAA/C,EAAAkD,KAAAlD,EAAAmD,MAAAnD,EAAAsB,SAAA,aAAAtB,EAAA+C,OAAA,IAAArE,IAAA8C,EAAA,MAAA9C,EAAAiD,EAAA3B,EAAAsB,IAAAtB,EAAAoD,kBAAApD,EAAAsB,IAAA,gBAAAtB,EAAA+C,QAAA/C,EAAAqD,OAAA,SAAArD,EAAAsB,KAAA5C,EAAAgD,EAAA,IAAAK,EAAAV,EAAA1C,EAAAmB,EAAAE,GAAA,cAAA+B,EAAAzC,KAAA,IAAAZ,EAAAsB,EAAA8C,KAAAnB,EAAAF,EAAAM,EAAAT,MAAAM,EAAA,gBAAAzB,MAAA4B,EAAAT,IAAAwB,KAAA9C,EAAA8C,KAAA,WAAAf,EAAAzC,OAAAZ,EAAAiD,EAAA3B,EAAA+C,OAAA,QAAA/C,EAAAsB,IAAAS,EAAAT,IAAA,YAAA2B,EAAAtE,EAAAmB,GAAA,IAAAE,EAAAF,EAAAiD,OAAArE,EAAAC,EAAA4B,SAAAP,GAAA,GAAAtB,IAAAmB,EAAA,OAAAC,EAAAkD,SAAA,eAAAhD,GAAArB,EAAA4B,SAAA+C,SAAAxD,EAAAiD,OAAA,SAAAjD,EAAAwB,IAAAzB,EAAAoD,EAAAtE,EAAAmB,GAAA,UAAAA,EAAAiD,SAAA,WAAA/C,IAAAF,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAvD,EAAA,aAAA4B,EAAA,IAAAxB,EAAAiB,EAAA3C,EAAAC,EAAA4B,SAAAT,EAAAwB,KAAA,aAAAlB,EAAAd,KAAA,OAAAQ,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAAlB,EAAAkB,IAAAxB,EAAAkD,SAAA,KAAApB,EAAA,IAAAtB,EAAAF,EAAAkB,IAAA,OAAAhB,EAAAA,EAAAwC,MAAAhD,EAAAnB,EAAA6E,YAAAlD,EAAAH,MAAAL,EAAA2D,KAAA9E,EAAA+E,QAAA,WAAA5D,EAAAiD,SAAAjD,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,GAAAC,EAAAkD,SAAA,KAAApB,GAAAtB,GAAAR,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAzD,EAAAkD,SAAA,KAAApB,EAAA,UAAA+B,EAAA9D,GAAA,IAAAlB,EAAA,CAAAiF,OAAA/D,EAAA,SAAAA,IAAAlB,EAAAkF,SAAAhE,EAAA,SAAAA,IAAAlB,EAAAmF,WAAAjE,EAAA,GAAAlB,EAAAoF,SAAAlE,EAAA,SAAAmE,WAAAC,KAAAtF,EAAA,UAAAuF,EAAArE,GAAA,IAAAlB,EAAAkB,EAAAsE,YAAA,GAAAxF,EAAAW,KAAA,gBAAAX,EAAA2C,IAAAzB,EAAAsE,WAAAxF,CAAA,UAAAwC,EAAAtB,GAAA,KAAAmE,WAAA,EAAAJ,OAAA,SAAA/D,EAAAyC,QAAAqB,EAAA,WAAAS,OAAA,YAAAjC,EAAAxD,GAAA,GAAAA,GAAA,KAAAA,EAAA,KAAAmB,EAAAnB,EAAA2B,GAAA,GAAAR,EAAA,OAAAA,EAAAyB,KAAA5C,GAAA,sBAAAA,EAAA8E,KAAA,OAAA9E,EAAA,IAAA0F,MAAA1F,EAAA2F,QAAA,KAAA5F,GAAA,EAAA0B,EAAA,SAAAqD,IAAA,OAAA/E,EAAAC,EAAA2F,QAAA,GAAAtE,EAAAuB,KAAA5C,EAAAD,GAAA,OAAA+E,EAAAtD,MAAAxB,EAAAD,GAAA+E,EAAAX,MAAA,EAAAW,EAAA,OAAAA,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,SAAArD,EAAAqD,KAAArD,CAAA,YAAAmD,UAAAb,GAAA/D,GAAA,2BAAAkD,EAAA9B,UAAA+B,EAAApD,EAAA0D,EAAA,eAAAjC,MAAA2B,EAAAhB,cAAA,IAAApC,EAAAoD,EAAA,eAAA3B,MAAA0B,EAAAf,cAAA,IAAAe,EAAA0C,YAAA3D,EAAAkB,EAAApB,EAAA,qBAAA/B,EAAA6F,oBAAA,SAAA3E,GAAA,IAAAlB,EAAA,mBAAAkB,GAAAA,EAAA4E,YAAA,QAAA9F,IAAAA,IAAAkD,GAAA,uBAAAlD,EAAA4F,aAAA5F,EAAA+F,MAAA,EAAA/F,EAAAgG,KAAA,SAAA9E,GAAA,OAAAd,OAAA6F,eAAA7F,OAAA6F,eAAA/E,EAAAiC,IAAAjC,EAAAgF,UAAA/C,EAAAlB,EAAAf,EAAAa,EAAA,sBAAAb,EAAAE,UAAAhB,OAAAmC,OAAAkB,GAAAvC,CAAA,EAAAlB,EAAAmG,MAAA,SAAAjF,GAAA,OAAA8C,QAAA9C,EAAA,EAAAwC,EAAAG,EAAAzC,WAAAa,EAAA4B,EAAAzC,UAAAS,GAAA,0BAAA7B,EAAA6D,cAAAA,EAAA7D,EAAAoG,MAAA,SAAAlF,EAAAC,EAAAE,EAAAtB,EAAA0B,QAAA,IAAAA,IAAAA,EAAA4E,SAAA,IAAA1E,EAAA,IAAAkC,EAAAxB,EAAAnB,EAAAC,EAAAE,EAAAtB,GAAA0B,GAAA,OAAAzB,EAAA6F,oBAAA1E,GAAAQ,EAAAA,EAAAmD,OAAAb,MAAA,SAAA/C,GAAA,OAAAA,EAAAiD,KAAAjD,EAAAM,MAAAG,EAAAmD,MAAA,KAAApB,EAAAD,GAAAxB,EAAAwB,EAAA1B,EAAA,aAAAE,EAAAwB,EAAA9B,GAAA,0BAAAM,EAAAwB,EAAA,qDAAAzD,EAAAG,KAAA,SAAAe,GAAA,IAAAlB,EAAAI,OAAAc,GAAAC,EAAA,WAAAE,KAAArB,EAAAmB,EAAAmE,KAAAjE,GAAA,OAAAF,EAAAmF,UAAA,SAAAxB,IAAA,KAAA3D,EAAAwE,QAAA,KAAAzE,EAAAC,EAAAoF,MAAA,GAAArF,KAAAlB,EAAA,OAAA8E,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,QAAAA,EAAAX,MAAA,EAAAW,CAAA,GAAA9E,EAAAwD,OAAAA,EAAAhB,EAAApB,UAAA,CAAA0E,YAAAtD,EAAAiD,MAAA,SAAAzF,GAAA,QAAAwG,KAAA,OAAA1B,KAAA,OAAAP,KAAA,KAAAC,MAAAtD,EAAA,KAAAiD,MAAA,OAAAE,SAAA,UAAAD,OAAA,YAAAzB,IAAAzB,EAAA,KAAAmE,WAAA1B,QAAA4B,IAAAvF,EAAA,QAAAmB,KAAA,WAAAA,EAAAsF,OAAA,IAAApF,EAAAuB,KAAA,KAAAzB,KAAAuE,OAAAvE,EAAAuF,MAAA,WAAAvF,GAAAD,EAAA,EAAAyF,KAAA,gBAAAxC,MAAA,MAAAjD,EAAA,KAAAmE,WAAA,GAAAG,WAAA,aAAAtE,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,YAAAiE,IAAA,EAAAnC,kBAAA,SAAAzE,GAAA,QAAAmE,KAAA,MAAAnE,EAAA,IAAAmB,EAAA,cAAA0F,EAAAxF,EAAAtB,GAAA,OAAA4B,EAAAhB,KAAA,QAAAgB,EAAAgB,IAAA3C,EAAAmB,EAAA2D,KAAAzD,EAAAtB,IAAAoB,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,KAAAnB,CAAA,SAAAA,EAAA,KAAAsF,WAAAM,OAAA,EAAA5F,GAAA,IAAAA,EAAA,KAAA0B,EAAA,KAAA4D,WAAAtF,GAAA4B,EAAAF,EAAA+D,WAAA,YAAA/D,EAAAwD,OAAA,OAAA4B,EAAA,UAAApF,EAAAwD,QAAA,KAAAuB,KAAA,KAAA3E,EAAAR,EAAAuB,KAAAnB,EAAA,YAAAM,EAAAV,EAAAuB,KAAAnB,EAAA,iBAAAI,GAAAE,EAAA,SAAAyE,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,WAAAsB,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,SAAAtD,GAAA,QAAA2E,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,YAAAnD,EAAA,MAAA9B,MAAA,kDAAAuG,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,KAAAT,OAAA,SAAAxD,EAAAlB,GAAA,QAAAmB,EAAA,KAAAkE,WAAAM,OAAA,EAAAxE,GAAA,IAAAA,EAAA,KAAApB,EAAA,KAAAsF,WAAAlE,GAAA,GAAApB,EAAAkF,QAAA,KAAAuB,MAAAnF,EAAAuB,KAAA7C,EAAA,oBAAAyG,KAAAzG,EAAAoF,WAAA,KAAA1D,EAAA1B,EAAA,OAAA0B,IAAA,UAAAP,GAAA,aAAAA,IAAAO,EAAAwD,QAAAjF,GAAAA,GAAAyB,EAAA0D,aAAA1D,EAAA,UAAAE,EAAAF,EAAAA,EAAA+D,WAAA,UAAA7D,EAAAhB,KAAAO,EAAAS,EAAAgB,IAAA3C,EAAAyB,GAAA,KAAA2C,OAAA,YAAAU,KAAArD,EAAA0D,WAAAlC,GAAA,KAAA6D,SAAAnF,EAAA,EAAAmF,SAAA,SAAA5F,EAAAlB,GAAA,aAAAkB,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,gBAAAzB,EAAAP,MAAA,aAAAO,EAAAP,KAAA,KAAAmE,KAAA5D,EAAAyB,IAAA,WAAAzB,EAAAP,MAAA,KAAAiG,KAAA,KAAAjE,IAAAzB,EAAAyB,IAAA,KAAAyB,OAAA,cAAAU,KAAA,kBAAA5D,EAAAP,MAAAX,IAAA,KAAA8E,KAAA9E,GAAAiD,CAAA,EAAA8D,OAAA,SAAA7F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAAgE,aAAAjE,EAAA,YAAA4F,SAAA3F,EAAAqE,WAAArE,EAAAiE,UAAAG,EAAApE,GAAA8B,CAAA,GAAA+D,MAAA,SAAA9F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAA8D,SAAA/D,EAAA,KAAAG,EAAAF,EAAAqE,WAAA,aAAAnE,EAAAV,KAAA,KAAAZ,EAAAsB,EAAAsB,IAAA4C,EAAApE,EAAA,QAAApB,CAAA,QAAAE,MAAA,0BAAAgH,cAAA,SAAAjH,EAAAmB,EAAAE,GAAA,YAAAgD,SAAA,CAAAzC,SAAA4B,EAAAxD,GAAA6E,WAAA1D,EAAA4D,QAAA1D,GAAA,cAAA+C,SAAA,KAAAzB,IAAAzB,GAAA+B,CAAA,GAAAjD,CAAA,UAAAkH,GAAA7F,EAAAH,EAAAlB,EAAAmB,EAAApB,EAAA4B,EAAAE,GAAA,QAAAJ,EAAAJ,EAAAM,GAAAE,GAAAE,EAAAN,EAAAD,KAAA,OAAAH,GAAA,YAAArB,EAAAqB,EAAA,CAAAI,EAAA0C,KAAAjD,EAAAa,GAAAsE,QAAAhG,QAAA0B,GAAAkC,KAAA9C,EAAApB,EAAA,UAAAgc,GAAA1a,GAAA,sBAAAH,EAAA,KAAAlB,EAAAyH,UAAA,WAAApB,SAAA,SAAAlF,EAAApB,GAAA,IAAA4B,EAAAN,EAAAkG,MAAArG,EAAAlB,GAAA,SAAA0K,EAAArJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,OAAAtJ,EAAA,UAAAsJ,EAAAtJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,QAAAtJ,EAAA,CAAAqJ,OAAA,gBAAAsR,GAAA7a,EAAAnB,GAAA,gBAAAmB,GAAA,GAAA8a,MAAAC,QAAA/a,GAAA,OAAAA,CAAA,CAAAgb,CAAAhb,IAAA,SAAAA,EAAA2B,GAAA,IAAA5B,EAAA,MAAAC,EAAA,yBAAAO,QAAAP,EAAAO,OAAAE,WAAAT,EAAA,uBAAAD,EAAA,KAAAlB,EAAAqB,EAAAI,EAAAM,EAAAJ,EAAA,GAAAoB,GAAA,EAAAhD,GAAA,SAAA0B,GAAAP,EAAAA,EAAA0B,KAAAzB,IAAA2D,KAAA,IAAAhC,EAAA,IAAA1C,OAAAc,KAAAA,EAAA,OAAA6B,GAAA,cAAAA,GAAA/C,EAAAyB,EAAAmB,KAAA1B,IAAAiD,QAAAxC,EAAA2D,KAAAtF,EAAAwB,OAAAG,EAAAgE,SAAA7C,GAAAC,GAAA,UAAA5B,GAAApB,GAAA,EAAAsB,EAAAF,CAAA,iBAAA4B,GAAA,MAAA7B,EAAAyD,SAAA5C,EAAAb,EAAAyD,SAAAvE,OAAA2B,KAAAA,GAAA,kBAAAhC,EAAA,MAAAsB,CAAA,SAAAM,CAAA,EAAAya,CAAAjb,EAAAnB,IAAA,SAAAmB,EAAAQ,GAAA,GAAAR,EAAA,qBAAAA,EAAA,OAAAkb,GAAAlb,EAAAQ,GAAA,IAAAT,EAAA,GAAA4O,SAAAlN,KAAAzB,GAAAuF,MAAA,uBAAAxF,GAAAC,EAAA2E,cAAA5E,EAAAC,EAAA2E,YAAAC,MAAA,QAAA7E,GAAA,QAAAA,EAAA+a,MAAAK,KAAAnb,GAAA,cAAAD,GAAA,2CAAA8Y,KAAA9Y,GAAAmb,GAAAlb,EAAAQ,QAAA,GAAA4a,CAAApb,EAAAnB,IAAA,qBAAA4E,UAAA,6IAAA4X,EAAA,UAAAH,GAAAlb,EAAAQ,IAAA,MAAAA,GAAAA,EAAAR,EAAAwE,UAAAhE,EAAAR,EAAAwE,QAAA,QAAA3F,EAAA,EAAAqB,EAAA4a,MAAAta,GAAA3B,EAAA2B,EAAA3B,IAAAqB,EAAArB,GAAAmB,EAAAnB,GAAA,OAAAqB,CAAA,CAuBA,IAyLA,GAzLuB,SAAHyH,GAwBd,IAvBJqc,EAAQrc,EAARqc,SACAmD,EAAexf,EAAfwf,gBACA3C,EAAW7c,EAAX6c,YACA4C,EAAQzf,EAARyf,SACAC,EAAS1f,EAAT0f,UACAC,EAAY3f,EAAZ2f,aACAC,EAAoB5f,EAApB4f,qBACAC,EAAc7f,EAAd6f,eACAC,EAAkB9f,EAAlB8f,mBACAC,EAAuB/f,EAAvB+f,wBACAC,EAAQhgB,EAARggB,SAcMlP,GAAOyF,EAAAA,GAAAA,KACJ0J,EAA6B/M,GAAjB1G,KAAiB,GAArB,GACH0T,EAAWlL,KAAjBnP,KACRsa,GAA4CpB,EAAAA,GAAAA,KAApCqB,EAAMD,EAANC,OAAQC,EAAOF,EAAPE,QAASC,EAAcH,EAAdG,eACnB1J,GAAehC,EAAAA,EAAAA,MACwD4B,EAAAtD,IAAfuD,EAAAA,EAAAA,WAAS,GAAM,GAAtE8J,EAAuB/J,EAAA,GAAEgK,EAA0BhK,EAAA,GAEpDiK,EACJd,IACEO,EAAOxS,QAAQE,MAAK,SAAC/U,EAAGgV,GAAC,OAAKhV,EAAEiV,WAAaD,EAAEC,UAAU,IAAE,IAC7D6R,EAAae,uBACbf,EAAagB,wBACbhB,EAAaxN,UAAUhD,MAAK,SAACjV,GAAC,OAAKA,EAAE0mB,cAAc,KACnDjB,EAAaxN,UAAUhD,MAAK,SAACjV,GAAC,OAAKA,EAAE0U,SAAS/R,OAAS,CAAC,IAS1D,IAPAgkB,EAAAA,EAAAA,YAAU,WACJN,IAA4BF,IDSH,SAC/BzJ,EACA7J,EACAqT,GAEA,IAAMU,EAzBe,SACrBV,GACG,IAAAW,EAAAC,EAAAC,EACGxS,EAUD,QAVMsS,EACRzpB,OAAOD,KAAK+oB,GACV7hB,QAAO,SAAC2iB,GAAK,OAAKd,EAAOc,GAAOvpB,KAAK,IACrChB,KACC,SAACsD,GAAC,OACAA,EAAEwU,MAAM,IAAI,WAKf,IAAAsS,EAAAA,EAAI,GACT,MAAO,CACLnS,YAAqD,QAA3CoS,EAACvS,EAAMd,MAAK,SAACzT,GAAC,OAAKA,EAAE,KAAO+T,EAAc,WAAC,IAAA+S,EAAAA,EAAI,IAAI,GAC7DG,OAA+C,QAAxCF,EAACxS,EAAMd,MAAK,SAACzT,GAAC,OAAKA,EAAE,KAAO6T,EAAW,WAAC,IAAAkT,EAAAA,EAAI,IAAI,GAE3D,CAOkBG,CAAehB,GAE3BU,EAAQlS,SA9Ca,SAAHyS,EAEtBtU,EACArG,GACG,IAAA4a,EAAApO,GAAAmO,EAAA,GAHFzK,EAAY0K,EAAA,GAAEjC,EAAeiC,EAAA,GAIxBH,EAAQpU,EAAQW,QAAQC,MAAK,SAACpV,GAAC,OACnCA,EAAE4Z,UAAUhD,MAAK,SAACjV,GAAC,OAAKA,EAAE0U,SAASO,MAAK,SAACoS,GAAG,OAAKA,EAAIzqB,KAAO4P,CAAU,GAAC,GAAC,IAE1E0Y,GACE,CAACxI,EAAcyI,GACf8B,EAAOrqB,GACP8mB,GAAWD,GAAqBjX,GAEpC,CAkCI8a,CAAmB5K,EAAc7J,GAAU+T,EAAQlS,UAIjDkS,EAAQK,OACV/B,GAAgBxI,GAAekK,EAAQK,OAAO,EAElD,CCvBMM,CAAkB7K,EAAcsJ,EAAQE,GACxCI,GAA2B,GAE/B,GAAG,CAACJ,EAAQF,EAAQG,EAASzJ,EAAc2J,IAEvClE,GAAaoD,IAAaD,EAAkB,OAAO,KAEvD,IAAMkC,EAAkB,eAAA/G,EAAA1H,GAAA9a,KAAA+E,MAAG,SAAA+C,IAAA,OAAA9H,KAAAoB,MAAA,SAAAkH,GAAA,cAAAA,EAAA/C,KAAA+C,EAAAzE,MAAA,cAAAyE,EAAAzE,KAAA,EACnBgkB,GAAS,GAAK,OACpBC,EAAS,CAAEpoB,KAAM,qBAAsBwU,SAAS,IAE3CiU,IAGHE,GAA2B,IAF3B9gB,EAAAA,GAAAA,IAAKmgB,GAGN,wBAAApf,EAAA5C,OAAA,GAAAoC,EAAA,KACF,kBATuB,OAAA0a,EAAAlc,MAAA,KAAAE,UAAA,KAWlBgjB,EAAe,eAAAN,EAAApO,GAAA9a,KAAA+E,MAAG,SAAA0kB,IAAA,IAAAC,EAAA,OAAA1pB,KAAAoB,MAAA,SAAAuoB,GAAA,cAAAA,EAAApkB,KAAAokB,EAAA9lB,MAAA,cAAA8lB,EAAA9lB,KAAA,EAChBgkB,GAAS,GAAK,OACpBC,EAAS,CAAEpoB,KAAM,qBAAsBwU,SAAS,IAE1CwV,EAA0BlC,EAAaxN,UAC1C5Q,SAAQ,SAACrH,GAAC,OAAKA,EAAE0U,QAAQ,IACzBjY,KAAI,SAACorB,GAAE,OAAK7T,GAAkB6T,EAAGjrB,GAAI,GAAgC,IAGrEwpB,EACEhpB,OAAOD,KAAK+oB,GAAuC7hB,QAClD,SAAC2iB,GAAa,OAGL,IAFPA,EAAMngB,QACJiN,GAAe2R,EAAa7oB,GAAI,MAElC+qB,EAAwB1S,MAAK,SAACrY,GAAE,OAA4B,IAAvBoqB,EAAMngB,QAAQjK,EAAU,GAAC,KAMpE0pB,GAA2B,GAF3BpB,GAAgBxI,EAAc8I,EAAU5oB,IAGzC,wBAAAgrB,EAAAjkB,OAAA,GAAA+jB,EAAA,KACF,kBAvBoB,OAAAP,EAAA5iB,MAAA,KAAAE,UAAA,KAyBfqjB,EAAe,eAAAV,EAAArO,GAAA9a,KAAA+E,MAAG,SAAA+kB,IAAA,OAAA9pB,KAAAoB,MAAA,SAAA2oB,GAAA,cAAAA,EAAAxkB,KAAAwkB,EAAAlmB,MAAA,cAAAkmB,EAAAlmB,KAAA,EAChBgkB,GAAS,GAAK,QACpBtgB,EAAAA,GAAAA,IAAKogB,GAAoB,wBAAAoC,EAAArkB,OAAA,GAAAokB,EAAA,KAC1B,kBAHoB,OAAAX,EAAA7iB,MAAA,KAAAE,UAAA,KAKfwjB,EAAoB,eAAAC,EAAAnP,GAAA9a,KAAA+E,MAAG,SAAAmlB,IAAA,OAAAlqB,KAAAoB,MAAA,SAAA+oB,GAAA,cAAAA,EAAA5kB,KAAA4kB,EAAAtmB,MAAA,cAAAsmB,EAAAtmB,KAAA,EACrBgkB,GAAS,GAAK,QACpBtgB,EAAAA,GAAAA,IAAKqgB,GAAyB,wBAAAuC,EAAAzkB,OAAA,GAAAwkB,EAAA,KAC/B,kBAHyB,OAAAD,EAAA3jB,MAAA,KAAAE,UAAA,KAKtB4jB,GACF5V,EAAAA,GAAAA,KAACsQ,GAAAA,EAAM,CACLvC,MAAM,KACN9C,UAAU,4DACVsF,UAAWL,GAAe4C,EAC1B/H,QAASgK,EAAmBhV,UAE5BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,yBAIrB8oB,GAAwBF,EAAU5oB,KAAO6oB,EAAa7oB,KACxDyrB,GACE5M,EAAAA,GAAAA,MAACsH,GAAAA,EAAM,CACLrF,UAAU,4DACVsF,SAAUuC,EACV/H,QAASiK,EAAgBjV,SAAA,EAEzBC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,gCACrB6V,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAAClkB,KAAK,OAAOmkB,KAAK,mBAAmBC,UAAU,cAK1D,IAAMuG,GAAcC,EAAAA,GAAAA,GAAI,CACtB,eAAgBhC,EAChB,eAAgBA,EAChB,aAAcA,EACd,qBAAsBA,IAGxB,OACE9K,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,kDAAiDlL,SAAA,CAC7D+T,GACC9K,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,uCAAsClL,SAAA,CAClD6V,GACD5V,EAAAA,GAAAA,KAACsQ,GAAAA,EAAM,CACLrF,UAAU,uBACVsF,UAAWL,GAAe4C,EAC1B/H,QAASsK,EAAgBtV,UAEzBC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,8BAEvB6V,EAAAA,GAAAA,KAACsQ,GAAAA,EAAM,CACLrF,UAAU,uBACVsF,UAAWL,GAAe4C,EAC1B/H,QAASyK,EAAqBzV,UAE9BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,mCAEvB6V,EAAAA,GAAAA,KAAC+V,GAAAA,EAAO,CACNxF,UAAWL,GAAe4C,EAC1B7H,UAAU,iBACVjW,QAASmP,EAAKK,cAAc,CAAEra,GAAI,0BAA2B4V,UAE7DC,EAAAA,GAAAA,KAACgP,GAAAA,EAAU,CACT5E,KAAMjK,GAAOC,QAAQmT,EAAOppB,IAC5B,aAAYga,EAAKK,cAAc,CAAEra,GAAI,0BACrC8gB,UAAU,uBACVsF,UAAWL,GAAe4C,EAAS/S,SAElC,SAACmP,GAAK,OACLlP,EAAAA,GAAAA,KAACiO,EAAAA,GAAIlc,GAAAA,GAAA,GACCmd,GAAK,IACThB,GAAIgB,EAAM9E,KACVI,IAAI,sBACJF,OAAO,SAAQvK,UAEfC,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAAClkB,KAAK,QAAQmkB,KAAK,WACnB,SAKb,MACJrP,EAAAA,GAAAA,KAAA,OAAKiL,UAAW4K,EAAY9V,SACxBkT,GAAwBF,EAAU5oB,KAAO6oB,EAAa7oB,GAQpD,MAPF6e,EAAAA,GAAAA,MAACsH,GAAAA,EAAM,CACLrF,UAAU,uBACVF,QAAS,WAAF,OAAQ0H,GAAgBxI,EAAc8I,EAAU5oB,GAAG,EAAC4V,SAAA,EAE3DC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,2BACrB6V,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAAClkB,KAAK,OAAOmkB,KAAK,mBAAmBC,UAAU,iBAMhE,sCChLA,GA5BqB,SAAHjc,GAQZ,IAPJ0M,EAAQ1M,EAAR0M,SACAkL,EAAS5X,EAAT4X,UACA+K,EAAc3iB,EAAd2iB,eAMA,IAAKA,EAAgB,OAAOjW,GAAY,KAExC,IAAMkW,GAAoBH,EAAAA,GAAAA,GACxB,CACEI,cAAc,GAEhBjL,GAGF,OACEjC,EAAAA,GAAAA,MAAA,QAAMiC,UAAWgL,EAAkBlW,SAAA,CAChCA,EACAiW,GACChW,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAACnE,UAAU,oBAAoBoE,KAAK,YACvC,OAGV,ECyGA,GAlH2B,SAAHhc,GAYlB,IAAA8iB,EAAAC,EAAAC,EAXJlG,EAAQ9c,EAAR8c,SACAmG,EAAYjjB,EAAZijB,aACAzD,EAAexf,EAAfwf,gBACA1oB,EAAEkJ,EAAFlJ,GACAosB,EAAQljB,EAARkjB,SAQclW,EAAckI,KAApBrP,KAQHsd,GANHpE,EAAAA,GAAAA,KADMqB,OASJgD,EAAU,qBACVC,EAAU,qBACVH,IACFE,EAAU,6BACVC,EAAU,8BAGZ,IAAMnC,EAIL,QAJU4B,QAhBG,IAAAK,EAAG,CAAC,EAACA,GAiBjBD,EACIlV,GAAelX,EAAI,oBACnBoX,GAAkBpX,EAAI,kCAC3B,IAAAgsB,EAAAA,EAAI,CACHpqB,MAAOwqB,EACHlW,SAAgD,QAAvC+V,EAAT/V,EAAWU,QAAQC,MAAK,SAACpV,GAAC,OAAKA,EAAEiV,UAAY1W,CAAE,WAAC,IAAAisB,OAAA,EAAhDA,EAAkD1R,iBAClDrE,SAAoD,QAA3CgW,EAAThW,EAAW4B,SAASjB,MAAK,SAACzT,GAAC,OAAKA,EAAEiU,aAAerX,CAAE,WAAC,IAAAksB,OAAA,EAApDA,EACI7S,wBAGV,IAAKqP,GAAmB1C,EAAU,CAChC,IAAIwG,EAAwBpC,EAAMxoB,MAClC,OAAI4qB,IAASza,EAAuBkG,WAAmB,MACnDuU,IAASza,EAAuB0a,eAClCD,GAAO3W,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,6BAC1BwsB,IAASza,EAAuB2a,UAClCF,GACE3N,EAAAA,GAAAA,MAAA,QAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAACC,KAAK,OAAOnkB,KAAK,QAAQokB,UAAU,YACzCtP,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAIssB,QAIxBE,IAASza,EAAuB4a,UAClCH,GACE3N,EAAAA,GAAAA,MAAA,QAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAACC,KAAK,QAAQnkB,KAAK,QAAQokB,UAAU,YAC1CtP,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAIusB,SAIrB1W,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,oCAAmClL,SAAE4W,IAC7D,CACA,IAAMd,GAAcC,EAAAA,GAAAA,GAAI,CACtB,mBAAmB,EACnB,yBAA0BvB,EAAMvpB,QAE5B+rB,EAAS,SAACC,EAA6BC,GAC3C,IAAMC,EAAS3C,EAAMxoB,QAAUirB,EAC/B,OACEhX,EAAAA,GAAAA,KAACsQ,GAAAA,EAAM,CACLrF,UAAW4K,EACXqB,OAAQA,EACR3G,SAAUJ,EACVpF,QAAS,WACPwJ,EAAMzD,SAASoG,EAAShb,EAAuBkG,WAAa4U,EAC9D,EAAEjX,SAEDkX,GAGP,EAEA,OACEjX,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gBAAelL,UAC5BC,EAAAA,GAAAA,KAACkW,GAAY,CAACF,eAAgBM,EAAavW,UACzCC,EAAAA,GAAAA,KAAC+V,GAAAA,EAAO,CACN/gB,QAASuf,EAAMvf,QACfmiB,SAAS,MACTC,MAAM,OACN7G,UAAWgE,EAAMvpB,MACjBqsB,YAAU,EAAAtX,UAEViJ,EAAAA,GAAAA,MAACsO,GAAAA,EAAW,CAACrM,UAAU,mBAAkBlL,SAAA,CACtCgX,EACC7a,EAAuB2a,SACvB7W,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAIssB,KAEvBM,EACC7a,EAAuB4a,SACvB9W,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAIusB,KAEvBK,EACC7a,EAAuB0a,cACvB5W,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,qCAOnC,ECxBA,GA9FkB,SAAHkJ,GAUT,IAAAkkB,EAAAlB,EATJlsB,EAAEkJ,EAAFlJ,GACAgmB,EAAQ9c,EAAR8c,SACAmG,EAAYjjB,EAAZijB,aACAzD,EAAexf,EAAfwf,gBAOcxS,EAAckI,KAApBrP,KAEgEsd,GAAtEpE,EAAAA,GAAAA,KADMqB,OAGFc,EAA8C,QAAzCgD,QAHG,IAAAf,EAAG,CAAC,EAACA,GAGEjV,GAAkBpX,EAAI,iBAAS,IAAAotB,EAAAA,EAAI,CACtDxrB,MAAOsU,SAAoD,QAA3CgW,EAAThW,EAAW4B,SAASjB,MAAK,SAACzT,GAAC,OAAKA,EAAEiU,aAAerX,CAAE,WAAC,IAAAksB,OAAA,EAApDA,EAAsD5S,OAG/D,IAAKoP,GAAmB1C,EAAU,CAChC,IAAIwG,EAAwBpC,EAAMxoB,MAClC,OAAI4qB,IAASxa,EAAMiG,WAAmB,MAClCuU,IAASxa,EAAMqb,UACjBb,GAAO3W,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,wBAC1BwsB,IAASxa,EAAMsb,KACjBd,GACE3N,EAAAA,GAAAA,MAAA,QAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAACC,KAAK,QAAQnkB,KAAK,QAAQokB,UAAU,YAC1CtP,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,sBAIvBwsB,IAASxa,EAAMub,MACjBf,GACE3N,EAAAA,GAAAA,MAAA,QAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAACC,KAAK,QAAQnkB,KAAK,QAAQokB,UAAU,YAC1CtP,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,wBAIpB6V,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,oCAAmClL,SAAE4W,IAC7D,CAEA,IAAMd,GAAcC,EAAAA,GAAAA,GAAI,CACtB,mBAAmB,EACnB,yBAA0BvB,EAAMvpB,QAE5B+rB,EAAS,SAACC,EAAY3H,EAAwB4H,GAClD,IAAMU,EAActI,GAClBrP,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAACC,KAAMA,EAAMnkB,KAAK,QAAQokB,UAAU,WACvC,KACE4H,EAAS3C,EAAMxoB,QAAUirB,EAC/B,OACEhO,EAAAA,GAAAA,MAACsH,GAAAA,EAAM,CACLrF,UAAW4K,EACXqB,OAAQA,EACR3G,SAAUJ,EACVpF,QAAS,WAAF,OAAQwJ,EAAMzD,SAASoG,EAAS/a,EAAMiG,WAAa4U,EAAI,EAACjX,SAAA,CAE9D4X,EACAV,IAGP,EAEA,OACEjX,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gBAAelL,UAC5BC,EAAAA,GAAAA,KAACkW,GAAY,CAACF,eAAgBM,EAAavW,UACzCC,EAAAA,GAAAA,KAAC+V,GAAAA,EAAO,CACN/gB,QAASuf,EAAMvf,QACfmiB,SAAS,MACTC,MAAM,OACN7G,UAAWgE,EAAMvpB,MACjBqsB,YAAU,EAAAtX,UAEViJ,EAAAA,GAAAA,MAACsO,GAAAA,EAAW,CAACrM,UAAU,mBAAkBlL,SAAA,CACtCgX,EAAO5a,EAAMsb,GAAI,SAASzX,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,mBAC/C4sB,EACC5a,EAAMub,IACN,SACA1X,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,oBAEtB4sB,EACC5a,EAAMqb,QACN,MACAxX,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,gCAOnC,ECAA,GA1FsB,SAAHkJ,GAUb,IAAAkkB,EAAAlB,EATJlsB,EAAEkJ,EAAFlJ,GACAgmB,EAAQ9c,EAAR8c,SACAmG,EAAYjjB,EAAZijB,aACAzD,EAAexf,EAAfwf,gBAOcxS,EAAckI,KAApBrP,KAEoEsd,GAA1EpE,EAAAA,GAAAA,KADMqB,OAGFc,EAAkD,QAA7CgD,QAHG,IAAAf,EAAG,CAAC,EAACA,GAGEjV,GAAkBpX,EAAI,qBAAa,IAAAotB,EAAAA,EAAI,CAC1DxrB,MAAOsU,SAAoD,QAA3CgW,EAAThW,EAAW4B,SAASjB,MAAK,SAACzT,GAAC,OAAKA,EAAEiU,aAAerX,CAAE,WAAC,IAAAksB,OAAA,EAApDA,EAAsD3S,WAG/D,IAAKmP,GAAmB1C,EAAU,CAChC,IAAIwG,EAAwBpC,EAAMxoB,MAClC,OAAI4qB,IAASva,EAAUgG,WAAmB,MACtCuU,IAASva,EAAUwa,eACrBD,GAAO3W,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,6BAC1BwsB,IAASva,EAAUwb,WACrBjB,GAAO3W,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,yBAC1BwsB,IAASva,EAAUyb,aACrBlB,GAAO3W,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,2BAC1BwsB,IAASva,EAAU0b,cACrBnB,GAAO3W,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,4BAC1BwsB,IAASva,EAAU2b,YACrBpB,GAAO3W,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,2BACvB6V,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,oCAAmClL,SAAE4W,IAC7D,CACA,IAAMd,GAAcC,EAAAA,GAAAA,GAAI,CACtB,mBAAmB,EACnB,yBAA0BvB,EAAMvpB,QAE5B+rB,EAAS,SAACC,EAAgBC,GAC9B,IAAMC,EAAS3C,EAAMxoB,QAAUirB,EAC/B,OACEhX,EAAAA,GAAAA,KAACsQ,GAAAA,EAAM,CACLrF,UAAW4K,EACXqB,OAAQA,EACR3G,SAAUJ,EACVpF,QAAS,WAAF,OAAQwJ,EAAMzD,SAASoG,EAAS9a,EAAUgG,WAAa4U,EAAI,EAACjX,SAElEkX,GAGP,EAEA,OACEjX,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gBAAelL,UAC5BC,EAAAA,GAAAA,KAACkW,GAAY,CAACF,eAAgBM,EAAavW,UACzCC,EAAAA,GAAAA,KAAC+V,GAAAA,EAAO,CACN/gB,QAASuf,EAAMvf,QACfmiB,SAAS,MACTC,MAAM,OACN7G,UAAWgE,EAAMvpB,MACjBqsB,YAAU,EAAAtX,UAEViJ,EAAAA,GAAAA,MAACsO,GAAAA,EAAW,CAACrM,UAAU,mBAAkBlL,SAAA,CACtCgX,EACC3a,EAAUwb,UACV5X,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,yBAEtB4sB,EACC3a,EAAUyb,YACV7X,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,2BAEtB4sB,EACC3a,EAAUwa,cACV5W,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,6BAEtB4sB,EACC3a,EAAU0b,aACV9X,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,4BAEtB4sB,EACC3a,EAAU2b,WACV/X,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,kCAOnC,0BCAA,GA7FuB,SAAHkJ,GAwBd,IAvBJlJ,EAAEkJ,EAAFlJ,GACA6tB,EAAU3kB,EAAV2kB,WACAC,EAAQ5kB,EAAR4kB,SACA/S,EAAgB7R,EAAhB6R,iBACAgT,EAAc7kB,EAAd6kB,eACAltB,EAAKqI,EAALrI,MACAulB,EAAQld,EAARkd,SACA+F,EAAYjjB,EAAZijB,aACAprB,EAAImI,EAAJnI,KACA8J,EAAO3B,EAAP2B,QACA8b,EAAQzd,EAARyd,SAcM3M,GAAOyF,EAAAA,GAAAA,KACPuO,EAAYntB,IAAUulB,EACtB6H,EAAWptB,GAASitB,IAAYI,EAAAA,GAAAA,IAAQnT,GACxC3G,EAASoJ,KAET2Q,EACK,aAATptB,GACE8U,EAAAA,GAAAA,KAAC4Q,GAAAA,EAAQ,CACPG,QAASkH,EACT3nB,KAAI,uBAAA2O,OAAyB9U,GAC7B0mB,MACEmH,EAAWO,eACPpU,EAAKK,cAAc,CAAEra,GAAI,qBACzBqU,GAAkBwZ,EAAWnG,OAAQtT,GAE3CgS,SAAUA,EACVvlB,MAAOmtB,EACPrH,SAAU,WAAF,OAAQA,GAAUmH,EAAU/S,EAAiB,EACrD+F,UAAU,6BAGZjL,EAAAA,GAAAA,KAACwY,GAAAA,EAAK,CACJzH,QAASkH,EACT3nB,KAAI,oBAAA2O,OAAsB9U,GAC1B0mB,MACEmH,EAAWO,eACPpU,EAAKK,cAAc,CAAEra,GAAI,qBACzBqU,GAAkBwZ,EAAWnG,OAAQtT,GAE3CgS,SAAUA,EACVvlB,MAAOmtB,EACPrH,SAAU,WAAF,OAAQA,GAAUmH,EAAU/S,EAAiB,EACrD+F,UAAU,yBAIVwN,GAAsB3C,EAAAA,GAAAA,GAAI,CAC9B4C,gBAAgB,EAChB,6BAA8BpC,GAA0C,IAA1B4B,EAAehoB,SAGzDyoB,GAA2B7C,EAAAA,GAAAA,GAAI,CACnC,wBAAwB,EACxB,qCAAsCkC,EAAWO,iBAGnD,OACEvP,EAAAA,GAAAA,MAAA,OAAKiC,UAAWwN,EAAoB1Y,SAAA,EAClCC,EAAAA,GAAAA,KAAA,OAAKiL,UAAW0N,EAAyB5Y,SAAEuY,IAC1CN,EAAWO,gBACVvY,EAAAA,GAAAA,KAAC4Y,GAAAA,EAAK,CACJ,aAAYzU,EAAKK,cAAc,CAAEra,GAAI,0BACrComB,SAAUA,EACVxkB,MAAOmZ,EACP+F,UAAU,oEACV4N,QAAS,WAAF,OAAQ/H,GAAS,EAAM5L,EAAiB,EAC/C4L,SAAU,SAACvmB,GAAC,OAAKumB,EAASmH,EAAU1tB,EAAE+f,OAAOve,MAAM,EACnDf,MAAOotB,EACPpjB,QAASA,IAET,KACuB,IAA1BkjB,EAAehoB,QACd8P,EAAAA,GAAAA,KAACkW,GAAY,CAACF,eAAgBM,IAC5B,OAGV,ECoCA,GA1HgB,SAAHjjB,GAYP,IAAAkkB,EAAAlB,EAXJyC,EAAOzlB,EAAPylB,QACA3uB,EAAEkJ,EAAFlJ,GACAgmB,EAAQ9c,EAAR8c,SACAmG,EAAYjjB,EAAZijB,aACAzD,EAAexf,EAAfwf,gBAQcxS,EAAckI,KAApBrP,KACAgf,EAAmBY,EAAnBZ,eAQH1B,GALHpE,EAAAA,GAAAA,KADMqB,OAQFc,EAA+D,QAA1DgD,QARG,IAAAf,EAAG,CAAC,EAACA,GAQEjV,GAAkBpX,EAAI,kCAA0B,IAAAotB,EAAAA,EAAI,CACvExrB,MAAOsU,SAAoD,QAA3CgW,EAAThW,EAAW4B,SAASjB,MAAK,SAACzT,GAAC,OAAKA,EAAEiU,aAAerX,CAAE,WAAC,IAAAksB,OAAA,EAApDA,EACH1S,wBAGAoV,EAAYD,EAAQZ,eAC1B,IAAKrF,GAAmB1C,IAAa4I,EACnC,OACE/P,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,oCAAmClL,SAAA,EAChDC,EAAAA,GAAAA,KAAA,OAAAD,UACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,oCAEvB6V,EAAAA,GAAAA,KAAA,MAAIiL,UAAU,YAAWlL,UACvBC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,2CAM7B,IAkBM6uB,EAASd,EAAeluB,KAAI,SAACguB,GAAe,IAAAiB,EAC1CC,EAAY3E,EAAMxoB,MAAMiV,MAC5B,SAACyB,GAAI,OAAKA,EAAKwC,mBAAqB+S,EAAW7tB,EAAE,IAE7CwsB,GACJuC,aAAS,EAATA,EAAWhU,oBACwD,QADxC+T,EAC3B1E,EAAMxoB,MAAMiV,MAAK,SAACyB,GAAI,OAAKA,EAAKwC,mBAAqB+S,EAAW7tB,EAAE,WAAC,IAAA8uB,OAAA,EAAnEA,EACI/T,kBAEN,OACElF,EAAAA,GAAAA,KAAC0Y,GAAc,CAEbvuB,GAAI6tB,EAAW7tB,GACfe,KAAK,QACLga,iBAAkByR,QAAAA,EAAQ,GAC1BL,aAAcA,EACd0B,WAAYA,EACZE,eAAgBA,EAChBltB,MAAOupB,EAAMvpB,MACbgK,QAASuf,EAAMvf,QACfub,SAAUJ,EACV8H,WAAYiB,EACZpI,SAAU,SAACmH,EAAUkB,GAAY,OAxCnB,SAClBlU,EACAgT,EACAkB,GAEA5E,EAAMzD,SACJmH,EACI,CACE,CACEvV,WAAW,EACXwC,iBAAkBiU,EAClBlU,iBAAAA,IAGJ,GAER,CAyBQmU,CAAYpB,EAAW7tB,GAAI8tB,EAAUkB,EAAa,GAZ/CnB,EAAW7tB,GAgBtB,IAEMkvB,GAAavD,EAAAA,GAAAA,GAAI,CACrB,gBAAiBkD,EAAO9oB,OAAS,IAGnC,OACE8P,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gBAAelL,UAC5BiJ,EAAAA,GAAAA,MAAC+M,GAAAA,EAAO,CACN9K,UAAU,WACVjW,QAASuf,EAAMvf,QACfoiB,MAAM,OACND,SAAS,SACT5G,UACGgE,EAAMvpB,OACPktB,EACGtmB,QAAO,SAAC0nB,GAAE,OACT/E,EAAMxoB,MAAMiV,MAAK,SAACyB,GAAI,OAAKA,EAAKwC,mBAAqBqU,EAAGnvB,EAAE,GAAC,IAE5DqY,MAAK,SAAC8W,GAAE,OAAKA,EAAGf,cAAc,IAEnClB,YAAU,EAAAtX,SAAA,CAETiZ,EAAO9oB,OAAS,GACf8P,EAAAA,GAAAA,KAACkW,GAAY,CAACF,eAAgBM,EAAavW,UACzCC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,mCAErB,MACJ6V,EAAAA,GAAAA,KAAA,OAAKiL,UAAWoO,EAAWtZ,SAAEiZ,QAIrC,yGCxHA,IA8HA,GA9HkB,SAAH3lB,GAYT,IAAAkkB,EAAAlB,EAXJ3T,EAASrP,EAATqP,UACAvY,EAAEkJ,EAAFlJ,GACAgmB,EAAQ9c,EAAR8c,SACAmG,EAAYjjB,EAAZijB,aACAzD,EAAexf,EAAfwf,gBAQcxS,EAAckI,KAApBrP,KACAgf,EAAmBxV,EAAnBwV,eAQH1B,GALHpE,EAAAA,GAAAA,KADMqB,OAQFc,EAA+D,QAA1DgD,QARG,IAAAf,EAAG,CAAC,EAACA,GAQEjV,GAAkBpX,EAAI,kCAA0B,IAAAotB,EAAAA,EAAI,CACvExrB,MAAOsU,SAAoD,QAA3CgW,EAAThW,EAAW4B,SAASjB,MAAK,SAACzT,GAAC,OAAKA,EAAEiU,aAAerX,CAAE,WAAC,IAAAksB,OAAA,EAApDA,EACH1S,wBAGA4V,EAAchF,EAAMxoB,MAAMytB,OAAM,SAAC/W,GAAI,OAAwB,IAAnBA,EAAKC,SAAmB,IACxE,IAAKmQ,GAAmB1C,GAAYoJ,EAClC,OACEvQ,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,oCAAmClL,SAAA,EAChDC,EAAAA,GAAAA,KAAA,OAAAD,UACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,8CAEvB6V,EAAAA,GAAAA,KAAA,MAAIiL,UAAU,YAAWlL,UACvBC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,2CAM7B,IAsBMsvB,EAAavB,EAAeluB,KAAI,SAACguB,GAAe,IAAAiB,EAC9CC,EAAY3E,EAAMxoB,MAAMiV,MAC5B,SAACyB,GAAI,OAAKA,EAAKwC,mBAAqB+S,EAAW7tB,EAAE,IAE7CwsB,GACJuC,aAAS,EAATA,EAAWhU,oBACwD,QADxC+T,EAC3B1E,EAAMxoB,MAAMiV,MAAK,SAACyB,GAAI,OAAKA,EAAKwC,mBAAqB+S,EAAW7tB,EAAE,WAAC,IAAA8uB,OAAA,EAAnEA,EACI/T,kBAEN,OACElF,EAAAA,GAAAA,KAAC0Y,GAAc,CAEbvuB,GAAI6tB,EAAW7tB,GACfe,KAAK,WACLga,iBAAkByR,QAAAA,EAAQ,GAC1BL,aAAcA,EACd0B,WAAYA,EACZE,eAAgBA,EAChBltB,MAAOupB,EAAMvpB,MACbgK,QAASuf,EAAMvf,QACfub,SAAUJ,EACV8H,WAAYiB,EACZpI,SAAU,SAACmH,EAAUkB,GAAY,OA5CnB,SAClBlU,EACAgT,EACAkB,GAEA,MAAMO,EAAYnF,EAAMxoB,MAAM6F,QAC5B,SAAC+nB,GAAG,OAAKA,EAAI1U,mBAAqBA,CAAgB,IAEpDsP,EAAMzD,SACJmH,EAAQ,GAAAhZ,uDAECya,wjBAAS,CACZ,CACEhX,WAAW,EACXwC,iBAAkBiU,EAClBlU,iBAAAA,KAGJyU,EAER,CAyBQN,CAAYpB,EAAW7tB,GAAI8tB,EAAUkB,EAAa,GAZ/CnB,EAAW7tB,GAgBtB,IAEMyvB,GAAgB9D,EAAAA,GAAAA,GAAI,CACxB,gBAAiB2D,EAAWvpB,OAAS,IAGvC,OACE8P,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gBAAelL,UAC5BiJ,EAAAA,GAAAA,MAAC+M,GAAAA,EAAO,CACN9K,UAAU,WACVjW,QAASuf,EAAMvf,QACfoiB,MAAM,OACND,SAAS,SACT5G,UACGgE,EAAMvpB,OACPktB,EACGtmB,QAAO,SAAC0nB,GAAE,OACT/E,EAAMxoB,MAAMiV,MAAK,SAACyB,GAAI,OAAKA,EAAKwC,mBAAqBqU,EAAGnvB,EAAE,GAAC,IAE5DqY,MAAK,SAAC8W,GAAE,OAAKA,EAAGf,cAAc,IAEnClB,YAAU,EAAAtX,SAAA,CAET0Z,EAAWvpB,OAAS,GACnB8P,EAAAA,GAAAA,KAACkW,GAAY,CAACF,eAAgBM,EAAavW,UACzCC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,6CAErB,MACJ6V,EAAAA,GAAAA,KAAA,OAAKiL,UAAW2O,EAAc7Z,SAAE0Z,QAIxC,4sCC/HA,IA0DA,GA1DoB,SAAHpmB,GAUX,IAAAkkB,EAAAlB,EATJlsB,EAAEkJ,EAAFlJ,GACAgmB,EAAQ9c,EAAR8c,SACAmG,EAAYjjB,EAAZijB,aACAzD,EAAexf,EAAfwf,gBAOcxS,EAAckI,KAApBrP,KAEkEsd,GAAxEpE,EAAAA,GAAAA,KADMqB,OAGFc,EAAgD,QAA3CgD,QAHG,IAAAf,EAAG,CAAC,EAACA,GAGEjV,GAAkBpX,EAAI,mBAAW,IAAAotB,EAAAA,EAAI,CACxDxrB,MAAOsU,SAAoD,QAA3CgW,EAAThW,EAAW4B,SAASjB,MAAK,SAACzT,GAAC,OAAKA,EAAEiU,aAAerX,CAAE,WAAC,IAAAksB,OAAA,EAApDA,EAAsDvS,SAG/D,OAAK+O,GAAmB1C,EAClBoE,EAAMxoB,OACDiU,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gBAAelL,SAAEwU,EAAMxoB,SAG7CiU,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,sCAAqClL,UAClDC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,oCAMzB6V,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gBAAelL,UAC5BC,EAAAA,GAAAA,KAACkW,GAAY,CAACF,eAAgBM,EAAavW,UACzCC,EAAAA,GAAAA,KAAC6Z,GAAAA,EAAa9nB,GAAAA,GAAA,GACRwiB,GAAK,IACT,aAAW,UACXtJ,UAAU,kCACVsF,SAAUJ,EACVpkB,MAAK,GAAAkT,OAAKsV,EAAMxoB,OAChB+kB,SAAU,SAACvmB,GACL2Y,GAAa4W,SAASvvB,EAAG,MAAQA,IAAM,GAAL0U,OAAQsV,EAAMxoB,QAClDwoB,EAAMzD,UAASuH,EAAAA,GAAAA,IAAQ9tB,QAAKwK,EAAY+kB,SAASvvB,EAAG,IAExD,EACAwvB,OAAQ,SAACxvB,GACH2Y,GAAa4W,SAASvvB,EAAG,MAAQA,IAAM,GAAL0U,OAAQsV,EAAMxoB,QAClDwoB,EAAMwF,QAAO1B,EAAAA,GAAAA,IAAQ9tB,QAAKwK,EAAY+kB,SAASvvB,EAAG,IAEtD,EACAyvB,aAAc,GACdC,cAAc,EACdC,eAAe,QAKzB,4tEC/CA,IAiIA,GAjIsB,SAAH7mB,GAYb,IAAA8mB,EAXJhwB,EAAEkJ,EAAFlJ,GACAgmB,EAAQ9c,EAAR8c,SACAmG,EAAYjjB,EAAZijB,aACAzD,EAAexf,EAAfwf,gBACA3nB,EAAImI,EAAJnI,KAQcmV,EAAckI,KAApBrP,KACD8S,EAA2BzF,IAAjB0B,EAAAA,EAAAA,MAAiB,GAArB,GACP9D,GAAOyF,EAAAA,GAAAA,KAG+D4M,GAA1EpE,EAAAA,GAAAA,KADMqB,OAAAA,OAAM,IAAA+C,EAAG,CAAC,EAACA,EAGbjC,GAAQ6F,EAAAA,EAAAA,UACZ,eAAA7C,EAAAlB,EAAA,OAC4C,QAD5CkB,EACE9D,EAAOlS,GAAkBpX,EAAI,qBAAa,IAAAotB,EAAAA,EAAI,CAC5CxrB,MAAOsU,SAAoD,QAA3CgW,EAAThW,EAAW4B,SAASjB,MAAK,SAACzT,GAAC,OAAKA,EAAEiU,aAAerX,CAAE,WAAC,IAAAksB,OAAA,EAApDA,EAAsDtS,UAC7D+M,SAAU,WAAF,OAAQ,IAAI,EACrB,GACH,CAAC2C,EAAQtpB,EAAIkW,aAAS,EAATA,EAAW4B,WAG2B4H,EAAAtD,IAA3BuD,EAAAA,EAAAA,UAAoB,QAAZqQ,EAAC5F,EAAMxoB,aAAK,IAAAouB,EAAAA,EAAI,IAAG,GAA9CpuB,EAAK8d,EAAA,GAAEwQ,EAAQxQ,EAAA,IAEtBqK,EAAAA,EAAAA,YAAU,WACiD,IAAAoG,EAArDtO,EAAO9X,IAAI,UAAYhJ,IAAS2Q,EAAc0e,OAChDhG,EAAMzD,SAA4B,QAApBwJ,EAACtO,EAAO9X,IAAI,gBAAQ,IAAAomB,EAAAA,EAAI,GAG1C,GAAG,KAEHpG,EAAAA,EAAAA,YAAU,WACJnoB,IAAUwoB,EAAMxoB,OACpBwoB,EAAMzD,SAAS/kB,EACjB,GAAG,CAACwoB,EAAOxoB,IAEX,IAAMyuB,GAAgB1E,EAAAA,GAAAA,GAAI,CACxB,kBAAkB,EAClB,sBAAsB,EACtB,2BAA4BvB,EAAMxoB,OAASwoB,EAAMxoB,MAAMmE,QAAU,GACjE,6BAA8BhF,IAAS2Q,EAAc4e,QAGjDC,GAAoB5E,EAAAA,GAAAA,GAAI,CAC5B,sBAAuBvB,EAAMxoB,OAASwoB,EAAMxoB,MAAMmE,QAAU,KAG9D,IAAK2iB,GAAmB1C,EACtB,OAAIoE,EAAMxoB,OACDiU,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gBAAelL,SAAEwU,EAAMxoB,SAG7CiU,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,sCAAqClL,UAClDC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,oCAK3B,IASIka,EATEsW,EAAU5oB,GAAAA,GAAA,GACXwiB,GAAK,IACRtJ,UAAWuP,EACXjK,SAAUJ,EACVd,KAAM,UACNuL,YAAazW,EAAKK,cAAc,CAAEra,GAAI,0BAKxC,OAAQe,GACN,KAAK2Q,EAAcgf,QACjBxW,GACErE,EAAAA,GAAAA,KAAC8a,GAAAA,EAAY/oB,GAAAA,GAAA,GACP4oB,GAAU,IACd7J,SAAUuJ,EACV,aAAW,cACXO,YAAY,0BAGhB,MACF,KAAK/e,EAAc0e,MACjBlW,GACErE,EAAAA,GAAAA,KAAC+a,GAAAA,EAAwBhpB,GAAAA,GAAA,GACnB4oB,GAAU,IACd7J,SAAUuJ,EACV,aAAW,sBACXO,YAAY,kCAGhB,MACF,KAAK/e,EAAcmf,MACjB3W,GACErE,EAAAA,GAAAA,KAAC4Y,GAAAA,EAAK7mB,GAAAA,GAAA,GACA4oB,GAAU,IACd7J,SAAU,SAACvmB,GAAC,OAAK8vB,EAAS9vB,EAAE+f,OAAOve,MAAM,EACzC,aAAW,SACX6uB,YAAY,qBAGhB,MACF,KAAK/e,EAAc4e,MACnB,QACEpW,GACErE,EAAAA,GAAAA,KAAC4Y,GAAAA,EAAK7mB,GAAAA,GAAA,GACA4oB,GAAU,IACd7J,SAAU,SAACvmB,GAAC,OAAK8vB,EAAS9vB,EAAE+f,OAAOve,MAAM,EACzCkvB,UAAW,IACX,aAAW,QACXL,YAAY,kBAMpB,OACE5a,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gBAAelL,UAC5BC,EAAAA,GAAAA,KAACkW,GAAY,CAACjL,UAAWyP,EAAmB1E,eAAgBM,EAAavW,SACtEsE,KAIT,4sCCxIA,IA+CA,GA/CiB,SAAHhR,GAUR,IAAAkkB,EAAAlB,EATJlsB,EAAEkJ,EAAFlJ,GACAgmB,EAAQ9c,EAAR8c,SACAmG,EAAYjjB,EAAZijB,aACAzD,EAAexf,EAAfwf,gBAOcxS,EAAckI,KAApBrP,KAE+Dsd,GAArEpE,EAAAA,GAAAA,KADMqB,OAGFc,EAA6C,QAAxCgD,QAHG,IAAAf,EAAG,CAAC,EAACA,GAGEjV,GAAkBpX,EAAI,gBAAQ,IAAAotB,EAAAA,EAAI,CACrDxrB,MAAOsU,SAAoD,QAA3CgW,EAAThW,EAAW4B,SAASjB,MAAK,SAACzT,GAAC,OAAKA,EAAEiU,aAAerX,CAAE,WAAC,IAAAksB,OAAA,EAApDA,EAAsDrS,MAG/D,OAAK6O,GAAmB1C,EAClBoE,EAAMxoB,OAENiU,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gBAAelL,UAC3BwO,EAAAA,GAAAA,IAAWgG,EAAMxoB,MAAOshB,OAK7BrN,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,sCAAqClL,UAClDC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,iCAKzB6V,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gBAAelL,UAC5BC,EAAAA,GAAAA,KAACkW,GAAY,CAACF,eAAgBM,EAAavW,UACzCC,EAAAA,GAAAA,KAACkb,GAAAA,EAAUnpB,GAAAA,GAAA,GACLwiB,GAAK,IACTwF,OAAQ,WAAF,OAAQ,IAAI,EAClB9O,UAAU,gBACVsF,SAAUJ,QAKpB,+6DCzCA,IA+JA,GA/JyB,SAAH9c,GAUhB,IAAAkkB,EAAAlB,EAAA8E,EAAAC,EATJjxB,EAAEkJ,EAAFlJ,GACAgmB,EAAQ9c,EAAR8c,SACAlM,EAAY5Q,EAAZ4Q,aACA4O,EAAexf,EAAfwf,gBAOcxS,EAAckI,KAApBrP,KACiCmiB,EAAX7T,KAAtBtO,KAAMoiB,OAAM,IAAAD,EAAG,GAAEA,EACnBlX,GAAOyF,EAAAA,GAAAA,KAIR4M,GAFHpE,EAAAA,GAAAA,KADMqB,OAKFc,EAAqD,QAAhDgD,QALG,IAAAf,EAAG,CAAC,EAACA,GAKEjV,GAAkBpX,EAAI,wBAAgB,IAAAotB,EAAAA,EAAI,CAC7DxrB,MACoE,QAD/DsqB,EACHhW,SAAoD,QAA3C8a,EAAT9a,EAAW4B,SAASjB,MAAK,SAACzT,GAAC,OAAKA,EAAEiU,aAAerX,CAAE,WAAC,IAAAgxB,OAAA,EAApDA,EAAsDlX,oBAAY,IAAAoS,EAAAA,EAAI,IAGpEkF,EACJtX,EAAa/Y,OAAS4Q,EAAkB0f,SACxCvX,EAAa/Y,OAAS4Q,EAAkB2f,aAEpCtV,EACJoO,EAAMxoB,QAAsC,IAA7BkY,EAAayX,aAAwBnH,EAAMxoB,MAAMmE,OAAS,EACrEqkB,EAAMxoB,MAAM,GAAG4vB,UAAU,EAAG,GAC5B,GAEAC,EAAaN,EAAOta,MAAK,SAAC1T,GAAC,OAAKA,EAAEuuB,WAAa1V,CAAK,IACpD2V,EAAeC,EAAAA,aACnB,SAACF,EAAkBG,GAAiB,OAClCV,EACGta,MAAK,SAAC1T,GAAC,OAAKA,EAAEuuB,WAAaA,CAAQ,IACnCI,SAASjb,MACR,SAACnK,GAAC,IAAAsjB,EAAA,OACAtjB,EAAEmlB,YAAcA,IAAwB,QAAf7B,EAAI5F,EAAMxoB,aAAK,IAAAouB,OAAA,EAAXA,EAAahvB,SAAS0L,EAAEmlB,WAAU,GAClE,GACL,CAACzH,EAAMxoB,MAAOuvB,IAGVY,EAAeH,EAAAA,SACnB,kBACET,EACG1pB,QAAO,SAACtE,GAAC,OAAKA,EAAE6uB,KAAK,IACrBvd,QACC,SAACmD,EAAKzU,GAAC,OAAAyE,GAAAA,GAAA,GACFgQ,GAAG,IACN,CAACzU,EAAEwY,MAAO,CACR/Z,MAAOuB,EAAEuuB,SACTtL,SACgB,MAAdqL,GAAsBA,EAAWC,WAAavuB,EAAEuuB,SAClDhpB,QAAU0oB,GAELjuB,EAAE2uB,UAAY,IACZrqB,QAAO,SAACiF,GAAC,OAAKA,EAAEslB,KAAK,IACrBnyB,KAAI,SAAC6M,GAAC,MAAM,CACXC,KAAMD,EAAEiP,KACR/Z,MAAO8K,EAAEmlB,UACTzL,UACiC,IAA/BtM,EAAamY,eAC4B,MAAzCN,EAAaxuB,EAAEuuB,SAAUhlB,EAAEmlB,WAC9B,IATH,KAUL,GAEH,CAAC,EACF,GACL,CACEV,EACAM,EACAL,EACAtX,EAAamY,cACbN,IAIEO,EAAef,EAAO1pB,QAC1B,SAACtE,GAAC,IAAAgvB,EAAA,OACW,QAAXA,EAAA/H,EAAMxoB,aAAK,IAAAuwB,OAAA,EAAXA,EAAanxB,SAASmC,EAAEuuB,YACxBvuB,EAAE2uB,SAASzZ,MAAK,SAAC3L,GAAC,IAAA0lB,EAAA,OAAgB,QAAhBA,EAAKhI,EAAMxoB,aAAK,IAAAwwB,OAAA,EAAXA,EAAapxB,SAAS0L,EAAEmlB,UAAU,GAAC,IAExDQ,EAAiBlB,EACpB1mB,SAAQ,SAACtH,GAAC,OAAKA,EAAE2uB,QAAQ,IACzBrqB,QAAO,SAACiF,GAAC,IAAA4lB,EAAA,OAAgB,QAAhBA,EAAKlI,EAAMxoB,aAAK,IAAA0wB,OAAA,EAAXA,EAAatxB,SAAS0L,EAAEmlB,UAAU,IAChDhyB,KAAI,SAAC0yB,GAAC,OAAKA,EAAE5W,IAAI,IAEhB6W,EAAS,GACT1Y,EAAa/Y,OAAS4Q,EAAkB2f,eAC1CkB,EAAS,GAAH1d,OAAA0L,GAAO0R,EAAaryB,KAAI,SAACsD,GAAC,OAAKA,EAAEwY,IAAI,KAAC6E,GAAK6R,KAC/CvY,EAAa/Y,OAAS4Q,EAAkB8gB,QAC1CD,EAASN,EAAaryB,KAAI,SAACsD,GAAC,OAAKA,EAAEwY,IAAI,KACrC7B,EAAa/Y,OAAS4Q,EAAkB0f,UAASmB,EAASH,GAE9D,IAAI5B,EAAc,8BACd3W,EAAa/Y,OAAS4Q,EAAkB0f,UAC1CZ,EAAc,0BACZ3W,EAAa/Y,OAAS4Q,EAAkB8gB,QAC1ChC,EAAc,wBAEhB,IAAMiC,GAAY/G,EAAAA,GAAAA,GAAI,CACpB,iBAA6B,QAAbsF,EAAE7G,EAAMxoB,aAAK,IAAAqvB,OAAA,EAAXA,EAAa5Y,MAAK,SAACjV,GAAC,OAAkB,IAAbA,EAAE2C,MAAY,MAG3D,OAAK2iB,GAAmB1C,EAClBoE,EAAMxoB,OAENiU,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gBAAelL,UAC5BC,EAAAA,GAAAA,KAAA,MAAIiL,UAAW4R,EAAU9c,SACtBsc,EAAaryB,KAAI,SAACsD,GACjB,IAAMwvB,EAAkBxvB,EAAE2uB,SAASrqB,QAAO,SAACiF,GAAC,IAAAkmB,EAAA,OAC/B,QAD+BA,EAC1CxI,EAAMxoB,aAAK,IAAAgxB,OAAA,EAAXA,EAAa5xB,SAAS0L,EAAEmlB,UAAU,IAEpC,OACEhT,EAAAA,GAAAA,MAAA,MAAqBiC,UAAU,qBAAoBlL,SAAA,EACjDC,EAAAA,GAAAA,KAAA,UAAAD,SAASzS,EAAEwY,OACVgX,EAAgB5sB,OAAS,IACxB8P,EAAAA,GAAAA,KAAA,MAAAD,SACG+c,EAAgB9yB,KAAI,SAAC6M,GAAC,OACrBmJ,EAAAA,GAAAA,KAAA,MAAAD,SAAuBlJ,EAAEiP,MAAhBjP,EAAEmlB,UAAwB,QALlC1uB,EAAEuuB,SAWf,SAMN7b,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,sCAAqClL,UAClDC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,yCAMzB6V,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gBAAelL,UAC5BC,EAAAA,GAAAA,KAACkW,GAAY,CAACF,eAAgB/R,EAAa+R,eAAejW,UACxDC,EAAAA,GAAAA,KAACgd,GAAAA,EAAWjrB,GAAAA,GAAA,GACNwiB,GAAK,IACTtJ,UAAU,wBACV4F,MAAM,GACN+J,YACE+B,EAAO1b,OAAOpM,KAAK,OAAK,KAAAoK,OACnBkF,EAAKK,cAAc,CAAEra,GAAIywB,IAAc,MAE9C/nB,QAASqpB,EACT3L,SAAUJ,QAKpB,6uEClJA,IAyKA,GAzKkB,SAAH9c,GAcT,IAAA8mB,EAbJhwB,EAAEkJ,EAAFlJ,GACAgmB,EAAQ9c,EAAR8c,SACAmG,EAAYjjB,EAAZijB,aACAzD,EAAexf,EAAfwf,gBACA0D,EAAQljB,EAARkjB,SACA0G,EAAa5pB,EAAb4pB,cASc5c,EAAckI,KAApBrP,KACFiL,GAAOyF,EAAAA,GAAAA,KAQR4M,GANHpE,EAAAA,GAAAA,KADMqB,OAAAA,OAAM,IAAA+C,EAAG,CAAC,EAACA,EASbjC,GAAQ6F,EAAAA,EAAAA,UACZ,eAAAjE,EAAAC,EAAAC,EAAA,OAKG,QALHF,EACE1C,EACE8C,EACIlV,GAAelX,EAAI,qBACnBoX,GAAkBpX,EAAI,qBAC3B,IAAAgsB,EAAAA,EAAI,CACHpqB,MAAOwqB,EACHlW,SAAgD,QAAvC+V,EAAT/V,EAAWU,QAAQC,MAAK,SAACpV,GAAC,OAAKA,EAAEiV,UAAY1W,CAAE,WAAC,IAAAisB,OAAA,EAAhDA,EAAkDzR,kBAClDtE,SAAoD,QAA3CgW,EAAThW,EAAW4B,SAASjB,MAAK,SAACzT,GAAC,OAAKA,EAAEiU,aAAerX,CAAE,WAAC,IAAAksB,OAAA,EAApDA,EAAsDzS,UAC1DkN,SAAU,WAAF,OAAQ,IAAI,EACrB,GACH,CAAC2C,EAAQ8C,EAAUpsB,EAAIkW,aAAS,EAATA,EAAWU,QAASV,aAAS,EAATA,EAAW4B,WAGlDib,GAAS9C,EAAAA,EAAAA,UAAQ,WACrB,OAAO,IAAI+C,GAAAA,GACRC,aAAY,SAACC,GACZ,OAAOA,EAAQzrB,QACb,SAAC6a,GAAC,MACM,cAANA,GAA2B,oBAANA,GAAiC,gBAANA,CAAmB,GAEzE,IACC6Q,aAAY,SAACC,GACZ,OAAON,EAAgB,GAAHhe,uDAAOse,0SAAO,CAAE,gBAAiBA,OACvD,IACCC,OACL,GAAG,CAACP,IAEEQ,EAAe1rB,GAAA,CACnB2rB,UAAW,IACXC,gBAAiB,CAAC,QAAS,QAAS,QAAS,KAAM,KAAM,KAAM,YAC3DV,EAAgB,CAAEW,eAAgBX,GAAkB,CAAC,GAGvDY,EAAa,8BACbhN,EAAQ,uBACRiN,EAAiB,4BACjBvH,IACFsH,EAAa,sCACbhN,EAAQ,+BACRiN,EAAiB,qCAGnB,IAAqDjU,EAAAtD,IAA3BuD,EAAAA,EAAAA,UAAoB,QAAZqQ,EAAC5F,EAAMxoB,aAAK,IAAAouB,EAAAA,EAAI,IAAG,GAA9CpuB,EAAK8d,EAAA,GAAEwQ,EAAQxQ,EAAA,GACoDkU,EAAAxX,IAAxCyX,EAAAA,GAAAA,KAAYzJ,EAAMxoB,OAASuqB,GAAa,GAAnEvjB,EAAIgrB,EAAA,GAAEE,EAAMF,EAAA,GAAEG,EAASH,EAAA,GAqB9B,IAnBA7J,EAAAA,EAAAA,YAAU,WACJnoB,IAAUwoB,EAAMxoB,OACpBwoB,EAAMzD,SAAS/kB,EACjB,GAAG,CAACwoB,EAAOxoB,KAEXmoB,EAAAA,EAAAA,YAAU,aAEFK,EAAMxoB,OAASuqB,KAAkBvjB,IAChCwhB,EAAMxoB,QAASuqB,GAAiBvjB,IAErCkrB,GAEJ,GAAG,CAAC1J,EAAMxoB,MAAOuqB,KAOZzD,GAAmB1C,EACtB,OAAKoE,EAAMxoB,OAQTid,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,gBAAelL,SAAA,EAC5BC,EAAAA,GAAAA,KAAA,SACEiL,UAAU,iBAAgBlL,UAE1BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAI0mB,OAExB7Q,EAAAA,GAAAA,KAACuP,GAAAA,EAAY,CAACC,KAAM+E,EAAMxoB,YAZ1BiU,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,sCAAqClL,UAClDC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAI2zB,MAgB9B,IAAMjI,GAAcC,EAAAA,GAAAA,GAAI,CACtB,mBAAmB,EACnB,yBAA0BvB,EAAMvpB,QAG5BmzB,EAAgB,CACpB5N,SAAUJ,EACVpkB,MAAAA,EACA+kB,SAAUuJ,EACVN,OAAQ,SAACxvB,GAAC,OAAK8vB,EAAS9vB,QAAAA,EAAK,GAAG,EAChCS,MAAOupB,EAAMvpB,MACbozB,QAASnhB,GACToS,KAAM,UACNra,QAASuf,EAAMvf,QACf,aAAcmP,EAAKK,cAAc,CAAEra,GAAI0mB,IACvCqN,UAAAA,EACAhB,OAAAA,EACAmB,OAAQ9J,EAAMxoB,OAASuqB,EACvBzjB,QAAS4qB,GAGX,OAAInH,GAEAtW,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gBAAelL,UAC5BC,EAAAA,GAAAA,KAACse,GAAAA,EAAQvsB,GAAA,GAAKosB,OAMlBne,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gBAAelL,SAC3BhN,GACCiN,EAAAA,GAAAA,KAACue,GAAAA,EAAiBxsB,GAAAA,GAAA,GACZosB,GAAa,IACjBtN,MAAO1M,EAAKK,cAAc,CAAEra,GAAI0mB,IAChC2N,QA5DQ,WACdnE,EAAS,IACT4D,GACF,EA0DQQ,aAActa,EAAKK,cAAc,CAAEra,GAAI,kCAGzC6V,EAAAA,GAAAA,KAAC+V,GAAAA,EAAO,CACN9K,UAAU,WACVjW,QAASuf,EAAMvf,QACfmiB,SAAS,MACTC,MAAM,OACN7G,UAAWgE,EAAMvpB,MACjBqsB,YAAU,EAAAtX,UAEViJ,EAAAA,GAAAA,MAACsH,GAAAA,EAAM,CAACrF,UAAW4K,EAAa9K,QAASkT,EAAQ1N,SAAUJ,EAASpQ,SAAA,EAClEC,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAACC,KAAK,gBAAgBnkB,KAAK,QAAQokB,UAAU,YAClDtP,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAI0zB,UAMlC,quCClMAryB,GAAA,kBAAAjB,CAAA,MAAAkB,EAAAlB,EAAA,GAAAmB,EAAAf,OAAAgB,UAAAC,EAAAF,EAAAG,eAAAvB,EAAAK,OAAAmB,gBAAA,SAAAL,EAAAlB,EAAAmB,GAAAD,EAAAlB,GAAAmB,EAAAK,KAAA,EAAAC,EAAA,mBAAAC,OAAAA,OAAA,GAAAC,EAAAF,EAAAG,UAAA,aAAAC,EAAAJ,EAAAK,eAAA,kBAAAC,EAAAN,EAAAO,aAAA,yBAAAC,EAAAf,EAAAlB,EAAAmB,GAAA,OAAAf,OAAAmB,eAAAL,EAAAlB,EAAA,CAAAwB,MAAAL,EAAAe,YAAA,EAAAC,cAAA,EAAAC,UAAA,IAAAlB,EAAAlB,EAAA,KAAAiC,EAAA,aAAAf,GAAAe,EAAA,SAAAf,EAAAlB,EAAAmB,GAAA,OAAAD,EAAAlB,GAAAmB,CAAA,WAAAkB,EAAAnB,EAAAlB,EAAAmB,EAAAE,GAAA,IAAAI,EAAAzB,GAAAA,EAAAoB,qBAAAkB,EAAAtC,EAAAsC,EAAAX,EAAAvB,OAAAmC,OAAAd,EAAAL,WAAAS,EAAA,IAAAW,EAAAnB,GAAA,WAAAtB,EAAA4B,EAAA,WAAAH,MAAAiB,EAAAvB,EAAAC,EAAAU,KAAAF,CAAA,UAAAe,EAAAxB,EAAAlB,EAAAmB,GAAA,WAAAR,KAAA,SAAAgC,IAAAzB,EAAA0B,KAAA5C,EAAAmB,GAAA,OAAAD,GAAA,OAAAP,KAAA,QAAAgC,IAAAzB,EAAA,EAAAlB,EAAAqC,KAAAA,EAAA,IAAAQ,EAAA,iBAAAC,EAAA,iBAAAC,EAAA,YAAAC,EAAA,YAAAC,EAAA,YAAAX,IAAA,UAAAY,IAAA,UAAAC,IAAA,KAAAC,EAAA,GAAAnB,EAAAmB,EAAAzB,GAAA,8BAAA0B,EAAAjD,OAAAkD,eAAAC,EAAAF,GAAAA,EAAAA,EAAAG,EAAA,MAAAD,GAAAA,IAAApC,GAAAE,EAAAuB,KAAAW,EAAA5B,KAAAyB,EAAAG,GAAA,IAAAE,EAAAN,EAAA/B,UAAAkB,EAAAlB,UAAAhB,OAAAmC,OAAAa,GAAA,SAAAM,EAAAxC,GAAA,0BAAAyC,SAAA,SAAA3D,GAAAiC,EAAAf,EAAAlB,GAAA,SAAAkB,GAAA,YAAA0C,QAAA5D,EAAAkB,EAAA,gBAAA2C,EAAA3C,EAAAlB,GAAA,SAAA8D,EAAA3C,EAAApB,EAAA0B,EAAAE,GAAA,IAAAE,EAAAa,EAAAxB,EAAAC,GAAAD,EAAAnB,GAAA,aAAA8B,EAAAlB,KAAA,KAAAoB,EAAAF,EAAAc,IAAAE,EAAAd,EAAAP,MAAA,OAAAqB,GAAA,UAAAkB,GAAAlB,IAAAxB,EAAAuB,KAAAC,EAAA,WAAA7C,EAAAK,QAAAwC,EAAAmB,SAAAC,MAAA,SAAA/C,GAAA4C,EAAA,OAAA5C,EAAAO,EAAAE,EAAA,aAAAT,GAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAA3B,EAAAK,QAAAwC,GAAAoB,MAAA,SAAA/C,GAAAa,EAAAP,MAAAN,EAAAO,EAAAM,EAAA,aAAAb,GAAA,OAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAAA,EAAAE,EAAAc,IAAA,KAAAxB,EAAApB,EAAA,gBAAAyB,MAAA,SAAAN,EAAAG,GAAA,SAAA6C,IAAA,WAAAlE,GAAA,SAAAA,EAAAmB,GAAA2C,EAAA5C,EAAAG,EAAArB,EAAAmB,EAAA,WAAAA,EAAAA,EAAAA,EAAA8C,KAAAC,EAAAA,GAAAA,GAAA,aAAAzB,EAAAzC,EAAAmB,EAAAE,GAAA,IAAAtB,EAAA8C,EAAA,gBAAApB,EAAAE,GAAA,GAAA5B,IAAAgD,EAAA,MAAA9C,MAAA,mCAAAF,IAAAiD,EAAA,cAAAvB,EAAA,MAAAE,EAAA,OAAAH,MAAAN,EAAAiD,MAAA,OAAA9C,EAAA+C,OAAA3C,EAAAJ,EAAAsB,IAAAhB,IAAA,KAAAE,EAAAR,EAAAgD,SAAA,GAAAxC,EAAA,KAAAE,EAAAuC,EAAAzC,EAAAR,GAAA,GAAAU,EAAA,IAAAA,IAAAkB,EAAA,gBAAAlB,CAAA,cAAAV,EAAA+C,OAAA/C,EAAAkD,KAAAlD,EAAAmD,MAAAnD,EAAAsB,SAAA,aAAAtB,EAAA+C,OAAA,IAAArE,IAAA8C,EAAA,MAAA9C,EAAAiD,EAAA3B,EAAAsB,IAAAtB,EAAAoD,kBAAApD,EAAAsB,IAAA,gBAAAtB,EAAA+C,QAAA/C,EAAAqD,OAAA,SAAArD,EAAAsB,KAAA5C,EAAAgD,EAAA,IAAAK,EAAAV,EAAA1C,EAAAmB,EAAAE,GAAA,cAAA+B,EAAAzC,KAAA,IAAAZ,EAAAsB,EAAA8C,KAAAnB,EAAAF,EAAAM,EAAAT,MAAAM,EAAA,gBAAAzB,MAAA4B,EAAAT,IAAAwB,KAAA9C,EAAA8C,KAAA,WAAAf,EAAAzC,OAAAZ,EAAAiD,EAAA3B,EAAA+C,OAAA,QAAA/C,EAAAsB,IAAAS,EAAAT,IAAA,YAAA2B,EAAAtE,EAAAmB,GAAA,IAAAE,EAAAF,EAAAiD,OAAArE,EAAAC,EAAA4B,SAAAP,GAAA,GAAAtB,IAAAmB,EAAA,OAAAC,EAAAkD,SAAA,eAAAhD,GAAArB,EAAA4B,SAAA+C,SAAAxD,EAAAiD,OAAA,SAAAjD,EAAAwB,IAAAzB,EAAAoD,EAAAtE,EAAAmB,GAAA,UAAAA,EAAAiD,SAAA,WAAA/C,IAAAF,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAvD,EAAA,aAAA4B,EAAA,IAAAxB,EAAAiB,EAAA3C,EAAAC,EAAA4B,SAAAT,EAAAwB,KAAA,aAAAlB,EAAAd,KAAA,OAAAQ,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAAlB,EAAAkB,IAAAxB,EAAAkD,SAAA,KAAApB,EAAA,IAAAtB,EAAAF,EAAAkB,IAAA,OAAAhB,EAAAA,EAAAwC,MAAAhD,EAAAnB,EAAA6E,YAAAlD,EAAAH,MAAAL,EAAA2D,KAAA9E,EAAA+E,QAAA,WAAA5D,EAAAiD,SAAAjD,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,GAAAC,EAAAkD,SAAA,KAAApB,GAAAtB,GAAAR,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAzD,EAAAkD,SAAA,KAAApB,EAAA,UAAA+B,EAAA9D,GAAA,IAAAlB,EAAA,CAAAiF,OAAA/D,EAAA,SAAAA,IAAAlB,EAAAkF,SAAAhE,EAAA,SAAAA,IAAAlB,EAAAmF,WAAAjE,EAAA,GAAAlB,EAAAoF,SAAAlE,EAAA,SAAAmE,WAAAC,KAAAtF,EAAA,UAAAuF,EAAArE,GAAA,IAAAlB,EAAAkB,EAAAsE,YAAA,GAAAxF,EAAAW,KAAA,gBAAAX,EAAA2C,IAAAzB,EAAAsE,WAAAxF,CAAA,UAAAwC,EAAAtB,GAAA,KAAAmE,WAAA,EAAAJ,OAAA,SAAA/D,EAAAyC,QAAAqB,EAAA,WAAAS,OAAA,YAAAjC,EAAAxD,GAAA,GAAAA,GAAA,KAAAA,EAAA,KAAAmB,EAAAnB,EAAA2B,GAAA,GAAAR,EAAA,OAAAA,EAAAyB,KAAA5C,GAAA,sBAAAA,EAAA8E,KAAA,OAAA9E,EAAA,IAAA0F,MAAA1F,EAAA2F,QAAA,KAAA5F,GAAA,EAAA0B,EAAA,SAAAqD,IAAA,OAAA/E,EAAAC,EAAA2F,QAAA,GAAAtE,EAAAuB,KAAA5C,EAAAD,GAAA,OAAA+E,EAAAtD,MAAAxB,EAAAD,GAAA+E,EAAAX,MAAA,EAAAW,EAAA,OAAAA,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,SAAArD,EAAAqD,KAAArD,CAAA,YAAAmD,UAAAb,GAAA/D,GAAA,2BAAAkD,EAAA9B,UAAA+B,EAAApD,EAAA0D,EAAA,eAAAjC,MAAA2B,EAAAhB,cAAA,IAAApC,EAAAoD,EAAA,eAAA3B,MAAA0B,EAAAf,cAAA,IAAAe,EAAA0C,YAAA3D,EAAAkB,EAAApB,EAAA,qBAAA/B,EAAA6F,oBAAA,SAAA3E,GAAA,IAAAlB,EAAA,mBAAAkB,GAAAA,EAAA4E,YAAA,QAAA9F,IAAAA,IAAAkD,GAAA,uBAAAlD,EAAA4F,aAAA5F,EAAA+F,MAAA,EAAA/F,EAAAgG,KAAA,SAAA9E,GAAA,OAAAd,OAAA6F,eAAA7F,OAAA6F,eAAA/E,EAAAiC,IAAAjC,EAAAgF,UAAA/C,EAAAlB,EAAAf,EAAAa,EAAA,sBAAAb,EAAAE,UAAAhB,OAAAmC,OAAAkB,GAAAvC,CAAA,EAAAlB,EAAAmG,MAAA,SAAAjF,GAAA,OAAA8C,QAAA9C,EAAA,EAAAwC,EAAAG,EAAAzC,WAAAa,EAAA4B,EAAAzC,UAAAS,GAAA,0BAAA7B,EAAA6D,cAAAA,EAAA7D,EAAAoG,MAAA,SAAAlF,EAAAC,EAAAE,EAAAtB,EAAA0B,QAAA,IAAAA,IAAAA,EAAA4E,SAAA,IAAA1E,EAAA,IAAAkC,EAAAxB,EAAAnB,EAAAC,EAAAE,EAAAtB,GAAA0B,GAAA,OAAAzB,EAAA6F,oBAAA1E,GAAAQ,EAAAA,EAAAmD,OAAAb,MAAA,SAAA/C,GAAA,OAAAA,EAAAiD,KAAAjD,EAAAM,MAAAG,EAAAmD,MAAA,KAAApB,EAAAD,GAAAxB,EAAAwB,EAAA1B,EAAA,aAAAE,EAAAwB,EAAA9B,GAAA,0BAAAM,EAAAwB,EAAA,qDAAAzD,EAAAG,KAAA,SAAAe,GAAA,IAAAlB,EAAAI,OAAAc,GAAAC,EAAA,WAAAE,KAAArB,EAAAmB,EAAAmE,KAAAjE,GAAA,OAAAF,EAAAmF,UAAA,SAAAxB,IAAA,KAAA3D,EAAAwE,QAAA,KAAAzE,EAAAC,EAAAoF,MAAA,GAAArF,KAAAlB,EAAA,OAAA8E,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,QAAAA,EAAAX,MAAA,EAAAW,CAAA,GAAA9E,EAAAwD,OAAAA,EAAAhB,EAAApB,UAAA,CAAA0E,YAAAtD,EAAAiD,MAAA,SAAAzF,GAAA,QAAAwG,KAAA,OAAA1B,KAAA,OAAAP,KAAA,KAAAC,MAAAtD,EAAA,KAAAiD,MAAA,OAAAE,SAAA,UAAAD,OAAA,YAAAzB,IAAAzB,EAAA,KAAAmE,WAAA1B,QAAA4B,IAAAvF,EAAA,QAAAmB,KAAA,WAAAA,EAAAsF,OAAA,IAAApF,EAAAuB,KAAA,KAAAzB,KAAAuE,OAAAvE,EAAAuF,MAAA,WAAAvF,GAAAD,EAAA,EAAAyF,KAAA,gBAAAxC,MAAA,MAAAjD,EAAA,KAAAmE,WAAA,GAAAG,WAAA,aAAAtE,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,YAAAiE,IAAA,EAAAnC,kBAAA,SAAAzE,GAAA,QAAAmE,KAAA,MAAAnE,EAAA,IAAAmB,EAAA,cAAA0F,EAAAxF,EAAAtB,GAAA,OAAA4B,EAAAhB,KAAA,QAAAgB,EAAAgB,IAAA3C,EAAAmB,EAAA2D,KAAAzD,EAAAtB,IAAAoB,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,KAAAnB,CAAA,SAAAA,EAAA,KAAAsF,WAAAM,OAAA,EAAA5F,GAAA,IAAAA,EAAA,KAAA0B,EAAA,KAAA4D,WAAAtF,GAAA4B,EAAAF,EAAA+D,WAAA,YAAA/D,EAAAwD,OAAA,OAAA4B,EAAA,UAAApF,EAAAwD,QAAA,KAAAuB,KAAA,KAAA3E,EAAAR,EAAAuB,KAAAnB,EAAA,YAAAM,EAAAV,EAAAuB,KAAAnB,EAAA,iBAAAI,GAAAE,EAAA,SAAAyE,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,WAAAsB,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,SAAAtD,GAAA,QAAA2E,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,YAAAnD,EAAA,MAAA9B,MAAA,kDAAAuG,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,KAAAT,OAAA,SAAAxD,EAAAlB,GAAA,QAAAmB,EAAA,KAAAkE,WAAAM,OAAA,EAAAxE,GAAA,IAAAA,EAAA,KAAApB,EAAA,KAAAsF,WAAAlE,GAAA,GAAApB,EAAAkF,QAAA,KAAAuB,MAAAnF,EAAAuB,KAAA7C,EAAA,oBAAAyG,KAAAzG,EAAAoF,WAAA,KAAA1D,EAAA1B,EAAA,OAAA0B,IAAA,UAAAP,GAAA,aAAAA,IAAAO,EAAAwD,QAAAjF,GAAAA,GAAAyB,EAAA0D,aAAA1D,EAAA,UAAAE,EAAAF,EAAAA,EAAA+D,WAAA,UAAA7D,EAAAhB,KAAAO,EAAAS,EAAAgB,IAAA3C,EAAAyB,GAAA,KAAA2C,OAAA,YAAAU,KAAArD,EAAA0D,WAAAlC,GAAA,KAAA6D,SAAAnF,EAAA,EAAAmF,SAAA,SAAA5F,EAAAlB,GAAA,aAAAkB,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,gBAAAzB,EAAAP,MAAA,aAAAO,EAAAP,KAAA,KAAAmE,KAAA5D,EAAAyB,IAAA,WAAAzB,EAAAP,MAAA,KAAAiG,KAAA,KAAAjE,IAAAzB,EAAAyB,IAAA,KAAAyB,OAAA,cAAAU,KAAA,kBAAA5D,EAAAP,MAAAX,IAAA,KAAA8E,KAAA9E,GAAAiD,CAAA,EAAA8D,OAAA,SAAA7F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAAgE,aAAAjE,EAAA,YAAA4F,SAAA3F,EAAAqE,WAAArE,EAAAiE,UAAAG,EAAApE,GAAA8B,CAAA,GAAA+D,MAAA,SAAA9F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAA8D,SAAA/D,EAAA,KAAAG,EAAAF,EAAAqE,WAAA,aAAAnE,EAAAV,KAAA,KAAAZ,EAAAsB,EAAAsB,IAAA4C,EAAApE,EAAA,QAAApB,CAAA,QAAAE,MAAA,0BAAAgH,cAAA,SAAAjH,EAAAmB,EAAAE,GAAA,YAAAgD,SAAA,CAAAzC,SAAA4B,EAAAxD,GAAA6E,WAAA1D,EAAA4D,QAAA1D,GAAA,cAAA+C,SAAA,KAAAzB,IAAAzB,GAAA+B,CAAA,GAAAjD,CAAA,UAAAogB,GAAAjf,GAAA,gBAAAA,GAAA,GAAA8a,MAAAC,QAAA/a,GAAA,OAAAkb,GAAAlb,EAAA,CAAAgzB,CAAAhzB,IAAA,SAAAA,GAAA,uBAAAO,QAAA,MAAAP,EAAAO,OAAAE,WAAA,MAAAT,EAAA,qBAAA8a,MAAAK,KAAAnb,EAAA,CAAAizB,CAAAjzB,IAAAob,GAAApb,IAAA,qBAAAyD,UAAA,wIAAAyvB,EAAA,UAAAntB,GAAA7F,EAAAH,EAAAlB,EAAAmB,EAAApB,EAAA4B,EAAAE,GAAA,QAAAJ,EAAAJ,EAAAM,GAAAE,GAAAE,EAAAN,EAAAD,KAAA,OAAAH,GAAA,YAAArB,EAAAqB,EAAA,CAAAI,EAAA0C,KAAAjD,EAAAa,GAAAsE,QAAAhG,QAAA0B,GAAAkC,KAAA9C,EAAApB,EAAA,UAAAgc,GAAA1a,GAAA,sBAAAH,EAAA,KAAAlB,EAAAyH,UAAA,WAAApB,SAAA,SAAAlF,EAAApB,GAAA,IAAA4B,EAAAN,EAAAkG,MAAArG,EAAAlB,GAAA,SAAA0K,EAAArJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,OAAAtJ,EAAA,UAAAsJ,EAAAtJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,QAAAtJ,EAAA,CAAAqJ,OAAA,gBAAAsR,GAAA7a,EAAAnB,GAAA,gBAAAmB,GAAA,GAAA8a,MAAAC,QAAA/a,GAAA,OAAAA,CAAA,CAAAgb,CAAAhb,IAAA,SAAAA,EAAA2B,GAAA,IAAA5B,EAAA,MAAAC,EAAA,yBAAAO,QAAAP,EAAAO,OAAAE,WAAAT,EAAA,uBAAAD,EAAA,KAAAlB,EAAAqB,EAAAI,EAAAM,EAAAJ,EAAA,GAAAoB,GAAA,EAAAhD,GAAA,SAAA0B,GAAAP,EAAAA,EAAA0B,KAAAzB,IAAA2D,KAAA,IAAAhC,EAAA,IAAA1C,OAAAc,KAAAA,EAAA,OAAA6B,GAAA,cAAAA,GAAA/C,EAAAyB,EAAAmB,KAAA1B,IAAAiD,QAAAxC,EAAA2D,KAAAtF,EAAAwB,OAAAG,EAAAgE,SAAA7C,GAAAC,GAAA,UAAA5B,GAAApB,GAAA,EAAAsB,EAAAF,CAAA,iBAAA4B,GAAA,MAAA7B,EAAAyD,SAAA5C,EAAAb,EAAAyD,SAAAvE,OAAA2B,KAAAA,GAAA,kBAAAhC,EAAA,MAAAsB,CAAA,SAAAM,CAAA,EAAAya,CAAAjb,EAAAnB,IAAAuc,GAAApb,EAAAnB,IAAA,qBAAA4E,UAAA,6IAAA4X,EAAA,UAAAD,GAAApb,EAAAQ,GAAA,GAAAR,EAAA,qBAAAA,EAAA,OAAAkb,GAAAlb,EAAAQ,GAAA,IAAAT,EAAA,GAAA4O,SAAAlN,KAAAzB,GAAAuF,MAAA,uBAAAxF,GAAAC,EAAA2E,cAAA5E,EAAAC,EAAA2E,YAAAC,MAAA,QAAA7E,GAAA,QAAAA,EAAA+a,MAAAK,KAAAnb,GAAA,cAAAD,GAAA,2CAAA8Y,KAAA9Y,GAAAmb,GAAAlb,EAAAQ,QAAA,YAAA0a,GAAAlb,EAAAQ,IAAA,MAAAA,GAAAA,EAAAR,EAAAwE,UAAAhE,EAAAR,EAAAwE,QAAA,QAAA3F,EAAA,EAAAqB,EAAA4a,MAAAta,GAAA3B,EAAA2B,EAAA3B,IAAAqB,EAAArB,GAAAmB,EAAAnB,GAAA,OAAAqB,CAAA,CAqBA,IAAMsmB,GAAS,IAAI9a,EAEbynB,GAAc,SAAC/kB,GACnB,OAAOA,EAAM9P,KAAI,SAAC80B,GAAI,MAAM,CAAE/lB,SAAU+lB,EAAKxuB,KAAM4I,KAAM4lB,EAAM,GACjE,EA6LA,GA3LgB,SAAHzrB,GAcP,IAAAkkB,EAAAlB,EAAA0I,EAAA5E,EAbJhwB,EAAEkJ,EAAFlJ,GACAgmB,EAAQ9c,EAAR8c,SACAmG,EAAYjjB,EAAZijB,aACAzD,EAAexf,EAAfwf,gBACAmM,EAAoB3rB,EAApB2rB,qBACA3L,EAAQhgB,EAARggB,SAS6ExJ,EAAAtD,IAA7CuD,EAAAA,EAAAA,YAA6C,GAAtEmO,EAAQpO,EAAA,GAAEoV,EAAWpV,EAAA,GACtB1F,GAAOyF,EAAAA,GAAAA,KACbsV,EAAoC3W,KAAtBlI,EAAS6e,EAAfhmB,KAAiBimB,EAAMD,EAANC,OAEiD3I,GAAxEpE,EAAAA,GAAAA,KADMqB,OAGFc,EAAgD,QAA3CgD,QAHG,IAAAf,EAAG,CAAC,EAACA,GAGEjV,GAAkBpX,EAAI,mBAAW,IAAAotB,EAAAA,EAAI,CACxDxrB,MAAOsU,SAAoD,QAA3CgW,EAAThW,EAAW4B,SAASjB,MAAK,SAACzT,GAAC,OAAKA,EAAEiU,aAAerX,CAAE,WAAC,IAAAksB,OAAA,EAApDA,EAAsDxS,SAGxDyJ,EAAqB/G,IAAV8J,EAAAA,GAAAA,KAAU,GAAd,GACR+O,EAAU,eAAApR,EAAA1H,GAAA9a,KAAA+E,MAAG,SAAA+C,EAAOwG,GAAkB,IAAAhC,EAAAG,EAAAuE,EAAA,OAAAhR,KAAAoB,MAAA,SAAAkH,GAAA,cAAAA,EAAA/C,KAAA+C,EAAAzE,MAAA,cAAAyE,EAAAzE,KAAA,EAClBgkB,GAAS,GAAK,OAEL,OAF3Bvb,EAAShE,EAAAhF,KAAAgF,EAAA/C,KAAG,EAEVkH,EAAO4mB,GAAY/kB,GAAMhG,EAAAzE,KAAA,EAEV6iB,GAAOmN,iCAC1BpnB,EACA9N,EACA2N,GACD,OAiBA,GAhBqB,MALhB0E,EAAM1I,EAAAhF,MAKD6F,QACTJ,EAAAA,EAAAA,IACE,QACA4P,EAAKK,cAAc,CAAEra,GAAI,uCACzBga,EAAKK,cACH,CAAEra,GAAI,6CACN,CAAE,EAAGqS,EAAO7H,WAIhBJ,EAAAA,EAAAA,IACE,UACA4P,EAAKK,cAAc,CAAEra,GAAI,gCACzB,IACA,IAIA60B,EAAsB,CAAFlrB,EAAAzE,KAAA,gBAAAyE,EAAAzE,KAAA,GAChB8vB,IAAQ,QAAArrB,EAAAzE,KAAA,iBAEdklB,EAAMzD,SAAS,GAAD7R,OAAA0L,GAAK4J,EAAMxoB,OAAK4e,GAAKnO,EAAO1C,SAAQ,QAAAhG,EAAAzE,KAAA,iBAAAyE,EAAA/C,KAAA,GAAA+C,EAAAwrB,GAAAxrB,EAAA,UAGpDS,EAAAA,EAAAA,IACE,QACA4P,EAAKK,cAAc,CAAEra,GAAI,uCACzBga,EAAKK,cACH,CAAEra,GAAI,6CACN,CAAE,EAAG2P,EAAM9P,KAAI,SAAC80B,GAAI,OAAKA,EAAKxuB,IAAI,IAAEuE,KAAK,SAE3C,yBAAAf,EAAA5C,OAAA,GAAAoC,EAAA,mBAEL,gBA3Ce6B,GAAA,OAAA6Y,EAAAlc,MAAA,KAAAE,UAAA,KAqDVutB,EAAiB,eAAA7K,EAAApO,GAAA9a,KAAA+E,MAAG,SAAA0kB,IAAA,IAAAzY,EAAA,OAAAhR,KAAAoB,MAAA,SAAAuoB,GAAA,cAAAA,EAAApkB,KAAAokB,EAAA9lB,MAAA,UACpB4oB,UAAAA,EAAUngB,UAAS,CAAAqd,EAAA9lB,KAAA,SACN,OAAf8e,EAAAA,GAAAA,IAAMb,GAAS6H,EAAApkB,KAAA,EAAAokB,EAAA9lB,KAAA,EAGQ6iB,GAAOsN,+BAC1BvH,EAASngB,WACV,OAFK0E,EAAM2Y,EAAArmB,MAGZyF,EAAAA,EAAAA,IACE,UACA4P,EAAKK,cAAc,CAAEra,GAAI,8BACzB,IACA,GAEFoqB,EAAMzD,SACJyD,EAAMxoB,MAAM6F,QAAO,SAAC9D,GAAC,OAAKA,EAAEgK,YAAc0E,EAAO1E,SAAS,KAC1Dqd,EAAA9lB,KAAA,iBAAA8lB,EAAApkB,KAAA,GAAAokB,EAAAmK,GAAAnK,EAAA,UAEF5gB,EAAAA,EAAAA,IACE,QACA4P,EAAKK,cAAc,CAAEra,GAAI,2CACzB,yBAAAgrB,EAAAjkB,OAAA,GAAA+jB,EAAA,mBAGP,kBAxBsB,OAAAP,EAAA5iB,MAAA,KAAAE,UAAA,KA0BjBytB,EAYF,QAZUV,EACD,QADC5E,EACZ5F,EAAMxoB,aAAK,IAAAouB,OAAA,EAAXA,EAAanwB,KAAI,SAAC8D,GAChB,OACEkS,EAAAA,GAAAA,KAAC0f,GAAAA,EAAgB,CAEfp0B,MAAOwC,EAAE6xB,QACTvV,KAAI,GAAAnL,OAAKlC,GAAK6iB,gCAA+B,KAAA3gB,OAAInR,EAAEgK,WACnD+nB,SAAU,WAAF,OAzCGC,EAyCehyB,EAAEgK,UAxC5BioB,EAAYxL,EAAMxoB,MAAMiV,MAAK,SAAClT,GAAC,OAAKA,EAAEgK,YAAcgoB,CAAU,SAChEC,IACFd,EAAYc,IACZhtB,EAAAA,GAAAA,IAAKua,KAJS,IAACwS,EACXC,CAwCsC,EACtCxP,SAAUJ,EACVlF,UAAU,sCAAoC,WAAAhM,OAL9BnR,EAAEgK,WAQxB,WAAE,IAAAinB,EAAAA,EAAI,GAEFlO,GACJ7H,EAAAA,GAAAA,MAAA,QAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAACC,KAAK,WAAWnkB,KAAK,QAAQokB,UAAU,YAC7CtP,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,iCAInB61B,EAA0B/H,aAAQ,EAARA,EAAU0H,QAE1C,IAAK9M,GAAmB1C,GACE,IAApBsP,EAASvvB,OACX,OACE8P,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,sCAAqClL,UAClDC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,8BAM7B,IAAM0rB,GAAcC,EAAAA,GAAAA,GAAI,CACtB,yBAA0BvB,EAAMvpB,MAChC,2BAA2B,IAGzB+rB,EAAS,KAgBb,OAfIlE,GAAoB1C,IACtB4G,GACE/W,EAAAA,GAAAA,KAACkW,GAAY,CAACF,eAAgBM,EAAavW,UACzCC,EAAAA,GAAAA,KAACigB,GAAAA,EAASluB,GAAAA,GAAA,GACJwiB,GAAK,IACTtJ,UAAW4K,EACX/E,SAAUsO,EACV7O,SAAUJ,EACVU,MAAOA,EACPqP,UAAQ,SAOdlX,EAAAA,GAAAA,MAAAI,GAAAA,SAAA,CAAArJ,SAAA,EACEiJ,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,gBAAelL,SAAA,CAC3B0f,EAASvvB,OAAS,GACjB8P,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,WAAUlL,UACvBC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,yBAErB,MACJ6V,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,oBAAmBlL,SAAE0f,IACnC1I,MAEH/W,EAAAA,GAAAA,KAACuN,GAAAA,EAAK,CACJpjB,GAAImjB,EACJhiB,OAAO0U,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,4BAC5BqmB,2BAAyB,EACzBC,YAAYzQ,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,qBACjCumB,OAAQ6O,EACR9R,cAAczN,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,sBAAuB4V,UAE1DC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CACftgB,GAAG,+BACH4D,OAAQ,CAAE,EAAGiyB,SAKvB,uFCzBA,GAxK0B,SAAH3sB,GAcjB,IAAA8sB,EAbJC,EAAQ/sB,EAAR+sB,SACA3nB,EAAcpF,EAAdoF,eACAoa,EAAexf,EAAfwf,gBACAmM,EAAoB3rB,EAApB2rB,qBACA3L,EAAQhgB,EAARggB,SACGgN,+WAAIC,CAAAjtB,EAAAktB,IAUL1O,EAYEuO,EAZFvO,OACA2O,EAWEJ,EAXFI,eACA/c,EAUE2c,EAVF3c,MACAC,EASE0c,EATF1c,UACA+c,EAQEL,EARFK,iBACA3c,EAOEsc,EAPFtc,QACAC,EAMEqc,EANFrc,UACAC,EAKEoc,EALFpc,KACAC,EAIEmc,EAJFnc,aACAL,EAGEwc,EAHFxc,UACAC,EAEEuc,EAFFvc,QACA1Z,EACEi2B,EADFj2B,GAEIoU,EAASoJ,KAEPzO,EAASqP,KAATrP,KACFmH,EAAYnH,SAAc,QAAVinB,EAAJjnB,EAAM+I,gBAAQ,IAAAke,OAAA,EAAdA,EAAgBnf,MAAK,SAACzT,GAAC,OAAKA,EAAEiU,aAAe4e,EAASj2B,EAAE,IAEpEu2B,EAAsBliB,GAAkBqT,EAAQtT,GAEhDoiB,EAAkBD,EACpBA,EAAoBxqB,QAAQ,MAAO,IACnC,GACE0qB,EACJP,EAAKlQ,WACJ0C,IACAtP,GAAkBlD,KAClB2e,EACG7O,EAAWkQ,EAAKlQ,YAAc6O,GAAwBvmB,GAE5D,OACEuQ,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,WAAW9gB,GAAE,YAAA8U,OAAc9U,GAAK4V,SAAA,EAC7CC,EAAAA,GAAAA,KAAC6gB,GAAAA,GAAO,CAACvwB,KAAM2gB,GAAWD,GAAqB7mB,KAC9Cw2B,GACC3X,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,mBAAkBlL,SAAA,EAC/BC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,yBAAwBlL,SAAE4gB,IACxCP,EAASU,WACR9gB,EAAAA,GAAAA,KAACuP,GAAAA,EAAY,CACXC,KAAMhR,GAAkB4hB,EAASU,UAAWviB,KAE5C,QAEJ,KAEHqiB,GACC5gB,EAAAA,GAAAA,KAAA,OAAAD,UACEC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,sCAAqClL,UAClDC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,8BAIzB6e,EAAAA,GAAAA,MAAA,OAAAjJ,SAAA,CACGygB,EAAeO,SACd/gB,EAAAA,GAAAA,KAACghB,GAAkB,CACjB72B,GAAIA,EACJmsB,aAAckK,EAAexK,eAC7B7F,SAAUA,EACV0C,gBAAiBA,IAEjB,KACHpP,EAAMsd,SACL/gB,EAAAA,GAAAA,KAACihB,GAAS,CACR9Q,SAAUA,EACV0C,gBAAiBA,EACjByD,aAAc7S,EAAMuS,eACpB7rB,GAAIA,IAEJ,KACHuZ,EAAUqd,SACT/gB,EAAAA,GAAAA,KAACkhB,GAAa,CACZ/Q,SAAUA,EACV0C,gBAAiBA,EACjByD,aAAc5S,EAAUsS,eACxB7rB,GAAIA,IAEJ,KACHs2B,EAAiBM,UAAYN,EAAiB/d,WAC7C1C,EAAAA,GAAAA,KAACmhB,GAAO,CACNhR,SAAUA,EACV0C,gBAAiBA,EACjBiG,QAAS2H,EACTnK,aAAcmK,EAAiBzK,eAC/B7rB,GAAIA,IAEJ,KACHs2B,EAAiBM,SAAWN,EAAiB/d,WAC5C1C,EAAAA,GAAAA,KAACohB,GAAS,CACRjR,SAAUA,EACV0C,gBAAiBA,EACjBnQ,UAAW+d,EACXnK,aAAcmK,EAAiBzK,eAC/B7rB,GAAIA,IAEJ,KACH2Z,EAAQid,SACP/gB,EAAAA,GAAAA,KAACqhB,GAAW,CACVlR,SAAUA,EACV0C,gBAAiBA,EACjByD,aAAcxS,EAAQkS,eACtB7rB,GAAIA,IAEJ,KACH4Z,EAAUgd,SACT/gB,EAAAA,GAAAA,KAACshB,GAAa,CACZnR,SAAUA,EACV0C,gBAAiBA,EACjByD,aAAcvS,EAAUiS,eACxB9qB,KAAM6Y,EAAU7Y,KAChBf,GAAIA,IAEJ,KACH6Z,EAAK+c,SACJ/gB,EAAAA,GAAAA,KAACuhB,GAAQ,CACPpR,SAAUA,EACV0C,gBAAiBA,EACjByD,aAActS,EAAKgS,eACnB7rB,GAAIA,IAEJ,KACH8Z,EAAa8c,SACZ/gB,EAAAA,GAAAA,KAACwhB,GAAgB,CACfrR,SAAUA,EACV0C,gBAAiBA,EACjB5O,aAAcA,EACd9Z,GAAIA,IAEJ,KACHyZ,EAAUmd,SACT/gB,EAAAA,GAAAA,KAACyhB,GAAS,CACRtR,SAAUA,EACV0C,gBAAiBA,EACjByD,aAAc1S,EAAUoS,eACxB7rB,GAAIA,EACJ8yB,cAAerZ,EAAUqZ,gBAEzB,KACHpZ,EAAQkd,SACP/gB,EAAAA,GAAAA,KAAC0hB,GAAO,CACNvR,SAAUA,EACV0C,gBAAiBA,EACjByD,aAAczS,EAAQmS,eACtB7rB,GAAIA,EACJ60B,qBAAsBA,EACtB3L,SAAUA,IAEV,UAKd,ECtFA,GA1FyB,SAAHhgB,GAgBhB,IAfJsuB,EAAQtuB,EAARsuB,SACAnQ,EAAgBne,EAAhBme,iBACArB,EAAQ9c,EAAR8c,SAAQyR,EAAAvuB,EACRwf,gBAAAA,OAAe,IAAA+O,GAAQA,EACvB5C,EAAoB3rB,EAApB2rB,qBACAvmB,EAAcpF,EAAdoF,eACA4a,EAAQhgB,EAARggB,SAUM9U,EAASoJ,KACT1P,EAAO0pB,EACV1gB,MAAK,SAAC/U,EAAGgV,GACR,OAAOhV,EAAEiV,WAAaD,EAAEC,UAC1B,IACCnX,KAAI,SAAC63B,GACJ,IAAQhQ,EAA6CgQ,EAA7ChQ,OAAQiP,EAAqCe,EAArCf,UAAW/O,EAA0B8P,EAA1B9P,YAAa5nB,EAAa03B,EAAb13B,GAAIynB,EAASiQ,EAATjQ,KAEtCkQ,EAAgBtjB,GAAkBqT,EAAQtT,GAC1CwjB,EAAmBvjB,GAAkBsiB,EAAWviB,GAEhDyjB,GAAYlM,EAAAA,GAAAA,GAAI,CACpB,gBAAgB,EAChB,uBAAuBuC,EAAAA,GAAAA,IAAQ0J,KAG3BE,GAAanM,EAAAA,GAAAA,GAAI,CACrB,OAAiB,IAATlE,EACR,OAAiB,IAATA,EACR,OAAQA,EAAO,EACf,iBAAiB,IAGbsQ,EAAQ,IAAAjjB,OACRkjB,KAAKC,IAAIxQ,EAAO,EAAG,IAEnByQ,EAAmBR,EAAQ5f,SAC9BhB,MAAK,SAAC/U,EAAGgV,GAAC,OAAKhV,EAAEiV,WAAaD,EAAEC,UAAU,IAC1CnX,KAAI,SAACo2B,GACJ,OACEpgB,EAAAA,GAAAA,KAACsiB,GAAiB,CAEhBlC,SAAUA,EACVpB,qBAAsBA,EACtBnM,gBAAiBA,EACjBpa,eAAgBA,EAChB0X,SAAUA,EACVkD,SAAUA,GAAS,qBAAApU,OANOmhB,EAASj2B,IASzC,IAEI+yB,GAAS,IAAIC,GAAAA,GAChBoF,aACAC,gBAAgB,CAAC,OAAQ,QACzBhF,QACGhO,EAAOuS,EACV7rB,QAAQ,WAAY,sCACpBA,QAAQ,cAAe,mBAE1B,OACE8S,EAAAA,GAAAA,MAAA,OAAqCiC,UAAU,UAASlL,SAAA,EACtDC,EAAAA,GAAAA,KAAC6gB,GAAAA,GAAO,CAACvwB,KAAM2gB,GpB3Ed,UoB2E6C9mB,MAC9C6e,EAAAA,GAAAA,MAAA,OAAKiC,UAAW+W,EAAUjiB,SAAA,EACxBC,EAAAA,GAAAA,KAAA,OAAK7V,GAAI4nB,EAAY7b,QAAQ,QAAS,IAAI6J,UACxCC,EAAAA,GAAAA,KAACkiB,EAAQ,CAAC/3B,GAAE,WAAA8U,OAAa9U,GAAM8gB,UAAWgX,EAAWliB,SAClDyR,EACGsQ,EAAa,GAAA7iB,OACV8S,EAAW,KAAA9S,OAAI6iB,QAG1B9hB,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,mBAAkBlL,UAC/BC,EAAAA,GAAAA,KAACuP,GAAAA,EAAY,CAACC,KAAMA,EAAM0N,OAAQA,UAGtCld,EAAAA,GAAAA,KAAA,OAAAD,SAAMsiB,MAAuB,qBAAApjB,OAdA9U,GAiBnC,IAEF,OAAO6V,EAAAA,GAAAA,KAAA,OAAAD,SAAM9H,GACf,yEC5CA,GA/CuB,SAAH5E,GAYd,IAAAuuB,EAAAvuB,EAXJwf,gBAAAA,OAAe,IAAA+O,GAAQA,EACvBpN,EAAKnhB,EAALmhB,MACA/b,EAAcpF,EAAdoF,eACAumB,EAAoB3rB,EAApB2rB,qBACGqB,+WAAIC,CAAAjtB,EAAAktB,IAQCxM,EAAsDS,EAAtDT,sBAAuBC,EAA+BQ,EAA/BR,uBAAwB7pB,EAAOqqB,EAAPrqB,GAEvD,IAAK4pB,IAA0BC,EAAwB,OAAO,KAE9D,IAAM7D,EAAWkQ,EAAKlQ,YAAc6O,GAAwBvmB,GAE5D,OACEuH,EAAAA,GAAAA,KAAA,OAAkCiL,UAAU,iBAAgBlL,UAC1DiJ,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,WAAW9gB,GAAE,SAAA8U,OAAW9U,GAAK4V,SAAA,EAC1CC,EAAAA,GAAAA,KAAC6gB,GAAAA,GAAO,CAACvwB,KAAM2gB,GAAWD,GAAkB7mB,MAC5C6e,EAAAA,GAAAA,MAAA,OAAAjJ,SAAA,CACGgU,GACC/T,EAAAA,GAAAA,KAACghB,GAAkB,CACjB72B,GAAIA,EACJgmB,SAAUA,EACV0C,gBAAiBA,EACjB0D,UAAQ,IAER,KAEHvC,GACChU,EAAAA,GAAAA,KAACyhB,GAAS,CACRtR,SAAUA,EACV0C,gBAAiBA,EACjB1oB,GAAIA,EACJosB,UAAQ,IAER,YAEF,kBAAAtX,OAtBoB9U,GAyBhC,ECXA,GArCiB,SAAHkJ,GAIR,IAHJovB,EAAQpvB,EAARovB,SAIMlkB,EAASoJ,KACf,IAAK8a,EAAU,OAAO,KACtB,IACE9kB,EAME8kB,EANF9kB,OACA+kB,EAKED,EALFC,OACAC,EAIEF,EAJFE,cACAC,EAGEH,EAHFG,cACAC,EAEEJ,EAFFI,kBACAC,EACEL,EADFK,kBAGIC,EAAgBvkB,GAAkBkkB,EAAQnkB,GAC1CykB,EAA2BxkB,GAAkBqkB,EAAmBtkB,GAChE0kB,EAA2BzkB,GAAkBskB,EAAmBvkB,GAChE2kB,EAAgB1kB,GAAkBb,EAAQY,GAEhD,OACEyK,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,gCAA+BlL,SAAA,EAC5CC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,8BAA6BlL,SAAEgjB,KAC9C/Z,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,YAAWlL,SAAA,EACxBC,EAAAA,GAAAA,KAAA,OAAAD,SAAM4iB,KACN3iB,EAAAA,GAAAA,KAAA,OAAAD,SAAMijB,QAERha,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,YAAWlL,SAAA,EACxBC,EAAAA,GAAAA,KAAA,OAAAD,SAAM6iB,KACN5iB,EAAAA,GAAAA,KAAA,OAAAD,SAAMkjB,QAERjjB,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,2BAA0BlL,SAAEmjB,MAGjD,cCEA,GArCiB,SAAH7vB,GAMR,IALJ8vB,EAAQ9vB,EAAR8vB,SACAtiB,EAAOxN,EAAPwN,QAKA,OAAKsiB,GAAYA,EAASjzB,OAAS,EAAU,MAG3C8Y,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,wBAAuBlL,SAAA,EACpCC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,sBAAqBlL,UAClCC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,0BAEvB6V,EAAAA,GAAAA,KAAA,MAAIiL,UAAU,gBAAelL,SAC1BojB,EAASn5B,KAAI,SAACo5B,GACb,OACEpjB,EAAAA,GAAAA,KAAA,MAEE7V,GAAE,WAAA8U,OAAa4B,EAAO,KAAA5B,OAAImkB,EAAQj5B,IAAK4V,UAEvCC,EAAAA,GAAAA,KAACqjB,GAAAA,EAAO,CACNxwB,QAAS,CACPyX,OAAQ,SACRgZ,WAAY,CAAE9Y,IAAK,wBACnBzK,SAEDqjB,EAAQtsB,QACD,WAAAmI,OAVM4B,EAAO,KAAA5B,OAAImkB,EAAQj5B,IAazC,QAIR,ECeA,GA/CgB,SAAHkJ,GAMP,IALJwQ,EAAOxQ,EAAPwQ,QACA0f,EAAYlwB,EAAZkwB,aAKMC,EAAkBtb,KAElB+B,EAAe,IAAIwZ,gBAGzB,GAFID,GAAiBvZ,EAAaC,IAAI/K,GAAsBqkB,GAEhC,IAAxBD,EAAarzB,QAAmC,IAAnB2T,EAAQ3T,OAAc,OAAO,KAC9D,IAAMwzB,EAAmBH,EAAav5B,KAAI,SAAC8D,GACzC,OACEkS,EAAAA,GAAAA,KAAC0f,GAAAA,EAAgB,CAEfzU,UAAU,qBACV3f,MAAOwC,EAAE6xB,QACTvV,KAAI,GAAAnL,OAAKlC,GAAK4mB,eAAc,KAAA1kB,OAAInR,EAAE3D,GAAE,KAAA8U,OAAIgL,EAAa5P,YACrDkW,UAAQ,mBAAAtR,OAJanR,EAAE3D,IAO7B,IACMy5B,EAAc/f,EAAQ7Z,KAAI,SAAC8D,GAC/B,OACEkS,EAAAA,GAAAA,KAAC0f,GAAAA,EAAgB,CAEfzU,UAAU,qBACV3f,MAAOwC,EAAE6xB,QACTvV,KAAI,GAAAnL,OAAKlC,GAAK4mB,eAAc,KAAA1kB,OAAInR,EAAE3D,GAAE,KAAA8U,OAAIgL,EAAa5P,YACrDkW,UAAQ,cAAAtR,OAJQnR,EAAE3D,IAOxB,IAEA,OACE6e,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,gCAA+BlL,SAAA,EAC5CC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,WAAUlL,UACvBC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,yBAEtBu5B,EACAE,IAGP,0BCSA,GAlD8B,SAAHvwB,GAQrB,IAPJogB,EAAMpgB,EAANogB,OACAoQ,EAAcxwB,EAAdwwB,eACA5Y,EAAS5X,EAAT4X,UAMM9G,GAAOyF,EAAAA,GAAAA,KACPrL,EAASoJ,KACf,IAAKkc,EAAeC,sBAAuB,OAAO,KAElD,IAKMjT,EAAQrS,GACZqlB,EAAeE,2BACfxlB,GAEEC,GAAkBqlB,EAAeE,2BAA4BxlB,GAC7D4F,EAAKK,cACH,CAAEra,GAAI,2CACN,CAAE,EAAG05B,EAAehS,OAAO1d,gBAGjC,OACE6U,EAAAA,GAAAA,MAAA,OAAKiC,WAAW6K,EAAAA,GAAAA,GAAI,2BAA4B7K,GAAWlL,SAAA,EACzDC,EAAAA,GAAAA,KAAC6gB,GAAAA,GAAO,CAACvwB,KAAK,2BACd0P,EAAAA,GAAAA,KAAC+V,GAAAA,EAAO,CACN9K,UAAU,WACVjW,QAASye,EAAOqQ,sBAAsB9uB,QACtCoiB,MAAM,OACND,SAAS,SACT5G,UAAWkD,EAAOqQ,sBAAsB94B,MACxCqsB,YAAU,EAAAtX,UAEVC,EAAAA,GAAAA,KAAC4Q,GAAAA,EAAQ,CACPC,MAAOA,EACPC,SA5BgB,SAACvmB,GACvB,IAAQwmB,EAAYxmB,EAAE+f,OAAdyG,QACR0C,EAAOqQ,sBAAsBhT,SAASC,EACxC,EA0BQA,QAAS0C,EAAOqQ,sBAAsB/3B,MACtCf,MAAOyoB,EAAOqQ,sBAAsB94B,YAK9C,+6DCnDA,IAAMg5B,GAAgB,CACpB,gBACA,WACA,QACA,UACA,YACA,yBAsDF,GAnDe,SAAH3wB,GAQN,IAPJogB,EAAMpgB,EAANogB,OACAwQ,EAAU5wB,EAAV4wB,WACAC,EAAW7wB,EAAX6wB,YAMM/f,GAAOyF,EAAAA,GAAAA,KACb,GAAIqa,EAAW/zB,QAAU,EAAG,OAAO,KAEnC,IASM2C,EAAU8X,GAAI,IAAIwZ,IAAIF,EAAWj6B,KAAI,SAAC0yB,GAAC,OAAKA,EAAE7M,MAAM,IAAE5O,SAASjX,KACnE,SAAC6lB,GAAM,MAAM,CACX9jB,MAAO8jB,EACP/Y,KAAM,GAAFmI,OAAKkF,EAAKK,cAAc,CAAEra,GAAI,gBAAF8U,OAAkB4Q,EAAO1b,kBAC1D,IAGGiwB,EAAc,CAClB,CACEr4B,MAAO,GACP+K,KAAM,KAAFmI,OAAOkF,EAAKK,cAAc,CAAEra,GAAI,sBAAsB,KAAA8U,OAAIkF,EAAKK,cAAc,CAAEra,GAAI,wBAAyBgK,cAAa,QAC9H8K,OAAA0L,GACE9X,IAGL,OACEmW,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,yBAAwBlL,SAAA,EACrCC,EAAAA,GAAAA,KAAC6gB,GAAAA,GAAO,CAACvwB,KAAK,YACd0P,EAAAA,GAAAA,KAACqkB,GAAAA,EAAMtyB,GAAAA,GAAA,GACD0hB,EAAO5D,QAAM,IACjB5E,UAAU,sBACV6F,SA9BkB,SAACwT,GACvBJ,EAAYF,IACZvQ,EAAO5D,OAAOiB,SAASwT,GACnBA,EAAMha,OAAOve,OACf0nB,EAAOzN,UAAU8K,SACfmT,EAAWryB,QAAO,SAAC8qB,GAAC,OAAKA,EAAE7M,SAAWyU,EAAMha,OAAOve,KAAK,IAAE,GAAG5B,GAEnE,EAwBM0I,QAASuxB,EACTj6B,GAAG,YACH,aAAYga,EAAKK,cAAc,CAAEra,GAAI,iCAI7C,0jDC1DA,IAAM65B,GAAgB,CACpB,gBACA,WACA,QACA,UACA,YACA,yBAmEF,GAhEkB,SAAH3wB,GAUT,QATJogB,EAAMpgB,EAANogB,OACAwQ,EAAU5wB,EAAV4wB,WACAM,EAAclxB,EAAdkxB,eACAL,EAAW7wB,EAAX6wB,YAOkDra,MAAZC,EAAAA,EAAAA,UAAS,MAAG,0nBAA3C0a,EAAW3a,EAAA,GAAE4a,EAAc5a,EAAA,GAC5B1F,GAAOyF,EAAAA,GAAAA,MACbsK,EAAAA,EAAAA,YAAU,WACJT,EAAO5D,OAAO9jB,OAAO04B,EAAehR,EAAO5D,OAAO9jB,MACxD,GAAG,CAAC0nB,EAAO5D,OAAO9jB,QAElB,IAAM24B,EAAgB,SAAC1e,GAA8C,OACnEA,EAAU,GAAGhF,MAAK,SAAC2jB,GAAE,OAAKA,EAAG9U,SAAW2U,CAAW,KAAKxe,EAAU,GAAG,EAAE,EAEnEnT,EAAUlI,OAAOi6B,QAAQX,GAC5BhjB,MAAK,SAAC/U,EAAGgV,GAAC,OAAKwjB,EAAcx4B,GAAGiV,WAAaujB,EAAcxjB,GAAGC,UAAU,IACxEnX,KAAI,SAAC0yB,GAAC,MAAM,CACX3wB,MAAO24B,EAAchI,GAAGvyB,GACxB2M,KAAM4lB,EAAE,GACT,IAEG0H,EAAc,CAClB,CACEr4B,MAAO,GACP+K,KAAM,KAAFmI,OAAOkF,EAAKK,cAAc,CAAEra,GAAI,sBAAsB,QAC3D8U,kXAAA0L,CACE9X,IAiBL,OACEmW,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,yBAAwBlL,SAAA,EACrCC,EAAAA,GAAAA,KAAC6gB,GAAAA,GAAO,CAACvwB,KAAK,eACd0P,EAAAA,GAAAA,KAACqkB,GAAAA,EAAMtyB,GAAAA,GAAA,GACD0hB,EAAOzN,WAAS,IACpB7b,GAAG,gBACH8gB,UAAU,sBACV6F,SArBkB,SAACvmB,GACvB25B,EAAYF,IACZvQ,EAAOzN,UAAU8K,SAASvmB,GAC1B,IAAMs5B,EAAiBU,EAAevjB,MACpC,SAAC0b,GAAC,OAAKA,EAAEvyB,KAAO2vB,SAASvvB,EAAE+f,OAAOve,MAAO,GAAG,IAE1C83B,GAA+D,IAA7CI,EAAWJ,EAAehS,QAAQ3hB,QACtDujB,EAAO5D,OAAOiB,SAAS+S,EAAehU,QACtC4U,EAAeZ,EAAehU,SACrBgU,GACTpQ,EAAO5D,OAAOiB,cAAS/b,EAE3B,EAUMlC,QAASuxB,EACT,aAAYjgB,EAAKK,cAAc,CAAEra,GAAI,oCAI7C,gsCCvEA,IAmEA,GAnEkB,SAAHkJ,GAMT,IALJogB,EAAMpgB,EAANogB,OACAoQ,EAAcxwB,EAAdwwB,eAKMgB,EAAkB,SAACt6B,GACvB,IAAAu6B,EAA2Bv6B,EAAE+f,OAArBve,EAAK+4B,EAAL/4B,MAAOglB,EAAO+T,EAAP/T,QAETgU,EAAWlB,EAAemB,qBAAoBjzB,GAAAA,GAAA,GAC3C0hB,EAAOpN,UAAUta,OAAK,IAAE,CAACA,GAAQglB,IACtC,CAAE,CAAChlB,GAAQglB,GACf0C,EAAOpN,UAAUyK,SAASiU,EAC5B,EAEME,EAAapB,EAAeqB,oBAC/BtzB,QAAO,SAACyU,GAAS,OAAKA,EAAU8e,OAAO,IACvClkB,MAAK,SAAC/U,EAAGgV,GAAC,OAAKhV,EAAEiV,WAAaD,EAAEC,UAAU,IAC1CnX,KAAI,SAACqc,GACJ,OAAIwd,EAAemB,sBAEfhlB,EAAAA,GAAAA,KAAC4Q,GAAAA,EAAQ,CACPtgB,KAAK,aAEL2a,UAAU,gDACV4F,MAAOxK,EAAUwL,OACjBd,QAAS0C,EAAOpN,UAAUta,MAAMsa,EAAUlc,IAC1C2mB,SAAU+T,EACV94B,MAAOsa,EAAUlc,GACjBa,MAAOyoB,EAAOpN,UAAUrb,OAAM,aAAAiU,OANZoH,EAAUlc,MAWhC6V,EAAAA,GAAAA,KAACwY,GAAAA,EAAK,CACJloB,KAAK,aAEL2a,UAAU,gDACV4F,MAAOxK,EAAUwL,OACjBf,SAAU+T,EACV9T,QAAS0C,EAAOpN,UAAUta,MAAMsa,EAAUlc,IAC1C4B,MAAOsa,EAAUlc,GACjBa,MAAOyoB,EAAOpN,UAAUrb,OAAM,aAAAiU,OANZoH,EAAUlc,IASlC,IAEF,OAA0B,IAAtB86B,EAAW/0B,OAAqB,MAGlC8Y,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,2BAA0BlL,SAAA,EACvCC,EAAAA,GAAAA,KAAC6gB,GAAAA,GAAO,CAACvwB,KAAK,eACd0P,EAAAA,GAAAA,KAAC+V,GAAAA,EAAO,CACN9K,UAAU,WACVjW,QAASye,EAAOpN,UAAUrR,QAC1BoiB,MAAM,QACND,SAAS,MACT5G,UAAWkD,EAAOpN,UAAUrb,MAC5BqsB,YAAU,EAAAtX,SAETklB,MAIT,gsCCjEA,IA8CA,GA9CsB,SAAH5xB,GAMb,IALJogB,EAAMpgB,EAANogB,OACAoQ,EAAcxwB,EAAdwwB,eAKM1f,GAAOyF,EAAAA,GAAAA,KAOb,GALEia,EAAeuB,wCACbzpB,EAAgBua,cAClB2N,EAAeuB,wCACbzpB,EAAgB0pB,UAEG,OAAO,KAE9B,IAAMC,EACJzB,EAAeuB,wCACfzpB,EAAgBua,aAAY,GAAAjX,OACrBkF,EAAKK,cAAc,CAAEra,GAAI,iCAC5B4K,EAEA8b,EAAQgT,EAAe9T,8BACzB8T,EAAe9T,8BACf5L,EAAKK,cACH,CAAEra,GAAI,uBACN,CAAE,EAAG05B,EAAehS,OAAO1d,gBAGjC,OACE6U,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,aAAYlL,SAAA,EACzBC,EAAAA,GAAAA,KAAC6gB,GAAAA,GAAO,CAACvwB,KAAK,mBACd0P,EAAAA,GAAAA,KAAA,SAAOiL,UAAU,qBAAqBsa,QAAQ,gBAAexlB,SAC1D8Q,KAEH7Q,EAAAA,GAAAA,KAAC4Y,GAAAA,EAAK7mB,GAAAA,GAAA,GACA0hB,EAAOxN,eAAa,IACxB9b,GAAG,gBACH8gB,UAAU,qBACV2P,YAAa0K,EACb,aAAYzU,OAIpB,gsCC7CA,IAuCA,GAvCoB,SAAHxd,GAMX,IALJogB,EAAMpgB,EAANogB,OACAoQ,EAAcxwB,EAAdwwB,eAKM1f,GAAOyF,EAAAA,GAAAA,KAOb,GALEia,EAAe2B,mCACb7pB,EAAgBua,cAClB2N,EAAe2B,mCACb7pB,EAAgB0pB,UAEC,OAAO,KAE5B,IAAMI,EACJ5B,EAAe2B,mCACf7pB,EAAgBua,aAAY,GAAAjX,OACrBkF,EAAKK,cAAc,CAAEra,GAAI,iCAC5B4K,EAEN,OACEiU,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,aAAYlL,SAAA,EACzBC,EAAAA,GAAAA,KAAC6gB,GAAAA,GAAO,CAACvwB,KAAK,cACd0P,EAAAA,GAAAA,KAAA,SAAOiL,UAAU,qBAAqBsa,QAAQ,cAAaxlB,SACxDoE,EAAKK,cAAc,CAAEra,GAAI,gCAE5B6V,EAAAA,GAAAA,KAAC4Y,GAAAA,EAAK7mB,GAAAA,GAAA,GACA0hB,EAAOvN,UAAQ,IACnB/b,GAAG,cACH8gB,UAAU,qBACV2P,YAAa6K,EACb,aAAYthB,EAAKK,cAAc,CAAEra,GAAI,kCAI7C,gsCCjCA,IAqEA,GAnEgB,SAAHkJ,GAMP,IARkBtH,EAGtB0nB,EAAMpgB,EAANogB,OACAoQ,EAAcxwB,EAAdwwB,eAKcvI,EAAW9T,KAAjBtO,KACFwsB,EACJ7B,EAAe8B,0BACb/pB,EAAwBgqB,6BAZN75B,EAaL0nB,EAAOtN,MAAMpa,QAb6B,SAAVA,EAe3CoY,GAAOyF,EAAAA,GAAAA,KACb,IAAK8b,IAAepK,EAAQ,OAAO,KAEnC,IAAMM,EAAaN,EAAOta,MACxB,SAACmF,GAAK,OAAKA,EAAM0V,WAAapI,EAAOtN,MAAMpa,KAAK,IAG5C85B,EAAoBjK,EAAWK,SAClCrqB,QAAO,SAACtE,GAAC,OAAKA,EAAE6uB,KAAK,IACrBnyB,KAAI,SAACoc,GAAO,OACXpG,EAAAA,GAAAA,KAAA,UAAgCjU,MAAOqa,EAAQ4V,UAAUjc,SACtDqG,EAAQN,MADEM,EAAQ4V,UAEZ,IAEP8J,EAAgBlK,EAAWK,SAC9BrqB,QAAO,SAACtE,GAAC,OAAMA,EAAE6uB,KAAK,IACtBnyB,KAAI,SAACoc,GAAO,OACXpG,EAAAA,GAAAA,KAAA,UAAgCjU,MAAOqa,EAAQ4V,UAAUjc,SACtDqG,EAAQN,MADEM,EAAQ4V,UAEZ,IAGb,OACEhT,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,yBAAwBlL,SAAA,EACrCC,EAAAA,GAAAA,KAAC6gB,GAAAA,GAAO,CAACvwB,KAAK,aACd0Y,EAAAA,GAAAA,MAACqb,GAAAA,EAAMtyB,GAAAA,GAAA,CACLkZ,UAAU,uBACNwI,EAAOrN,SAAO,IAClB,aAAYjC,EAAKK,cAAc,CAAEra,GAAI,6BAA8B4V,SAAA,EAEnEC,EAAAA,GAAAA,KAAA,UAAQjU,MAAM,GAAEgU,SAAA,KAAAd,OAAOkF,EAAKK,cAAc,CAAEra,GAAI,6BAA6B,QAC5E27B,EAAc51B,OAAS,GAAK21B,EAAkB31B,OAAS,GACtD8P,EAAAA,GAAAA,KAAA,YACE6Q,MAAO1M,EAAKK,cAAc,CAAEra,GAAI,mCAAoC4V,SAEnE8lB,IAGHA,EAEDC,EAAc51B,OAAS,GAAK21B,EAAkB31B,OAAS,GACtD8P,EAAAA,GAAAA,KAAA,YACE6Q,MAAO1M,EAAKK,cAAc,CAAEra,GAAI,+BAAgC4V,SAE/D+lB,IAGHA,QAKV,gsCCvEA,IAAM9B,GAAgB,CAAC,WAoEvB,GAlEc,SAAH3wB,GAML,IALJogB,EAAMpgB,EAANogB,OACAyQ,EAAW7wB,EAAX6wB,YAKM/f,GAAOyF,EAAAA,GAAAA,KAEC0R,EAAW9T,KAAjBtO,KAER,IAAKoiB,EAAQ,OAAO,KAEpB,IAKMyK,EAAkBzK,EACrB1pB,QAAO,SAACtE,GAAC,OAAKA,EAAE6uB,KAAK,IACrBnyB,KAAI,SAACmc,GAAK,OACTnG,EAAAA,GAAAA,KAAA,UAA6BjU,MAAOoa,EAAM0V,SAAS9b,SAChDoG,EAAML,MADIK,EAAM0V,SAEV,IAEPmK,EAAc1K,EACjB1pB,QAAO,SAACtE,GAAC,OAAMA,EAAE6uB,KAAK,IACtBnyB,KAAI,SAACmc,GAAK,OACTnG,EAAAA,GAAAA,KAAA,UAA6BjU,MAAOoa,EAAM0V,SAAS9b,SAChDoG,EAAML,MADIK,EAAM0V,SAEV,IAGb,OACE7S,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,yBAAwBlL,SAAA,EACrCC,EAAAA,GAAAA,KAAC6gB,GAAAA,GAAO,CAACvwB,KAAK,WACd0Y,EAAAA,GAAAA,MAACqb,GAAAA,EAAMtyB,GAAAA,GAAA,GACD0hB,EAAOtN,OAAK,IAChB8E,UAAU,sBACV6F,SA1BkB,SAACvmB,GACvB25B,EAAYF,IACZvQ,EAAOtN,MAAM2K,SAASvmB,EACxB,EAwBM,aAAY4Z,EAAKK,cAAc,CAAEra,GAAI,2BAA4B4V,SAAA,EAEjEC,EAAAA,GAAAA,KAAA,UAAQjU,MAAM,GAAEgU,SAAA,KAAAd,OAAOkF,EAAKK,cAAc,CAAEra,GAAI,2BAA2B,QAC1E67B,EAAY91B,OAAS,GAAK61B,EAAgB71B,OAAS,GAClD8P,EAAAA,GAAAA,KAAA,YACE6Q,MAAO1M,EAAKK,cAAc,CAAEra,GAAI,iCAAkC4V,SAEjEgmB,IAGHA,EAEDC,EAAY91B,OAAS,GAAK61B,EAAgB71B,OAAS,GAClD8P,EAAAA,GAAAA,KAAA,YACE6Q,MAAO1M,EAAKK,cAAc,CAAEra,GAAI,6BAA8B4V,SAE7DimB,IAGHA,QAKV,ECvCA,GAzBqB,SAAH3yB,GAQZ,IAPJogB,EAAMpgB,EAANogB,OACAyQ,EAAW7wB,EAAX6wB,YACAL,EAAcxwB,EAAdwwB,eAYA,OALEA,EAAe8B,0BACb/pB,EAAwBqqB,mBAC1BpC,EAAe8B,0BACb/pB,EAAwBgqB,4BAK1B5c,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,kCAAiClL,SAAA,EAC9CC,EAAAA,GAAAA,KAAC4c,GAAK,CAACnJ,OAAQA,EAAQyQ,YAAaA,KACpClkB,EAAAA,GAAAA,KAACwb,GAAO,CAAC/H,OAAQA,EAAQoQ,eAAgBA,OALvB,IAQxB,ECKA,GA7BsB,SAAHxwB,GAQb,IAPJogB,EAAMpgB,EAANogB,OACAyQ,EAAW7wB,EAAX6wB,YACAD,EAAU5wB,EAAV4wB,WAMMje,EAAYyN,EAAOzN,UAAUja,MAEnC,IAAKia,EAAW,OAAO,KAEvB,IAAM6d,EAAiBI,EAAWjjB,MAAK,SAAC0b,GAAC,OAAKA,EAAEvyB,MAAQ6b,CAAS,IAEjE,OACEgD,EAAAA,GAAAA,MAAA,OAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAACkmB,GAAa,CAACzS,OAAQA,EAAQoQ,eAAgBA,KAC/C7jB,EAAAA,GAAAA,KAACyb,GAAY,CACXhI,OAAQA,EACRoQ,eAAgBA,EAChBK,YAAaA,KAEflkB,EAAAA,GAAAA,KAACmmB,GAAS,CAAC1S,OAAQA,EAAQoQ,eAAgBA,KAC3C7jB,EAAAA,GAAAA,KAAComB,GAAW,CAAC3S,OAAQA,EAAQoQ,eAAgBA,MAGnD,m6DCvBA,IAmFA,GAnFwB,SAAHxwB,GAUf,IATJwwB,EAAcxwB,EAAdwwB,eACAI,EAAU5wB,EAAV4wB,WACAxQ,EAAMpgB,EAANogB,OACAyQ,EAAW7wB,EAAX6wB,YAOM/f,GAAOyF,EAAAA,GAAAA,KACPyc,EAA2BpC,EAAWryB,QAC1C,SAACoU,GAAS,OACPyN,EAAO5D,OAAO9jB,OAASia,EAAU6J,SAAW4D,EAAO5D,OAAO9jB,KAAK,IAE9Du6B,EAAwBrC,EAAWrlB,QACvC,SAACC,EAAMmY,GACL,OACEvD,EAAO5D,OAAO9jB,QAAUw6B,EAAWzW,cACnCkH,EAAInH,SAAW0W,EAAWzW,aAErBjR,EAAKmY,EAAInF,QACd9f,GAAAA,GAAA,GAAY8M,GAAI,IAAE,CAACmY,EAAInF,QAAS,GAAH5S,OAAA0L,GAAO9L,EAAKmY,EAAInF,SAAO,CAAEmF,MAD/BjlB,GAAAA,GAAA,GAAY8M,GAAI,IAAE,CAACmY,EAAInF,QAAS,CAACmF,KAIxDvD,EAAO5D,OAAO9jB,QAAUw6B,EAAWzW,cACnCkH,EAAInH,SAAW0W,EAAWzW,aAErBjR,EAAKmY,EAAInF,QACd9f,GAAAA,GAAA,GAAY8M,GAAI,IAAE,CAACmY,EAAInF,QAAS,GAAH5S,OAAA0L,GAAO9L,EAAKmY,EAAInF,SAAO,CAAEmF,MAD/BjlB,GAAAA,GAAA,GAAY8M,GAAI,IAAE,CAACmY,EAAInF,QAAS,CAACmF,KAGnDnY,CACT,GACA,CAAC,GAEG2nB,EAA8B3C,EAChCyC,EAAsBzC,EAAehS,QACrC,GAEJ,OAAwC,IAApCwU,EAAyBn2B,OAAqB,MAGhD8Y,EAAAA,GAAAA,MAAA,OAAAjJ,SAAA,EACIsmB,EAAyBn2B,OAAS,GAClCs2B,EAA4Bt2B,OAAS,KACrC8P,EAAAA,GAAAA,KAAA,SAAOiL,UAAU,qBAAqBsa,QAAQ,gBAAexlB,SAC1DoE,EAAKK,cAAc,CAClBra,GACEspB,EAAO5D,OAAO9jB,QAAUw6B,EAAWzW,aAC/B,uBACA,qCAIZ9G,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,kCAAiClL,SAAA,CAC7CpV,OAAOD,KAAK47B,GAAuBp2B,OAAS,GAC3C8P,EAAAA,GAAAA,KAACymB,GAAS,CACRhT,OAAQA,EACRwQ,WAAYqC,EACZ/B,eAAgBN,EAChBC,YAAaA,IAEb,KACHzQ,EAAO5D,OAAO9jB,QAAUw6B,EAAWzW,cAClC9P,EAAAA,GAAAA,KAACtE,GAAM,CACLuoB,WAAYuC,EACZ/S,OAAQA,EACRyQ,YAAaA,IAEb,QAELzQ,EAAO5D,OAAO9jB,OAAS0nB,EAAOzN,UAAUja,OACvCiU,EAAAA,GAAAA,KAAC0mB,GAAa,CACZjT,OAAQA,EACRwQ,WAAYA,EACZC,YAAaA,IAEb,OAGV,8hECpEA,IAAMF,GAAgB,CACpB,SACA,YACA,gBACA,WACA,QACA,UACA,YACA,yBA+XF,GAhWoB,SAAH3wB,GAeiB,QAdhCogB,EAAMpgB,EAANogB,OACAnG,EAAOja,EAAPia,QACAqZ,EAAStzB,EAATszB,UACAzC,EAAW7wB,EAAX6wB,YACAvQ,EAActgB,EAAdsgB,eACAiT,EAAyBvzB,EAAzBuzB,0BACAC,EAAgBxzB,EAAhBwzB,iBACGxG,+WAAIC,CAAAjtB,EAAAktB,IAQsD1W,MAAfC,EAAAA,EAAAA,WAAS,KAAM,0nBAAtDgd,EAAejd,EAAA,GAAEkd,EAAkBld,EAAA,GACpC1F,GAAOyF,EAAAA,GAAAA,KACCxJ,EAAWiI,KAAjBnP,KACR8tB,EAAuDnpB,GAASuC,EAAQ6mB,MAAhEC,EAA4BF,EAA5BE,6BAA8BC,EAAYH,EAAZG,aAC9BC,EAAehnB,EAAfgnB,YAERlT,EAAAA,EAAAA,YAAU,WACkB,IAAtBkT,EAAWl3B,SACbujB,EAAO5D,OAAOiB,SAASsW,EAAW,GAAGvX,QACrC4D,EAAOzN,UAAU8K,SAASsW,EAAW,GAAGj9B,KAEmB,IAAzDwgB,GAAI,IAAIwZ,IAAIiD,EAAWp9B,KAAI,SAAC0yB,GAAC,OAAKA,EAAE7K,MAAM,MAAI3hB,QAChDujB,EAAOzN,UAAU8K,SAASsW,EAAW,GAAGj9B,IAEmB,IAAzDwgB,GAAI,IAAIwZ,IAAIiD,EAAWp9B,KAAI,SAAC0yB,GAAC,OAAKA,EAAE7M,MAAM,MAAI3f,QAChDujB,EAAO5D,OAAOiB,SAASsW,EAAW,GAAGvX,OAEzC,GAAG,IAEH,IAAMgU,GAAiBzJ,EAAAA,EAAAA,UACrB,kBAAMgN,EAAWpmB,MAAK,SAAC0b,GAAC,OAAKA,EAAEvyB,MAAQspB,EAAOzN,UAAUja,KAAK,GAAC,GAC9D,CAAC0nB,EAAOzN,UAAUja,MAAOq7B,IAErBC,GAAwBjN,EAAAA,EAAAA,UAC5B,kBACEgN,EAAWx1B,QACT,SAACoU,GAAS,OAAKA,EAAU6J,SAAWnU,EAAOoU,YAAY,GACxD,GACH,CAACsX,IAEGE,GAAgClN,EAAAA,EAAAA,UACpC,kBACEgN,EAAWx1B,QACT,SAACoU,GAAS,OAAKA,EAAU6J,SAAWnU,EAAOoU,YAAY,GACxD,GACH,CAACsX,IAGGvR,GAAcC,EAAAA,GAAAA,GAAI,CACtB,gBACEqR,GAAiBtD,GAAkBA,EAAe0D,aACpD,kBACGJ,GAAkBtD,GAAkBA,EAAe0D,gBAGlDC,GAA2CpN,EAAAA,EAAAA,UAC/C,kBA1FgD,SAClDyJ,EACAwD,EACAC,GAEA,QAAKzD,IACDA,EAAehU,SAAWnU,EAAOoU,aAEjC+T,EAAeuB,wCACbzpB,EAAgB8rB,eAClB5D,EAAe2B,mCACb7pB,EAAgB8rB,eAClB5D,EAAe8B,0BACb/pB,EAAwB6rB,eACO,IAAjCJ,EAAsBn3B,OAIxB2zB,EAAeuB,wCACbzpB,EAAgB8rB,eAClB5D,EAAe2B,mCACb7pB,EAAgB8rB,eAClB5D,EAAe8B,0BACb/pB,EAAwB6rB,eACe,IAAzCH,EAA8Bp3B,QAElC,CAiEMw3B,CACE7D,EACAwD,EACAC,EACD,GACH,CAACD,EAAuBC,EAA+BzD,IA4BzD,OACE7jB,EAAAA,GAAAA,KAAC2nB,GAAAA,EAAI51B,GAAAA,GAAA,GACCsuB,GAAI,IACR5M,OAAQA,EACRyQ,YAAaA,EACb0D,SAAUjB,EACVkB,QA/BsB,WACpBpU,EAAO3N,KAAK9a,MACdqmB,GAAS,OAAQ,CAAE/D,QAAAA,IACVmG,EAAO1N,MAAM/a,MACtBqmB,GAAS,QAAS,CAAE/D,QAAAA,IACXmG,EAAO5D,OAAO7kB,MACvBqmB,GAAS,SAAU,CAAE/D,QAAAA,IACZmG,EAAOzN,UAAUhb,MAC1BqmB,GAAS,YAAa,CAAE/D,QAAAA,IACfmG,EAAOxN,cAAcjb,MAC9BqmB,GAAS,gBAAiB,CAAE/D,QAAAA,IACnBmG,EAAOtN,MAAMnb,MACtBqmB,GAAS,QAAS,CAAE/D,QAAAA,IACXmG,EAAOrN,QAAQpb,MACxBqmB,GAAS,UAAW,CAAE/D,QAAAA,IACbmG,EAAOpN,UAAUrb,MAC1BqmB,GAAS,YAAa,CAAE/D,QAAAA,IACfmG,EAAOvN,SAASlb,MACzBqmB,GAAS,WAAY,CAAE/D,QAAAA,IACdmG,EAAOqQ,sBAAsB94B,OACtCqmB,GAAS,wBAAyB,CAAE/D,QAAAA,IAEtCyZ,GAAmB,EACrB,EASIpT,eAAgBA,EAAe5T,SAE9B,SAAAiO,GAAkB,IAAf4Z,EAAQ5Z,EAAR4Z,SAKF,OACE5e,EAAAA,GAAAA,MAAAI,GAAAA,SAAA,CAAArJ,SAAA,EACEiJ,EAAAA,GAAAA,MAAA,OAAAjJ,SAAA,EACEiJ,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,aAAYlL,SAAA,EACzBC,EAAAA,GAAAA,KAAC6gB,GAAAA,GAAO,CAACvwB,KAAK,UACd0P,EAAAA,GAAAA,KAAA,SAAOiL,UAAU,qBAAqBsa,QAAQ,WAAUxlB,SACrDoE,EAAKK,cAAc,CAAEra,GAAI,6BAE5B6V,EAAAA,GAAAA,KAAC4Y,GAAAA,EAAK7mB,GAAAA,GAAA,CACJ,aAAYoS,EAAKK,cAAc,CAC7Bra,GAAI,2BAEFspB,EAAO3N,MAAI,IACf8U,YAAY,GACZzwB,GAAG,WACH8gB,UAAU,4BAIdjL,EAAAA,GAAAA,KAAC6gB,GAAAA,GAAO,CAACvwB,KAAK,WACd0Y,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,aAAYlL,SAAA,EACzBC,EAAAA,GAAAA,KAAA,SAAOiL,UAAU,qBAAqBsa,QAAQ,WAAUxlB,SACrDoE,EAAKK,cAAc,CAAEra,GAAI,6BAE5B6V,EAAAA,GAAAA,KAAC4Y,GAAAA,EAAK7mB,GAAAA,GAAA,CACJ,aAAYoS,EAAKK,cAAc,CAC7Bra,GAAI,2BAEFspB,EAAO1N,OAAK,IAChB6U,YAAY,GACZzwB,GAAG,WACH8gB,UAAU,qBACV6c,aAAa,QACb58B,KAAK,cAGRm8B,EAAsBn3B,OAAS,GAChCo3B,EAA8Bp3B,OAAS,GACrC8Y,EAAAA,GAAAA,MAAAI,GAAAA,SAAA,CAAArJ,SAAA,EACEC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,qBAAoBlL,UACjCC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,+BAEvB6V,EAAAA,GAAAA,KAAC6gB,GAAAA,GAAO,CAACvwB,KAAK,YACd0Y,EAAAA,GAAAA,MAAC+e,GAAAA,EAAU,CACT/8B,MAAOyoB,EAAO5D,OAAO7kB,MACrBigB,UAAU,4BACV4F,MAAM,cACNvgB,KAAK,QAAOyP,SAAA,EAEZC,EAAAA,GAAAA,KAACwY,GAAAA,EAAK,CACJxtB,MAAOyoB,EAAO5D,OAAO7kB,MACrBg9B,OAAK,EACLjX,aACgChc,IAA9B6xB,GACAA,EAEF/V,MAAO1M,EAAKK,cACV,CAAEra,GAAI,oCACN,CACE89B,iBAAkB9jB,EAAKK,cAAc,CACnCra,GAAI,2BAIV8gB,UAAU,0BACV6F,SAAU,gBAEwB/b,IAA9B6xB,GACCA,IAED1C,EAAYF,IACZ6C,GAAiB,GACjBpT,EAAO5D,OAAOiB,SAASpV,EAAOoU,cACO,IAAjCuX,EAAsBn3B,QACxBujB,EAAOzN,UAAU8K,SACfuW,EAAsB,GAAGl9B,IAIjC,EAAE4V,SAEDynB,GACCxnB,EAAAA,GAAAA,KAACkoB,GAAe,CACdzU,OAAQA,EACRoQ,eAAgBA,EAChBI,WAAYmD,EACZlD,YAAaA,IAEb,QAENlb,EAAAA,GAAAA,MAACwP,GAAAA,EAAK,CACJxtB,MAAOyoB,EAAO5D,OAAO7kB,MACrBg9B,OAAK,EACLjX,aACgChc,IAA9B6xB,IACCA,EAEH/V,MAAO1M,EAAKK,cACV,CAAEra,GAAI,oCACN,CACE89B,iBAAkB9jB,EAAKK,cAAc,CACnCra,GAAI,mCAIV2mB,SAAU,iBAEwB/b,IAA9B6xB,GACAA,KAEAC,GAAiB,GACjB3C,EAAYF,IAQG,IANbrZ,GACK,IAAIwZ,IACLmD,EAA8Bt9B,KAC5B,SAAC0yB,GAAC,OAAKA,EAAE7M,MAAM,MAGnB3f,QAEFujB,EAAO5D,OAAOiB,SACZwW,EAA8B,GAAGzX,QAUtB,IANblF,GACK,IAAIwZ,IACLmD,EAA8Bt9B,KAC5B,SAAC0yB,GAAC,OAAKA,EAAE7K,MAAM,MAGnB3hB,QAEFujB,EAAOzN,UAAU8K,SACfwW,EAA8B,GAAGn9B,IAGQ,IAAzCm9B,EAA8Bp3B,QAChCujB,EAAOzN,UAAU8K,SACfwW,EAA8B,GAAGn9B,IAIzC,EAAE4V,SAAA,EAEFC,EAAAA,GAAAA,KAAC6gB,GAAAA,GAAO,CAACvwB,KAAK,WACbk3B,GACCxnB,EAAAA,GAAAA,KAACkoB,GAAe,CACdzU,OAAQA,EACRoQ,eAAgBA,EAChBI,WAAYmD,EACZlD,YAAaA,IAEb,eAKVlkB,EAAAA,GAAAA,KAACkoB,GAAe,CACdzU,OAAQA,EACRoQ,eAAgBA,EAChBI,WAAYmD,EACZlD,YAAaA,IAIhBL,GAAkBpQ,EAAO5D,OAAO9jB,OAC/BiU,EAAAA,GAAAA,KAACmoB,GAAqB,CACpBld,UACEoc,EAAsBn3B,OAAS,GAC/Bo3B,EAA8Bp3B,OAAS,OACnC6E,EACA,gBAEN0e,OAAQA,EACRoQ,eAAgBA,IAEhB,MAEJ7a,EAAAA,GAAAA,MAAA,OAAAjJ,SAAA,EACKK,EAAQgoB,QACTvE,GACAA,EAAe0D,cAChBL,GAAgCtpB,IAC/BoL,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,uBAAsBlL,SAAA,EACnCC,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAACC,KAAK,cAAcnkB,KAAK,QAAQokB,UAAU,YAC9ClP,EAAQgoB,QACVvE,GACAA,EAAe0D,cACbve,EAAAA,GAAAA,MAAAI,GAAAA,SAAA,CAAArJ,SAAA,EACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,wCACrB6V,EAAAA,GAAAA,KAAA,YAEA,KACHknB,GAAgCtpB,IAC/BoL,EAAAA,GAAAA,MAAAI,GAAAA,SAAA,CAAArJ,SAAA,EACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,mDACrB6V,EAAAA,GAAAA,KAAA,UACAA,EAAAA,GAAAA,KAAA,KACEoK,KAAMxM,GAAqByM,IAC3BC,OACE1M,GAAqB2M,MAAQ,cAAWxV,EAE1CyV,IACE5M,GAAqB2M,MACjB,2BACAxV,EACLgL,SAEAnC,GAAqBgN,WAGxB,QAEJ,KAEHuc,GACCne,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,uBAAsBlL,SAAA,EACnCC,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAACC,KAAK,QAAQnkB,KAAK,QAAQokB,UAAU,YAC1CtP,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,gDAErB,YAGR6V,EAAAA,GAAAA,KAACqoB,GAAAA,EAAW,CACVpd,UAAW4K,EACXvI,QAASA,EACToD,OAxOgB,WACpBqW,GAAmB,GACnBa,GACF,EAsOMU,gBAAiB,CACf/X,SAAUuW,GAEZrZ,cAAczN,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,sBACnCsmB,YAAYzQ,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,2BAIzC,IAGN,uQC7ZAqB,GAAA,kBAAAjB,CAAA,MAAAkB,EAAAlB,EAAA,GAAAmB,EAAAf,OAAAgB,UAAAC,EAAAF,EAAAG,eAAAvB,EAAAK,OAAAmB,gBAAA,SAAAL,EAAAlB,EAAAmB,GAAAD,EAAAlB,GAAAmB,EAAAK,KAAA,EAAAC,EAAA,mBAAAC,OAAAA,OAAA,GAAAC,EAAAF,EAAAG,UAAA,aAAAC,EAAAJ,EAAAK,eAAA,kBAAAC,EAAAN,EAAAO,aAAA,yBAAAC,EAAAf,EAAAlB,EAAAmB,GAAA,OAAAf,OAAAmB,eAAAL,EAAAlB,EAAA,CAAAwB,MAAAL,EAAAe,YAAA,EAAAC,cAAA,EAAAC,UAAA,IAAAlB,EAAAlB,EAAA,KAAAiC,EAAA,aAAAf,GAAAe,EAAA,SAAAf,EAAAlB,EAAAmB,GAAA,OAAAD,EAAAlB,GAAAmB,CAAA,WAAAkB,EAAAnB,EAAAlB,EAAAmB,EAAAE,GAAA,IAAAI,EAAAzB,GAAAA,EAAAoB,qBAAAkB,EAAAtC,EAAAsC,EAAAX,EAAAvB,OAAAmC,OAAAd,EAAAL,WAAAS,EAAA,IAAAW,EAAAnB,GAAA,WAAAtB,EAAA4B,EAAA,WAAAH,MAAAiB,EAAAvB,EAAAC,EAAAU,KAAAF,CAAA,UAAAe,EAAAxB,EAAAlB,EAAAmB,GAAA,WAAAR,KAAA,SAAAgC,IAAAzB,EAAA0B,KAAA5C,EAAAmB,GAAA,OAAAD,GAAA,OAAAP,KAAA,QAAAgC,IAAAzB,EAAA,EAAAlB,EAAAqC,KAAAA,EAAA,IAAAQ,EAAA,iBAAAC,EAAA,iBAAAC,EAAA,YAAAC,EAAA,YAAAC,EAAA,YAAAX,IAAA,UAAAY,IAAA,UAAAC,IAAA,KAAAC,EAAA,GAAAnB,EAAAmB,EAAAzB,GAAA,8BAAA0B,EAAAjD,OAAAkD,eAAAC,EAAAF,GAAAA,EAAAA,EAAAG,EAAA,MAAAD,GAAAA,IAAApC,GAAAE,EAAAuB,KAAAW,EAAA5B,KAAAyB,EAAAG,GAAA,IAAAE,EAAAN,EAAA/B,UAAAkB,EAAAlB,UAAAhB,OAAAmC,OAAAa,GAAA,SAAAM,EAAAxC,GAAA,0BAAAyC,SAAA,SAAA3D,GAAAiC,EAAAf,EAAAlB,GAAA,SAAAkB,GAAA,YAAA0C,QAAA5D,EAAAkB,EAAA,gBAAA2C,EAAA3C,EAAAlB,GAAA,SAAA8D,EAAA3C,EAAApB,EAAA0B,EAAAE,GAAA,IAAAE,EAAAa,EAAAxB,EAAAC,GAAAD,EAAAnB,GAAA,aAAA8B,EAAAlB,KAAA,KAAAoB,EAAAF,EAAAc,IAAAE,EAAAd,EAAAP,MAAA,OAAAqB,GAAA,UAAAkB,GAAAlB,IAAAxB,EAAAuB,KAAAC,EAAA,WAAA7C,EAAAK,QAAAwC,EAAAmB,SAAAC,MAAA,SAAA/C,GAAA4C,EAAA,OAAA5C,EAAAO,EAAAE,EAAA,aAAAT,GAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAA3B,EAAAK,QAAAwC,GAAAoB,MAAA,SAAA/C,GAAAa,EAAAP,MAAAN,EAAAO,EAAAM,EAAA,aAAAb,GAAA,OAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAAA,EAAAE,EAAAc,IAAA,KAAAxB,EAAApB,EAAA,gBAAAyB,MAAA,SAAAN,EAAAG,GAAA,SAAA6C,IAAA,WAAAlE,GAAA,SAAAA,EAAAmB,GAAA2C,EAAA5C,EAAAG,EAAArB,EAAAmB,EAAA,WAAAA,EAAAA,EAAAA,EAAA8C,KAAAC,EAAAA,GAAAA,GAAA,aAAAzB,EAAAzC,EAAAmB,EAAAE,GAAA,IAAAtB,EAAA8C,EAAA,gBAAApB,EAAAE,GAAA,GAAA5B,IAAAgD,EAAA,MAAA9C,MAAA,mCAAAF,IAAAiD,EAAA,cAAAvB,EAAA,MAAAE,EAAA,OAAAH,MAAAN,EAAAiD,MAAA,OAAA9C,EAAA+C,OAAA3C,EAAAJ,EAAAsB,IAAAhB,IAAA,KAAAE,EAAAR,EAAAgD,SAAA,GAAAxC,EAAA,KAAAE,EAAAuC,EAAAzC,EAAAR,GAAA,GAAAU,EAAA,IAAAA,IAAAkB,EAAA,gBAAAlB,CAAA,cAAAV,EAAA+C,OAAA/C,EAAAkD,KAAAlD,EAAAmD,MAAAnD,EAAAsB,SAAA,aAAAtB,EAAA+C,OAAA,IAAArE,IAAA8C,EAAA,MAAA9C,EAAAiD,EAAA3B,EAAAsB,IAAAtB,EAAAoD,kBAAApD,EAAAsB,IAAA,gBAAAtB,EAAA+C,QAAA/C,EAAAqD,OAAA,SAAArD,EAAAsB,KAAA5C,EAAAgD,EAAA,IAAAK,EAAAV,EAAA1C,EAAAmB,EAAAE,GAAA,cAAA+B,EAAAzC,KAAA,IAAAZ,EAAAsB,EAAA8C,KAAAnB,EAAAF,EAAAM,EAAAT,MAAAM,EAAA,gBAAAzB,MAAA4B,EAAAT,IAAAwB,KAAA9C,EAAA8C,KAAA,WAAAf,EAAAzC,OAAAZ,EAAAiD,EAAA3B,EAAA+C,OAAA,QAAA/C,EAAAsB,IAAAS,EAAAT,IAAA,YAAA2B,EAAAtE,EAAAmB,GAAA,IAAAE,EAAAF,EAAAiD,OAAArE,EAAAC,EAAA4B,SAAAP,GAAA,GAAAtB,IAAAmB,EAAA,OAAAC,EAAAkD,SAAA,eAAAhD,GAAArB,EAAA4B,SAAA+C,SAAAxD,EAAAiD,OAAA,SAAAjD,EAAAwB,IAAAzB,EAAAoD,EAAAtE,EAAAmB,GAAA,UAAAA,EAAAiD,SAAA,WAAA/C,IAAAF,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAvD,EAAA,aAAA4B,EAAA,IAAAxB,EAAAiB,EAAA3C,EAAAC,EAAA4B,SAAAT,EAAAwB,KAAA,aAAAlB,EAAAd,KAAA,OAAAQ,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAAlB,EAAAkB,IAAAxB,EAAAkD,SAAA,KAAApB,EAAA,IAAAtB,EAAAF,EAAAkB,IAAA,OAAAhB,EAAAA,EAAAwC,MAAAhD,EAAAnB,EAAA6E,YAAAlD,EAAAH,MAAAL,EAAA2D,KAAA9E,EAAA+E,QAAA,WAAA5D,EAAAiD,SAAAjD,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,GAAAC,EAAAkD,SAAA,KAAApB,GAAAtB,GAAAR,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAzD,EAAAkD,SAAA,KAAApB,EAAA,UAAA+B,EAAA9D,GAAA,IAAAlB,EAAA,CAAAiF,OAAA/D,EAAA,SAAAA,IAAAlB,EAAAkF,SAAAhE,EAAA,SAAAA,IAAAlB,EAAAmF,WAAAjE,EAAA,GAAAlB,EAAAoF,SAAAlE,EAAA,SAAAmE,WAAAC,KAAAtF,EAAA,UAAAuF,EAAArE,GAAA,IAAAlB,EAAAkB,EAAAsE,YAAA,GAAAxF,EAAAW,KAAA,gBAAAX,EAAA2C,IAAAzB,EAAAsE,WAAAxF,CAAA,UAAAwC,EAAAtB,GAAA,KAAAmE,WAAA,EAAAJ,OAAA,SAAA/D,EAAAyC,QAAAqB,EAAA,WAAAS,OAAA,YAAAjC,EAAAxD,GAAA,GAAAA,GAAA,KAAAA,EAAA,KAAAmB,EAAAnB,EAAA2B,GAAA,GAAAR,EAAA,OAAAA,EAAAyB,KAAA5C,GAAA,sBAAAA,EAAA8E,KAAA,OAAA9E,EAAA,IAAA0F,MAAA1F,EAAA2F,QAAA,KAAA5F,GAAA,EAAA0B,EAAA,SAAAqD,IAAA,OAAA/E,EAAAC,EAAA2F,QAAA,GAAAtE,EAAAuB,KAAA5C,EAAAD,GAAA,OAAA+E,EAAAtD,MAAAxB,EAAAD,GAAA+E,EAAAX,MAAA,EAAAW,EAAA,OAAAA,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,SAAArD,EAAAqD,KAAArD,CAAA,YAAAmD,UAAAb,GAAA/D,GAAA,2BAAAkD,EAAA9B,UAAA+B,EAAApD,EAAA0D,EAAA,eAAAjC,MAAA2B,EAAAhB,cAAA,IAAApC,EAAAoD,EAAA,eAAA3B,MAAA0B,EAAAf,cAAA,IAAAe,EAAA0C,YAAA3D,EAAAkB,EAAApB,EAAA,qBAAA/B,EAAA6F,oBAAA,SAAA3E,GAAA,IAAAlB,EAAA,mBAAAkB,GAAAA,EAAA4E,YAAA,QAAA9F,IAAAA,IAAAkD,GAAA,uBAAAlD,EAAA4F,aAAA5F,EAAA+F,MAAA,EAAA/F,EAAAgG,KAAA,SAAA9E,GAAA,OAAAd,OAAA6F,eAAA7F,OAAA6F,eAAA/E,EAAAiC,IAAAjC,EAAAgF,UAAA/C,EAAAlB,EAAAf,EAAAa,EAAA,sBAAAb,EAAAE,UAAAhB,OAAAmC,OAAAkB,GAAAvC,CAAA,EAAAlB,EAAAmG,MAAA,SAAAjF,GAAA,OAAA8C,QAAA9C,EAAA,EAAAwC,EAAAG,EAAAzC,WAAAa,EAAA4B,EAAAzC,UAAAS,GAAA,0BAAA7B,EAAA6D,cAAAA,EAAA7D,EAAAoG,MAAA,SAAAlF,EAAAC,EAAAE,EAAAtB,EAAA0B,QAAA,IAAAA,IAAAA,EAAA4E,SAAA,IAAA1E,EAAA,IAAAkC,EAAAxB,EAAAnB,EAAAC,EAAAE,EAAAtB,GAAA0B,GAAA,OAAAzB,EAAA6F,oBAAA1E,GAAAQ,EAAAA,EAAAmD,OAAAb,MAAA,SAAA/C,GAAA,OAAAA,EAAAiD,KAAAjD,EAAAM,MAAAG,EAAAmD,MAAA,KAAApB,EAAAD,GAAAxB,EAAAwB,EAAA1B,EAAA,aAAAE,EAAAwB,EAAA9B,GAAA,0BAAAM,EAAAwB,EAAA,qDAAAzD,EAAAG,KAAA,SAAAe,GAAA,IAAAlB,EAAAI,OAAAc,GAAAC,EAAA,WAAAE,KAAArB,EAAAmB,EAAAmE,KAAAjE,GAAA,OAAAF,EAAAmF,UAAA,SAAAxB,IAAA,KAAA3D,EAAAwE,QAAA,KAAAzE,EAAAC,EAAAoF,MAAA,GAAArF,KAAAlB,EAAA,OAAA8E,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,QAAAA,EAAAX,MAAA,EAAAW,CAAA,GAAA9E,EAAAwD,OAAAA,EAAAhB,EAAApB,UAAA,CAAA0E,YAAAtD,EAAAiD,MAAA,SAAAzF,GAAA,QAAAwG,KAAA,OAAA1B,KAAA,OAAAP,KAAA,KAAAC,MAAAtD,EAAA,KAAAiD,MAAA,OAAAE,SAAA,UAAAD,OAAA,YAAAzB,IAAAzB,EAAA,KAAAmE,WAAA1B,QAAA4B,IAAAvF,EAAA,QAAAmB,KAAA,WAAAA,EAAAsF,OAAA,IAAApF,EAAAuB,KAAA,KAAAzB,KAAAuE,OAAAvE,EAAAuF,MAAA,WAAAvF,GAAAD,EAAA,EAAAyF,KAAA,gBAAAxC,MAAA,MAAAjD,EAAA,KAAAmE,WAAA,GAAAG,WAAA,aAAAtE,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,YAAAiE,IAAA,EAAAnC,kBAAA,SAAAzE,GAAA,QAAAmE,KAAA,MAAAnE,EAAA,IAAAmB,EAAA,cAAA0F,EAAAxF,EAAAtB,GAAA,OAAA4B,EAAAhB,KAAA,QAAAgB,EAAAgB,IAAA3C,EAAAmB,EAAA2D,KAAAzD,EAAAtB,IAAAoB,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,KAAAnB,CAAA,SAAAA,EAAA,KAAAsF,WAAAM,OAAA,EAAA5F,GAAA,IAAAA,EAAA,KAAA0B,EAAA,KAAA4D,WAAAtF,GAAA4B,EAAAF,EAAA+D,WAAA,YAAA/D,EAAAwD,OAAA,OAAA4B,EAAA,UAAApF,EAAAwD,QAAA,KAAAuB,KAAA,KAAA3E,EAAAR,EAAAuB,KAAAnB,EAAA,YAAAM,EAAAV,EAAAuB,KAAAnB,EAAA,iBAAAI,GAAAE,EAAA,SAAAyE,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,WAAAsB,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,SAAAtD,GAAA,QAAA2E,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,YAAAnD,EAAA,MAAA9B,MAAA,kDAAAuG,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,KAAAT,OAAA,SAAAxD,EAAAlB,GAAA,QAAAmB,EAAA,KAAAkE,WAAAM,OAAA,EAAAxE,GAAA,IAAAA,EAAA,KAAApB,EAAA,KAAAsF,WAAAlE,GAAA,GAAApB,EAAAkF,QAAA,KAAAuB,MAAAnF,EAAAuB,KAAA7C,EAAA,oBAAAyG,KAAAzG,EAAAoF,WAAA,KAAA1D,EAAA1B,EAAA,OAAA0B,IAAA,UAAAP,GAAA,aAAAA,IAAAO,EAAAwD,QAAAjF,GAAAA,GAAAyB,EAAA0D,aAAA1D,EAAA,UAAAE,EAAAF,EAAAA,EAAA+D,WAAA,UAAA7D,EAAAhB,KAAAO,EAAAS,EAAAgB,IAAA3C,EAAAyB,GAAA,KAAA2C,OAAA,YAAAU,KAAArD,EAAA0D,WAAAlC,GAAA,KAAA6D,SAAAnF,EAAA,EAAAmF,SAAA,SAAA5F,EAAAlB,GAAA,aAAAkB,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,gBAAAzB,EAAAP,MAAA,aAAAO,EAAAP,KAAA,KAAAmE,KAAA5D,EAAAyB,IAAA,WAAAzB,EAAAP,MAAA,KAAAiG,KAAA,KAAAjE,IAAAzB,EAAAyB,IAAA,KAAAyB,OAAA,cAAAU,KAAA,kBAAA5D,EAAAP,MAAAX,IAAA,KAAA8E,KAAA9E,GAAAiD,CAAA,EAAA8D,OAAA,SAAA7F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAAgE,aAAAjE,EAAA,YAAA4F,SAAA3F,EAAAqE,WAAArE,EAAAiE,UAAAG,EAAApE,GAAA8B,CAAA,GAAA+D,MAAA,SAAA9F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAA8D,SAAA/D,EAAA,KAAAG,EAAAF,EAAAqE,WAAA,aAAAnE,EAAAV,KAAA,KAAAZ,EAAAsB,EAAAsB,IAAA4C,EAAApE,EAAA,QAAApB,CAAA,QAAAE,MAAA,0BAAAgH,cAAA,SAAAjH,EAAAmB,EAAAE,GAAA,YAAAgD,SAAA,CAAAzC,SAAA4B,EAAAxD,GAAA6E,WAAA1D,EAAA4D,QAAA1D,GAAA,cAAA+C,SAAA,KAAAzB,IAAAzB,GAAA+B,CAAA,GAAAjD,CAAA,UAAAkH,GAAA7F,EAAAH,EAAAlB,EAAAmB,EAAApB,EAAA4B,EAAAE,GAAA,QAAAJ,EAAAJ,EAAAM,GAAAE,GAAAE,EAAAN,EAAAD,KAAA,OAAAH,GAAA,YAAArB,EAAAqB,EAAA,CAAAI,EAAA0C,KAAAjD,EAAAa,GAAAsE,QAAAhG,QAAA0B,GAAAkC,KAAA9C,EAAApB,EAAA,UAAAoH,GAAAnH,EAAAmB,GAAA,IAAAD,EAAAd,OAAAD,KAAAH,GAAA,GAAAI,OAAAgH,sBAAA,KAAArH,EAAAK,OAAAgH,sBAAApH,GAAAmB,IAAApB,EAAAA,EAAAsH,QAAA,SAAAlG,GAAA,OAAAf,OAAAkH,yBAAAtH,EAAAmB,GAAAe,UAAA,KAAAhB,EAAAoE,KAAAiC,MAAArG,EAAAnB,EAAA,QAAAmB,CAAA,UAAAsG,GAAAxH,GAAA,QAAAmB,EAAA,EAAAA,EAAAsG,UAAA9B,OAAAxE,IAAA,KAAAD,EAAA,MAAAuG,UAAAtG,GAAAsG,UAAAtG,GAAA,GAAAA,EAAA,EAAAgG,GAAA/G,OAAAc,IAAA,GAAAyC,SAAA,SAAAxC,GAAAuG,GAAA1H,EAAAmB,EAAAD,EAAAC,GAAA,IAAAf,OAAAuH,0BAAAvH,OAAAwH,iBAAA5H,EAAAI,OAAAuH,0BAAAzG,IAAAiG,GAAA/G,OAAAc,IAAAyC,SAAA,SAAAxC,GAAAf,OAAAmB,eAAAvB,EAAAmB,EAAAf,OAAAkH,yBAAApG,EAAAC,GAAA,WAAAnB,CAAA,UAAA0H,GAAA1H,EAAAmB,EAAAD,GAAA,OAAAC,EAAA,SAAAD,GAAA,IAAAO,EAAA,SAAAP,GAAA,aAAA6C,GAAA7C,KAAAA,EAAA,OAAAA,EAAA,IAAAlB,EAAAkB,EAAAQ,OAAAwG,aAAA,YAAAlI,EAAA,KAAAyB,EAAAzB,EAAA4C,KAAA1B,EAAAC,UAAA,aAAA4C,GAAAtC,GAAA,OAAAA,EAAA,UAAAmD,UAAA,uDAAAuD,OAAAjH,EAAA,CAAAkH,CAAAlH,GAAA,gBAAA6C,GAAAtC,GAAAA,EAAAA,EAAA,GAAAqG,CAAA3G,MAAAnB,EAAAI,OAAAmB,eAAAvB,EAAAmB,EAAA,CAAAK,MAAAN,EAAAgB,YAAA,EAAAC,cAAA,EAAAC,UAAA,IAAApC,EAAAmB,GAAAD,EAAAlB,CAAA,UAAAgc,GAAA7a,EAAAnB,GAAA,gBAAAmB,GAAA,GAAA8a,MAAAC,QAAA/a,GAAA,OAAAA,CAAA,CAAAgb,CAAAhb,IAAA,SAAAA,EAAA2B,GAAA,IAAA5B,EAAA,MAAAC,EAAA,yBAAAO,QAAAP,EAAAO,OAAAE,WAAAT,EAAA,uBAAAD,EAAA,KAAAlB,EAAAqB,EAAAI,EAAAM,EAAAJ,EAAA,GAAAoB,GAAA,EAAAhD,GAAA,SAAA0B,GAAAP,EAAAA,EAAA0B,KAAAzB,IAAA2D,KAAA,IAAAhC,EAAA,IAAA1C,OAAAc,KAAAA,EAAA,OAAA6B,GAAA,cAAAA,GAAA/C,EAAAyB,EAAAmB,KAAA1B,IAAAiD,QAAAxC,EAAA2D,KAAAtF,EAAAwB,OAAAG,EAAAgE,SAAA7C,GAAAC,GAAA,UAAA5B,GAAApB,GAAA,EAAAsB,EAAAF,CAAA,iBAAA4B,GAAA,MAAA7B,EAAAyD,SAAA5C,EAAAb,EAAAyD,SAAAvE,OAAA2B,KAAAA,GAAA,kBAAAhC,EAAA,MAAAsB,CAAA,SAAAM,CAAA,EAAAya,CAAAjb,EAAAnB,IAAAuc,GAAApb,EAAAnB,IAAA,qBAAA4E,UAAA,6IAAA4X,EAAA,UAAAD,GAAApb,EAAAQ,GAAA,GAAAR,EAAA,qBAAAA,EAAA,OAAAkb,GAAAlb,EAAAQ,GAAA,IAAAT,EAAA,GAAA4O,SAAAlN,KAAAzB,GAAAuF,MAAA,uBAAAxF,GAAAC,EAAA2E,cAAA5E,EAAAC,EAAA2E,YAAAC,MAAA,QAAA7E,GAAA,QAAAA,EAAA+a,MAAAK,KAAAnb,GAAA,cAAAD,GAAA,2CAAA8Y,KAAA9Y,GAAAmb,GAAAlb,EAAAQ,QAAA,YAAA0a,GAAAlb,EAAAQ,IAAA,MAAAA,GAAAA,EAAAR,EAAAwE,UAAAhE,EAAAR,EAAAwE,QAAA,QAAA3F,EAAA,EAAAqB,EAAA4a,MAAAta,GAAA3B,EAAA2B,EAAA3B,IAAAqB,EAAArB,GAAAmB,EAAAnB,GAAA,OAAAqB,CAAA,CA+CA,IAAMsmB,GAAS,IAAI9a,EA6PnB,GA3PqB,SAAH/D,GAAwC,IAjD1D3H,EAiDwBvB,EAAEkJ,EAAFlJ,GAAOk2B,EAjD/B,SAAA91B,EAAAkB,GAAA,SAAAlB,EAAA,aAAAD,EAAAoB,EAAAM,EAAA,SAAAN,EAAAnB,GAAA,SAAAmB,EAAA,aAAAD,EAAA,WAAAG,KAAAF,EAAA,MAAAG,eAAAsB,KAAAzB,EAAAE,GAAA,SAAArB,EAAA6J,QAAAxI,GAAA,SAAAH,EAAAG,GAAAF,EAAAE,EAAA,QAAAH,CAAA,CAAA88B,CAAAh+B,EAAAkB,GAAA,GAAAd,OAAAgH,sBAAA,KAAA/F,EAAAjB,OAAAgH,sBAAApH,GAAA,IAAAmB,EAAA,EAAAA,EAAAE,EAAAsE,OAAAxE,IAAApB,EAAAsB,EAAAF,IAAA,IAAAD,EAAA2I,QAAA9J,IAAA,GAAAk+B,qBAAAr7B,KAAA5C,EAAAD,KAAA0B,EAAA1B,GAAAC,EAAAD,GAAA,QAAA0B,CAAA,CAiDmCs0B,CAAAjtB,EAAAktB,IAC3Bpc,GAAOyF,EAAAA,GAAAA,KACCxJ,EAAYiI,KAAlBnP,KACRgmB,EAAoC3W,KAAtBlI,EAAS6e,EAAfhmB,KAAiBimB,EAAMD,EAANC,OACnBta,EAAc8C,KACd8gB,EAAiB1gB,KACjB2gB,GAAWC,EAAAA,EAAAA,MACuCC,EAAAriB,GAAjB1G,KAAiB,GAA/CpH,EAAcmwB,EAAA,GAAdnwB,eAAkB6a,EAAQsV,EAAA,GACnBC,GAAoBzW,EAAAA,GAAAA,KAA5BrkB,OAEiE8b,EAAAtD,IAAnBuD,EAAAA,EAAAA,YAAmB,GAAlE8c,EAAyB/c,EAAA,GAAEgd,EAAgBhd,EAAA,GAuB5Cif,EAAoB,SAAC/6B,GACzB,IAAQiY,EAAcjY,EAAdiY,UACR,OAAOA,GAA2B,KAAdA,GAAkC,SAAdA,CAC1C,EAEQohB,EAAehnB,EAAfgnB,WACFvD,EAAiB,SAAC91B,GACtB,IAAQiY,EAAcjY,EAAdiY,UACR,OAAOohB,EAAWpmB,MAAK,SAAC0b,GAAC,OAAKA,EAAEvyB,MAAQ6b,CAAS,GACnD,EACM+iB,EA5FR,SAAAr9B,GAAA,GAAA8a,MAAAC,QAAA/a,GAAA,OAAAkb,GAAAlb,EAAA,CAAAgzB,CAAAhzB,EA4FuB,IAAIy4B,IAAIiD,EAAWp9B,KAAI,SAAC0yB,GAAC,OAAKA,EAAE7M,MAAM,OA5F7D,SAAAnkB,GAAA,uBAAAO,QAAA,MAAAP,EAAAO,OAAAE,WAAA,MAAAT,EAAA,qBAAA8a,MAAAK,KAAAnb,EAAA,CAAAizB,CAAAjzB,IAAAob,GAAApb,IAAA,qBAAAyD,UAAA,wIAAAyvB,GA6FQoK,GAAiBC,EAAAA,GAAAA,GAA6B,CAClDnjB,KAAM,CACJ/Z,MAAO,GACPqY,WAAY,CAAArS,GAAAA,GAAA,GAELm3B,GAAAA,IAA4B,IAC/Bl0B,QAASmP,EAAKK,cAAc,CAAEra,GAAI,sCAIxC4b,MAAO,CACLha,MAAO,GACPqY,WAAY,CAAArS,GAAAA,GAAA,GAELm3B,GAAAA,IAA4B,IAC/Bl0B,QAASmP,EAAKK,cAAc,CAAEra,GAAI,qCAEpC+Z,GAAgBC,KAGpB0L,OAAQ,CACN9jB,MAA2B,IAApBg9B,EAAS74B,OAAe64B,EAAS,QAAKh0B,EAC7CqP,WAAY,CAAArS,GAAAA,GAAA,GAELm3B,GAAAA,IAA4B,IAC/Bl0B,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,wCAKZ6b,UAAW,CACTja,MAA6B,IAAtBq7B,EAAWl3B,OAAek3B,EAAW,GAAGj9B,QAAK4K,EACpDqP,WAAY,CAAArS,GAAAA,GAAA,GAELm3B,GAAAA,IAAkC,IACrCl0B,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,2CAKZ8b,cAAe,CACbla,MAAO,GACPqY,WAAY,CACV,CACEA,WAAY,SAACC,EAAOtW,GAAM,OACvB+6B,EAAkB/6B,KAlEC,SAAC81B,GAAkC,OAC/DA,EAAeuB,wCACfzpB,EAAgBua,YAAY,CAiEnBiT,CAAsBtF,EAAe91B,KACtCm7B,GAAAA,GAA6B9kB,WAAWC,EAAOtW,EAAO,EACxDiH,QAAS,SAACo0B,EAAGr7B,GAAM,OACjBoW,EAAKK,cACH,CAAEra,GAAI,0CACN,CAAE,EAAG,GAAF8U,OAAK4kB,EAAe91B,GAAQgiB,gCAChC,KAIT5J,MAAO,CACLpa,MAAO,GACPqY,WAAY,CACV,CACEA,WAAY,SAACC,EAAOtW,GAAM,OACvB+6B,EAAkB/6B,KA5FP,SAAC81B,GAAkC,OACvDA,EAAe8B,0BACb/pB,EAAwBgqB,4BAC1B/B,EAAe8B,0BACb/pB,EAAwBqqB,iBAAiB,CAyFlCoD,CAAcxF,EAAe91B,KAC9Bm7B,GAAAA,GAAmC9kB,WAAWC,EAAOtW,EAAO,EAC9DiH,QAASmP,EAAKK,cAAc,CAAEra,GAAI,sCAIxCic,QAAS,CACPra,MAAO,GACPqY,WAAY,CACV,CACEA,WAAY,SAACC,EAAOtW,GAAM,OACvB+6B,EAAkB/6B,KAlGL,SAAC81B,GAAkC,OACzDA,EAAe8B,0BACf/pB,EAAwBgqB,0BAA0B,CAiGzC0D,CAAgBzF,EAAe91B,KAChCm7B,GAAAA,GAAmC9kB,WAAWC,EAAOtW,EAAO,EAC9DiH,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,wCAKZ+b,SAAU,CACRna,MAAO,GACPqY,WAAY,CACV,CACEA,WAAY,SAACC,EAAOtW,GAAM,OACvB+6B,EAAkB/6B,KAxGJ,SAAC81B,GAAkC,OAC1DA,EAAe2B,mCACf7pB,EAAgBua,YAAY,CAuGnBqT,CAAiB1F,EAAe91B,KACjCm7B,GAAAA,GAA6B9kB,WAAWC,EAAOtW,EAAO,EACxDiH,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,+CAKZkc,UAAW,CACTta,MAAO,CAAC,EACRqY,WAAY,CACV,CACEA,WAAY,SAACC,EAAOtW,GAAM,OACvB+6B,EAAkB/6B,KAClB81B,EAAe91B,GAAQy7B,yBACxB7+B,OAAOD,KAAK2Z,GAAOzS,QAAO,SAAC5F,GAAC,OAAKqY,EAAMrY,EAAE,IAAEkE,OAAS,CAAC,EACvD8E,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,0CAKZ25B,sBAAuB,CACrB/3B,OAAO,EACPqY,WAAY,CACV,CACEA,WAAY,SAACC,EAAOtW,GAAM,OACvB+6B,EAAkB/6B,KArJS,SAAC81B,GAAkC,OACvEA,EAAeC,qBAAqB,CAqJ3B2F,CAA8B5F,EAAe91B,KAC9Cm7B,GAAAA,GAAiC9kB,WAAWC,EAAOtW,EAAO,EAC5DiH,QAAS,SAACo0B,EAAGr7B,GAAM,OACjB81B,EAAe91B,GAAQ27B,iCACrBprB,GAAcuG,IAEXgf,EAAe91B,GAAQ27B,iCACtBprB,GAAcuG,IAEhBV,EAAKK,cACH,CAAEra,GAAI,iDACN,CAAE,EAAG05B,EAAe91B,GAAQ8jB,OAAO1d,eACpC,OAMf,IAAKkM,EAAW,OAAO,KAEvB,IAAMspB,EAAW,eAvOnB/9B,EAuOmBoiB,GAvOnBpiB,EAuOmBJ,KAAA+E,MAAG,SAAA+C,IAAA,IAAAmS,EAAAvM,EAAA,OAAA1N,KAAAoB,MAAA,SAAAkH,GAAA,cAAAA,EAAA/C,KAAA+C,EAAAzE,MAAA,OAef,OAdH0D,EAAAA,EAAAA,MAAOe,EAAA/C,KAAA,EAELuiB,EAAS,CACPpoB,KAAM,iBACNwU,SAAS,IAGL+F,EAAK8M,GACTlS,EAAUvI,UACV+J,GAAmBxB,EAAWwoB,GAC9BpwB,EACAoM,GACA,EACAmkB,EAAej7B,QAChB+F,EAAAzE,KAAA,EAEkB6iB,GAAO0X,gBACxBxpB,EAAQjW,GACRs+B,EACApoB,EAAUvI,UACV2N,GACD,OALS,OAAJvM,EAAIpF,EAAAhF,KAAAgF,EAAAzE,KAAG,EAMP8vB,IAAQ,QACdhR,EAAAA,GAAAA,IAAMhkB,GACNgjB,GAAajU,EAAK3B,UAAW2B,EAAKpB,WAClC4wB,EAASvoB,GAAOE,UAAUnH,EAAK3B,UAAW2B,EAAKpB,YAE3CoB,EAAK2wB,kBAAoB5tB,EAAgB6tB,gBAC3Cv1B,EAAAA,EAAAA,IACE,UACA4P,EAAKK,cAAc,CAAEra,GAAI,iCACzBga,EAAKK,cAAc,CAAEra,GAAI,wCAE5B2J,EAAAzE,KAAA,iBAAAyE,EAAA/C,KAAA,GAAA+C,EAAAwrB,GAAAxrB,EAAA,SAEDwf,EAAS,CACPpoB,KAAM,iBACNwU,aAAS3K,IACR,SAELhB,EAAAA,EAAAA,MAAO,yBAAAD,EAAA5C,OAAA,GAAAoC,EAAA,kBAhRX,eAAA7H,EAAA,KAAAlB,EAAAyH,UAAA,WAAApB,SAAA,SAAAlF,EAAApB,GAAA,IAAA4B,EAAAN,EAAAkG,MAAArG,EAAAlB,GAAA,SAAA0K,EAAArJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,OAAAtJ,EAAA,UAAAsJ,EAAAtJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,QAAAtJ,EAAA,CAAAqJ,OAAA,QAiRG,kBA1CgB,OAAA+Y,EAAAlc,MAAA,KAAAE,UAAA,KA4CX+3B,EAAatxB,GACjBuH,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,kDAErB6V,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,uBAGvB,OACE6V,EAAAA,GAAAA,KAACuN,GAAAA,EAAK,CACJtC,UAAU,eACV9gB,GAAIA,EACJmB,MAAOy+B,EACPtc,cAAc,EAAM1N,UAEpBC,EAAAA,GAAAA,KAACgqB,GAAWj4B,GAAAA,GAAAA,GAAA,CACVub,QAASnjB,GACLk2B,GACA2I,GAAc,IAClBpC,0BAA2BA,EAC3BC,iBAAkBA,EAClBF,UAAWgD,MAInB,mRC1SAn+B,GAAA,kBAAAjB,CAAA,MAAAkB,EAAAlB,EAAA,GAAAmB,EAAAf,OAAAgB,UAAAC,EAAAF,EAAAG,eAAAvB,EAAAK,OAAAmB,gBAAA,SAAAL,EAAAlB,EAAAmB,GAAAD,EAAAlB,GAAAmB,EAAAK,KAAA,EAAAC,EAAA,mBAAAC,OAAAA,OAAA,GAAAC,EAAAF,EAAAG,UAAA,aAAAC,EAAAJ,EAAAK,eAAA,kBAAAC,EAAAN,EAAAO,aAAA,yBAAAC,EAAAf,EAAAlB,EAAAmB,GAAA,OAAAf,OAAAmB,eAAAL,EAAAlB,EAAA,CAAAwB,MAAAL,EAAAe,YAAA,EAAAC,cAAA,EAAAC,UAAA,IAAAlB,EAAAlB,EAAA,KAAAiC,EAAA,aAAAf,GAAAe,EAAA,SAAAf,EAAAlB,EAAAmB,GAAA,OAAAD,EAAAlB,GAAAmB,CAAA,WAAAkB,EAAAnB,EAAAlB,EAAAmB,EAAAE,GAAA,IAAAI,EAAAzB,GAAAA,EAAAoB,qBAAAkB,EAAAtC,EAAAsC,EAAAX,EAAAvB,OAAAmC,OAAAd,EAAAL,WAAAS,EAAA,IAAAW,EAAAnB,GAAA,WAAAtB,EAAA4B,EAAA,WAAAH,MAAAiB,EAAAvB,EAAAC,EAAAU,KAAAF,CAAA,UAAAe,EAAAxB,EAAAlB,EAAAmB,GAAA,WAAAR,KAAA,SAAAgC,IAAAzB,EAAA0B,KAAA5C,EAAAmB,GAAA,OAAAD,GAAA,OAAAP,KAAA,QAAAgC,IAAAzB,EAAA,EAAAlB,EAAAqC,KAAAA,EAAA,IAAAQ,EAAA,iBAAAC,EAAA,iBAAAC,EAAA,YAAAC,EAAA,YAAAC,EAAA,YAAAX,IAAA,UAAAY,IAAA,UAAAC,IAAA,KAAAC,EAAA,GAAAnB,EAAAmB,EAAAzB,GAAA,8BAAA0B,EAAAjD,OAAAkD,eAAAC,EAAAF,GAAAA,EAAAA,EAAAG,EAAA,MAAAD,GAAAA,IAAApC,GAAAE,EAAAuB,KAAAW,EAAA5B,KAAAyB,EAAAG,GAAA,IAAAE,EAAAN,EAAA/B,UAAAkB,EAAAlB,UAAAhB,OAAAmC,OAAAa,GAAA,SAAAM,EAAAxC,GAAA,0BAAAyC,SAAA,SAAA3D,GAAAiC,EAAAf,EAAAlB,GAAA,SAAAkB,GAAA,YAAA0C,QAAA5D,EAAAkB,EAAA,gBAAA2C,EAAA3C,EAAAlB,GAAA,SAAA8D,EAAA3C,EAAApB,EAAA0B,EAAAE,GAAA,IAAAE,EAAAa,EAAAxB,EAAAC,GAAAD,EAAAnB,GAAA,aAAA8B,EAAAlB,KAAA,KAAAoB,EAAAF,EAAAc,IAAAE,EAAAd,EAAAP,MAAA,OAAAqB,GAAA,UAAAkB,GAAAlB,IAAAxB,EAAAuB,KAAAC,EAAA,WAAA7C,EAAAK,QAAAwC,EAAAmB,SAAAC,MAAA,SAAA/C,GAAA4C,EAAA,OAAA5C,EAAAO,EAAAE,EAAA,aAAAT,GAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAA3B,EAAAK,QAAAwC,GAAAoB,MAAA,SAAA/C,GAAAa,EAAAP,MAAAN,EAAAO,EAAAM,EAAA,aAAAb,GAAA,OAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAAA,EAAAE,EAAAc,IAAA,KAAAxB,EAAApB,EAAA,gBAAAyB,MAAA,SAAAN,EAAAG,GAAA,SAAA6C,IAAA,WAAAlE,GAAA,SAAAA,EAAAmB,GAAA2C,EAAA5C,EAAAG,EAAArB,EAAAmB,EAAA,WAAAA,EAAAA,EAAAA,EAAA8C,KAAAC,EAAAA,GAAAA,GAAA,aAAAzB,EAAAzC,EAAAmB,EAAAE,GAAA,IAAAtB,EAAA8C,EAAA,gBAAApB,EAAAE,GAAA,GAAA5B,IAAAgD,EAAA,MAAA9C,MAAA,mCAAAF,IAAAiD,EAAA,cAAAvB,EAAA,MAAAE,EAAA,OAAAH,MAAAN,EAAAiD,MAAA,OAAA9C,EAAA+C,OAAA3C,EAAAJ,EAAAsB,IAAAhB,IAAA,KAAAE,EAAAR,EAAAgD,SAAA,GAAAxC,EAAA,KAAAE,EAAAuC,EAAAzC,EAAAR,GAAA,GAAAU,EAAA,IAAAA,IAAAkB,EAAA,gBAAAlB,CAAA,cAAAV,EAAA+C,OAAA/C,EAAAkD,KAAAlD,EAAAmD,MAAAnD,EAAAsB,SAAA,aAAAtB,EAAA+C,OAAA,IAAArE,IAAA8C,EAAA,MAAA9C,EAAAiD,EAAA3B,EAAAsB,IAAAtB,EAAAoD,kBAAApD,EAAAsB,IAAA,gBAAAtB,EAAA+C,QAAA/C,EAAAqD,OAAA,SAAArD,EAAAsB,KAAA5C,EAAAgD,EAAA,IAAAK,EAAAV,EAAA1C,EAAAmB,EAAAE,GAAA,cAAA+B,EAAAzC,KAAA,IAAAZ,EAAAsB,EAAA8C,KAAAnB,EAAAF,EAAAM,EAAAT,MAAAM,EAAA,gBAAAzB,MAAA4B,EAAAT,IAAAwB,KAAA9C,EAAA8C,KAAA,WAAAf,EAAAzC,OAAAZ,EAAAiD,EAAA3B,EAAA+C,OAAA,QAAA/C,EAAAsB,IAAAS,EAAAT,IAAA,YAAA2B,EAAAtE,EAAAmB,GAAA,IAAAE,EAAAF,EAAAiD,OAAArE,EAAAC,EAAA4B,SAAAP,GAAA,GAAAtB,IAAAmB,EAAA,OAAAC,EAAAkD,SAAA,eAAAhD,GAAArB,EAAA4B,SAAA+C,SAAAxD,EAAAiD,OAAA,SAAAjD,EAAAwB,IAAAzB,EAAAoD,EAAAtE,EAAAmB,GAAA,UAAAA,EAAAiD,SAAA,WAAA/C,IAAAF,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAvD,EAAA,aAAA4B,EAAA,IAAAxB,EAAAiB,EAAA3C,EAAAC,EAAA4B,SAAAT,EAAAwB,KAAA,aAAAlB,EAAAd,KAAA,OAAAQ,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAAlB,EAAAkB,IAAAxB,EAAAkD,SAAA,KAAApB,EAAA,IAAAtB,EAAAF,EAAAkB,IAAA,OAAAhB,EAAAA,EAAAwC,MAAAhD,EAAAnB,EAAA6E,YAAAlD,EAAAH,MAAAL,EAAA2D,KAAA9E,EAAA+E,QAAA,WAAA5D,EAAAiD,SAAAjD,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,GAAAC,EAAAkD,SAAA,KAAApB,GAAAtB,GAAAR,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAzD,EAAAkD,SAAA,KAAApB,EAAA,UAAA+B,EAAA9D,GAAA,IAAAlB,EAAA,CAAAiF,OAAA/D,EAAA,SAAAA,IAAAlB,EAAAkF,SAAAhE,EAAA,SAAAA,IAAAlB,EAAAmF,WAAAjE,EAAA,GAAAlB,EAAAoF,SAAAlE,EAAA,SAAAmE,WAAAC,KAAAtF,EAAA,UAAAuF,EAAArE,GAAA,IAAAlB,EAAAkB,EAAAsE,YAAA,GAAAxF,EAAAW,KAAA,gBAAAX,EAAA2C,IAAAzB,EAAAsE,WAAAxF,CAAA,UAAAwC,EAAAtB,GAAA,KAAAmE,WAAA,EAAAJ,OAAA,SAAA/D,EAAAyC,QAAAqB,EAAA,WAAAS,OAAA,YAAAjC,EAAAxD,GAAA,GAAAA,GAAA,KAAAA,EAAA,KAAAmB,EAAAnB,EAAA2B,GAAA,GAAAR,EAAA,OAAAA,EAAAyB,KAAA5C,GAAA,sBAAAA,EAAA8E,KAAA,OAAA9E,EAAA,IAAA0F,MAAA1F,EAAA2F,QAAA,KAAA5F,GAAA,EAAA0B,EAAA,SAAAqD,IAAA,OAAA/E,EAAAC,EAAA2F,QAAA,GAAAtE,EAAAuB,KAAA5C,EAAAD,GAAA,OAAA+E,EAAAtD,MAAAxB,EAAAD,GAAA+E,EAAAX,MAAA,EAAAW,EAAA,OAAAA,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,SAAArD,EAAAqD,KAAArD,CAAA,YAAAmD,UAAAb,GAAA/D,GAAA,2BAAAkD,EAAA9B,UAAA+B,EAAApD,EAAA0D,EAAA,eAAAjC,MAAA2B,EAAAhB,cAAA,IAAApC,EAAAoD,EAAA,eAAA3B,MAAA0B,EAAAf,cAAA,IAAAe,EAAA0C,YAAA3D,EAAAkB,EAAApB,EAAA,qBAAA/B,EAAA6F,oBAAA,SAAA3E,GAAA,IAAAlB,EAAA,mBAAAkB,GAAAA,EAAA4E,YAAA,QAAA9F,IAAAA,IAAAkD,GAAA,uBAAAlD,EAAA4F,aAAA5F,EAAA+F,MAAA,EAAA/F,EAAAgG,KAAA,SAAA9E,GAAA,OAAAd,OAAA6F,eAAA7F,OAAA6F,eAAA/E,EAAAiC,IAAAjC,EAAAgF,UAAA/C,EAAAlB,EAAAf,EAAAa,EAAA,sBAAAb,EAAAE,UAAAhB,OAAAmC,OAAAkB,GAAAvC,CAAA,EAAAlB,EAAAmG,MAAA,SAAAjF,GAAA,OAAA8C,QAAA9C,EAAA,EAAAwC,EAAAG,EAAAzC,WAAAa,EAAA4B,EAAAzC,UAAAS,GAAA,0BAAA7B,EAAA6D,cAAAA,EAAA7D,EAAAoG,MAAA,SAAAlF,EAAAC,EAAAE,EAAAtB,EAAA0B,QAAA,IAAAA,IAAAA,EAAA4E,SAAA,IAAA1E,EAAA,IAAAkC,EAAAxB,EAAAnB,EAAAC,EAAAE,EAAAtB,GAAA0B,GAAA,OAAAzB,EAAA6F,oBAAA1E,GAAAQ,EAAAA,EAAAmD,OAAAb,MAAA,SAAA/C,GAAA,OAAAA,EAAAiD,KAAAjD,EAAAM,MAAAG,EAAAmD,MAAA,KAAApB,EAAAD,GAAAxB,EAAAwB,EAAA1B,EAAA,aAAAE,EAAAwB,EAAA9B,GAAA,0BAAAM,EAAAwB,EAAA,qDAAAzD,EAAAG,KAAA,SAAAe,GAAA,IAAAlB,EAAAI,OAAAc,GAAAC,EAAA,WAAAE,KAAArB,EAAAmB,EAAAmE,KAAAjE,GAAA,OAAAF,EAAAmF,UAAA,SAAAxB,IAAA,KAAA3D,EAAAwE,QAAA,KAAAzE,EAAAC,EAAAoF,MAAA,GAAArF,KAAAlB,EAAA,OAAA8E,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,QAAAA,EAAAX,MAAA,EAAAW,CAAA,GAAA9E,EAAAwD,OAAAA,EAAAhB,EAAApB,UAAA,CAAA0E,YAAAtD,EAAAiD,MAAA,SAAAzF,GAAA,QAAAwG,KAAA,OAAA1B,KAAA,OAAAP,KAAA,KAAAC,MAAAtD,EAAA,KAAAiD,MAAA,OAAAE,SAAA,UAAAD,OAAA,YAAAzB,IAAAzB,EAAA,KAAAmE,WAAA1B,QAAA4B,IAAAvF,EAAA,QAAAmB,KAAA,WAAAA,EAAAsF,OAAA,IAAApF,EAAAuB,KAAA,KAAAzB,KAAAuE,OAAAvE,EAAAuF,MAAA,WAAAvF,GAAAD,EAAA,EAAAyF,KAAA,gBAAAxC,MAAA,MAAAjD,EAAA,KAAAmE,WAAA,GAAAG,WAAA,aAAAtE,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,YAAAiE,IAAA,EAAAnC,kBAAA,SAAAzE,GAAA,QAAAmE,KAAA,MAAAnE,EAAA,IAAAmB,EAAA,cAAA0F,EAAAxF,EAAAtB,GAAA,OAAA4B,EAAAhB,KAAA,QAAAgB,EAAAgB,IAAA3C,EAAAmB,EAAA2D,KAAAzD,EAAAtB,IAAAoB,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,KAAAnB,CAAA,SAAAA,EAAA,KAAAsF,WAAAM,OAAA,EAAA5F,GAAA,IAAAA,EAAA,KAAA0B,EAAA,KAAA4D,WAAAtF,GAAA4B,EAAAF,EAAA+D,WAAA,YAAA/D,EAAAwD,OAAA,OAAA4B,EAAA,UAAApF,EAAAwD,QAAA,KAAAuB,KAAA,KAAA3E,EAAAR,EAAAuB,KAAAnB,EAAA,YAAAM,EAAAV,EAAAuB,KAAAnB,EAAA,iBAAAI,GAAAE,EAAA,SAAAyE,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,WAAAsB,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,SAAAtD,GAAA,QAAA2E,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,YAAAnD,EAAA,MAAA9B,MAAA,kDAAAuG,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,KAAAT,OAAA,SAAAxD,EAAAlB,GAAA,QAAAmB,EAAA,KAAAkE,WAAAM,OAAA,EAAAxE,GAAA,IAAAA,EAAA,KAAApB,EAAA,KAAAsF,WAAAlE,GAAA,GAAApB,EAAAkF,QAAA,KAAAuB,MAAAnF,EAAAuB,KAAA7C,EAAA,oBAAAyG,KAAAzG,EAAAoF,WAAA,KAAA1D,EAAA1B,EAAA,OAAA0B,IAAA,UAAAP,GAAA,aAAAA,IAAAO,EAAAwD,QAAAjF,GAAAA,GAAAyB,EAAA0D,aAAA1D,EAAA,UAAAE,EAAAF,EAAAA,EAAA+D,WAAA,UAAA7D,EAAAhB,KAAAO,EAAAS,EAAAgB,IAAA3C,EAAAyB,GAAA,KAAA2C,OAAA,YAAAU,KAAArD,EAAA0D,WAAAlC,GAAA,KAAA6D,SAAAnF,EAAA,EAAAmF,SAAA,SAAA5F,EAAAlB,GAAA,aAAAkB,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,gBAAAzB,EAAAP,MAAA,aAAAO,EAAAP,KAAA,KAAAmE,KAAA5D,EAAAyB,IAAA,WAAAzB,EAAAP,MAAA,KAAAiG,KAAA,KAAAjE,IAAAzB,EAAAyB,IAAA,KAAAyB,OAAA,cAAAU,KAAA,kBAAA5D,EAAAP,MAAAX,IAAA,KAAA8E,KAAA9E,GAAAiD,CAAA,EAAA8D,OAAA,SAAA7F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAAgE,aAAAjE,EAAA,YAAA4F,SAAA3F,EAAAqE,WAAArE,EAAAiE,UAAAG,EAAApE,GAAA8B,CAAA,GAAA+D,MAAA,SAAA9F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAA8D,SAAA/D,EAAA,KAAAG,EAAAF,EAAAqE,WAAA,aAAAnE,EAAAV,KAAA,KAAAZ,EAAAsB,EAAAsB,IAAA4C,EAAApE,EAAA,QAAApB,CAAA,QAAAE,MAAA,0BAAAgH,cAAA,SAAAjH,EAAAmB,EAAAE,GAAA,YAAAgD,SAAA,CAAAzC,SAAA4B,EAAAxD,GAAA6E,WAAA1D,EAAA4D,QAAA1D,GAAA,cAAA+C,SAAA,KAAAzB,IAAAzB,GAAA+B,CAAA,GAAAjD,CAAA,UAAAkH,GAAA7F,EAAAH,EAAAlB,EAAAmB,EAAApB,EAAA4B,EAAAE,GAAA,QAAAJ,EAAAJ,EAAAM,GAAAE,GAAAE,EAAAN,EAAAD,KAAA,OAAAH,GAAA,YAAArB,EAAAqB,EAAA,CAAAI,EAAA0C,KAAAjD,EAAAa,GAAAsE,QAAAhG,QAAA0B,GAAAkC,KAAA9C,EAAApB,EAAA,UAAAoH,GAAAnH,EAAAmB,GAAA,IAAAD,EAAAd,OAAAD,KAAAH,GAAA,GAAAI,OAAAgH,sBAAA,KAAArH,EAAAK,OAAAgH,sBAAApH,GAAAmB,IAAApB,EAAAA,EAAAsH,QAAA,SAAAlG,GAAA,OAAAf,OAAAkH,yBAAAtH,EAAAmB,GAAAe,UAAA,KAAAhB,EAAAoE,KAAAiC,MAAArG,EAAAnB,EAAA,QAAAmB,CAAA,UAAAsG,GAAAxH,GAAA,QAAAmB,EAAA,EAAAA,EAAAsG,UAAA9B,OAAAxE,IAAA,KAAAD,EAAA,MAAAuG,UAAAtG,GAAAsG,UAAAtG,GAAA,GAAAA,EAAA,EAAAgG,GAAA/G,OAAAc,IAAA,GAAAyC,SAAA,SAAAxC,GAAAuG,GAAA1H,EAAAmB,EAAAD,EAAAC,GAAA,IAAAf,OAAAuH,0BAAAvH,OAAAwH,iBAAA5H,EAAAI,OAAAuH,0BAAAzG,IAAAiG,GAAA/G,OAAAc,IAAAyC,SAAA,SAAAxC,GAAAf,OAAAmB,eAAAvB,EAAAmB,EAAAf,OAAAkH,yBAAApG,EAAAC,GAAA,WAAAnB,CAAA,UAAA0H,GAAA1H,EAAAmB,EAAAD,GAAA,OAAAC,EAAA,SAAAD,GAAA,IAAAO,EAAA,SAAAP,GAAA,aAAA6C,GAAA7C,KAAAA,EAAA,OAAAA,EAAA,IAAAlB,EAAAkB,EAAAQ,OAAAwG,aAAA,YAAAlI,EAAA,KAAAyB,EAAAzB,EAAA4C,KAAA1B,EAAAC,UAAA,aAAA4C,GAAAtC,GAAA,OAAAA,EAAA,UAAAmD,UAAA,uDAAAuD,OAAAjH,EAAA,CAAAkH,CAAAlH,GAAA,gBAAA6C,GAAAtC,GAAAA,EAAAA,EAAA,GAAAqG,CAAA3G,MAAAnB,EAAAI,OAAAmB,eAAAvB,EAAAmB,EAAA,CAAAK,MAAAN,EAAAgB,YAAA,EAAAC,cAAA,EAAAC,UAAA,IAAApC,EAAAmB,GAAAD,EAAAlB,CAAA,CAiBA,IAAM2nB,GAAS,IAAI9a,EAyHnB,GAvHyB,SAAH/D,GAAwC,IAAlClJ,EAAEkJ,EAAFlJ,GAAOk2B,EAnBnC,SAAA91B,EAAAkB,GAAA,SAAAlB,EAAA,aAAAD,EAAAoB,EAAAM,EAAA,SAAAN,EAAAnB,GAAA,SAAAmB,EAAA,aAAAD,EAAA,WAAAG,KAAAF,EAAA,MAAAG,eAAAsB,KAAAzB,EAAAE,GAAA,SAAArB,EAAA6J,QAAAxI,GAAA,SAAAH,EAAAG,GAAAF,EAAAE,EAAA,QAAAH,CAAA,CAAA88B,CAAAh+B,EAAAkB,GAAA,GAAAd,OAAAgH,sBAAA,KAAA/F,EAAAjB,OAAAgH,sBAAApH,GAAA,IAAAmB,EAAA,EAAAA,EAAAE,EAAAsE,OAAAxE,IAAApB,EAAAsB,EAAAF,IAAA,IAAAD,EAAA2I,QAAA9J,IAAA,GAAAk+B,qBAAAr7B,KAAA5C,EAAAD,KAAA0B,EAAA1B,GAAAC,EAAAD,GAAA,QAAA0B,CAAA,CAmBuCs0B,CAAAjtB,EAAAktB,IACvBlgB,EAAckI,KAApBrP,KACFzB,EAAkBsQ,KAClB5D,GAAOyF,EAAAA,GAAAA,KAEPof,GAAiBC,EAAAA,GAAAA,GAGpB,CACD1vB,eAAgB,CACdxN,MAAO,GACPqY,WAAY,CAAArS,GAAAA,GAAA,GAELm3B,GAAAA,GACDA,GAAAA,IACA,SAACE,EAAGr7B,GAAM,MAA+C,UAAzCA,EAAgC7C,IAAgB,KACjE,IACD8J,QAASmP,EAAKK,cAAc,CAAEra,GAAI,qCAAmC4H,GAAAA,GAAA,GAGlEm3B,GAAAA,GACDhlB,GAAgBC,IAChB,SAACilB,EAAGr7B,GAAM,MAA+C,UAAzCA,EAAgC7C,IAAgB,KACjE,IACD8J,QAASkP,GAAgBC,GAAMnP,YAIrC9J,KAAM,CACJa,MAAO,QACPqY,WAAY,CAAC8kB,GAAAA,OAGTzV,EAAmBuV,EAAnBvV,OAAQ1lB,EAAWi7B,EAAXj7B,OAEhB,IAAKsS,EAAW,OAAO,KAEvB,IAAQvI,EAAcuI,EAAdvI,UACF6uB,EAAS,eAzDjB/6B,EAyDiBoiB,GAzDjBpiB,EAyDiBJ,KAAA+E,MAAG,SAAA+C,IAAA,IAAA22B,EAAAztB,EAAA,OAAAhR,KAAAoB,MAAA,SAAAkH,GAAA,cAAAA,EAAA/C,KAAA+C,EAAAzE,MAAA,UACI,UAAhBtB,EAAO7C,KAAgB,CAAA4I,EAAAzE,KAAA,SAClB,OAAP0D,EAAAA,EAAAA,MAAOe,EAAAzE,KAAA,EACc6iB,GAAOgY,YAC1BpyB,EACAL,EACA1J,EAAOwL,gBACR,OAJKiD,EAAM1I,EAAAhF,MAKZyF,EAAAA,EAAAA,IACE,UACAiI,EAAOlR,MACO,QADF2+B,EACZztB,EAAOxH,eAAO,IAAAi1B,EAAAA,OAAIl1B,GAClB,IAEFhB,EAAAA,EAAAA,OACAoa,EAAAA,GAAAA,IAAMhkB,GAAI2J,EAAAzE,KAAA,iBACe,aAAhBtB,EAAO7C,OAChBi/B,EAAAA,GAAAA,GAAa,GAADlrB,OAAIlC,GAAKqtB,iBAAgB,KAAAnrB,OAAInH,GAAa,MAAO,CAC3DL,gBAAiBA,IAEpB,yBAAA3D,EAAA5C,OAAA,GAAAoC,EAAA,IA7EL,eAAA7H,EAAA,KAAAlB,EAAAyH,UAAA,WAAApB,SAAA,SAAAlF,EAAApB,GAAA,IAAA4B,EAAAN,EAAAkG,MAAArG,EAAAlB,GAAA,SAAA0K,EAAArJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,OAAAtJ,EAAA,UAAAsJ,EAAAtJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,QAAAtJ,EAAA,CAAAqJ,OAAA,QA8EG,kBArBc,OAAA+Y,EAAAlc,MAAA,KAAAE,UAAA,KAuBf,OACEgO,EAAAA,GAAAA,KAACuN,GAAAA,EAAK,CACJtC,UAAU,mBACV9gB,GAAIA,EACJmB,OAAO0U,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,2BAC5BqmB,2BAAyB,EACzB/C,cAAc,EAAM1N,UAEpBC,EAAAA,GAAAA,KAAC2nB,GAAAA,EAAI51B,GAAAA,GAAAA,GAAA,GAAKsuB,GAAU2I,GAAc,IAAEpB,SAAUjB,EAAU5mB,SACrD,SAAA2U,GAAkB,IAAfkT,EAAQlT,EAARkT,SACF,OACE5e,EAAAA,GAAAA,MAAA,OAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAAA,KAAAD,UACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,6BAEvB6e,EAAAA,GAAAA,MAACwP,GAAAA,EAAK,CACJ3H,OACE7Q,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,wCAEvBmG,KAAK,cACLygB,QAA+B,UAAtB0C,EAAOvoB,KAAKa,MACrB+kB,SAAU,WAAF,OAAQ2C,EAAOvoB,KAAK4lB,SAAS,QAAQ,EAC7C9lB,MAAOyoB,EAAOvoB,KAAKF,MAAM+U,SAAA,EAEzBC,EAAAA,GAAAA,KAAA,KAAAD,UACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,6CAEvB6V,EAAAA,GAAAA,KAAC4Y,GAAAA,EAAK7mB,GAAAA,GAAA,GACA0hB,EAAOla,gBAAc,IACzBrO,KAAK,QACL48B,aAAa,QACbjX,OAAO7Q,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,kCAGhC6V,EAAAA,GAAAA,KAACwY,GAAAA,EAAK,CACJ3H,OACE7Q,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,sCAEvBmG,KAAK,cACLygB,QAA+B,aAAtB0C,EAAOvoB,KAAKa,MACrB+kB,SAAU,WAAF,OAAQ2C,EAAOvoB,KAAK4lB,SAAS,WAAW,EAChD9lB,MAAOyoB,EAAOvoB,KAAKF,MACnBg9B,OAAK,KAEPhoB,EAAAA,GAAAA,KAACqoB,GAAAA,EAAW,CACV/a,QAASnjB,EACTumB,OAAQkX,EACRnX,YAAYzQ,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,qBACjCsjB,cAAczN,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,0BAI3C,MAIR,+QCxIAqB,GAAA,kBAAAjB,CAAA,MAAAkB,EAAAlB,EAAA,GAAAmB,EAAAf,OAAAgB,UAAAC,EAAAF,EAAAG,eAAAvB,EAAAK,OAAAmB,gBAAA,SAAAL,EAAAlB,EAAAmB,GAAAD,EAAAlB,GAAAmB,EAAAK,KAAA,EAAAC,EAAA,mBAAAC,OAAAA,OAAA,GAAAC,EAAAF,EAAAG,UAAA,aAAAC,EAAAJ,EAAAK,eAAA,kBAAAC,EAAAN,EAAAO,aAAA,yBAAAC,EAAAf,EAAAlB,EAAAmB,GAAA,OAAAf,OAAAmB,eAAAL,EAAAlB,EAAA,CAAAwB,MAAAL,EAAAe,YAAA,EAAAC,cAAA,EAAAC,UAAA,IAAAlB,EAAAlB,EAAA,KAAAiC,EAAA,aAAAf,GAAAe,EAAA,SAAAf,EAAAlB,EAAAmB,GAAA,OAAAD,EAAAlB,GAAAmB,CAAA,WAAAkB,EAAAnB,EAAAlB,EAAAmB,EAAAE,GAAA,IAAAI,EAAAzB,GAAAA,EAAAoB,qBAAAkB,EAAAtC,EAAAsC,EAAAX,EAAAvB,OAAAmC,OAAAd,EAAAL,WAAAS,EAAA,IAAAW,EAAAnB,GAAA,WAAAtB,EAAA4B,EAAA,WAAAH,MAAAiB,EAAAvB,EAAAC,EAAAU,KAAAF,CAAA,UAAAe,EAAAxB,EAAAlB,EAAAmB,GAAA,WAAAR,KAAA,SAAAgC,IAAAzB,EAAA0B,KAAA5C,EAAAmB,GAAA,OAAAD,GAAA,OAAAP,KAAA,QAAAgC,IAAAzB,EAAA,EAAAlB,EAAAqC,KAAAA,EAAA,IAAAQ,EAAA,iBAAAC,EAAA,iBAAAC,EAAA,YAAAC,EAAA,YAAAC,EAAA,YAAAX,IAAA,UAAAY,IAAA,UAAAC,IAAA,KAAAC,EAAA,GAAAnB,EAAAmB,EAAAzB,GAAA,8BAAA0B,EAAAjD,OAAAkD,eAAAC,EAAAF,GAAAA,EAAAA,EAAAG,EAAA,MAAAD,GAAAA,IAAApC,GAAAE,EAAAuB,KAAAW,EAAA5B,KAAAyB,EAAAG,GAAA,IAAAE,EAAAN,EAAA/B,UAAAkB,EAAAlB,UAAAhB,OAAAmC,OAAAa,GAAA,SAAAM,EAAAxC,GAAA,0BAAAyC,SAAA,SAAA3D,GAAAiC,EAAAf,EAAAlB,GAAA,SAAAkB,GAAA,YAAA0C,QAAA5D,EAAAkB,EAAA,gBAAA2C,EAAA3C,EAAAlB,GAAA,SAAA8D,EAAA3C,EAAApB,EAAA0B,EAAAE,GAAA,IAAAE,EAAAa,EAAAxB,EAAAC,GAAAD,EAAAnB,GAAA,aAAA8B,EAAAlB,KAAA,KAAAoB,EAAAF,EAAAc,IAAAE,EAAAd,EAAAP,MAAA,OAAAqB,GAAA,UAAAkB,GAAAlB,IAAAxB,EAAAuB,KAAAC,EAAA,WAAA7C,EAAAK,QAAAwC,EAAAmB,SAAAC,MAAA,SAAA/C,GAAA4C,EAAA,OAAA5C,EAAAO,EAAAE,EAAA,aAAAT,GAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAA3B,EAAAK,QAAAwC,GAAAoB,MAAA,SAAA/C,GAAAa,EAAAP,MAAAN,EAAAO,EAAAM,EAAA,aAAAb,GAAA,OAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAAA,EAAAE,EAAAc,IAAA,KAAAxB,EAAApB,EAAA,gBAAAyB,MAAA,SAAAN,EAAAG,GAAA,SAAA6C,IAAA,WAAAlE,GAAA,SAAAA,EAAAmB,GAAA2C,EAAA5C,EAAAG,EAAArB,EAAAmB,EAAA,WAAAA,EAAAA,EAAAA,EAAA8C,KAAAC,EAAAA,GAAAA,GAAA,aAAAzB,EAAAzC,EAAAmB,EAAAE,GAAA,IAAAtB,EAAA8C,EAAA,gBAAApB,EAAAE,GAAA,GAAA5B,IAAAgD,EAAA,MAAA9C,MAAA,mCAAAF,IAAAiD,EAAA,cAAAvB,EAAA,MAAAE,EAAA,OAAAH,MAAAN,EAAAiD,MAAA,OAAA9C,EAAA+C,OAAA3C,EAAAJ,EAAAsB,IAAAhB,IAAA,KAAAE,EAAAR,EAAAgD,SAAA,GAAAxC,EAAA,KAAAE,EAAAuC,EAAAzC,EAAAR,GAAA,GAAAU,EAAA,IAAAA,IAAAkB,EAAA,gBAAAlB,CAAA,cAAAV,EAAA+C,OAAA/C,EAAAkD,KAAAlD,EAAAmD,MAAAnD,EAAAsB,SAAA,aAAAtB,EAAA+C,OAAA,IAAArE,IAAA8C,EAAA,MAAA9C,EAAAiD,EAAA3B,EAAAsB,IAAAtB,EAAAoD,kBAAApD,EAAAsB,IAAA,gBAAAtB,EAAA+C,QAAA/C,EAAAqD,OAAA,SAAArD,EAAAsB,KAAA5C,EAAAgD,EAAA,IAAAK,EAAAV,EAAA1C,EAAAmB,EAAAE,GAAA,cAAA+B,EAAAzC,KAAA,IAAAZ,EAAAsB,EAAA8C,KAAAnB,EAAAF,EAAAM,EAAAT,MAAAM,EAAA,gBAAAzB,MAAA4B,EAAAT,IAAAwB,KAAA9C,EAAA8C,KAAA,WAAAf,EAAAzC,OAAAZ,EAAAiD,EAAA3B,EAAA+C,OAAA,QAAA/C,EAAAsB,IAAAS,EAAAT,IAAA,YAAA2B,EAAAtE,EAAAmB,GAAA,IAAAE,EAAAF,EAAAiD,OAAArE,EAAAC,EAAA4B,SAAAP,GAAA,GAAAtB,IAAAmB,EAAA,OAAAC,EAAAkD,SAAA,eAAAhD,GAAArB,EAAA4B,SAAA+C,SAAAxD,EAAAiD,OAAA,SAAAjD,EAAAwB,IAAAzB,EAAAoD,EAAAtE,EAAAmB,GAAA,UAAAA,EAAAiD,SAAA,WAAA/C,IAAAF,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAvD,EAAA,aAAA4B,EAAA,IAAAxB,EAAAiB,EAAA3C,EAAAC,EAAA4B,SAAAT,EAAAwB,KAAA,aAAAlB,EAAAd,KAAA,OAAAQ,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAAlB,EAAAkB,IAAAxB,EAAAkD,SAAA,KAAApB,EAAA,IAAAtB,EAAAF,EAAAkB,IAAA,OAAAhB,EAAAA,EAAAwC,MAAAhD,EAAAnB,EAAA6E,YAAAlD,EAAAH,MAAAL,EAAA2D,KAAA9E,EAAA+E,QAAA,WAAA5D,EAAAiD,SAAAjD,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,GAAAC,EAAAkD,SAAA,KAAApB,GAAAtB,GAAAR,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAzD,EAAAkD,SAAA,KAAApB,EAAA,UAAA+B,EAAA9D,GAAA,IAAAlB,EAAA,CAAAiF,OAAA/D,EAAA,SAAAA,IAAAlB,EAAAkF,SAAAhE,EAAA,SAAAA,IAAAlB,EAAAmF,WAAAjE,EAAA,GAAAlB,EAAAoF,SAAAlE,EAAA,SAAAmE,WAAAC,KAAAtF,EAAA,UAAAuF,EAAArE,GAAA,IAAAlB,EAAAkB,EAAAsE,YAAA,GAAAxF,EAAAW,KAAA,gBAAAX,EAAA2C,IAAAzB,EAAAsE,WAAAxF,CAAA,UAAAwC,EAAAtB,GAAA,KAAAmE,WAAA,EAAAJ,OAAA,SAAA/D,EAAAyC,QAAAqB,EAAA,WAAAS,OAAA,YAAAjC,EAAAxD,GAAA,GAAAA,GAAA,KAAAA,EAAA,KAAAmB,EAAAnB,EAAA2B,GAAA,GAAAR,EAAA,OAAAA,EAAAyB,KAAA5C,GAAA,sBAAAA,EAAA8E,KAAA,OAAA9E,EAAA,IAAA0F,MAAA1F,EAAA2F,QAAA,KAAA5F,GAAA,EAAA0B,EAAA,SAAAqD,IAAA,OAAA/E,EAAAC,EAAA2F,QAAA,GAAAtE,EAAAuB,KAAA5C,EAAAD,GAAA,OAAA+E,EAAAtD,MAAAxB,EAAAD,GAAA+E,EAAAX,MAAA,EAAAW,EAAA,OAAAA,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,SAAArD,EAAAqD,KAAArD,CAAA,YAAAmD,UAAAb,GAAA/D,GAAA,2BAAAkD,EAAA9B,UAAA+B,EAAApD,EAAA0D,EAAA,eAAAjC,MAAA2B,EAAAhB,cAAA,IAAApC,EAAAoD,EAAA,eAAA3B,MAAA0B,EAAAf,cAAA,IAAAe,EAAA0C,YAAA3D,EAAAkB,EAAApB,EAAA,qBAAA/B,EAAA6F,oBAAA,SAAA3E,GAAA,IAAAlB,EAAA,mBAAAkB,GAAAA,EAAA4E,YAAA,QAAA9F,IAAAA,IAAAkD,GAAA,uBAAAlD,EAAA4F,aAAA5F,EAAA+F,MAAA,EAAA/F,EAAAgG,KAAA,SAAA9E,GAAA,OAAAd,OAAA6F,eAAA7F,OAAA6F,eAAA/E,EAAAiC,IAAAjC,EAAAgF,UAAA/C,EAAAlB,EAAAf,EAAAa,EAAA,sBAAAb,EAAAE,UAAAhB,OAAAmC,OAAAkB,GAAAvC,CAAA,EAAAlB,EAAAmG,MAAA,SAAAjF,GAAA,OAAA8C,QAAA9C,EAAA,EAAAwC,EAAAG,EAAAzC,WAAAa,EAAA4B,EAAAzC,UAAAS,GAAA,0BAAA7B,EAAA6D,cAAAA,EAAA7D,EAAAoG,MAAA,SAAAlF,EAAAC,EAAAE,EAAAtB,EAAA0B,QAAA,IAAAA,IAAAA,EAAA4E,SAAA,IAAA1E,EAAA,IAAAkC,EAAAxB,EAAAnB,EAAAC,EAAAE,EAAAtB,GAAA0B,GAAA,OAAAzB,EAAA6F,oBAAA1E,GAAAQ,EAAAA,EAAAmD,OAAAb,MAAA,SAAA/C,GAAA,OAAAA,EAAAiD,KAAAjD,EAAAM,MAAAG,EAAAmD,MAAA,KAAApB,EAAAD,GAAAxB,EAAAwB,EAAA1B,EAAA,aAAAE,EAAAwB,EAAA9B,GAAA,0BAAAM,EAAAwB,EAAA,qDAAAzD,EAAAG,KAAA,SAAAe,GAAA,IAAAlB,EAAAI,OAAAc,GAAAC,EAAA,WAAAE,KAAArB,EAAAmB,EAAAmE,KAAAjE,GAAA,OAAAF,EAAAmF,UAAA,SAAAxB,IAAA,KAAA3D,EAAAwE,QAAA,KAAAzE,EAAAC,EAAAoF,MAAA,GAAArF,KAAAlB,EAAA,OAAA8E,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,QAAAA,EAAAX,MAAA,EAAAW,CAAA,GAAA9E,EAAAwD,OAAAA,EAAAhB,EAAApB,UAAA,CAAA0E,YAAAtD,EAAAiD,MAAA,SAAAzF,GAAA,QAAAwG,KAAA,OAAA1B,KAAA,OAAAP,KAAA,KAAAC,MAAAtD,EAAA,KAAAiD,MAAA,OAAAE,SAAA,UAAAD,OAAA,YAAAzB,IAAAzB,EAAA,KAAAmE,WAAA1B,QAAA4B,IAAAvF,EAAA,QAAAmB,KAAA,WAAAA,EAAAsF,OAAA,IAAApF,EAAAuB,KAAA,KAAAzB,KAAAuE,OAAAvE,EAAAuF,MAAA,WAAAvF,GAAAD,EAAA,EAAAyF,KAAA,gBAAAxC,MAAA,MAAAjD,EAAA,KAAAmE,WAAA,GAAAG,WAAA,aAAAtE,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,YAAAiE,IAAA,EAAAnC,kBAAA,SAAAzE,GAAA,QAAAmE,KAAA,MAAAnE,EAAA,IAAAmB,EAAA,cAAA0F,EAAAxF,EAAAtB,GAAA,OAAA4B,EAAAhB,KAAA,QAAAgB,EAAAgB,IAAA3C,EAAAmB,EAAA2D,KAAAzD,EAAAtB,IAAAoB,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,KAAAnB,CAAA,SAAAA,EAAA,KAAAsF,WAAAM,OAAA,EAAA5F,GAAA,IAAAA,EAAA,KAAA0B,EAAA,KAAA4D,WAAAtF,GAAA4B,EAAAF,EAAA+D,WAAA,YAAA/D,EAAAwD,OAAA,OAAA4B,EAAA,UAAApF,EAAAwD,QAAA,KAAAuB,KAAA,KAAA3E,EAAAR,EAAAuB,KAAAnB,EAAA,YAAAM,EAAAV,EAAAuB,KAAAnB,EAAA,iBAAAI,GAAAE,EAAA,SAAAyE,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,WAAAsB,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,SAAAtD,GAAA,QAAA2E,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,YAAAnD,EAAA,MAAA9B,MAAA,kDAAAuG,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,KAAAT,OAAA,SAAAxD,EAAAlB,GAAA,QAAAmB,EAAA,KAAAkE,WAAAM,OAAA,EAAAxE,GAAA,IAAAA,EAAA,KAAApB,EAAA,KAAAsF,WAAAlE,GAAA,GAAApB,EAAAkF,QAAA,KAAAuB,MAAAnF,EAAAuB,KAAA7C,EAAA,oBAAAyG,KAAAzG,EAAAoF,WAAA,KAAA1D,EAAA1B,EAAA,OAAA0B,IAAA,UAAAP,GAAA,aAAAA,IAAAO,EAAAwD,QAAAjF,GAAAA,GAAAyB,EAAA0D,aAAA1D,EAAA,UAAAE,EAAAF,EAAAA,EAAA+D,WAAA,UAAA7D,EAAAhB,KAAAO,EAAAS,EAAAgB,IAAA3C,EAAAyB,GAAA,KAAA2C,OAAA,YAAAU,KAAArD,EAAA0D,WAAAlC,GAAA,KAAA6D,SAAAnF,EAAA,EAAAmF,SAAA,SAAA5F,EAAAlB,GAAA,aAAAkB,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,gBAAAzB,EAAAP,MAAA,aAAAO,EAAAP,KAAA,KAAAmE,KAAA5D,EAAAyB,IAAA,WAAAzB,EAAAP,MAAA,KAAAiG,KAAA,KAAAjE,IAAAzB,EAAAyB,IAAA,KAAAyB,OAAA,cAAAU,KAAA,kBAAA5D,EAAAP,MAAAX,IAAA,KAAA8E,KAAA9E,GAAAiD,CAAA,EAAA8D,OAAA,SAAA7F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAAgE,aAAAjE,EAAA,YAAA4F,SAAA3F,EAAAqE,WAAArE,EAAAiE,UAAAG,EAAApE,GAAA8B,CAAA,GAAA+D,MAAA,SAAA9F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAA8D,SAAA/D,EAAA,KAAAG,EAAAF,EAAAqE,WAAA,aAAAnE,EAAAV,KAAA,KAAAZ,EAAAsB,EAAAsB,IAAA4C,EAAApE,EAAA,QAAApB,CAAA,QAAAE,MAAA,0BAAAgH,cAAA,SAAAjH,EAAAmB,EAAAE,GAAA,YAAAgD,SAAA,CAAAzC,SAAA4B,EAAAxD,GAAA6E,WAAA1D,EAAA4D,QAAA1D,GAAA,cAAA+C,SAAA,KAAAzB,IAAAzB,GAAA+B,CAAA,GAAAjD,CAAA,UAAAkH,GAAA7F,EAAAH,EAAAlB,EAAAmB,EAAApB,EAAA4B,EAAAE,GAAA,QAAAJ,EAAAJ,EAAAM,GAAAE,GAAAE,EAAAN,EAAAD,KAAA,OAAAH,GAAA,YAAArB,EAAAqB,EAAA,CAAAI,EAAA0C,KAAAjD,EAAAa,GAAAsE,QAAAhG,QAAA0B,GAAAkC,KAAA9C,EAAApB,EAAA,UAAAoH,GAAAnH,EAAAmB,GAAA,IAAAD,EAAAd,OAAAD,KAAAH,GAAA,GAAAI,OAAAgH,sBAAA,KAAArH,EAAAK,OAAAgH,sBAAApH,GAAAmB,IAAApB,EAAAA,EAAAsH,QAAA,SAAAlG,GAAA,OAAAf,OAAAkH,yBAAAtH,EAAAmB,GAAAe,UAAA,KAAAhB,EAAAoE,KAAAiC,MAAArG,EAAAnB,EAAA,QAAAmB,CAAA,UAAAsG,GAAAxH,GAAA,QAAAmB,EAAA,EAAAA,EAAAsG,UAAA9B,OAAAxE,IAAA,KAAAD,EAAA,MAAAuG,UAAAtG,GAAAsG,UAAAtG,GAAA,GAAAA,EAAA,EAAAgG,GAAA/G,OAAAc,IAAA,GAAAyC,SAAA,SAAAxC,GAAAuG,GAAA1H,EAAAmB,EAAAD,EAAAC,GAAA,IAAAf,OAAAuH,0BAAAvH,OAAAwH,iBAAA5H,EAAAI,OAAAuH,0BAAAzG,IAAAiG,GAAA/G,OAAAc,IAAAyC,SAAA,SAAAxC,GAAAf,OAAAmB,eAAAvB,EAAAmB,EAAAf,OAAAkH,yBAAApG,EAAAC,GAAA,WAAAnB,CAAA,UAAA0H,GAAA1H,EAAAmB,EAAAD,GAAA,OAAAC,EAAA,SAAAD,GAAA,IAAAO,EAAA,SAAAP,GAAA,aAAA6C,GAAA7C,KAAAA,EAAA,OAAAA,EAAA,IAAAlB,EAAAkB,EAAAQ,OAAAwG,aAAA,YAAAlI,EAAA,KAAAyB,EAAAzB,EAAA4C,KAAA1B,EAAAC,UAAA,aAAA4C,GAAAtC,GAAA,OAAAA,EAAA,UAAAmD,UAAA,uDAAAuD,OAAAjH,EAAA,CAAAkH,CAAAlH,GAAA,gBAAA6C,GAAAtC,GAAAA,EAAAA,EAAA,GAAAqG,CAAA3G,MAAAnB,EAAAI,OAAAmB,eAAAvB,EAAAmB,EAAA,CAAAK,MAAAN,EAAAgB,YAAA,EAAAC,cAAA,EAAAC,UAAA,IAAApC,EAAAmB,GAAAD,EAAAlB,CAAA,CAmBA,IAAM2nB,GAAS,IAAI9a,EA6InB,GA3I8B,SAAH/D,GAA+B,IAAzBlJ,EAAEkJ,EAAFlJ,GACzBga,GAAOyF,EAAAA,GAAAA,KACCvJ,EAAckI,KAApBrP,KACFmxB,EAAkBtiB,KAElBihB,GAAiBC,EAAAA,GAAAA,GAKpB,CACD1vB,eAAgB,CACdxN,MAAO,GACPqY,WAAY,CAAArS,GAAAA,GAAA,GAELm3B,GAAAA,IAA4B,IAC/Bl0B,QAASmP,EAAKK,cAAc,CAAEra,GAAI,qCAEpC+Z,GAAgBC,KAGpBmmB,cAAe,CACbv+B,MAAO,GACPqY,WAAY,CAAArS,GAAAA,GAAA,GAELm3B,GAAAA,IAA4B,IAC/Bl0B,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,4CAKZyZ,UAAW,CAAE7X,MAAO,IACpBw+B,QAAS,CACPx+B,MAAO,cACPqY,WAAY,CAAC8kB,GAAAA,OAGTzV,EAAmBuV,EAAnBvV,OAAQ1lB,EAAWi7B,EAAXj7B,OAEVy8B,EAAgB,eA7DxB5+B,EA6DwBoiB,GA7DxBpiB,EA6DwBJ,KAAA+E,MAAG,SAAA+C,IAAA,IAAAgf,EAAAmY,EAAAjuB,EAAA,OAAAhR,KAAAoB,MAAA,SAAAkH,GAAA,cAAAA,EAAA/C,KAAA+C,EAAAzE,MAAA,OAChB,OAAP0D,EAAAA,EAAAA,MAAOe,EAAAzE,KAAA,EACc6iB,GAAOwY,UAC1BL,EACoB,QADL/X,EACfjS,aAAS,EAATA,EAAWvI,iBAAS,IAAAwa,EAAAA,EAAIlT,GAASrN,GAAAA,GAAA,GAE5BhE,GAAM,IACT+J,UAA+B,QAAtB2yB,EAAEpqB,aAAS,EAATA,EAAWvI,iBAAS,IAAA2yB,EAAAA,EAAIrrB,GACnCkrB,cAAev8B,EAAOu8B,cAActgC,KAAI,SAAC0yB,GAAC,OAAKA,EAAEpxB,KAAK,IACtDq/B,cAAkC,kBAAnB58B,EAAOw8B,QACtB3kB,eACEvF,aAAS,EAATA,EAAWuF,eAAgBvJ,GAAQgC,QAC/BhC,GAAQgC,QACRhC,GAAQ+B,UAEjB,OAbK5B,EAAM1I,EAAAhF,MAcZqf,EAAAA,GAAAA,IAAMhkB,IACNoK,EAAAA,EAAAA,IAAgB,UAAWiI,EAAOlR,MAAQkR,EAAOxH,SAAU,IAC3DjB,EAAAA,EAAAA,MAAO,wBAAAD,EAAA5C,OAAA,GAAAoC,EAAA,IA/EX,eAAA7H,EAAA,KAAAlB,EAAAyH,UAAA,WAAApB,SAAA,SAAAlF,EAAApB,GAAA,IAAA4B,EAAAN,EAAAkG,MAAArG,EAAAlB,GAAA,SAAA0K,EAAArJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,OAAAtJ,EAAA,UAAAsJ,EAAAtJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,QAAAtJ,EAAA,CAAAqJ,OAAA,QAgFG,kBAnBqB,OAAA+Y,EAAAlc,MAAA,KAAAE,UAAA,KAqBtB,OACEgO,EAAAA,GAAAA,KAACuN,GAAAA,EAAK,CACJpjB,GAAIA,EACJmB,OAAO0U,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,0BAC5BqmB,2BAAyB,EACzB/C,cAAc,EAAM1N,UAEpBC,EAAAA,GAAAA,KAAC2nB,GAAAA,EAAI51B,GAAAA,GAAA,GAAKi3B,GAAc,IAAEpB,SAAU4C,EAAiBzqB,SAClD,SAAA2U,GAAkB,IAAfkT,EAAQlT,EAARkT,SACF,OACE5e,EAAAA,GAAAA,MAAA,OAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAAA,KAAAD,UACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,4BAEvB6V,EAAAA,GAAAA,KAAC4Y,GAAAA,EAAK7mB,GAAAA,GAAA,GACA0hB,EAAOla,gBAAc,IACzBrO,KAAK,OACL2lB,OACE7Q,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,gDAGzB6V,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gBAAelL,UAC5BC,EAAAA,GAAAA,KAAC4qB,GAAAA,EAAS74B,GAAAA,GAAA,GACJ0hB,EAAO6W,eAAa,IACxBO,WAAY,CAAC,QAAS,IAAK,OAC3BC,gBAAiBl1B,OAAO0O,WACxBuM,OACE7Q,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,gDAEvB4gC,YACE/qB,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,yCAEvB6gC,WAAS,QAGbhrB,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gBAAelL,UAC5BC,EAAAA,GAAAA,KAACirB,GAAAA,EAAQl5B,GAAA,CACP8e,OACE7Q,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,wCAEnBspB,EAAO7P,eAGfoF,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,gBAAelL,SAAA,EAC5BC,EAAAA,GAAAA,KAACwY,GAAAA,EAAK,CACJ3H,OACE7Q,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,yCAEvBmG,KAAK,oBACLygB,QAAkC,gBAAzB0C,EAAO8W,QAAQx+B,MACxB+kB,SAAU,WAAF,OAAQ2C,EAAO8W,QAAQzZ,SAAS,cAAc,EACtD9lB,MAAOyoB,EAAO8W,QAAQv/B,SAExBgV,EAAAA,GAAAA,KAACwY,GAAAA,EAAK,CACJ3H,OACE7Q,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,2CAEvB8gB,UAAU,gBACV3a,KAAK,oBACLygB,QAAkC,kBAAzB0C,EAAO8W,QAAQx+B,MACxB+kB,SAAU,WAAF,OAAQ2C,EAAO8W,QAAQzZ,SAAS,gBAAgB,EACxD9lB,MAAOyoB,EAAO8W,QAAQv/B,YAG1BgV,EAAAA,GAAAA,KAACqoB,GAAAA,EAAW,CACV/a,QAASnjB,EACTumB,OAAQkX,EACRna,cAAczN,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,sBACnCsmB,YAAYzQ,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,8BAIzC,MAIR,cCvFA,GA/DsB,SAAHkJ,GAIb,IAaA2B,EAhBJgqB,EAAoB3rB,EAApB2rB,qBAIM7a,GAAOyF,EAAAA,GAAAA,KACCxJ,EAAYiI,KAAlBnP,KACMmH,EAAckI,KAApBrP,KACA4V,EAAuB1O,EAAvB0O,mBACF+D,EAAkB3K,KAExB8F,EAAwD3N,QAAAA,EAAa,CAAC,EAAC6qB,EAAAld,EAA/D0B,SAAAA,OAAQ,IAAAwb,GAAQA,EAAAC,EAAAnd,EAAEod,kBAAAA,OAAiB,IAAAD,GAAQA,EAE7CE,EAASjrB,EAAQkrB,UACjBC,EACJnrB,EAAQorB,mBAAqBprB,EAAQqrB,iBAqCvC,OAlCIzM,EACFhqB,GACEgL,EAAAA,GAAAA,KAAA,QAEEiM,wBAAyB,CACvBC,OAAQ/H,EAAKK,cAAc,CACzBra,GAAI,wCAKHihC,EACTp2B,GAAUgL,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,gCACtBohC,EACTv2B,GAAUgL,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,oCAE9BulB,GACDZ,IAAuB/S,EAAmB2vB,eACzC7Y,GAICnD,GAAYZ,IAAuB/S,EAAmB4vB,iBACxD9Y,EAEA7d,GAAUgL,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,oCAE9BulB,GACDZ,IAAuB/S,EAAmBgT,eAC1Csc,IAEAr2B,GAAUgL,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,2BAX/B6K,GAAUgL,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,4CAc5B6K,GAGHgL,EAAAA,GAAAA,KAAC4rB,GAAAA,EAAa,CACZ1gC,KAAK,UACL8J,QAASA,EACTiW,UAAU,qBANO,IASvB,ECHA,GA9De,SAAH5X,GAUN,IATJw4B,EAAQx4B,EAARw4B,SACAC,EAAKz4B,EAALy4B,MACAC,EAAS14B,EAAT04B,UACApd,EAAStb,EAATsb,UAOA,OACE3F,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,SAAQlL,SAAA,EACrBC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,aAAYlL,UACzBC,EAAAA,GAAAA,KAAA,OAAKgsB,IAAKjuB,GAAS4b,IAAK3b,GAAqBiN,UAAU,mBAEzDjL,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,yCAAwClL,SACpD8rB,GACC7iB,EAAAA,GAAAA,MAAA,QAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,eAAclL,UAC3BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,8BAEtB0hC,KAED,QAEN7iB,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,0BAAyBlL,SAAA,CACrC+rB,GACC9rB,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,2BAA0BlL,UACvCiJ,EAAAA,GAAAA,MAAA,QAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,eAAclL,UAC3BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,gCAEtBokB,EAAAA,GAAAA,IAAWud,EAAOze,SAGrB,KACH0e,GACC/rB,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,2BAA0BlL,UACvCiJ,EAAAA,GAAAA,MAAA,QAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,eAAclL,UAC3BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,4BAEtBokB,EAAAA,GAAAA,IAAWwd,EAAW1e,SAGzB,KACHsB,GAA2B,YAAdA,GACZ3O,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,2BAA0BlL,UACvCiJ,EAAAA,GAAAA,MAAA,QAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,eAAclL,UAC3BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,0BAEtBwkB,OAGH,UAIZ,yGC3DA,IAsBA,GAtBkB,SAAHtb,GAMT,QALJmhB,EAAKnhB,EAALmhB,MACAyX,EAAc54B,EAAd44B,eAKOhiB,MAAgBhC,EAAAA,EAAAA,QAAiB,w4BAArB,GACb1J,EAASoJ,KAEf,OADAsC,EAAaC,IAAI,UAAW,GAAFjL,OAAKuV,EAAMrqB,MAEnC6e,EAAAA,GAAAA,MAACiF,EAAAA,GAAI,CAAChD,UAAU,oBAAoBiD,GAAE,IAAAjP,OAAMgL,EAAa5P,YAAa0F,SAAA,CACnEvB,GAAkBgW,EAAM0X,WAAY3tB,GACpC0tB,GACCjsB,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,qBAAoBlL,UACjCC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,uCAErB,OAGV,yGChBA,IAAMgiC,GAAe,SACnBnZ,EACAwB,GAEG,IADHyX,EAAuBj6B,UAAA9B,OAAA,QAAA6E,IAAA/C,UAAA,IAAAA,UAAA,GAEjBimB,EAAWjF,EAAa7oB,KAAOqqB,EAAMrqB,GACrCiiC,GAAYtW,EAAAA,GAAAA,GAAI,CACpB,gBAAgB,EAChB,yBAA0BmC,IAE5B,OACEjP,EAAAA,GAAAA,MAAA,OAAKiC,UAAWmhB,EAAUrsB,SAAA,EACxBC,EAAAA,GAAAA,KAACqsB,GAAS,CAAC7X,MAAOA,EAAOyX,eAAgBA,KACzCjsB,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAACnE,UAAU,oBAAoB/f,KAAK,QAAQmkB,KAAK,kBAAgB,gBAAApQ,OAFxBuV,EAAMrqB,IAK1D,EAkEA,GAhEgB,SAAHkJ,GAUP,QATJ2f,EAAY3f,EAAZ2f,aACAjS,EAAO1N,EAAP0N,QAAOurB,EAAAj5B,EACPqc,SAAAA,OAAQ,IAAA4c,GAAQA,EAChBC,EAAal5B,EAAbk5B,cAOclsB,EAAckI,KAApBrP,KACCoG,KAAgBO,OAAiB,w4BAAvB,GAAVP,WAEHrH,EAAO8I,EACVnP,QACC,SAAChG,GAAC,IAAAwqB,EAAA,OACC1G,IACDrP,SAAsD,QAA7C+V,EAAT/V,EAAWU,QAAQC,MAAK,SAACwrB,GAAG,OAAKA,EAAI3rB,UAAYjV,EAAEzB,EAAE,WAAC,IAAAisB,OAAA,EAAtDA,EAAwDlG,cACvC,IAAjBtkB,EAAEuV,UAAgB,IAErBF,MAAK,SAAC/U,EAAGgV,GAAC,OAAKhV,EAAEiV,WAAaD,EAAEC,UAAU,IAC1CnX,KAAI,SAACwqB,GAAK,OAAK2X,GAAanZ,EAAcwB,EAAM,IAEnD,GAAIvc,EAAK/H,QAAU,EAAG,OAAO,KAE7B,IAAMu8B,EAAyB1rB,EAC5BnP,QACC,SAAChG,GAAC,IAAA8gC,EAAA,OACAhd,KACCrP,SAAsD,QAA7CqsB,EAATrsB,EAAWU,QAAQC,MAAK,SAACwrB,GAAG,OAAKA,EAAI3rB,UAAYjV,EAAEzB,EAAE,WAAC,IAAAuiC,GAAtDA,EAAwDxc,cACxC,IAAjBtkB,EAAEuV,UAAgB,IAErBnX,KAAI,SAACwqB,GAAK,OAAK2X,GAAanZ,EAAcwB,GAAO,EAAK,IAEnDmY,GAAiB7W,EAAAA,GAAAA,GAAI,CACzB,qBAAqB,EACrB,6BACEyW,QAAgCx3B,IAAfuK,KAA8Be,UAAAA,EAAWwN,UAG9D,OACE7E,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,UAASlL,SAAA,EACtBC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,kBAAiBlL,SAAE9H,IAEjCyX,GAAY+c,EAAuBv8B,OAAS,GAC3C8P,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,yCAAwClL,SACpD0sB,IAED,UACY13B,IAAfuK,GAA8Be,SAAAA,EAAWwN,QACxC7E,EAAAA,GAAAA,MAAA,OAAKiC,UAAW0hB,EAAe5sB,SAAA,EAC7BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,yBAAyB,IAAE,KAChC,IAAfmV,GAAyBe,SAAAA,EAAWwN,QACnCU,EAAAA,GAAAA,IAAWlO,aAAS,EAATA,EAAWwN,OjDjFF,qBiDmFpB7N,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,qCAGvB,OAGV,yGCpFA,IAqCA,GArCuB,WACrB,QAAckW,EAAckI,KAApBrP,KACCoG,KAAgBO,OAAiB,w4BAAvB,GAAVP,WAET,GAAIe,SAAAA,EAAWqP,SAAU,OAAO,KAEhC,IAAI5D,GAAU9L,EAAAA,GAAAA,KAAA,QAAAD,SAAM,OACD,IAAfT,EACFwM,GACE9C,EAAAA,GAAAA,MAAA,QAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,mCACrB6e,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,yBAAwBlL,SAAA,EACrCC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,+DACfjL,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,+DACfjL,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,+DACfjL,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,+DACfjL,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,yEAIGlW,IAAfuK,GAA8Be,SAAAA,EAAWwN,SAClD/B,GACE9C,EAAAA,GAAAA,MAAA,QAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,mCACrB6V,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAACrB,MAAM,QAAQ7iB,KAAK,QAAQokB,UAAU,QAAQD,KAAK,cAK9D,IAAMud,GAAsB9W,EAAAA,GAAAA,GAAI,CAC9B+W,gBAAgB,EAChB,+BAA0C93B,IAAfuK,IAG7B,OAAOU,EAAAA,GAAAA,KAAA,OAAKiL,UAAW2hB,EAAoB7sB,SAAE+L,GAC/C,yPCxCAtgB,GAAA,kBAAAjB,CAAA,MAAAkB,EAAAlB,EAAA,GAAAmB,EAAAf,OAAAgB,UAAAC,EAAAF,EAAAG,eAAAvB,EAAAK,OAAAmB,gBAAA,SAAAL,EAAAlB,EAAAmB,GAAAD,EAAAlB,GAAAmB,EAAAK,KAAA,EAAAC,EAAA,mBAAAC,OAAAA,OAAA,GAAAC,EAAAF,EAAAG,UAAA,aAAAC,EAAAJ,EAAAK,eAAA,kBAAAC,EAAAN,EAAAO,aAAA,yBAAAC,EAAAf,EAAAlB,EAAAmB,GAAA,OAAAf,OAAAmB,eAAAL,EAAAlB,EAAA,CAAAwB,MAAAL,EAAAe,YAAA,EAAAC,cAAA,EAAAC,UAAA,IAAAlB,EAAAlB,EAAA,KAAAiC,EAAA,aAAAf,GAAAe,EAAA,SAAAf,EAAAlB,EAAAmB,GAAA,OAAAD,EAAAlB,GAAAmB,CAAA,WAAAkB,EAAAnB,EAAAlB,EAAAmB,EAAAE,GAAA,IAAAI,EAAAzB,GAAAA,EAAAoB,qBAAAkB,EAAAtC,EAAAsC,EAAAX,EAAAvB,OAAAmC,OAAAd,EAAAL,WAAAS,EAAA,IAAAW,EAAAnB,GAAA,WAAAtB,EAAA4B,EAAA,WAAAH,MAAAiB,EAAAvB,EAAAC,EAAAU,KAAAF,CAAA,UAAAe,EAAAxB,EAAAlB,EAAAmB,GAAA,WAAAR,KAAA,SAAAgC,IAAAzB,EAAA0B,KAAA5C,EAAAmB,GAAA,OAAAD,GAAA,OAAAP,KAAA,QAAAgC,IAAAzB,EAAA,EAAAlB,EAAAqC,KAAAA,EAAA,IAAAQ,EAAA,iBAAAC,EAAA,iBAAAC,EAAA,YAAAC,EAAA,YAAAC,EAAA,YAAAX,IAAA,UAAAY,IAAA,UAAAC,IAAA,KAAAC,EAAA,GAAAnB,EAAAmB,EAAAzB,GAAA,8BAAA0B,EAAAjD,OAAAkD,eAAAC,EAAAF,GAAAA,EAAAA,EAAAG,EAAA,MAAAD,GAAAA,IAAApC,GAAAE,EAAAuB,KAAAW,EAAA5B,KAAAyB,EAAAG,GAAA,IAAAE,EAAAN,EAAA/B,UAAAkB,EAAAlB,UAAAhB,OAAAmC,OAAAa,GAAA,SAAAM,EAAAxC,GAAA,0BAAAyC,SAAA,SAAA3D,GAAAiC,EAAAf,EAAAlB,GAAA,SAAAkB,GAAA,YAAA0C,QAAA5D,EAAAkB,EAAA,gBAAA2C,EAAA3C,EAAAlB,GAAA,SAAA8D,EAAA3C,EAAApB,EAAA0B,EAAAE,GAAA,IAAAE,EAAAa,EAAAxB,EAAAC,GAAAD,EAAAnB,GAAA,aAAA8B,EAAAlB,KAAA,KAAAoB,EAAAF,EAAAc,IAAAE,EAAAd,EAAAP,MAAA,OAAAqB,GAAA,UAAAkB,GAAAlB,IAAAxB,EAAAuB,KAAAC,EAAA,WAAA7C,EAAAK,QAAAwC,EAAAmB,SAAAC,MAAA,SAAA/C,GAAA4C,EAAA,OAAA5C,EAAAO,EAAAE,EAAA,aAAAT,GAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAA3B,EAAAK,QAAAwC,GAAAoB,MAAA,SAAA/C,GAAAa,EAAAP,MAAAN,EAAAO,EAAAM,EAAA,aAAAb,GAAA,OAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAAA,EAAAE,EAAAc,IAAA,KAAAxB,EAAApB,EAAA,gBAAAyB,MAAA,SAAAN,EAAAG,GAAA,SAAA6C,IAAA,WAAAlE,GAAA,SAAAA,EAAAmB,GAAA2C,EAAA5C,EAAAG,EAAArB,EAAAmB,EAAA,WAAAA,EAAAA,EAAAA,EAAA8C,KAAAC,EAAAA,GAAAA,GAAA,aAAAzB,EAAAzC,EAAAmB,EAAAE,GAAA,IAAAtB,EAAA8C,EAAA,gBAAApB,EAAAE,GAAA,GAAA5B,IAAAgD,EAAA,MAAA9C,MAAA,mCAAAF,IAAAiD,EAAA,cAAAvB,EAAA,MAAAE,EAAA,OAAAH,MAAAN,EAAAiD,MAAA,OAAA9C,EAAA+C,OAAA3C,EAAAJ,EAAAsB,IAAAhB,IAAA,KAAAE,EAAAR,EAAAgD,SAAA,GAAAxC,EAAA,KAAAE,EAAAuC,EAAAzC,EAAAR,GAAA,GAAAU,EAAA,IAAAA,IAAAkB,EAAA,gBAAAlB,CAAA,cAAAV,EAAA+C,OAAA/C,EAAAkD,KAAAlD,EAAAmD,MAAAnD,EAAAsB,SAAA,aAAAtB,EAAA+C,OAAA,IAAArE,IAAA8C,EAAA,MAAA9C,EAAAiD,EAAA3B,EAAAsB,IAAAtB,EAAAoD,kBAAApD,EAAAsB,IAAA,gBAAAtB,EAAA+C,QAAA/C,EAAAqD,OAAA,SAAArD,EAAAsB,KAAA5C,EAAAgD,EAAA,IAAAK,EAAAV,EAAA1C,EAAAmB,EAAAE,GAAA,cAAA+B,EAAAzC,KAAA,IAAAZ,EAAAsB,EAAA8C,KAAAnB,EAAAF,EAAAM,EAAAT,MAAAM,EAAA,gBAAAzB,MAAA4B,EAAAT,IAAAwB,KAAA9C,EAAA8C,KAAA,WAAAf,EAAAzC,OAAAZ,EAAAiD,EAAA3B,EAAA+C,OAAA,QAAA/C,EAAAsB,IAAAS,EAAAT,IAAA,YAAA2B,EAAAtE,EAAAmB,GAAA,IAAAE,EAAAF,EAAAiD,OAAArE,EAAAC,EAAA4B,SAAAP,GAAA,GAAAtB,IAAAmB,EAAA,OAAAC,EAAAkD,SAAA,eAAAhD,GAAArB,EAAA4B,SAAA+C,SAAAxD,EAAAiD,OAAA,SAAAjD,EAAAwB,IAAAzB,EAAAoD,EAAAtE,EAAAmB,GAAA,UAAAA,EAAAiD,SAAA,WAAA/C,IAAAF,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAvD,EAAA,aAAA4B,EAAA,IAAAxB,EAAAiB,EAAA3C,EAAAC,EAAA4B,SAAAT,EAAAwB,KAAA,aAAAlB,EAAAd,KAAA,OAAAQ,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAAlB,EAAAkB,IAAAxB,EAAAkD,SAAA,KAAApB,EAAA,IAAAtB,EAAAF,EAAAkB,IAAA,OAAAhB,EAAAA,EAAAwC,MAAAhD,EAAAnB,EAAA6E,YAAAlD,EAAAH,MAAAL,EAAA2D,KAAA9E,EAAA+E,QAAA,WAAA5D,EAAAiD,SAAAjD,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,GAAAC,EAAAkD,SAAA,KAAApB,GAAAtB,GAAAR,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAzD,EAAAkD,SAAA,KAAApB,EAAA,UAAA+B,EAAA9D,GAAA,IAAAlB,EAAA,CAAAiF,OAAA/D,EAAA,SAAAA,IAAAlB,EAAAkF,SAAAhE,EAAA,SAAAA,IAAAlB,EAAAmF,WAAAjE,EAAA,GAAAlB,EAAAoF,SAAAlE,EAAA,SAAAmE,WAAAC,KAAAtF,EAAA,UAAAuF,EAAArE,GAAA,IAAAlB,EAAAkB,EAAAsE,YAAA,GAAAxF,EAAAW,KAAA,gBAAAX,EAAA2C,IAAAzB,EAAAsE,WAAAxF,CAAA,UAAAwC,EAAAtB,GAAA,KAAAmE,WAAA,EAAAJ,OAAA,SAAA/D,EAAAyC,QAAAqB,EAAA,WAAAS,OAAA,YAAAjC,EAAAxD,GAAA,GAAAA,GAAA,KAAAA,EAAA,KAAAmB,EAAAnB,EAAA2B,GAAA,GAAAR,EAAA,OAAAA,EAAAyB,KAAA5C,GAAA,sBAAAA,EAAA8E,KAAA,OAAA9E,EAAA,IAAA0F,MAAA1F,EAAA2F,QAAA,KAAA5F,GAAA,EAAA0B,EAAA,SAAAqD,IAAA,OAAA/E,EAAAC,EAAA2F,QAAA,GAAAtE,EAAAuB,KAAA5C,EAAAD,GAAA,OAAA+E,EAAAtD,MAAAxB,EAAAD,GAAA+E,EAAAX,MAAA,EAAAW,EAAA,OAAAA,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,SAAArD,EAAAqD,KAAArD,CAAA,YAAAmD,UAAAb,GAAA/D,GAAA,2BAAAkD,EAAA9B,UAAA+B,EAAApD,EAAA0D,EAAA,eAAAjC,MAAA2B,EAAAhB,cAAA,IAAApC,EAAAoD,EAAA,eAAA3B,MAAA0B,EAAAf,cAAA,IAAAe,EAAA0C,YAAA3D,EAAAkB,EAAApB,EAAA,qBAAA/B,EAAA6F,oBAAA,SAAA3E,GAAA,IAAAlB,EAAA,mBAAAkB,GAAAA,EAAA4E,YAAA,QAAA9F,IAAAA,IAAAkD,GAAA,uBAAAlD,EAAA4F,aAAA5F,EAAA+F,MAAA,EAAA/F,EAAAgG,KAAA,SAAA9E,GAAA,OAAAd,OAAA6F,eAAA7F,OAAA6F,eAAA/E,EAAAiC,IAAAjC,EAAAgF,UAAA/C,EAAAlB,EAAAf,EAAAa,EAAA,sBAAAb,EAAAE,UAAAhB,OAAAmC,OAAAkB,GAAAvC,CAAA,EAAAlB,EAAAmG,MAAA,SAAAjF,GAAA,OAAA8C,QAAA9C,EAAA,EAAAwC,EAAAG,EAAAzC,WAAAa,EAAA4B,EAAAzC,UAAAS,GAAA,0BAAA7B,EAAA6D,cAAAA,EAAA7D,EAAAoG,MAAA,SAAAlF,EAAAC,EAAAE,EAAAtB,EAAA0B,QAAA,IAAAA,IAAAA,EAAA4E,SAAA,IAAA1E,EAAA,IAAAkC,EAAAxB,EAAAnB,EAAAC,EAAAE,EAAAtB,GAAA0B,GAAA,OAAAzB,EAAA6F,oBAAA1E,GAAAQ,EAAAA,EAAAmD,OAAAb,MAAA,SAAA/C,GAAA,OAAAA,EAAAiD,KAAAjD,EAAAM,MAAAG,EAAAmD,MAAA,KAAApB,EAAAD,GAAAxB,EAAAwB,EAAA1B,EAAA,aAAAE,EAAAwB,EAAA9B,GAAA,0BAAAM,EAAAwB,EAAA,qDAAAzD,EAAAG,KAAA,SAAAe,GAAA,IAAAlB,EAAAI,OAAAc,GAAAC,EAAA,WAAAE,KAAArB,EAAAmB,EAAAmE,KAAAjE,GAAA,OAAAF,EAAAmF,UAAA,SAAAxB,IAAA,KAAA3D,EAAAwE,QAAA,KAAAzE,EAAAC,EAAAoF,MAAA,GAAArF,KAAAlB,EAAA,OAAA8E,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,QAAAA,EAAAX,MAAA,EAAAW,CAAA,GAAA9E,EAAAwD,OAAAA,EAAAhB,EAAApB,UAAA,CAAA0E,YAAAtD,EAAAiD,MAAA,SAAAzF,GAAA,QAAAwG,KAAA,OAAA1B,KAAA,OAAAP,KAAA,KAAAC,MAAAtD,EAAA,KAAAiD,MAAA,OAAAE,SAAA,UAAAD,OAAA,YAAAzB,IAAAzB,EAAA,KAAAmE,WAAA1B,QAAA4B,IAAAvF,EAAA,QAAAmB,KAAA,WAAAA,EAAAsF,OAAA,IAAApF,EAAAuB,KAAA,KAAAzB,KAAAuE,OAAAvE,EAAAuF,MAAA,WAAAvF,GAAAD,EAAA,EAAAyF,KAAA,gBAAAxC,MAAA,MAAAjD,EAAA,KAAAmE,WAAA,GAAAG,WAAA,aAAAtE,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,YAAAiE,IAAA,EAAAnC,kBAAA,SAAAzE,GAAA,QAAAmE,KAAA,MAAAnE,EAAA,IAAAmB,EAAA,cAAA0F,EAAAxF,EAAAtB,GAAA,OAAA4B,EAAAhB,KAAA,QAAAgB,EAAAgB,IAAA3C,EAAAmB,EAAA2D,KAAAzD,EAAAtB,IAAAoB,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,KAAAnB,CAAA,SAAAA,EAAA,KAAAsF,WAAAM,OAAA,EAAA5F,GAAA,IAAAA,EAAA,KAAA0B,EAAA,KAAA4D,WAAAtF,GAAA4B,EAAAF,EAAA+D,WAAA,YAAA/D,EAAAwD,OAAA,OAAA4B,EAAA,UAAApF,EAAAwD,QAAA,KAAAuB,KAAA,KAAA3E,EAAAR,EAAAuB,KAAAnB,EAAA,YAAAM,EAAAV,EAAAuB,KAAAnB,EAAA,iBAAAI,GAAAE,EAAA,SAAAyE,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,WAAAsB,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,SAAAtD,GAAA,QAAA2E,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,YAAAnD,EAAA,MAAA9B,MAAA,kDAAAuG,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,KAAAT,OAAA,SAAAxD,EAAAlB,GAAA,QAAAmB,EAAA,KAAAkE,WAAAM,OAAA,EAAAxE,GAAA,IAAAA,EAAA,KAAApB,EAAA,KAAAsF,WAAAlE,GAAA,GAAApB,EAAAkF,QAAA,KAAAuB,MAAAnF,EAAAuB,KAAA7C,EAAA,oBAAAyG,KAAAzG,EAAAoF,WAAA,KAAA1D,EAAA1B,EAAA,OAAA0B,IAAA,UAAAP,GAAA,aAAAA,IAAAO,EAAAwD,QAAAjF,GAAAA,GAAAyB,EAAA0D,aAAA1D,EAAA,UAAAE,EAAAF,EAAAA,EAAA+D,WAAA,UAAA7D,EAAAhB,KAAAO,EAAAS,EAAAgB,IAAA3C,EAAAyB,GAAA,KAAA2C,OAAA,YAAAU,KAAArD,EAAA0D,WAAAlC,GAAA,KAAA6D,SAAAnF,EAAA,EAAAmF,SAAA,SAAA5F,EAAAlB,GAAA,aAAAkB,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,gBAAAzB,EAAAP,MAAA,aAAAO,EAAAP,KAAA,KAAAmE,KAAA5D,EAAAyB,IAAA,WAAAzB,EAAAP,MAAA,KAAAiG,KAAA,KAAAjE,IAAAzB,EAAAyB,IAAA,KAAAyB,OAAA,cAAAU,KAAA,kBAAA5D,EAAAP,MAAAX,IAAA,KAAA8E,KAAA9E,GAAAiD,CAAA,EAAA8D,OAAA,SAAA7F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAAgE,aAAAjE,EAAA,YAAA4F,SAAA3F,EAAAqE,WAAArE,EAAAiE,UAAAG,EAAApE,GAAA8B,CAAA,GAAA+D,MAAA,SAAA9F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAA8D,SAAA/D,EAAA,KAAAG,EAAAF,EAAAqE,WAAA,aAAAnE,EAAAV,KAAA,KAAAZ,EAAAsB,EAAAsB,IAAA4C,EAAApE,EAAA,QAAApB,CAAA,QAAAE,MAAA,0BAAAgH,cAAA,SAAAjH,EAAAmB,EAAAE,GAAA,YAAAgD,SAAA,CAAAzC,SAAA4B,EAAAxD,GAAA6E,WAAA1D,EAAA4D,QAAA1D,GAAA,cAAA+C,SAAA,KAAAzB,IAAAzB,GAAA+B,CAAA,GAAAjD,CAAA,UAAAkH,GAAA7F,EAAAH,EAAAlB,EAAAmB,EAAApB,EAAA4B,EAAAE,GAAA,QAAAJ,EAAAJ,EAAAM,GAAAE,GAAAE,EAAAN,EAAAD,KAAA,OAAAH,GAAA,YAAArB,EAAAqB,EAAA,CAAAI,EAAA0C,KAAAjD,EAAAa,GAAAsE,QAAAhG,QAAA0B,GAAAkC,KAAA9C,EAAApB,EAAA,UAAAgc,GAAA1a,GAAA,sBAAAH,EAAA,KAAAlB,EAAAyH,UAAA,WAAApB,SAAA,SAAAlF,EAAApB,GAAA,IAAA4B,EAAAN,EAAAkG,MAAArG,EAAAlB,GAAA,SAAA0K,EAAArJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,OAAAtJ,EAAA,UAAAsJ,EAAAtJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,QAAAtJ,EAAA,CAAAqJ,OAAA,gBAAAsR,GAAA7a,EAAAnB,GAAA,gBAAAmB,GAAA,GAAA8a,MAAAC,QAAA/a,GAAA,OAAAA,CAAA,CAAAgb,CAAAhb,IAAA,SAAAA,EAAA2B,GAAA,IAAA5B,EAAA,MAAAC,EAAA,yBAAAO,QAAAP,EAAAO,OAAAE,WAAAT,EAAA,uBAAAD,EAAA,KAAAlB,EAAAqB,EAAAI,EAAAM,EAAAJ,EAAA,GAAAoB,GAAA,EAAAhD,GAAA,SAAA0B,GAAAP,EAAAA,EAAA0B,KAAAzB,IAAA2D,KAAA,IAAAhC,EAAA,IAAA1C,OAAAc,KAAAA,EAAA,OAAA6B,GAAA,cAAAA,GAAA/C,EAAAyB,EAAAmB,KAAA1B,IAAAiD,QAAAxC,EAAA2D,KAAAtF,EAAAwB,OAAAG,EAAAgE,SAAA7C,GAAAC,GAAA,UAAA5B,GAAApB,GAAA,EAAAsB,EAAAF,CAAA,iBAAA4B,GAAA,MAAA7B,EAAAyD,SAAA5C,EAAAb,EAAAyD,SAAAvE,OAAA2B,KAAAA,GAAA,kBAAAhC,EAAA,MAAAsB,CAAA,SAAAM,CAAA,EAAAya,CAAAjb,EAAAnB,IAAA,SAAAmB,EAAAQ,GAAA,GAAAR,EAAA,qBAAAA,EAAA,OAAAkb,GAAAlb,EAAAQ,GAAA,IAAAT,EAAA,GAAA4O,SAAAlN,KAAAzB,GAAAuF,MAAA,uBAAAxF,GAAAC,EAAA2E,cAAA5E,EAAAC,EAAA2E,YAAAC,MAAA,QAAA7E,GAAA,QAAAA,EAAA+a,MAAAK,KAAAnb,GAAA,cAAAD,GAAA,2CAAA8Y,KAAA9Y,GAAAmb,GAAAlb,EAAAQ,QAAA,GAAA4a,CAAApb,EAAAnB,IAAA,qBAAA4E,UAAA,6IAAA4X,EAAA,UAAAH,GAAAlb,EAAAQ,IAAA,MAAAA,GAAAA,EAAAR,EAAAwE,UAAAhE,EAAAR,EAAAwE,QAAA,QAAA3F,EAAA,EAAAqB,EAAA4a,MAAAta,GAAA3B,EAAA2B,EAAA3B,IAAAqB,EAAArB,GAAAmB,EAAAnB,GAAA,OAAAqB,CAAA,UAAA8F,GAAAnH,EAAAmB,GAAA,IAAAD,EAAAd,OAAAD,KAAAH,GAAA,GAAAI,OAAAgH,sBAAA,KAAArH,EAAAK,OAAAgH,sBAAApH,GAAAmB,IAAApB,EAAAA,EAAAsH,QAAA,SAAAlG,GAAA,OAAAf,OAAAkH,yBAAAtH,EAAAmB,GAAAe,UAAA,KAAAhB,EAAAoE,KAAAiC,MAAArG,EAAAnB,EAAA,QAAAmB,CAAA,UAAAsG,GAAAxH,GAAA,QAAAmB,EAAA,EAAAA,EAAAsG,UAAA9B,OAAAxE,IAAA,KAAAD,EAAA,MAAAuG,UAAAtG,GAAAsG,UAAAtG,GAAA,GAAAA,EAAA,EAAAgG,GAAA/G,OAAAc,IAAA,GAAAyC,SAAA,SAAAxC,GAAAuG,GAAA1H,EAAAmB,EAAAD,EAAAC,GAAA,IAAAf,OAAAuH,0BAAAvH,OAAAwH,iBAAA5H,EAAAI,OAAAuH,0BAAAzG,IAAAiG,GAAA/G,OAAAc,IAAAyC,SAAA,SAAAxC,GAAAf,OAAAmB,eAAAvB,EAAAmB,EAAAf,OAAAkH,yBAAApG,EAAAC,GAAA,WAAAnB,CAAA,UAAA0H,GAAA1H,EAAAmB,EAAAD,GAAA,OAAAC,EAAA,SAAAD,GAAA,IAAAO,EAAA,SAAAP,GAAA,aAAA6C,GAAA7C,KAAAA,EAAA,OAAAA,EAAA,IAAAlB,EAAAkB,EAAAQ,OAAAwG,aAAA,YAAAlI,EAAA,KAAAyB,EAAAzB,EAAA4C,KAAA1B,EAAAC,UAAA,aAAA4C,GAAAtC,GAAA,OAAAA,EAAA,UAAAmD,UAAA,uDAAAuD,OAAAjH,EAAA,CAAAkH,CAAAlH,GAAA,gBAAA6C,GAAAtC,GAAAA,EAAAA,EAAA,GAAAqG,CAAA3G,MAAAnB,EAAAI,OAAAmB,eAAAvB,EAAAmB,EAAA,CAAAK,MAAAN,EAAAgB,YAAA,EAAAC,cAAA,EAAAC,UAAA,IAAApC,EAAAmB,GAAAD,EAAAlB,CAAA,CAqGA,IAAM2nB,GAAS,IAAI9a,EA26BnB,GA55B0B,SAAH/D,GAAqD,IAAAy5B,E1DtD3BC,E0DsDpBC,EAAa35B,EAAb25B,cACrBzuB,EAASoJ,KACfuX,EAAqD3W,KAAvClI,EAAS6e,EAAfhmB,KAAyB+zB,EAAe/N,EAAvBC,OACzB+N,EAAiD7kB,KAAnCjI,EAAO8sB,EAAbh0B,KAAuBi0B,EAAaD,EAArB/N,OACjBuJ,GAAWC,EAAAA,EAAAA,MACXhgB,GAAWC,EAAAA,EAAAA,MACXqB,GAAehC,EAAAA,EAAAA,MACfjN,EAAmB8M,KAEN8gB,EAAAriB,GAAjB1G,KAAiB,GAAAutB,EAAAxE,EAAA,GADVnwB,EAAc20B,EAAd30B,eAAgB6G,EAAU8tB,EAAV9tB,WAAYD,EAAc+tB,EAAd/tB,eAAkBiU,EAAQsV,EAAA,GAE/DyE,E1DFyB,WACzB,IAAM91B,EAAY6Q,KACZtQ,EAAY8P,KACJvH,EAAckI,KAApBrP,KACCT,EAAqC8N,GAAjB1G,KAAiB,GAAvB,GAAdpH,eACH8F,EAASoJ,KAEf,OAAO2lB,EAAAA,GAAAA,GAAe,aAADruB,OACN1H,EAAS,KAAA0H,OAAInH,IAC1B,SAACsxB,EAACpb,GAAgD,IAA5C9gB,EAAG8gB,EAAH9gB,IACEiM,EAAQoZ,GACZza,EACA+J,GAAmBxB,EAAYnT,GAC/BuL,EACA8F,GACA,GAEF,OAAOyI,GAAcumB,UAAUh2B,EAAWO,EAAWqB,EACvD,GAEJ,C0DlBsBq0B,GAAZC,EAAOJ,EAAPI,QACFtpB,GAAOyF,EAAAA,GAAAA,KACPvR,E1DhE2C,QAAjD00B,EADwCxmB,IAAjB0B,EAAAA,EAAAA,MAAiB,GAArB,GACC/T,IV7DkB,mCU6DW,IAAA64B,EAAAA,OAAIh4B,E0DiEjD8L,IAAwB,QAAdisB,E1DnD0BvmB,IAAjB0B,EAAAA,EAAAA,MAAiB,GAArB,GACC/T,IAAIgL,W0DkDI,IAAA4tB,EAAAA,EAAIY,KAChC,IAAK7sB,EAAS,KAAA8sB,EAAAC,EACNC,EAIH,QAJqBF,EACtBvtB,EAAQW,QAAQnP,QACd,SAAChG,GAAC,IAAAkiC,EAAA,OACAztB,SAAkB,QAATytB,EAATztB,EAAWU,eAAO,IAAA+sB,GAAqC,QAArCA,EAAlBA,EAAoB9sB,MAAK,SAACwrB,GAAG,OAAKA,EAAI3rB,UAAYjV,EAAEzB,EAAE,WAAC,IAAA2jC,OAAA,EAAvDA,EAAyD5d,WAAW,WACvE,IAAAyd,EAAAA,EAAI,GACP9sB,EACEgtB,EAAmB39B,OAAS,EACxB29B,EAAmB,GAAG1jC,GACwC,QADtCyjC,EACxBxtB,EAAQW,QAAQE,MAAK,SAAC/U,EAAGgV,GAAC,OAAKhV,EAAEiV,WAAaD,EAAEC,UAAU,IAAE,UAAE,IAAAysB,OAAA,EAA9DA,EAAgEzjC,EACxE,CAGA,IAxCsDuS,EAwChDqxB,GAAgBC,EAAAA,EAAAA,cACpBC,EAAAA,GAAAA,WAAS,SAACC,GACRA,GACF,GAAG,KACH,IAKIpb,IADJ1S,EAAQorB,mBAAqBprB,EAAQqrB,oBAGpCrrB,EAAQ+tB,wBACP9tB,aAAS,EAATA,EAAW+qB,oBACXhrB,EAAQ0O,qBAAuB/S,EAAmBgT,eAClD3O,EAAQorB,qBACNxwB,GAEAgY,EAAepS,GAASC,EAAST,GACjC2S,EjErJoB,SAAClS,EAAiBT,GAC5C,IAAMoU,EAAQ5T,GAASC,EAAST,GAC1B4M,EAAQ5M,EAAQW,QAAQ3M,QAAQogB,GACtC,OAAIxH,GAAS,GAAKA,EAAQ5M,EAAQW,QAAQ7Q,OAAS,EAC1CkQ,EAAQW,QAAQE,MAAK,SAAC/U,EAAGgV,GAAC,OAAKhV,EAAEiV,WAAaD,EAAEC,UAAU,IAC/D6L,EAAQ,GAGLwH,CACT,CiE4IoB4Z,CAAavtB,EAAST,GAEjC8S,EAA4B3M,IAAV8J,EAAAA,GAAAA,KAAU,GAAd,GACd8C,EAAgC5M,IAAV8J,EAAAA,GAAAA,KAAU,GAAd,GAClB+C,EAAqC7M,IAAV8J,EAAAA,GAAAA,KAAU,GAAd,GAEtBlmB,EAA6CiW,EAA7CjW,GAAI2kB,EAAyC1O,EAAzC0O,mBAAoBgd,EAAqB1rB,EAArB0rB,MAAOC,EAAc3rB,EAAd2rB,UACvC/d,EAII3N,QAAAA,EAAa,CAAC,EAHhBvI,EAASkW,EAATlW,UAASozB,EAAAld,EACT0B,SAAAA,QAAQ,IAAAwb,GAAQA,EAAAC,GAAAnd,EAChBod,kBAEIpM,QAFa,IAAAmM,IAAQA,MAEyB9yB,EAC9Cg2B,IAAeC,EAAAA,EAAAA,IAASnuB,GAAOC,QAAQ,eACvCmuB,IAAcD,EAAAA,EAAAA,IAASnuB,GAAOI,OAAO,aAAc,eAEnDyoB,IAAiBC,EAAAA,GAAAA,IA1E+BvsB,EA2EzC3K,GAAAA,GAAA,GACNqO,EAAQW,QAAQnC,QACjB,SAACmD,EAAKlD,GAAI,IAAAuX,EAAAsW,EAAA8B,EAAAC,EAAA,OAAA18B,GAAAA,GAAA,GAEHgQ,GAAG,IACN,CAACV,GAAexC,EAAK1U,GAAI,qBACvB0U,EAAKkV,sBACD,CACEhoB,MAEsB,QAFjBqqB,EACH/V,SAAqD,QAA5CqsB,EAATrsB,EAAWU,QAAQC,MAAK,SAACpV,GAAC,OAAKA,EAAEiV,UAAYhC,EAAK1U,EAAE,WAAC,IAAAuiC,OAAA,EAArDA,EACIhoB,wBAAgB,IAAA0R,EAAAA,EAAIla,EAAuBkG,WACjDgC,WAAY,CACV,CACEA,WAAY,SACVrY,EACAgC,GAAmC,QAGjC4U,GACE5U,EACEsT,GAAexC,EAAK1U,GAAI,yBAEtBgY,GAAqBpW,GAC5B,EACHiJ,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,2CAKZ4K,EACN,CAACsM,GAAexC,EAAK1U,GAAI,sBACvB0U,EAAKmV,uBACD,CACEjoB,MAEuB,QAFlByiC,EACHnuB,SAAqD,QAA5CouB,EAATpuB,EAAWU,QAAQC,MAAK,SAACpV,GAAC,OAAKA,EAAEiV,UAAYhC,EAAK1U,EAAE,WAAC,IAAAskC,OAAA,EAArDA,EACI9pB,yBAAiB,IAAA6pB,EAAAA,EAAI,SAE7Bz5B,GAAS,GAEnB,CAAC,IAEAqL,EAAQW,QACRnM,SAAQ,SAAChJ,GAAC,OAAKA,EAAE4Z,SAAS,IAC1B5Q,SAAQ,SAACrH,GAAC,OAAKA,EAAE0U,QAAQ,IACzBrD,QACC,SAACmD,EAAKlD,GAAI,IAAAwX,EAAA8E,EAAAuT,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAA,OAAA39B,GAAAA,GAAA,GAEHgQ,GAAG,IACN,CAACR,GAAkB1C,EAAK1U,GAAI,2BAA4B0U,EACrD2hB,eAAeO,QACd,CACEh1B,MAG2B,QAHtBsqB,EACHhW,SAEC,QAFQ8a,EAAT9a,EAAW4B,SAASjB,MAClB,SAACoU,GAAE,OAAKA,EAAG5T,aAAe3C,EAAK1U,EAAE,WAClC,IAAAgxB,OAAA,EAFDA,EAEG3X,8BAAsB,IAAA6S,EAAAA,EACzBna,EAAuBkG,WACzBgC,WAAY,CACV,CACEA,WAAY,SACVrY,EACAgC,GAAsC,SAGnC8Q,EAAK2hB,eAAexK,gBACnBrT,GACE5U,EAAOwT,GAAkB1C,EAAK1U,GAAI,kBAErCgY,GAAqBpW,GACvB,EACHiJ,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,2CAKZ4K,EACJ,CAACwM,GAAkB1C,EAAK1U,GAAI,UAAW0U,EAAK4E,MAAMsd,QAC9C,CACEh1B,MAGU,QAHL2iC,EACHruB,SAEC,QAFQsuB,EAATtuB,EAAW4B,SAASjB,MAClB,SAACoU,GAAE,OAAKA,EAAG5T,aAAe3C,EAAK1U,EAAE,WAClC,IAAAwkC,OAAA,EAFDA,EAEGlrB,aAAK,IAAAirB,EAAAA,EAAIvyB,EAAMiG,WACpBgC,WAAY,CACV,CACEA,WAAY,SACVrY,EACAgC,GAAsC,SAGnC8Q,EAAK4E,MAAMuS,gBACVrT,GACE5U,EAAOwT,GAAkB1C,EAAK1U,GAAI,kBAErCkY,GAAYtW,GACd,EACHiJ,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,kCAKZ4K,EACJ,CAACwM,GAAkB1C,EAAK1U,GAAI,cAAe0U,EAAK6E,UAAUqd,QACtD,CACEh1B,MAGc,QAHT6iC,EACHvuB,SAEC,QAFQwuB,EAATxuB,EAAW4B,SAASjB,MAClB,SAACoU,GAAE,OAAKA,EAAG5T,aAAe3C,EAAK1U,EAAE,WAClC,IAAA0kC,OAAA,EAFDA,EAEGnrB,iBAAS,IAAAkrB,EAAAA,EAAIxyB,EAAUgG,WAC5BgC,WAAY,CACV,CACEA,WAAY,SACVrY,EACAgC,GAAsC,SAGnC8Q,EAAK6E,UAAUsS,gBACdrT,GACE5U,EAAOwT,GAAkB1C,EAAK1U,GAAI,kBAErCmY,GAAgBvW,GAClB,EACHiJ,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,sCAKZ4K,EACJ,CAACwM,GAAkB1C,EAAK1U,GAAI,YAAa0U,EAAKiF,QAAQid,QAClD,CACEh1B,MAAO,GAAFkT,OAGO,QAHP6vB,EACHzuB,SAEC,QAFQ0uB,EAAT1uB,EAAW4B,SAASjB,MAClB,SAACoU,GAAE,OAAKA,EAAG5T,aAAe3C,EAAK1U,EAAE,WAClC,IAAA4kC,OAAA,EAFDA,EAEGjrB,eAAO,IAAAgrB,EAAAA,EAAI,IAEhB1qB,WAAY,CACV,CACEA,WAAY,SAACrY,GAAa,QAErB8S,EAAKiF,QAAQkS,iBACX/S,GAAc6W,SAAS/tB,EAAO,OAChCmX,GAAa4W,SAAS/tB,EAAO,KAC/B,EACHiJ,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,oCAKZ4K,EACJ,CAACwM,GAAkB1C,EAAK1U,GAAI,2BAA4B0U,EACrD4hB,iBAAiBM,QAChB,CACEh1B,MAG2B,QAHtBijC,EACH3uB,SAEC,QAFQ4uB,EAAT5uB,EAAW4B,SAASjB,MAClB,SAACoU,GAAE,OAAKA,EAAG5T,aAAe3C,EAAK1U,EAAE,WAClC,IAAA8kC,OAAA,EAFDA,EAEGtrB,8BAAsB,IAAAqrB,EAAAA,EAAI,GAC/B5qB,WAAY,CACV,CACEA,WAAY,SAACrY,GAAuC,QAEhD8S,EAAK4hB,iBAAiBzK,kBACpBnX,EAAK4hB,iBAAiB/d,UACpBE,GAAgB7W,GAChBwW,GAAcxW,KAClB8S,EAAK4hB,iBAAiBvI,eAAehoB,OAAS,EAC/C,EACH8E,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,6BAGR,CACEia,WAAY,SAACrY,GAAuC,QAEhD8S,EAAK4hB,iBAAiBzK,kBACpBnX,EAAK4hB,iBAAiB/d,UACpBE,GAAgB7W,GAChBwW,GAAcxW,KAClB8S,EAAK4hB,iBAAiBvI,eAAehoB,QAAU,EAChD,EACH8E,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,iCAGR,CACEia,WAAY,SAACrY,GAAuC,OAwBnC,IAvBf8S,EAAK4hB,iBAAiBvI,eACnBtmB,QAAO,SAAC+nB,GAAG,OAAKA,EAAIpB,cAAc,IAClCvuB,KAAI,SAAC2vB,GAAG,OAAKA,EAAIxvB,EAAE,IACnByH,QAAO,SAAC+9B,GAAG,OACV5jC,EAAMiV,MACJ,SAACyB,GAAI,OACHA,EAAKwC,mBAAqB0qB,GAC1BltB,EAAKC,YACH7D,EAAK4hB,iBAAiB/d,SAAS,GACpC,IAEF1Y,KACC,SAAC2lC,GAAG,OACF5jC,EAAMiV,MACJ,SAACyB,GAAI,OAAKA,EAAKwC,mBAAqB0qB,CAAG,GACxC,IAEJ/9B,QACC,SAAC6Q,GAAI,QAEDA,EAAKyC,kBACLzC,EAAKyC,iBAAiBtD,OACvB,IACH1R,MAAY,EAClB8E,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,sCAKZ4K,EACJ,CAACwM,GAAkB1C,EAAK1U,GAAI,cAAe0U,EAAKkF,UAAUgd,QACtD,CACEh1B,MAGc,QAHTmjC,EACH7uB,SAEC,QAFQ8uB,EAAT9uB,EAAW4B,SAASjB,MAClB,SAACoU,GAAE,OAAKA,EAAG5T,aAAe3C,EAAK1U,EAAE,WAClC,IAAAglC,OAAA,EAFDA,EAEGprB,iBAAS,IAAAmrB,EAAAA,EAAI,GAClB9qB,WAAY,CACV,CACEA,WAAY,SAACrY,GACX,OAAQ8S,EAAKkF,UAAU7Y,MACrB,KAAK2Q,EAAcgf,QACjB,QACGhc,EAAKkF,UAAUiS,iBACbjT,GAAgBhX,KAClBsX,GACCtX,EACAm9B,GAAAA,GAAgC9kB,aAGtC,KAAKvI,EAAc0e,MACjB,QACG1b,EAAKkF,UAAUiS,iBACbjT,GAAgBhX,KAClBsX,GACCtX,EACAm9B,GAAAA,GACG9kB,aAGT,KAAKvI,EAAcmf,MACjB,QACGnc,EAAKkF,UAAUiS,iBACbjT,GAAgBhX,KAClBsX,GACCtX,EACAm9B,GAAAA,GAA0B9kB,aAGhC,KAAKvI,EAAc4e,MACjB,QACE5b,EAAKkF,UAAUiS,iBACdjT,GAAgBhX,IAErB,QACE,OAAO,EAEb,EACAiJ,QAAS,WACP,OAAQ6J,EAAKkF,UAAU7Y,MACrB,KAAK2Q,EAAcgf,QACjB,OAAO1W,EAAKK,cAAc,CACxBra,GAAI,qCAER,KAAK0R,EAAc0e,MACjB,OAAOpW,EAAKK,cAAc,CACxBra,GAAI,mCAER,KAAK0R,EAAcmf,MACjB,OAAO7W,EAAKK,cAAc,CACxBra,GAAI,mCAER,KAAK0R,EAAc4e,MACjB,OAAOtW,EAAKK,cAAc,CACxBra,GAAI,8BAER,QACE,OAEN,UAIN4K,EACJ,CAACwM,GAAkB1C,EAAK1U,GAAI,SAAU0U,EAAKmF,KAAK+c,QAC5C,CACEh1B,MAAOsU,SAEN,QAFe+uB,EAAT/uB,EAAW4B,SAASjB,MACzB,SAACoU,GAAE,OAAKA,EAAG5T,aAAe3C,EAAK1U,EAAE,WAClC,IAAAilC,OAAA,EAFMA,EAEJprB,KACHI,WAAY,CACV,CACEA,WAAY,SAACrY,GAAW,QACpB8S,EAAKmF,KAAKgS,iBAAmBhT,GAAWjX,GAAO,EACnDiJ,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,0BAGR,CACEia,WAAY,SAACrY,GAAW,QACpB8S,EAAKmF,KAAKgS,kBAAmB4Z,EAAAA,GAAAA,IAAY7jC,GAAO,EACpDiJ,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,mCAKZ4K,EACJ,CAACwM,GAAkB1C,EAAK1U,GAAI,iBAAkB0U,EAAKoF,aAChD8c,QACC,CACEh1B,MAGiB,QAHZsjC,EACHhvB,SAEC,QAFQivB,EAATjvB,EAAW4B,SAASjB,MAClB,SAACoU,GAAE,OAAKA,EAAG5T,aAAe3C,EAAK1U,EAAE,WAClC,IAAAmlC,OAAA,EAFDA,EAEGrrB,oBAAY,IAAAorB,EAAAA,EAAI,GACrBjrB,WAAY,CACV,CACEA,WAAY,SAACrY,GAAoB,SAE5B8S,EAAKoF,aAAa+R,gBACjBlT,GAAmB/W,KACrB8S,EAAKoF,aAAa/Y,OAChB4Q,EAAkB0f,U/DhelBlvB,E+DieaP,I/DhezCO,GAAKA,EAAEsF,QAAO,SAACtE,GAAC,OAAkB,IAAbA,EAAE4C,MAAY,IAAEA,OAAS,KADnB,IAAC5D,C+DkeH,EACH0I,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,6BAGR,CACEia,WAAY,SAACrY,GAAoB,SAE5B8S,EAAKoF,aAAa+R,gBACjBlT,GAAmB/W,KACrB8S,EAAKoF,aAAa/Y,OAChB4Q,EAAkB8gB,Q/D/epBtwB,E+DgfaP,I/D/evCO,GAAKA,EAAEsF,QAAO,SAACtE,GAAC,OAAkB,IAAbA,EAAE4C,MAAY,IAAEA,OAAS,KADrB,IAAC5D,C+DifD,EACH0I,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,2BAGR,CACEia,WAAY,SAACrY,GAAoB,QAE7B8S,EAAKoF,aAAa+R,gBAClBnX,EAAKoF,aAAa/Y,OAChB4Q,EAAkB2f,eACnB3Y,GAAmB/W,GACrB,EACHiJ,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,yCAKZ4K,EACJ,CAACwM,GAAkB1C,EAAK1U,GAAI,YAAa0U,EAAKgF,QAAQkd,QAClD,CACEh1B,MAGY,QAHPwjC,EACHlvB,SAEC,QAFQmvB,EAATnvB,EAAW4B,SAASjB,MAClB,SAACoU,GAAE,OAAKA,EAAG5T,aAAe3C,EAAK1U,EAAE,WAClC,IAAAqlC,OAAA,EAFDA,EAEG3rB,eAAO,IAAA0rB,EAAAA,EAAI,GAChBnrB,WAAY,CACV,CACEA,WAAY,SACVrY,GAA+C,QAG7C8S,EAAKgF,QAAQmS,iBAAmBnT,GAAc9W,GAC/C,EACHiJ,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,oCAKZ4K,EACJ,CAACwM,GAAkB1C,EAAK1U,GAAI,cAAe0U,EAAK+E,UAAUmd,QACtD,CACEh1B,MAEe,QAFV0jC,EACHpvB,SAAyD,QAAhDqvB,EAATrvB,EAAW4B,SAASjB,MAAK,SAACpV,GAAC,OAAKA,EAAE4V,aAAe3C,EAAK1U,EAAE,WAAC,IAAAulC,OAAA,EAAzDA,EACI9rB,iBAAS,IAAA6rB,EAAAA,EAAI,GACnBrrB,WAAY,CACV,CACEA,WAAY,SAACrY,GAAa,QAEtB8S,EAAK+E,UAAUoS,iBACdrT,GAAgB5W,GAClB,EACHiJ,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,+BAGR,CACEia,WAAY,SACVrY,EACAgC,GAAyC,IAAA8hC,EAAA,SAGtCltB,GAAgB5W,IACjBuW,GACEvU,EAAOwT,GAAkB1C,EAAK1U,GAAI,gBAES,QAD5C0lC,EACDhxB,EAAK+E,UAAUksB,sCAA8B,IAAAD,GAA7CA,EAA+CrtB,MAC7C,SAACjV,GAAC,OACAA,IACAQ,EAAOwT,GAAkB1C,EAAK1U,GAAI,aAAa,IAEpD,EACH6K,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,+BAGR,CACEia,WAAY,SACVrY,EACAgC,GAAqC,IAAAgiC,EAAA,SAGlCptB,GAAgB5W,IACjBsW,GACEtU,EAAOwT,GAAkB1C,EAAK1U,GAAI,YAEK,QADxC4lC,EACDlxB,EAAK+E,UAAUosB,kCAA0B,IAAAD,GAAzCA,EAA2CvtB,MACzC,SAACjV,GAAC,OACAA,IACAQ,EAAOwT,GAAkB1C,EAAK1U,GAAI,SAAS,IAEhD,EACH6K,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,+BAGR,CACEia,WAAY,SACVrY,EACAgC,GAGC,IAAAkiC,EAAA,SAGEttB,GAAgB5W,IACjBoW,GACEpU,EACEwT,GACE1C,EAAK1U,GACL,6BAI4C,QADjD8lC,EACDpxB,EAAK+E,UAAUssB,2CAAmC,IAAAD,GAAlDA,EAAoDztB,MAClD,SAACjV,GAAC,OACAA,IACAQ,EACEwT,GACE1C,EAAK1U,GACL,0BAEH,IAEN,EACH6K,QAASmP,EAAKK,cAAc,CAC1Bra,GAAI,sCAKZ4K,GAAS,GAEjB,CAAC,IAviBFpK,OAAOD,KAAKgS,GAAKkC,QAAU,SAACmD,EAAKzP,GACtC,OAAIoK,EAAIpK,GACNP,GAAAA,GAAA,GACKgQ,GAAG,IACN,CAACzP,GAAMoK,EAAIpK,KAIRyP,CACT,GAAG,CAAC,IAiiBF,CACE+O,SAAU,WACRwC,EAAS,CACPpoB,KAAM,qBACNwU,QAAS5H,QAAAA,EAAasH,IAE1B,KAIJ8U,EAAAA,EAAAA,YAAU,WAEH9T,EAAQ+vB,SAAShlC,SAASoT,IAC7B+U,EAAS,CACPpoB,KAAM,aACNwU,QAASxB,GAA6BkC,EAAQ+vB,WAGpD,GAAG,CAAC7c,EAAUlT,EAAQ+vB,SAAU5xB,KAEhC2V,EAAAA,EAAAA,YAAU,WAEJ7T,GAAaA,EAAUqP,UAAYrP,EAAUuF,cAAgBrH,GAC/D+U,EAAS,CACPpoB,KAAM,aACNwU,QAASW,EAAUuF,aAGzB,GAAG,CAAC0N,EAAU/U,EAAQ8B,KAEtB6T,EAAAA,EAAAA,YAAU,WAER,IAAMnH,EAAUF,GAAWzM,EAAQjW,KAEhCkW,UAAAA,EAAWqP,WACZtP,EAAQ0O,qBAAuB/S,EAAmBgT,eAClDhC,EAAQ7c,OAAS,GACfm+B,KACiBt7B,EAAAA,GAAAA,IAAKi6B,EAE5B,GAAG,KAEH9Y,EAAAA,EAAAA,YAAU,WAEJvL,EAASQ,UAAUgkB,GACzB,GAAG,CAACxkB,EAASQ,SAAUgkB,KAEvBjZ,EAAAA,EAAAA,YAAU,WAEH7T,GAAaA,EAAUvI,YAAcsH,KACxCkU,EAAS,CAAEpoB,KAAM,iBAAkBwU,aAAS3K,IAC5Cue,EAAS,CAAEpoB,KAAM,qBAAsBwU,SAAS,IAEpD,GAAG,CAAC4T,EAAUjT,KAEd6T,EAAAA,EAAAA,YAAU,WACJjK,EAAa,GAAG/V,IAAI,gBACtBK,EAAAA,EAAAA,IACE,UACA4P,EAAKK,cAAc,CAAEra,GAAI,iCACzBga,EAAKK,cAAc,CAAEra,GAAI,wCAE3B8f,EAAa,IAAG,SAACyH,GAEf,OADAA,EAAQ0e,OAAO,aACR1e,CACT,IAEJ,GAAG,CAACvN,EAAM8F,KAEViK,EAAAA,EAAAA,YAAU,WAEJxE,IAAc6e,KAChBphB,GAAahjB,EAAI2N,GACjB4wB,EAASvoB,GAAOE,UAAUlW,EAAI2N,IAElC,GAAG,CAACA,EAAW3N,EAAIulB,GAAUgZ,EAAU6F,MAEvCra,EAAAA,EAAAA,YAAU,WACR,IAAMnJ,EAAU,SAACxgB,GACf,IAAQ+f,EAAW/f,EAAX+f,OACJA,aAAkB+lB,cAElB/lB,EAAOgmB,UAAUC,SAAS,YACzBjmB,EAAOkmB,QAAkCC,aAE1ClmC,EAAEmmC,iBzCtrBsB,SAACC,EAAoB9vB,GACrDjL,OAAO+S,SAASioB,KAAO,YAAH3xB,OAAe4B,EAAO,KAAA5B,OAAI0xB,EAChD,CyCqrBUE,CACGvmB,EAAOkmB,QAAkCC,UAC1Czd,EAAa7oB,IAIrB,EAEA,OADAsf,SAASqnB,iBAAiB,QAAS/lB,GAC5B,WACLtB,SAASsnB,oBAAoB,QAAShmB,EACxC,CACF,GAAG,CAACiI,KAEJkB,EAAAA,EAAAA,YAAU,YACHlB,GAAgB5S,EAAQW,QAAQ7Q,OAAS,GAC5CuiB,GACExI,EACA7J,EAAQW,QAAQE,MAAK,SAAC/U,EAAGgV,GAAC,OAAKhV,EAAEiV,WAAaD,EAAEC,UAAU,IAAE,GAAGhX,GAGrE,GAAG,CAAC6oB,EAAc5S,EAAQW,QAASkJ,IAEnC,IAAMoJ,IAAW2a,EAAAA,EAAAA,aAAW1nB,GAAA9a,KAAA+E,MAC1B,SAAA+C,IAAA,IAAA09B,EAAAx0B,EAAAy0B,EAAAj/B,UAAA,OAAAxG,KAAAoB,MAAA,SAAAkH,GAAA,cAAAA,EAAA/C,KAAA+C,EAAAzE,MAAA,OAAwB,GAAjB2hC,EAASC,EAAA/gC,OAAA,QAAA6E,IAAAk8B,EAAA,IAAAA,EAAA,GAEX5wB,SAAAA,EAAWqP,WACXrP,aAAS,EAATA,EAAWvI,aAAcuH,IAAkB2xB,EAAU,CAAAl9B,EAAAzE,KAAA,gBAAAyE,EAAA/C,KAAA,EAAA+C,EAAAzE,KAAA,EAG/Bo+B,EAAQzE,GAAej7B,OAAQ,CAClDmjC,YAAY,IACZ,OAFU,OAAN10B,EAAM1I,EAAAhF,KAAAgF,EAAAzE,KAAG,EAGT49B,IAAiB,OAiBrB,OAhBFngB,GAAkBtQ,EAAOjF,UAAW,CAClCsW,OAAQrR,EAAOqR,OACf/V,UAAW0E,EAAO1E,YAEpBwb,EAAS,CACPpoB,KAAM,iBACNwU,SAAS,IAEXgpB,EACE,CACEvf,SAAUhJ,GAAOI,OAAO/D,EAAOjF,UAAWiF,EAAO1E,WACjDkU,OAAQ/B,EAAa,GAAG5P,YAE1B,CACEnE,SAAS,IAEXpC,EAAA7E,OAAA,SACKuN,EAAO1E,WAAS,QAKpB,OALoBhE,EAAA/C,KAAA,GAAA+C,EAAAwrB,GAAAxrB,EAAA,SAEvBwf,EAAS,CACPpoB,KAAM,iBACNwU,aAAS3K,IACRjB,EAAA7E,OAAA,SACI6I,QAAAA,EAAasH,IAAS,eAAAtL,EAAA7E,OAAA,SAG1B6I,QAAAA,EAAasH,IAAS,yBAAAtL,EAAA5C,OAAA,GAAAoC,EAAA,mBAE/B,CACEggB,EACAxb,EACAkxB,GAAej7B,OACfk/B,EACAvE,EACArpB,EACA4K,EACAwjB,EACAptB,aAAS,EAATA,EAAWvI,UACXuI,aAAS,EAATA,EAAWqP,YAIfwE,EAAAA,EAAAA,YAAU,WACJ5U,GACF+T,IAGJ,GAAG,CAAC/T,KAEJ4U,EAAAA,EAAAA,YAAU,WAcR,OAZE8U,KACCtZ,IACDrQ,GACAvH,IAAcuH,GAEd0uB,GAAc,WACZza,EAAS,CACPpoB,KAAM,iBACNwU,SAAS,GAEb,IAEKquB,EAAcoD,MACvB,GAAG,CACDpD,EACAza,EACAxb,EACA4X,GACArQ,EACA2pB,KAGF,IAAMhH,IAAYlM,EAAAA,GAAAA,GAAI,CACpBsb,MAAM,EACN,iBAAkBte,GAAYpD,GAC9B,iBAAkBA,KAAasP,KAGjC,IACG5e,EAAQixB,kBACTviB,IAAuB/S,EAAmB2vB,cAE1C,OACE1iB,EAAAA,GAAAA,MAAAI,GAAAA,SAAA,CAAArJ,SAAA,EACEC,EAAAA,GAAAA,KAACmM,GAAgB,CAAC7gB,MAAO0S,MACzBgC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,OAAMlL,UACnBiJ,EAAAA,GAAAA,MAAA,OAAKiC,UAAW+W,GAAUjiB,SAAA,EACxBC,EAAAA,GAAAA,KAAC6gB,GAAAA,GAAO,CAACvwB,KAAK,kBACd0P,EAAAA,GAAAA,KAACsxB,GAAM,KACPtxB,EAAAA,GAAAA,KAACuxB,GAAa,UAGlBvxB,EAAAA,GAAAA,KAACoM,GAAc,CAAC7U,UAAW6I,EAAQjW,QAKzC,IAAK6oB,EAAc,OAAO,KAE1B,IAAQwe,GAAoDxe,EAApDwe,mBAAoBC,GAAgCze,EAAhCye,oBAAqB5f,GAAWmB,EAAXnB,OAE3C6f,GACJhiB,KACCsP,IACDnhB,GAASuC,EAAQ6mB,MAAM0K,wBACnBtxB,aAAS,EAATA,EAAWqxB,YACXF,GAEAI,GACJxxB,EAAQW,QAAQnP,QACd,SAAChG,GAAC,IAAAimC,EAAA,OACCniB,KACDrP,SAAsD,QAA7CwxB,EAATxxB,EAAWU,QAAQC,MAAK,SAACwrB,GAAG,OAAKA,EAAI3rB,UAAYjV,EAAEzB,EAAE,WAAC,IAAA0nC,OAAA,EAAtDA,EAAwD3hB,cACvC,IAAjBtkB,EAAEuV,UAAgB,IACpBjR,OAAS,EAEP4hC,IAAYhc,EAAAA,GAAAA,GAAI,CACpBic,MAAM,EACN,eACEH,IAAe5S,IAAwB5e,EAAQW,QAAQ7Q,OAAS,EAClE,iBAAkBwf,KAAasP,KAGjC,OACEhW,EAAAA,GAAAA,MAAAI,GAAAA,SAAA,CAAArJ,SAAA,EACEC,EAAAA,GAAAA,KAACmM,GAAgB,CAAC7gB,MAAOkT,GAAkBqT,GAAQtT,MACnDyB,EAAAA,GAAAA,KAAC6sB,GAAc,KACf7jB,EAAAA,GAAAA,MAAA,OAAKiC,UAAW6mB,GAAU/xB,SAAA,EACxBC,EAAAA,GAAAA,KAACgyB,GAAO,CACNhf,aAAcA,EACdjS,QAASX,EAAQW,QACjB2O,SAAUA,KAAasP,GACvBuN,eAAgB7c,KAAaoD,KAE/B9J,EAAAA,GAAAA,MAAA,OAAKiC,UAAW+W,GAAUjiB,SAAA,EACxBiJ,EAAAA,GAAAA,MAAA,UAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAAC6gB,GAAAA,GAAO,CAACvwB,KAAK,kBACd0P,EAAAA,GAAAA,KAACiyB,GAAc,CAACl/B,KAAM2c,KAAasP,MACnChf,EAAAA,GAAAA,KAACsxB,GAAM,CACLzF,SAAU4F,GACV3F,MAAOA,EACPC,UAAWA,EACXpd,UAAW+iB,SAGf1oB,EAAAA,GAAAA,MAAA,QAAM7e,GAAG,OAAM4V,SAAA,EACbC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,eAAclL,UAC3BC,EAAAA,GAAAA,KAAA,MAAIiL,UAAU,yBAAwBlL,SACnCvB,GAAkBqT,GAAQtT,QAI/ByB,EAAAA,GAAAA,KAACuxB,GAAa,CAACvS,qBAAsBA,KAEpCA,IACChf,EAAAA,GAAAA,KAACkyB,GAA+B,CAC9BnnB,QAAO,eAAA4J,EAAArO,GAAA9a,KAAA+E,MAAE,SAAA0kB,EAAOkd,GAAe,OAAA3mC,KAAAoB,MAAA,SAAAuoB,GAAA,cAAAA,EAAApkB,KAAAokB,EAAA9lB,MAAA,OAC2B,OAAxDikB,EAAS,CAAEpoB,KAAM,qBAAsBwU,SAAS,IAAQyV,EAAA9lB,KAAA,EAClD6iB,GAAOkgB,kBACXt6B,EACAO,EACA85B,GACD,cAAAhd,EAAA9lB,KAAA,EACK49B,IAAiB,wBAAA9X,EAAAjkB,OAAA,GAAA+jB,EAAA,KACxB,gBAAA9f,GAAA,OAAAwf,EAAA7iB,MAAA,KAAAE,UAAA,EARM,GASPie,oBAAqB7P,EAAQ6P,oBAC7BG,kBAAmB3X,KAGrBuH,EAAAA,GAAAA,KAACqyB,GAAc,CACbliB,SAAUT,IAAYoD,EACtB/H,QAAS,WACPuI,EAAS,CAAEpoB,KAAM,qBAAsBwU,SAAS,KAChD3M,EAAAA,GAAAA,IAAKmgB,EACP,EACAhD,YAAa7P,aAAS,EAATA,EAAW6P,YACxBD,oBAAqB7P,EAAQ6P,oBAC7BG,kBAAmB3X,IAItBua,EAAasf,yBACZtyB,EAAAA,GAAAA,KAACuyB,GAAmB,CAClB/sB,UAAWwN,EAAaxN,UACxBgM,iBAAkBwB,EAAaxB,oBAInCxI,EAAAA,GAAAA,MAAC2e,GAAAA,EAAI51B,GAAAA,GAAA,GAAKi3B,IAAc,IAAAjpB,SAAA,EACtBC,EAAAA,GAAAA,KAACwyB,GAAgB,CACfriB,SAAUT,IAAYoD,EACtBkM,qBAAsBA,GACtB2C,SAAU3O,EAAaxN,UACvB/M,eAAgBA,EAChB+Y,iBAAkBwB,EAAaxB,iBAC/B6B,SAAUA,GACVR,gBACGzS,EAAQorB,oBAAsB9b,IAC/BtP,EAAQixB,kBACRrS,MAIJhf,EAAAA,GAAAA,KAACyyB,GAAc,CACbtiB,SAAUT,IAAYoD,EACtBkM,qBAAsBA,GACtBxK,MAAOxB,EACPva,eAAgBA,EAChBoa,gBACGzS,EAAQorB,oBAAsB9b,IAC/BtP,EAAQixB,kBACRrS,MAIJhf,EAAAA,GAAAA,KAAC0yB,GAAQ,CAACjQ,SAAUzP,EAAa2f,mBAEjC3yB,EAAAA,GAAAA,KAAC4yB,GAAQ,CACPzP,SAAUnQ,EAAamQ,SACvBtiB,QAASmS,EAAa7oB,MAGxB6V,EAAAA,GAAAA,KAAC0hB,GAAO,CACN7d,QAASzD,EAAQyD,QACjB0f,aAAcvQ,EAAanP,UAG5Bmb,IACChf,EAAAA,GAAAA,KAAC6yB,GAAgB,CACfx6B,yBAA0BA,EAC1B8Z,SAAUlI,EAAa,GAAG/V,IAAI,eAGhC8L,EAAAA,GAAAA,KAAC8yB,GAAc,CACbpjB,SAAUA,GACVmD,gBAAiBzS,EAAQixB,iBACzBnhB,YAAa7P,aAAS,EAATA,EAAW6P,YACxB4C,SAAUA,EACVC,UAAWA,EACXC,aAAcA,EACdC,qBACEpV,GAASuC,EAAQ6mB,MAAMhU,qBAEzBC,eAAgBA,EAChBC,mBAAoBA,EACpBC,wBAAyBA,EACzBC,SAAUA,MAIdrT,EAAAA,GAAAA,KAAC+yB,GAAY,CAAC5oC,GAAI+oB,SAEpBlT,EAAAA,GAAAA,KAACgzB,GAAgB,CAAC7oC,GAAIgpB,KACtBnT,EAAAA,GAAAA,KAACizB,GAAqB,CAAC9oC,GAAIipB,cAIjCpT,EAAAA,GAAAA,KAACoM,GAAc,CAAC7U,UAAW6I,EAAQjW,OAGzC,iICxgCO,IAAMmnC,GAAS,WACpB,QAAclxB,EAAYiI,KAAlBnP,KACMmH,EAAckI,KAApBrP,KACCoa,KAAYzT,OAAiB,w4BAArB,GACXtB,EAASoJ,KAITurB,EAFiB9yB,EAAQ+vB,SAASruB,MAAM,MAER9X,KAAI,SAACmpC,GAAO,OAChDnzB,EAAAA,GAAAA,KAACozB,GAAAA,EAAY,CACX5pB,cAAY,EACZyO,SAAUkb,IAAY50B,EACtBwM,QAAS,WAAF,OAAQuI,EAAS,CAAEpoB,KAAM,aAAcwU,QAASyzB,GAAU,EAACpzB,SAEjEozB,GACY,IAGjB,OACEnzB,EAAAA,GAAAA,KAACqzB,GAAAA,EAAS,CAAC/nC,MAAO0S,GAAqBs1B,UAAQ,EAAAvzB,SAC5CmzB,EAAehjC,QAAU,IACxB8P,EAAAA,GAAAA,KAACuzB,GAAAA,EAAQ,CAAChjB,SAAUlQ,aAAS,EAATA,EAAWqP,SAAU8jB,MAAO,CAACN,GAAgBnzB,SAC9DxB,KAKX,qQCjCA/S,GAAA,kBAAAjB,CAAA,MAAAkB,EAAAlB,EAAA,GAAAmB,EAAAf,OAAAgB,UAAAC,EAAAF,EAAAG,eAAAvB,EAAAK,OAAAmB,gBAAA,SAAAL,EAAAlB,EAAAmB,GAAAD,EAAAlB,GAAAmB,EAAAK,KAAA,EAAAC,EAAA,mBAAAC,OAAAA,OAAA,GAAAC,EAAAF,EAAAG,UAAA,aAAAC,EAAAJ,EAAAK,eAAA,kBAAAC,EAAAN,EAAAO,aAAA,yBAAAC,EAAAf,EAAAlB,EAAAmB,GAAA,OAAAf,OAAAmB,eAAAL,EAAAlB,EAAA,CAAAwB,MAAAL,EAAAe,YAAA,EAAAC,cAAA,EAAAC,UAAA,IAAAlB,EAAAlB,EAAA,KAAAiC,EAAA,aAAAf,GAAAe,EAAA,SAAAf,EAAAlB,EAAAmB,GAAA,OAAAD,EAAAlB,GAAAmB,CAAA,WAAAkB,EAAAnB,EAAAlB,EAAAmB,EAAAE,GAAA,IAAAI,EAAAzB,GAAAA,EAAAoB,qBAAAkB,EAAAtC,EAAAsC,EAAAX,EAAAvB,OAAAmC,OAAAd,EAAAL,WAAAS,EAAA,IAAAW,EAAAnB,GAAA,WAAAtB,EAAA4B,EAAA,WAAAH,MAAAiB,EAAAvB,EAAAC,EAAAU,KAAAF,CAAA,UAAAe,EAAAxB,EAAAlB,EAAAmB,GAAA,WAAAR,KAAA,SAAAgC,IAAAzB,EAAA0B,KAAA5C,EAAAmB,GAAA,OAAAD,GAAA,OAAAP,KAAA,QAAAgC,IAAAzB,EAAA,EAAAlB,EAAAqC,KAAAA,EAAA,IAAAQ,EAAA,iBAAAC,EAAA,iBAAAC,EAAA,YAAAC,EAAA,YAAAC,EAAA,YAAAX,IAAA,UAAAY,IAAA,UAAAC,IAAA,KAAAC,EAAA,GAAAnB,EAAAmB,EAAAzB,GAAA,8BAAA0B,EAAAjD,OAAAkD,eAAAC,EAAAF,GAAAA,EAAAA,EAAAG,EAAA,MAAAD,GAAAA,IAAApC,GAAAE,EAAAuB,KAAAW,EAAA5B,KAAAyB,EAAAG,GAAA,IAAAE,EAAAN,EAAA/B,UAAAkB,EAAAlB,UAAAhB,OAAAmC,OAAAa,GAAA,SAAAM,EAAAxC,GAAA,0BAAAyC,SAAA,SAAA3D,GAAAiC,EAAAf,EAAAlB,GAAA,SAAAkB,GAAA,YAAA0C,QAAA5D,EAAAkB,EAAA,gBAAA2C,EAAA3C,EAAAlB,GAAA,SAAA8D,EAAA3C,EAAApB,EAAA0B,EAAAE,GAAA,IAAAE,EAAAa,EAAAxB,EAAAC,GAAAD,EAAAnB,GAAA,aAAA8B,EAAAlB,KAAA,KAAAoB,EAAAF,EAAAc,IAAAE,EAAAd,EAAAP,MAAA,OAAAqB,GAAA,UAAAkB,GAAAlB,IAAAxB,EAAAuB,KAAAC,EAAA,WAAA7C,EAAAK,QAAAwC,EAAAmB,SAAAC,MAAA,SAAA/C,GAAA4C,EAAA,OAAA5C,EAAAO,EAAAE,EAAA,aAAAT,GAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAA3B,EAAAK,QAAAwC,GAAAoB,MAAA,SAAA/C,GAAAa,EAAAP,MAAAN,EAAAO,EAAAM,EAAA,aAAAb,GAAA,OAAA4C,EAAA,QAAA5C,EAAAO,EAAAE,EAAA,IAAAA,EAAAE,EAAAc,IAAA,KAAAxB,EAAApB,EAAA,gBAAAyB,MAAA,SAAAN,EAAAG,GAAA,SAAA6C,IAAA,WAAAlE,GAAA,SAAAA,EAAAmB,GAAA2C,EAAA5C,EAAAG,EAAArB,EAAAmB,EAAA,WAAAA,EAAAA,EAAAA,EAAA8C,KAAAC,EAAAA,GAAAA,GAAA,aAAAzB,EAAAzC,EAAAmB,EAAAE,GAAA,IAAAtB,EAAA8C,EAAA,gBAAApB,EAAAE,GAAA,GAAA5B,IAAAgD,EAAA,MAAA9C,MAAA,mCAAAF,IAAAiD,EAAA,cAAAvB,EAAA,MAAAE,EAAA,OAAAH,MAAAN,EAAAiD,MAAA,OAAA9C,EAAA+C,OAAA3C,EAAAJ,EAAAsB,IAAAhB,IAAA,KAAAE,EAAAR,EAAAgD,SAAA,GAAAxC,EAAA,KAAAE,EAAAuC,EAAAzC,EAAAR,GAAA,GAAAU,EAAA,IAAAA,IAAAkB,EAAA,gBAAAlB,CAAA,cAAAV,EAAA+C,OAAA/C,EAAAkD,KAAAlD,EAAAmD,MAAAnD,EAAAsB,SAAA,aAAAtB,EAAA+C,OAAA,IAAArE,IAAA8C,EAAA,MAAA9C,EAAAiD,EAAA3B,EAAAsB,IAAAtB,EAAAoD,kBAAApD,EAAAsB,IAAA,gBAAAtB,EAAA+C,QAAA/C,EAAAqD,OAAA,SAAArD,EAAAsB,KAAA5C,EAAAgD,EAAA,IAAAK,EAAAV,EAAA1C,EAAAmB,EAAAE,GAAA,cAAA+B,EAAAzC,KAAA,IAAAZ,EAAAsB,EAAA8C,KAAAnB,EAAAF,EAAAM,EAAAT,MAAAM,EAAA,gBAAAzB,MAAA4B,EAAAT,IAAAwB,KAAA9C,EAAA8C,KAAA,WAAAf,EAAAzC,OAAAZ,EAAAiD,EAAA3B,EAAA+C,OAAA,QAAA/C,EAAAsB,IAAAS,EAAAT,IAAA,YAAA2B,EAAAtE,EAAAmB,GAAA,IAAAE,EAAAF,EAAAiD,OAAArE,EAAAC,EAAA4B,SAAAP,GAAA,GAAAtB,IAAAmB,EAAA,OAAAC,EAAAkD,SAAA,eAAAhD,GAAArB,EAAA4B,SAAA+C,SAAAxD,EAAAiD,OAAA,SAAAjD,EAAAwB,IAAAzB,EAAAoD,EAAAtE,EAAAmB,GAAA,UAAAA,EAAAiD,SAAA,WAAA/C,IAAAF,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAvD,EAAA,aAAA4B,EAAA,IAAAxB,EAAAiB,EAAA3C,EAAAC,EAAA4B,SAAAT,EAAAwB,KAAA,aAAAlB,EAAAd,KAAA,OAAAQ,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAAlB,EAAAkB,IAAAxB,EAAAkD,SAAA,KAAApB,EAAA,IAAAtB,EAAAF,EAAAkB,IAAA,OAAAhB,EAAAA,EAAAwC,MAAAhD,EAAAnB,EAAA6E,YAAAlD,EAAAH,MAAAL,EAAA2D,KAAA9E,EAAA+E,QAAA,WAAA5D,EAAAiD,SAAAjD,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,GAAAC,EAAAkD,SAAA,KAAApB,GAAAtB,GAAAR,EAAAiD,OAAA,QAAAjD,EAAAwB,IAAA,IAAAiC,UAAA,oCAAAzD,EAAAkD,SAAA,KAAApB,EAAA,UAAA+B,EAAA9D,GAAA,IAAAlB,EAAA,CAAAiF,OAAA/D,EAAA,SAAAA,IAAAlB,EAAAkF,SAAAhE,EAAA,SAAAA,IAAAlB,EAAAmF,WAAAjE,EAAA,GAAAlB,EAAAoF,SAAAlE,EAAA,SAAAmE,WAAAC,KAAAtF,EAAA,UAAAuF,EAAArE,GAAA,IAAAlB,EAAAkB,EAAAsE,YAAA,GAAAxF,EAAAW,KAAA,gBAAAX,EAAA2C,IAAAzB,EAAAsE,WAAAxF,CAAA,UAAAwC,EAAAtB,GAAA,KAAAmE,WAAA,EAAAJ,OAAA,SAAA/D,EAAAyC,QAAAqB,EAAA,WAAAS,OAAA,YAAAjC,EAAAxD,GAAA,GAAAA,GAAA,KAAAA,EAAA,KAAAmB,EAAAnB,EAAA2B,GAAA,GAAAR,EAAA,OAAAA,EAAAyB,KAAA5C,GAAA,sBAAAA,EAAA8E,KAAA,OAAA9E,EAAA,IAAA0F,MAAA1F,EAAA2F,QAAA,KAAA5F,GAAA,EAAA0B,EAAA,SAAAqD,IAAA,OAAA/E,EAAAC,EAAA2F,QAAA,GAAAtE,EAAAuB,KAAA5C,EAAAD,GAAA,OAAA+E,EAAAtD,MAAAxB,EAAAD,GAAA+E,EAAAX,MAAA,EAAAW,EAAA,OAAAA,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,SAAArD,EAAAqD,KAAArD,CAAA,YAAAmD,UAAAb,GAAA/D,GAAA,2BAAAkD,EAAA9B,UAAA+B,EAAApD,EAAA0D,EAAA,eAAAjC,MAAA2B,EAAAhB,cAAA,IAAApC,EAAAoD,EAAA,eAAA3B,MAAA0B,EAAAf,cAAA,IAAAe,EAAA0C,YAAA3D,EAAAkB,EAAApB,EAAA,qBAAA/B,EAAA6F,oBAAA,SAAA3E,GAAA,IAAAlB,EAAA,mBAAAkB,GAAAA,EAAA4E,YAAA,QAAA9F,IAAAA,IAAAkD,GAAA,uBAAAlD,EAAA4F,aAAA5F,EAAA+F,MAAA,EAAA/F,EAAAgG,KAAA,SAAA9E,GAAA,OAAAd,OAAA6F,eAAA7F,OAAA6F,eAAA/E,EAAAiC,IAAAjC,EAAAgF,UAAA/C,EAAAlB,EAAAf,EAAAa,EAAA,sBAAAb,EAAAE,UAAAhB,OAAAmC,OAAAkB,GAAAvC,CAAA,EAAAlB,EAAAmG,MAAA,SAAAjF,GAAA,OAAA8C,QAAA9C,EAAA,EAAAwC,EAAAG,EAAAzC,WAAAa,EAAA4B,EAAAzC,UAAAS,GAAA,0BAAA7B,EAAA6D,cAAAA,EAAA7D,EAAAoG,MAAA,SAAAlF,EAAAC,EAAAE,EAAAtB,EAAA0B,QAAA,IAAAA,IAAAA,EAAA4E,SAAA,IAAA1E,EAAA,IAAAkC,EAAAxB,EAAAnB,EAAAC,EAAAE,EAAAtB,GAAA0B,GAAA,OAAAzB,EAAA6F,oBAAA1E,GAAAQ,EAAAA,EAAAmD,OAAAb,MAAA,SAAA/C,GAAA,OAAAA,EAAAiD,KAAAjD,EAAAM,MAAAG,EAAAmD,MAAA,KAAApB,EAAAD,GAAAxB,EAAAwB,EAAA1B,EAAA,aAAAE,EAAAwB,EAAA9B,GAAA,0BAAAM,EAAAwB,EAAA,qDAAAzD,EAAAG,KAAA,SAAAe,GAAA,IAAAlB,EAAAI,OAAAc,GAAAC,EAAA,WAAAE,KAAArB,EAAAmB,EAAAmE,KAAAjE,GAAA,OAAAF,EAAAmF,UAAA,SAAAxB,IAAA,KAAA3D,EAAAwE,QAAA,KAAAzE,EAAAC,EAAAoF,MAAA,GAAArF,KAAAlB,EAAA,OAAA8E,EAAAtD,MAAAN,EAAA4D,EAAAX,MAAA,EAAAW,CAAA,QAAAA,EAAAX,MAAA,EAAAW,CAAA,GAAA9E,EAAAwD,OAAAA,EAAAhB,EAAApB,UAAA,CAAA0E,YAAAtD,EAAAiD,MAAA,SAAAzF,GAAA,QAAAwG,KAAA,OAAA1B,KAAA,OAAAP,KAAA,KAAAC,MAAAtD,EAAA,KAAAiD,MAAA,OAAAE,SAAA,UAAAD,OAAA,YAAAzB,IAAAzB,EAAA,KAAAmE,WAAA1B,QAAA4B,IAAAvF,EAAA,QAAAmB,KAAA,WAAAA,EAAAsF,OAAA,IAAApF,EAAAuB,KAAA,KAAAzB,KAAAuE,OAAAvE,EAAAuF,MAAA,WAAAvF,GAAAD,EAAA,EAAAyF,KAAA,gBAAAxC,MAAA,MAAAjD,EAAA,KAAAmE,WAAA,GAAAG,WAAA,aAAAtE,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,YAAAiE,IAAA,EAAAnC,kBAAA,SAAAzE,GAAA,QAAAmE,KAAA,MAAAnE,EAAA,IAAAmB,EAAA,cAAA0F,EAAAxF,EAAAtB,GAAA,OAAA4B,EAAAhB,KAAA,QAAAgB,EAAAgB,IAAA3C,EAAAmB,EAAA2D,KAAAzD,EAAAtB,IAAAoB,EAAAiD,OAAA,OAAAjD,EAAAwB,IAAAzB,KAAAnB,CAAA,SAAAA,EAAA,KAAAsF,WAAAM,OAAA,EAAA5F,GAAA,IAAAA,EAAA,KAAA0B,EAAA,KAAA4D,WAAAtF,GAAA4B,EAAAF,EAAA+D,WAAA,YAAA/D,EAAAwD,OAAA,OAAA4B,EAAA,UAAApF,EAAAwD,QAAA,KAAAuB,KAAA,KAAA3E,EAAAR,EAAAuB,KAAAnB,EAAA,YAAAM,EAAAV,EAAAuB,KAAAnB,EAAA,iBAAAI,GAAAE,EAAA,SAAAyE,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,WAAAsB,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,SAAAtD,GAAA,QAAA2E,KAAA/E,EAAAyD,SAAA,OAAA2B,EAAApF,EAAAyD,UAAA,YAAAnD,EAAA,MAAA9B,MAAA,kDAAAuG,KAAA/E,EAAA0D,WAAA,OAAA0B,EAAApF,EAAA0D,WAAA,KAAAT,OAAA,SAAAxD,EAAAlB,GAAA,QAAAmB,EAAA,KAAAkE,WAAAM,OAAA,EAAAxE,GAAA,IAAAA,EAAA,KAAApB,EAAA,KAAAsF,WAAAlE,GAAA,GAAApB,EAAAkF,QAAA,KAAAuB,MAAAnF,EAAAuB,KAAA7C,EAAA,oBAAAyG,KAAAzG,EAAAoF,WAAA,KAAA1D,EAAA1B,EAAA,OAAA0B,IAAA,UAAAP,GAAA,aAAAA,IAAAO,EAAAwD,QAAAjF,GAAAA,GAAAyB,EAAA0D,aAAA1D,EAAA,UAAAE,EAAAF,EAAAA,EAAA+D,WAAA,UAAA7D,EAAAhB,KAAAO,EAAAS,EAAAgB,IAAA3C,EAAAyB,GAAA,KAAA2C,OAAA,YAAAU,KAAArD,EAAA0D,WAAAlC,GAAA,KAAA6D,SAAAnF,EAAA,EAAAmF,SAAA,SAAA5F,EAAAlB,GAAA,aAAAkB,EAAAP,KAAA,MAAAO,EAAAyB,IAAA,gBAAAzB,EAAAP,MAAA,aAAAO,EAAAP,KAAA,KAAAmE,KAAA5D,EAAAyB,IAAA,WAAAzB,EAAAP,MAAA,KAAAiG,KAAA,KAAAjE,IAAAzB,EAAAyB,IAAA,KAAAyB,OAAA,cAAAU,KAAA,kBAAA5D,EAAAP,MAAAX,IAAA,KAAA8E,KAAA9E,GAAAiD,CAAA,EAAA8D,OAAA,SAAA7F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAAgE,aAAAjE,EAAA,YAAA4F,SAAA3F,EAAAqE,WAAArE,EAAAiE,UAAAG,EAAApE,GAAA8B,CAAA,GAAA+D,MAAA,SAAA9F,GAAA,QAAAlB,EAAA,KAAAqF,WAAAM,OAAA,EAAA3F,GAAA,IAAAA,EAAA,KAAAmB,EAAA,KAAAkE,WAAArF,GAAA,GAAAmB,EAAA8D,SAAA/D,EAAA,KAAAG,EAAAF,EAAAqE,WAAA,aAAAnE,EAAAV,KAAA,KAAAZ,EAAAsB,EAAAsB,IAAA4C,EAAApE,EAAA,QAAApB,CAAA,QAAAE,MAAA,0BAAAgH,cAAA,SAAAjH,EAAAmB,EAAAE,GAAA,YAAAgD,SAAA,CAAAzC,SAAA4B,EAAAxD,GAAA6E,WAAA1D,EAAA4D,QAAA1D,GAAA,cAAA+C,SAAA,KAAAzB,IAAAzB,GAAA+B,CAAA,GAAAjD,CAAA,UAAAkH,GAAA7F,EAAAH,EAAAlB,EAAAmB,EAAApB,EAAA4B,EAAAE,GAAA,QAAAJ,EAAAJ,EAAAM,GAAAE,GAAAE,EAAAN,EAAAD,KAAA,OAAAH,GAAA,YAAArB,EAAAqB,EAAA,CAAAI,EAAA0C,KAAAjD,EAAAa,GAAAsE,QAAAhG,QAAA0B,GAAAkC,KAAA9C,EAAApB,EAAA,UAAAoH,GAAAnH,EAAAmB,GAAA,IAAAD,EAAAd,OAAAD,KAAAH,GAAA,GAAAI,OAAAgH,sBAAA,KAAArH,EAAAK,OAAAgH,sBAAApH,GAAAmB,IAAApB,EAAAA,EAAAsH,QAAA,SAAAlG,GAAA,OAAAf,OAAAkH,yBAAAtH,EAAAmB,GAAAe,UAAA,KAAAhB,EAAAoE,KAAAiC,MAAArG,EAAAnB,EAAA,QAAAmB,CAAA,UAAAsG,GAAAxH,GAAA,QAAAmB,EAAA,EAAAA,EAAAsG,UAAA9B,OAAAxE,IAAA,KAAAD,EAAA,MAAAuG,UAAAtG,GAAAsG,UAAAtG,GAAA,GAAAA,EAAA,EAAAgG,GAAA/G,OAAAc,IAAA,GAAAyC,SAAA,SAAAxC,GAAAuG,GAAA1H,EAAAmB,EAAAD,EAAAC,GAAA,IAAAf,OAAAuH,0BAAAvH,OAAAwH,iBAAA5H,EAAAI,OAAAuH,0BAAAzG,IAAAiG,GAAA/G,OAAAc,IAAAyC,SAAA,SAAAxC,GAAAf,OAAAmB,eAAAvB,EAAAmB,EAAAf,OAAAkH,yBAAApG,EAAAC,GAAA,WAAAnB,CAAA,UAAA0H,GAAA1H,EAAAmB,EAAAD,GAAA,OAAAC,EAAA,SAAAD,GAAA,IAAAO,EAAA,SAAAP,GAAA,aAAA6C,GAAA7C,KAAAA,EAAA,OAAAA,EAAA,IAAAlB,EAAAkB,EAAAQ,OAAAwG,aAAA,YAAAlI,EAAA,KAAAyB,EAAAzB,EAAA4C,KAAA1B,EAAAC,UAAA,aAAA4C,GAAAtC,GAAA,OAAAA,EAAA,UAAAmD,UAAA,uDAAAuD,OAAAjH,EAAA,CAAAkH,CAAAlH,GAAA,gBAAA6C,GAAAtC,GAAAA,EAAAA,EAAA,GAAAqG,CAAA3G,MAAAnB,EAAAI,OAAAmB,eAAAvB,EAAAmB,EAAA,CAAAK,MAAAN,EAAAgB,YAAA,EAAAC,cAAA,EAAAC,UAAA,IAAApC,EAAAmB,GAAAD,EAAAlB,CAAA,CAWA,IAAM2nB,GAAS,IAAI9a,EAyDnB,GAvD0B,SAAH/D,GAQjB,IAPJlJ,EAAEkJ,EAAFlJ,GACA2N,EAASzE,EAATyE,UACAiO,EAAK1S,EAAL0S,MAMM5B,GAAOyF,EAAAA,GAAAA,KACLuV,EAAW5W,KAAX4W,OAERsU,GAAoCxK,EAAAA,GAAAA,GAEjC,CACDljB,MAAO,CACLha,MAAOga,EACP3B,WAAY,CAAArS,GAAAA,GAAA,GAELm3B,GAAAA,IAA4B,IAC/Bl0B,QAASmP,EAAKK,cAAc,CAAEra,GAAI,qCAEpC+Z,GAAgBC,OAVdsP,EAAMggB,EAANhgB,OAAQ1lB,EAAM0lC,EAAN1lC,OAAQ2lB,EAAO+f,EAAP/f,QAelBggB,EAAS,eAxCjB9nC,EAwCiBoiB,GAxCjBpiB,EAwCiBJ,KAAA+E,MAAG,SAAA+C,IAAA,OAAA9H,KAAAoB,MAAA,SAAAkH,GAAA,cAAAA,EAAA/C,KAAA+C,EAAAzE,MAAA,cAAAyE,EAAAzE,KAAA,EACV6iB,GAAOyhB,WAAW77B,EAAW/J,EAAOgY,MAAO,MAAK,cAAAjS,EAAAzE,KAAA,EAChD8vB,IAAQ,QACdhR,EAAAA,GAAAA,IAAMhkB,GAAI,wBAAA2J,EAAA5C,OAAA,GAAAoC,EAAA,IA3Cd,eAAA7H,EAAA,KAAAlB,EAAAyH,UAAA,WAAApB,SAAA,SAAAlF,EAAApB,GAAA,IAAA4B,EAAAN,EAAAkG,MAAArG,EAAAlB,GAAA,SAAA0K,EAAArJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,OAAAtJ,EAAA,UAAAsJ,EAAAtJ,GAAA6F,GAAAvF,EAAAR,EAAApB,EAAA2K,EAAAC,EAAA,QAAAtJ,EAAA,CAAAqJ,OAAA,QA4CG,kBAJc,OAAA+Y,EAAAlc,MAAA,KAAAE,UAAA,KAMf,OACEgO,EAAAA,GAAAA,KAACuN,GAAAA,EAAK,CACJpjB,GAAIA,EACJmB,OAAO0U,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,wCAC5BumB,OAAQ,WACFgD,GACFggB,GAEJ,EACAjjB,YAAYzQ,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,kCACjCsjB,cAAczN,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,sBAAuB4V,UAE1DC,EAAAA,GAAAA,KAAC4Y,GAAAA,EAAK7mB,GAAAA,GAAA,GACA0hB,EAAO1N,OAAK,IAChBkF,UAAU,mBACV/f,KAAK,QACL2lB,MAAO1M,EAAKK,cAAc,CAAEra,GAAI,uCAIxC,sgCCnDA,IAkGA,GAlGwB,WACtB,IAAOypC,EAAiCrtB,IAAV8J,EAAAA,GAAAA,KAAU,GAAd,GACZhQ,EAAckI,KAApBrP,KAIP2Q,EAAAtD,IAHyCuD,EAAAA,EAAAA,WACxCzJ,aAAS,EAATA,EAAWqP,YACTrP,aAAS,EAATA,EAAWwpB,mBAAoB5tB,EAAgB6tB,eAClD,GAHM+J,EAAahqB,EAAA,GAAEiqB,EAAgBjqB,EAAA,GAuBtC,IAlBAqK,EAAAA,EAAAA,YAAU,WACR4f,GACEzzB,aAAS,EAATA,EAAWqP,YACTrP,aAAS,EAATA,EAAWwpB,mBAAoB5tB,EAAgB6tB,cAErD,GAAG,CAACzpB,aAAS,EAATA,EAAWwpB,gBAAiBxpB,aAAS,EAATA,EAAWqP,YAatCmkB,IAAkBxzB,EAAW,OAAO,KAEzC,IAAQvI,EAAuCuI,EAAvCvI,UAAWyB,EAA4B8G,EAA5B9G,eAAgBoW,EAAYtP,EAAZsP,QAEnC,OACE3G,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,kBAAiBlL,SAAA,EAC9BiJ,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,0BAAyBlL,SAAA,EACtCiJ,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,sBAAqBlL,SAAA,EAClCC,EAAAA,GAAAA,KAAA,OAAKgsB,ibAAkBrS,IAAI,YAC3B3Z,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,wBAAuBlL,SAAC,OACvCC,EAAAA,GAAAA,KAAA,OAAAD,UACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,mDAEvB6V,EAAAA,GAAAA,KAAA,OAAK,sBAAgBD,UACnBC,EAAAA,GAAAA,KAAA,UAAAD,SAASxG,MAEVoW,IAAW3P,EAAAA,GAAAA,KAAA,OAAAD,UAAMwO,EAAAA,GAAAA,IAAWoB,EAAStC,UAExCrN,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gDAA+ClL,UAC5DC,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CACHnE,UAAU,wBACVoE,KAAK,cACLnkB,KAAK,aAGT8d,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,sBAAqBlL,SAAA,EAClCC,EAAAA,GAAAA,KAAA,OAAKgsB,qiBAAgBrS,IAAI,YACzB3Q,EAAAA,GAAAA,MAAA,OAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,4CAA6C,KAClE6V,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,6CAA6C,QAEpE6V,EAAAA,GAAAA,KAAA,KAAGiL,UAAU,iCAAgClL,UAC3CC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,0CAEvB6V,EAAAA,GAAAA,KAACsQ,GAAAA,EAAM,CACLrF,UAAU,yBACVF,QAAS,SAACxgB,GAAC,OAzCI,SAACA,GACxBA,EAAEmmC,kBACF39B,EAAAA,GAAAA,IAAK6gC,EACP,CAsC0BG,CAAiBxpC,EAAE,EAACwV,UAEpCC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,4CAGzB6V,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,gDAA+ClL,UAC5DC,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CACHnE,UAAU,wBACVoE,KAAK,cACLnkB,KAAK,aAGT8d,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,sBAAqBlL,SAAA,EAClCC,EAAAA,GAAAA,KAAA,OAAKgsB,6WAAgBrS,IAAI,MACzB3Z,EAAAA,GAAAA,KAAA,OAAKgsB,y/BAAW/gB,UAAU,uBAAuB0O,IAAI,MACrD3Z,EAAAA,GAAAA,KAAA,OAAAD,UACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,6CAI3B6e,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,yBAAwBlL,SAAA,EACrCC,EAAAA,GAAAA,KAAA,UACAA,EAAAA,GAAAA,KAAA,UACAA,EAAAA,GAAAA,KAACg0B,GAAAA,EAAU,CAACjpB,QAAS,SAACxgB,GAAC,OAtED,SAACA,GAC3BA,EAAEmmC,iBAEFoD,GAAiB,EACnB,CAkEkCG,CAAoB1pC,EAAE,EAACwV,UACjDC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,0CAGzB6V,EAAAA,GAAAA,KAACk0B,GAAiB,CAChB/pC,GAAIypC,EACJ97B,UAAWA,EACXiO,MAAOxM,MAIf,sgCC9FA,IChBA,GDgBkB,WAChB,IAAO+T,EAAqB/G,IAAV8J,EAAAA,GAAAA,KAAU,GAAd,GACRlM,GAAOyF,EAAAA,GAAAA,KACgDC,EAAAtD,IAAjBuD,EAAAA,EAAAA,UAAShM,IAAQ,GAAtDq2B,EAActqB,EAAA,GAAEuqB,EAAiBvqB,EAAA,GACWwqB,G9D4B5C5sB,EAAAA,GAAAA,IAAO,WAAW,kBAAMN,GAAcmtB,YAAY,GAAAviC,GAAAA,GAAA,GACpDqV,IAAS,IACZmtB,gBAAiB,O8D9BXr7B,KAAMs7B,OAAU,IAAAH,EAAGv2B,GAAOu2B,EAalC,OAXAngB,EAAAA,EAAAA,YAAU,WACJigB,IAAmBK,KACrBjgC,EAAAA,EAAAA,IACE,OACA4P,EAAKK,cAAc,CAAEra,GAAI,sBACzBga,EAAKK,cAAc,CAAEra,GAAI,8BAE3BiqC,EAAkBI,GAEtB,GAAG,CAACL,EAAgBhwB,EAAMqwB,KAGxBxrB,EAAAA,GAAAA,MAACyrB,GAAAA,GAAa,CACZC,UACE1rB,EAAAA,GAAAA,MAAAI,GAAAA,SAAA,CAAArJ,SAAA,EACEC,EAAAA,GAAAA,KAACqzB,GAAAA,EAAS,CAAC/nC,MAAO0S,GAAqBs1B,UAAQ,KAC/CtzB,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,OAAMlL,UACnBiJ,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,OAAMlL,SAAA,EACnBC,EAAAA,GAAAA,KAAA,UAAAD,UACEC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,SAAQlL,UACrBC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,aAAYlL,UACzBC,EAAAA,GAAAA,KAAA,OACEgsB,IAAKjuB,GACL4b,IAAK3b,GACLiN,UAAU,uBAKlBjL,EAAAA,GAAAA,KAAA,QAAM7V,GAAG,OAAM4V,UACbC,EAAAA,GAAAA,KAAA,MAAAD,UACEC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,eAAclL,UAC3BC,EAAAA,GAAAA,KAAA,MAAIiL,UAAU,yBAAwBlL,UACpCC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,+CAQpC4V,SAAA,EAEDiJ,EAAAA,GAAAA,MAAC2rB,EAAAA,SAAQ,CACPD,UACE1rB,EAAAA,GAAAA,MAAAI,GAAAA,SAAA,CAAArJ,SAAA,EACEC,EAAAA,GAAAA,KAACqzB,GAAAA,EAAS,CAAC/nC,MAAO0S,GAAqBs1B,UAAQ,KAC/CtzB,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,OAAMlL,UACnBiJ,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,OAAMlL,SAAA,EACnBC,EAAAA,GAAAA,KAAA,UAAAD,UACEC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,SAAQlL,UACrBC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,aAAYlL,UACzBC,EAAAA,GAAAA,KAAA,OACEgsB,IAAKjuB,GACL4b,IAAK3b,GACLiN,UAAU,uBAKlBjL,EAAAA,GAAAA,KAAA,QAAM7V,GAAG,OAAM4V,UACbiJ,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,eAAclL,SAAA,EAC3BC,EAAAA,GAAAA,KAAC40B,GAAAA,EAAW,CAACC,OAAQ,KACrB70B,EAAAA,GAAAA,KAAC40B,GAAAA,EAAW,CAACC,OAAQ,EAAGC,MAAO,MAC/B90B,EAAAA,GAAAA,KAAC40B,GAAAA,EAAW,CAACC,OAAQ,EAAGC,MAAO,MAC/B90B,EAAAA,GAAAA,KAAC40B,GAAAA,EAAW,CAACC,OAAQ,EAAGC,MAAO,MAC/B90B,EAAAA,GAAAA,KAAC40B,GAAAA,EAAW,CAACC,OAAQ,EAAGC,MAAO,kBAM1C/0B,SAAA,EAEDC,EAAAA,GAAAA,KAACsxB,GAAM,KACPtxB,EAAAA,GAAAA,KAAC+0B,GAAiB,CAAC/H,cAAe1f,KAClCtN,EAAAA,GAAAA,KAACg1B,GAAe,QAElBh1B,EAAAA,GAAAA,KAACi1B,GAAW,CAAC3nB,QAASA,MAG5B,qHE5EA,IAyNA,GAzNY,SAAHja,GAIH,QAAA6hC,EAAA7hC,EAHJnI,KAAAA,OAAI,IAAAgqC,EAAG,SAAQA,EAIT/wB,GAAOyF,EAAAA,GAAAA,KACPrL,EAASoJ,KACDtH,EAAckI,KAApBrP,KACMkH,EAAYiI,KAAlBnP,KACMoiB,EAAW9T,KAAjBtO,KACFmxB,EAAkBtiB,KACfuL,KAAYzT,OAAiB,w4BAArB,IAEjBs1B,EAAAA,GAAAA,GACEv/B,OAAOkH,aAAas4B,yBACpB/0B,EACAD,EACAkb,IAGFpH,EAAAA,EAAAA,YAAU,WAEH9T,EAAQ+vB,SAAShlC,SAASoT,IAC7B+U,EAAS,CACPpoB,KAAM,aACNwU,QAASxB,GAA6BkC,EAAQ+vB,WAGpD,GAAG,CAAC7c,EAAUlT,EAAQ+vB,SAAU5xB,KAEhC2V,EAAAA,EAAAA,YAAU,WAEJ7T,GAAaA,EAAUqP,UAAYrP,EAAUuF,cAAgBrH,GAC/D+U,EAAS,CACPpoB,KAAM,aACNwU,QAASW,EAAUuF,aAGzB,GAAG,CAAC0N,EAAU/U,EAAQ8B,IAEtB,IAAM6P,EAAc7P,aAAS,EAATA,EAAWU,QAAQyB,MAAK,SAACgqB,GAAG,OAAKA,EAAItc,WAAW,IAE9DmlB,EAAgBj1B,EAAQW,QAC3BnP,QACC,SAAC0jC,GAAE,IAAAlf,EAAA,MACQ,WAATlrB,IACAmV,aAAS,EAATA,EAAW5H,kBACVyX,IACD7P,SAAuD,QAA9C+V,EAAT/V,EAAWU,QAAQC,MAAK,SAACwrB,GAAG,OAAKA,EAAI3rB,UAAYy0B,EAAGnrC,EAAE,WAAC,IAAAisB,OAAA,EAAvDA,EAAyDlG,YAAW,IAEvEjP,MAAK,SAAC/U,EAAGgV,GAAC,OAAKhV,EAAEiV,WAAaD,EAAEC,UAAU,IAEc+pB,GAAf7qB,QAAAA,EAAa,CAAC,GAAlDqP,SAAAA,OAAQ,IAAAwb,EAAY,cAAThgC,EAAoBggC,EAEjC4G,GAAYhc,EAAAA,GAAAA,GAAI,CACpBic,MAAM,EACN,iBAAkBriB,IAGdsS,GAAYlM,EAAAA,GAAAA,GAAI,CACpBsb,MAAM,EACN,kBAAkB,EAClB,iBAAkB1hB,EAClB,eAAyB,WAATxkB,IAGZqqC,GAAczf,EAAAA,GAAAA,GAAI,CACtB0f,UAAoB,WAATtqC,IAGb,GAA6B,IAAzBmqC,EAAcnlC,OAAc,OAAO,KAEvC,IAAM2zB,EAAiBzjB,EAAQgnB,WAAWpmB,MACxC,SAAC0b,GAAC,OAAKA,EAAEvyB,MAAOkW,aAAS,EAATA,EAAWo1B,YAAW,IAGlC3R,EAAwBtlB,GAC5BqlB,aAAc,EAAdA,EAAgBE,2BAChBxlB,GAEEC,GAAkBqlB,aAAc,EAAdA,EAAgBE,2BAA4BxlB,GAC9D4F,EAAKK,cACH,CAAEra,GAAI,2CACN,CAAE,EAAG05B,aAAc,EAAdA,EAAgBhS,OAAO1d,gBAGlC,OACE6L,EAAAA,GAAAA,KAACy0B,GAAAA,GAAa,CAACC,SAAU,KAAK30B,UAC5BiJ,EAAAA,GAAAA,MAAC2rB,EAAAA,SAAQ,CAACD,SAAU,KAAK30B,SAAA,EACvBC,EAAAA,GAAAA,KAACmM,GAAgB,CAAC7gB,MAAOkT,GAAkB4B,EAAQyR,OAAQtT,MAC3DyB,EAAAA,GAAAA,KAAA,OAAKiL,UAAW6mB,EAAU/xB,UACxBiJ,EAAAA,GAAAA,MAAA,OAAKiC,UAAW+W,EAAUjiB,SAAA,EACxBiJ,EAAAA,GAAAA,MAAA,UAAQiC,UAAWsqB,EAAYx1B,SAAA,EAC7BC,EAAAA,GAAAA,KAACsxB,GAAM,KACPtxB,EAAAA,GAAAA,KAAA,MAAIiL,UAAU,yBAAwBlL,SACnCvB,GAAkB4B,EAAQyR,OAAQtT,MAErCyB,EAAAA,GAAAA,KAACiyB,GAAc,CACbl/B,KAAe,WAAT7H,EACNwjB,kBAAmBrO,aAAS,EAATA,EAAWqO,kBAC9BC,UACEe,GAAY7R,GAASuC,EAAQ6mB,MAAM0K,wBAC/BtxB,aAAS,EAATA,EAAWqxB,YACX,OAGE,WAATxmC,IACC8d,EAAAA,GAAAA,MAAA,KAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAAA,UAAAD,UACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,gDAEvB6V,EAAAA,GAAAA,KAAA,UACAA,EAAAA,GAAAA,KAAA,KACEoK,KACEjK,GAAOI,OAAOH,EAAQjW,GAAIkW,EAAWvI,YACpCuyB,EAAe,oBAAAprB,OACQorB,GACpB,IACLtqB,SAEAnK,OAAO+S,SAAS+sB,OACfv1B,GAAOI,OAAOH,EAAQjW,GAAIkW,EAAWvI,YACpCuyB,EAAe,oBAAAprB,OACQorB,GACpB,UAIXhqB,aAAS,EAATA,EAAWs1B,mBACV3sB,EAAAA,GAAAA,MAAA,KAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAAA,UAAAD,UACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,sCAEvB6V,EAAAA,GAAAA,KAAA,UACAA,EAAAA,GAAAA,KAAA,KAAGoK,KAAM/J,EAAUs1B,gBAAgB51B,SAChCM,EAAUs1B,sBAIhB9R,aAAc,EAAdA,EAAgBC,yBACf9a,EAAAA,GAAAA,MAAA,KAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAACoP,GAAAA,EAAI,CAACC,KAAK,QAAQC,UAAU,WAC5BwU,MAGJzjB,aAAS,EAATA,EAAW5H,kBACVuH,EAAAA,GAAAA,KAAA,KAAAD,UACEC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,+CAI3B6V,EAAAA,GAAAA,KAAA,QAAM7V,GAAG,OAAM4V,SACZs1B,EAAcrrC,KAAI,SAACgpB,GAAiB,IAAA4iB,EAAAC,EACnC,OACE7sB,EAAAA,GAAAA,MAAA,OAAKiC,UAAU,YAAWlL,SAAA,CACvBs1B,EAAcnlC,OAAS,GACtBsO,GAAkBwU,EAAanB,OAAQtT,KACrCC,GAAkB4B,EAAQyR,OAAQtT,KAClCyB,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,eAAclL,UAC3BC,EAAAA,GAAAA,KAAA,MAAIiL,UAAU,yBAAwBlL,SACnCvB,GAAkBwU,EAAanB,OAAQtT,OAI/CyU,EAAaye,sBACZzxB,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,yCAAwClL,UACrDiJ,EAAAA,GAAAA,MAAA,QAAAjJ,SAAA,EACEC,EAAAA,GAAAA,KAAA,OAAKiL,UAAU,eAAclL,UAC3BC,EAAAA,GAAAA,KAACyK,GAAAA,EAAgB,CAACtgB,GAAG,8BAEtB6oB,EAAaye,0BAIpBzxB,EAAAA,GAAAA,KAACwyB,GAAgB,CACfriB,UAAQ,EACR6O,sBAAsB,EACtB2C,SAAU3O,EAAaxN,UACvB/M,eAAyC,QAA3Bm9B,EAAEv1B,aAAS,EAATA,EAAW5H,sBAAc,IAAAm9B,GAAAA,EACzCpkB,iBAAkBwB,EAAaxB,iBAC/BqB,gBACW,WAAT3nB,GAAqBkV,EAAQixB,iBAE/Bhe,SAAU,WAAF,OAAQziB,QAAQhG,QAAQ,GAAG,KAErCoV,EAAAA,GAAAA,KAAA,UACAA,EAAAA,GAAAA,KAACyyB,GAAc,CACbtiB,UAAQ,EACR6O,sBAAsB,EACtBxK,MAAOxB,EACPva,eAAyC,QAA3Bo9B,EAAEx1B,aAAS,EAATA,EAAW5H,sBAAc,IAAAo9B,GAAAA,EACzChjB,gBACW,WAAT3nB,GAAqBkV,EAAQixB,oBAGjCrxB,EAAAA,GAAAA,KAAC0yB,GAAQ,CAACjQ,SAAUzP,EAAa2f,mBACjC3yB,EAAAA,GAAAA,KAAC4yB,GAAQ,CACPzP,SAAUnQ,EAAamQ,SACvBtiB,QAASmS,EAAa7oB,KAEd,WAATe,IACC8U,EAAAA,GAAAA,KAAC0hB,GAAO,CACN7d,QAASzD,EAAQyD,QACjB0f,aAAcvQ,EAAanP,YAjDDmP,EAAa7oB,GAsDjD,eAOd,EC/NA2rC,EAAAA,EAAY,CACVC,IAAK34B,GACL44B,aAAc,CACZF,EAAAA,IACAA,EAAAA,GAA8C,CAC5C5hB,UAAW6H,EAAAA,UACXnT,YAAAA,EAAAA,GACAqtB,kBAAAA,EAAAA,GACAC,yBAAAA,EAAAA,GACAC,YAAAA,EAAAA,KAEFL,EAAAA,EAAwC,CACtCM,WAAY,CAAC,UACbC,UAAW,+CAGfC,iBAAkB,GAClBC,yBAA0B,EAC1BC,yBAA0B,EAC1BC,OAAQ,UACRC,QAAS,WAAFz3B,OAAa03B,qBAGtB,IAAMC,GAAed,EAAAA,GAAsCe,EAAAA,IAErDC,GAAYrtB,SAASstB,eAAe,QAC7BC,EAAAA,EAAAA,GAAWF,IACnBG,QACHj3B,EAAAA,GAAAA,KAAC+b,EAAAA,WAAgB,CAAAhc,UACfC,EAAAA,GAAAA,KAAC81B,EAAAA,GAAoB,CAAA/1B,UACnBC,EAAAA,GAAAA,KAACk3B,GAAa,CAAAn3B,UACZC,EAAAA,GAAAA,KAACm3B,EAAAA,GAAa,CAAAp3B,UACZC,EAAAA,GAAAA,KAAC42B,GAAY,CAAA72B,UACXiJ,EAAAA,GAAAA,MAACouB,EAAAA,GAAK,CAACC,SAASr3B,EAAAA,GAAAA,KAACs3B,GAAG,IAAIv3B,SAAA,EACtBC,EAAAA,GAAAA,KAACo3B,EAAAA,GAAK,CAACG,KAAMp3B,GAAOM,WAAW,cAAe42B,SAASr3B,EAAAA,GAAAA,KAACw3B,GAAG,OAC3Dx3B,EAAAA,GAAAA,KAACo3B,EAAAA,GAAK,CACJG,KAAMp3B,GAAOO,aAAa,aAAc,cACxC22B,SAASr3B,EAAAA,GAAAA,KAACw3B,GAAG,CAACtsC,KAAK,iBAErB8U,EAAAA,GAAAA,KAACo3B,EAAAA,GAAK,CACJG,KAAMp3B,GAAOQ,UAAU,aAAc,cACrC02B,SAASr3B,EAAAA,GAAAA,KAACw3B,GAAG,CAACtsC,KAAK,aAEpB,CACCiV,GAAOC,QAAQ,cACfD,GAAOE,UAAU,aAAc,cAC/BF,GAAOI,OAAO,aAAc,cAC5BJ,GAAOK,UAAU,aAAc,sBAC/BxW,KAAI,SAACutC,GAAI,OACTv3B,EAAAA,GAAAA,KAACo3B,EAAAA,GAAK,CAAYG,KAAMA,EAAMF,SAASr3B,EAAAA,GAAAA,KAACy3B,GAAS,KAArCF,EAA4C,KAE1Dv3B,EAAAA,GAAAA,KAACo3B,EAAAA,GAAK,CAACG,KAAK,WAAWF,SAASr3B,EAAAA,GAAAA,KAAC03B,GAAO,CAAC3rB,KAAK,eAC9C/L,EAAAA,GAAAA,KAACo3B,EAAAA,GAAK,CAACpqB,OAAK,EAACqqB,SAASr3B,EAAAA,GAAAA,KAAC03B,GAAO,OAC9B13B,EAAAA,GAAAA,KAACo3B,EAAAA,GAAK,CAACG,KAAK,IAAIF,SAASr3B,EAAAA,GAAAA,KAAC03B,GAAO,CAAC3rB,KAAK,oDC1ErD4rB,EAAQ","sources":["webpack://hoering/./node_modules/@utdanningsdirektoratet/icon/static/icons/16x16/ sync ^\\.\\/.*\\.svg$","webpack://hoering/./node_modules/@utdanningsdirektoratet/icon/static/icons/16x32/ sync ^\\.\\/.*\\.svg$","webpack://hoering/./node_modules/@utdanningsdirektoratet/icon/static/icons/32x32/ sync ^\\.\\/.*\\.svg$","webpack://hoering/./app/utils/validationUtils.ts","webpack://hoering/./app/ApiClients.ts","webpack://hoering/./app/logic/initialState.ts","webpack://hoering/./app/utils/localeUtils.ts","webpack://hoering/./app/utils/objectUtils.ts","webpack://hoering/./app/constants/queryParam.ts","webpack://hoering/./app/StateProvider.tsx","webpack://hoering/./app/routes.ts","webpack://hoering/./app/utils/hoeringUtils.ts","webpack://hoering/./app/vm/vmUtils.ts","webpack://hoering/./app/logic/validation.ts","webpack://hoering/./app/vm/mapNotatUttalelserVm.ts","webpack://hoering/./app/vm/mapVm.ts","webpack://hoering/./app/vm/mapSporsmalUttalelserVm.ts","webpack://hoering/./app/vm/mapSeksjonUttalelserVm.ts","webpack://hoering/./app/hooks.ts","webpack://hoering/./app/App.tsx","webpack://hoering/./app/components/DocumentMetadata.tsx","webpack://hoering/./app/components/Footer.tsx","webpack://hoering/./app/pages/default/Default.tsx","webpack://hoering/./app/pages/default/index.ts","webpack://hoering/./app/utils/localStorageUtils.ts","webpack://hoering/./app/constants/dateFormats.ts","webpack://hoering/./app/pages/uttalelse/components/utkastPopin/UtkastPopin.tsx","webpack://hoering/./app/pages/uttalelse/components/hoeringsUttalelse/InnsendtHeader.tsx","webpack://hoering/./app/pages/uttalelse/components/hoeringsUttalelse/IngenMerknader.tsx","webpack://hoering/./app/pages/uttalelse/components/hoeringsUttalelse/IngenMerknaderManueltRegistrert.tsx","webpack://hoering/./app/pages/uttalelse/components/Innholdsfortegnelse/Innholdsfortegnelse.module.less?7178","webpack://hoering/./app/utils/scrollUtils.ts","webpack://hoering/./app/pages/uttalelse/components/Innholdsfortegnelse/Innholdsfortegnelse.tsx","webpack://hoering/./app/pages/uttalelse/components/Innholdsfortegnelse/index.ts","webpack://hoering/./app/pages/uttalelse/components/hoeringsUttalelse/LagreOgGaTilbake.tsx","webpack://hoering/./app/utils/navigationUtils.ts","webpack://hoering/./app/pages/uttalelse/components/hoeringsUttalelse/LagreOgSendInn.tsx","webpack://hoering/./app/pages/uttalelse/components/uttalelse/components/Obligatorisk.tsx","webpack://hoering/./app/pages/uttalelse/components/uttalelse/components/PositivNegativ.tsx","webpack://hoering/./app/pages/uttalelse/components/uttalelse/components/JaNeiSvar.tsx","webpack://hoering/./app/pages/uttalelse/components/uttalelse/components/EnigUenigSvar.tsx","webpack://hoering/./app/pages/uttalelse/components/uttalelse/components/SvarAlternativ.tsx","webpack://hoering/./app/pages/uttalelse/components/uttalelse/components/EttValg.tsx","webpack://hoering/./app/pages/uttalelse/components/uttalelse/components/FlereValg.tsx","webpack://hoering/./app/pages/uttalelse/components/uttalelse/components/HeltallSvar.tsx","webpack://hoering/./app/pages/uttalelse/components/uttalelse/components/KortTekstSvar.tsx","webpack://hoering/./app/pages/uttalelse/components/uttalelse/components/DatoSvar.tsx","webpack://hoering/./app/pages/uttalelse/components/uttalelse/components/FylkeKommuneSvar.tsx","webpack://hoering/./app/pages/uttalelse/components/uttalelse/components/Kommentar.tsx","webpack://hoering/./app/pages/uttalelse/components/uttalelse/components/Vedlegg.tsx","webpack://hoering/./app/pages/uttalelse/components/uttalelse/SporsmalUttalelse.tsx","webpack://hoering/./app/pages/uttalelse/components/uttalelse/SeksjonUttalelse.tsx","webpack://hoering/./app/pages/uttalelse/components/uttalelse/NotatUttalelse.tsx","webpack://hoering/./app/pages/uttalelse/components/hoeringsUttalelse/Signatur.tsx","webpack://hoering/./app/pages/uttalelse/components/hoeringsUttalelse/Fotnoter.tsx","webpack://hoering/./app/pages/uttalelse/components/hoeringsUttalelse/Vedlegg.tsx","webpack://hoering/./app/pages/uttalelse/components/sendInn/components/BekreftRepresentasjon.tsx","webpack://hoering/./app/pages/uttalelse/components/sendInn/components/Sektor.tsx","webpack://hoering/./app/pages/uttalelse/components/sendInn/components/Malgruppe.tsx","webpack://hoering/./app/pages/uttalelse/components/sendInn/components/Undertype.tsx","webpack://hoering/./app/pages/uttalelse/components/sendInn/components/Representerer.tsx","webpack://hoering/./app/pages/uttalelse/components/sendInn/components/MinStilling.tsx","webpack://hoering/./app/pages/uttalelse/components/sendInn/components/Kommune.tsx","webpack://hoering/./app/pages/uttalelse/components/sendInn/components/Fylke.tsx","webpack://hoering/./app/pages/uttalelse/components/sendInn/components/FylkeKommune.tsx","webpack://hoering/./app/pages/uttalelse/components/sendInn/components/InnsenderInfo.tsx","webpack://hoering/./app/pages/uttalelse/components/sendInn/components/MalgruppeSektor.tsx","webpack://hoering/./app/pages/uttalelse/components/sendInn/components/SendInnForm.tsx","webpack://hoering/./app/pages/uttalelse/components/sendInn/SendInnPopin.tsx","webpack://hoering/./app/pages/uttalelse/components/lagreUtkast/LagreUtkastPopin.tsx","webpack://hoering/./app/pages/uttalelse/components/videresendUtkast/VideresendUtkastPopin.tsx","webpack://hoering/./app/pages/uttalelse/components/hoeringsUttalelse/MessageBanner.tsx","webpack://hoering/./app/pages/uttalelse/components/hoeringsUttalelse/Header.tsx","webpack://hoering/./app/pages/uttalelse/components/sidebar/NotatLink.tsx","webpack://hoering/./app/pages/uttalelse/components/sidebar/Sidebar.tsx","webpack://hoering/./app/components/AutoSaveLoader.tsx","webpack://hoering/./app/pages/uttalelse/HoeringsUttalelse.tsx","webpack://hoering/./app/pages/uttalelse/components/header/header.tsx","webpack://hoering/./app/pages/uttalelse/components/RedigerEpostPopin.tsx","webpack://hoering/./app/pages/uttalelse/components/TutorialOverlay.tsx","webpack://hoering/./app/pages/uttalelse/Uttalelse.tsx","webpack://hoering/./app/pages/uttalelse/index.ts","webpack://hoering/./app/pages/uttalelse/Pdf.tsx","webpack://hoering/./app/index.tsx","webpack://hoering/./index.js"],"sourcesContent":["var map = {\n\t\"./angle down.svg\": 85993,\n\t\"./angle left double.svg\": 5949,\n\t\"./angle left.svg\": 30578,\n\t\"./angle right double.svg\": 30284,\n\t\"./angle right.svg\": 76553,\n\t\"./angle up.svg\": 63046,\n\t\"./arrow down.svg\": 80259,\n\t\"./arrow left.svg\": 4308,\n\t\"./arrow right.svg\": 65851,\n\t\"./arrow up.svg\": 98332,\n\t\"./asterix.svg\": 35628,\n\t\"./bookmark filled.svg\": 40746,\n\t\"./bookmark.svg\": 72610,\n\t\"./calendar.svg\": 62912,\n\t\"./check.svg\": 63882,\n\t\"./circle check.svg\": 85326,\n\t\"./circle cross.svg\": 61102,\n\t\"./circle info.svg\": 45478,\n\t\"./circle minus.svg\": 79594,\n\t\"./circle plus.svg\": 27202,\n\t\"./circle question.svg\": 81222,\n\t\"./copy.svg\": 75313,\n\t\"./cross.svg\": 72650,\n\t\"./document.svg\": 40769,\n\t\"./download.svg\": 80034,\n\t\"./edit.svg\": 26110,\n\t\"./email.svg\": 75750,\n\t\"./eye open.svg\": 73011,\n\t\"./filter.svg\": 63672,\n\t\"./irrelevant.svg\": 48328,\n\t\"./link.svg\": 67826,\n\t\"./list.svg\": 18598,\n\t\"./lock.svg\": 15731,\n\t\"./menu.svg\": 19211,\n\t\"./minus.svg\": 53782,\n\t\"./north east.svg\": 20018,\n\t\"./plus.svg\": 92958,\n\t\"./printer.svg\": 414,\n\t\"./question.svg\": 80730,\n\t\"./search.svg\": 85418,\n\t\"./speech bubble filled.svg\": 44502,\n\t\"./speech bubble.svg\": 75566,\n\t\"./spinner.svg\": 53045,\n\t\"./text document.svg\": 35550,\n\t\"./trash.svg\": 81220,\n\t\"./unlock.svg\": 92278,\n\t\"./warning.svg\": 12686\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 935;","var map = {\n\t\"./arrow left long.svg\": 81668,\n\t\"./arrow right long.svg\": 46853\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 86089;","var map = {\n\t\"./angle down.svg\": 90453,\n\t\"./angle left double.svg\": 65657,\n\t\"./angle left.svg\": 23406,\n\t\"./angle right.svg\": 32493,\n\t\"./angle up.svg\": 48794,\n\t\"./arrow down.svg\": 79135,\n\t\"./arrow left.svg\": 37024,\n\t\"./arrow right.svg\": 6223,\n\t\"./arrow up.svg\": 72592,\n\t\"./bookmark filled.svg\": 49166,\n\t\"./bookmark.svg\": 33286,\n\t\"./check.svg\": 49814,\n\t\"./circle check.svg\": 56322,\n\t\"./circle cross.svg\": 67794,\n\t\"./circle info.svg\": 27954,\n\t\"./circle minus.svg\": 20286,\n\t\"./circle plus.svg\": 42038,\n\t\"./circle question.svg\": 35890,\n\t\"./cross.svg\": 19814,\n\t\"./document.svg\": 10405,\n\t\"./email.svg\": 306,\n\t\"./irrelevant.svg\": 57140,\n\t\"./lock.svg\": 84319,\n\t\"./minus.svg\": 30850,\n\t\"./plus.svg\": 23818,\n\t\"./printer.svg\": 79546,\n\t\"./question.svg\": 11457,\n\t\"./search.svg\": 3966,\n\t\"./speech bubble.svg\": 94282,\n\t\"./spinner.svg\": 39585,\n\t\"./text document.svg\": 54498,\n\t\"./trash.svg\": 80,\n\t\"./warning.svg\": 14898,\n\t\"./word.svg\": 28874\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 81643;","import {\n  isProblemDetail,\n  isValidationProblemDetail,\n} from \"@utdanningsdirektoratet/utils/object\";\nimport type { ProblemDetails, ValidationProblemDetails } from \"../ApiClients\";\n\nexport function isValidationProblemDetailsObject(\n  error: unknown,\n): error is ValidationProblemDetails {\n  return (\n    (<ValidationProblemDetails>error).type?.includes(\n      \"https://tools.ietf.org/html/rfc7231\",\n    ) || isValidationProblemDetail(error)\n  );\n}\n\nconst validationMessage = \"Innsendingen hadde en eller fler feil\";\n\nexport function getValidationTitle(problem: ValidationProblemDetails) {\n  return problem.title ?? validationMessage;\n}\n\nexport function getValidationMessage(problem: ValidationProblemDetails) {\n  return Object.values(problem.errors ?? {})\n    .flatMap((e) => e)\n    .join(\", \");\n}\n\nexport function isProblemDetails(error: unknown): error is ProblemDetails {\n  return (\n    (error != null &&\n      typeof (<ProblemDetails>error).type === \"string\" &&\n      typeof (<ProblemDetails>error).title === \"string\") ||\n    isProblemDetail(error)\n  );\n}\n","//----------------------\n// <auto-generated>\n//     Generated using the NSwag toolchain v14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0)) (http://NSwag.org)\n// </auto-generated>\n//----------------------\n\n/* tslint:disable */\n/* eslint-disable */\n// ReSharper disable InconsistentNaming\n\nimport { newNotification } from \"@utdanningsdirektoratet/notifications\";\nimport { hide, show } from \"@utdanningsdirektoratet/progress\";\nimport * as SlowAction from \"@utdanningsdirektoratet/slowaction\";\nimport { getAntiForgeryTokenInfo } from \"./logic/initialState\";\nimport {\n  getValidationMessage,\n  getValidationTitle,\n  isProblemDetails,\n  isValidationProblemDetailsObject,\n} from \"./utils/validationUtils\";\nexport class ApiBase {\n  protected transformOptions = (options: RequestInit): Promise<RequestInit> => {\n    // Hack to prevent show from throwing an error about chaging state in an unmounted component on first render\n    setTimeout(show, 0);\n    if (options.method === \"GET\" || options.method === \"HEAD\") {\n      return Promise.resolve(options);\n    }\n    const tokenInfo = getAntiForgeryTokenInfo();\n    // eslint-disable-next-line no-param-reassign\n    options.headers = {\n      ...options.headers,\n      [tokenInfo.tokenHeaderName!]: tokenInfo.requestToken,\n    } as HeadersInit;\n    return Promise.resolve(options);\n  };\n\n  protected transformResult = async <T>(\n    _url: string,\n    response: Response,\n    onComplete: (response: Response) => Promise<T>,\n  ): Promise<T> => {\n    hide();\n    SlowAction.hide();\n    if (!response.ok) {\n      const contentType =\n        response.headers.get(\"Content-Type\")?.toLowerCase() ?? \"text/plain\";\n      const isJson = contentType.indexOf(\"json\") >= 0;\n      if (isJson) {\n        const error = await response.clone().json();\n        if (isValidationProblemDetailsObject(error)) {\n          newNotification(\n            \"error\",\n            getValidationTitle(error),\n            getValidationMessage(error),\n          );\n        } else if (isProblemDetails(error)) {\n          newNotification(\n            \"error\",\n            error.title ?? \"En feil har oppstått\",\n            error.detail ?? undefined,\n          );\n        } else {\n          newNotification(\"error\", error.message);\n        }\n      }\n    }\n\n    return onComplete(response);\n  };\n}\n\nexport interface IFylkeClient {\n\n    getFylker(): Promise<FylkeViewModel[]>;\n}\n\nexport class FylkeClient extends ApiBase implements IFylkeClient {\n    private http: { fetch(url: RequestInfo, init?: RequestInit): Promise<Response> };\n    private baseUrl: string;\n    protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n    constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise<Response> }) {\n        super();\n        this.http = http ? http : window as any;\n        this.baseUrl = baseUrl ?? \"\";\n    }\n\n    getFylker(signal?: AbortSignal): Promise<FylkeViewModel[]> {\n        let url_ = this.baseUrl + \"/api/client/fylke\";\n        url_ = url_.replace(/[?&]$/, \"\");\n\n        let options_: RequestInit = {\n            method: \"GET\",\n            signal,\n            headers: {\n                \"Accept\": \"application/json\"\n            }\n        };\n\n        return this.transformOptions(options_).then(transformedOptions_ => {\n            return this.http.fetch(url_, transformedOptions_);\n        }).then((_response: Response) => {\n            return this.transformResult(url_, _response, (_response: Response) => this.processGetFylker(_response));\n        });\n    }\n\n    protected processGetFylker(response: Response): Promise<FylkeViewModel[]> {\n        const status = response.status;\n        let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\n        if (status === 200) {\n            return response.text().then((_responseText) => {\n            let result200: any = null;\n            result200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver) as FylkeViewModel[];\n            return result200;\n            });\n        } else if (status !== 200 && status !== 204) {\n            return response.text().then((_responseText) => {\n            return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n            });\n        }\n        return Promise.resolve<FylkeViewModel[]>(null as any);\n    }\n}\n\nexport interface IHoeringClient {\n\n    get(hoeringId: number, forhandsVisningsKode: string | null | undefined, innsendingsKode: string | null | undefined): Promise<HøringViewModel>;\n\n    submitUttalelse(hoeringId: number, innsendingsKode: string | null | undefined, eksternId: string | null, høringUttalelseSubmitModelV2: HøringUttalelseSubmitModelV2): Promise<SubmitViewModel>;\n\n    lagreManuellRegistrering(hoeringId: number | undefined, eksternId: string, manuellRegistreringsKode: string, høringUttalelseSubmitModelV2: HøringUttalelseSubmitModelV2): Promise<string>;\n\n    setIngenMerknader(eksternId: string, manuellRegistreringsKode: string, ingenMerknader: boolean): Promise<FileResponse>;\n\n    autoSave(hoeringId: number, eksternId: string | null, model: HøringUttalelseSubmitModelV2): Promise<AutoSaveViewModel>;\n\n    lagreUtkast(eksternId: string, innsendingsKode: string | null | undefined, innsenderEpost: string): Promise<UtkastViewModel>;\n\n    delUtkast(innsendingsKode: string | null | undefined, eksternId: string | null, model: DelUtkastViewModel): Promise<UtkastViewModel>;\n\n    lastOppSporsmaalUttalelseVedlegg(files: FileParameter[] | null | undefined, sporsmalId: number | undefined, eksternId: string | undefined): Promise<LastOppSporsmaalUttalelseVedleggViewModel>;\n\n    slettSporsmaalUttalelseVedlegg(eksternId: string): Promise<SlettSporsmaalUttalelseVedleggViewModel>;\n\n    endreEpost(eksternId: string, innsenderEpost: string | undefined, innsendingsKode: string | null | undefined): Promise<FileResponse>;\n}\n\nexport class HoeringClient extends ApiBase implements IHoeringClient {\n    private http: { fetch(url: RequestInfo, init?: RequestInit): Promise<Response> };\n    private baseUrl: string;\n    protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n    constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise<Response> }) {\n        super();\n        this.http = http ? http : window as any;\n        this.baseUrl = baseUrl ?? \"\";\n    }\n\n    get(hoeringId: number, forhandsVisningsKode: string | null | undefined, innsendingsKode: string | null | undefined, signal?: AbortSignal): Promise<HøringViewModel> {\n        let url_ = this.baseUrl + \"/api/client/hoering/get/{hoeringId}?\";\n        if (hoeringId === undefined || hoeringId === null)\n            throw new Error(\"The parameter 'hoeringId' must be defined.\");\n        url_ = url_.replace(\"{hoeringId}\", encodeURIComponent(\"\" + hoeringId));\n        if (forhandsVisningsKode !== undefined && forhandsVisningsKode !== null)\n            url_ += \"forhandsVisningsKode=\" + encodeURIComponent(\"\" + forhandsVisningsKode) + \"&\";\n        if (innsendingsKode !== undefined && innsendingsKode !== null)\n            url_ += \"innsendingsKode=\" + encodeURIComponent(\"\" + innsendingsKode) + \"&\";\n        url_ = url_.replace(/[?&]$/, \"\");\n\n        let options_: RequestInit = {\n            method: \"GET\",\n            signal,\n            headers: {\n                \"Accept\": \"application/json\"\n            }\n        };\n\n        return this.transformOptions(options_).then(transformedOptions_ => {\n            return this.http.fetch(url_, transformedOptions_);\n        }).then((_response: Response) => {\n            return this.transformResult(url_, _response, (_response: Response) => this.processGet(_response));\n        });\n    }\n\n    protected processGet(response: Response): Promise<HøringViewModel> {\n        const status = response.status;\n        let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\n        if (status === 200) {\n            return response.text().then((_responseText) => {\n            let result200: any = null;\n            result200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver) as HøringViewModel;\n            return result200;\n            });\n        } else if (status !== 200 && status !== 204) {\n            return response.text().then((_responseText) => {\n            return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n            });\n        }\n        return Promise.resolve<HøringViewModel>(null as any);\n    }\n\n    submitUttalelse(hoeringId: number, innsendingsKode: string | null | undefined, eksternId: string | null, høringUttalelseSubmitModelV2: HøringUttalelseSubmitModelV2, signal?: AbortSignal): Promise<SubmitViewModel> {\n        let url_ = this.baseUrl + \"/api/client/hoering/{hoeringId}/{eksternId}?\";\n        if (hoeringId === undefined || hoeringId === null)\n            throw new Error(\"The parameter 'hoeringId' must be defined.\");\n        url_ = url_.replace(\"{hoeringId}\", encodeURIComponent(\"\" + hoeringId));\n        if (eksternId === undefined || eksternId === null)\n            throw new Error(\"The parameter 'eksternId' must be defined.\");\n        url_ = url_.replace(\"{eksternId}\", encodeURIComponent(\"\" + eksternId));\n        if (innsendingsKode !== undefined && innsendingsKode !== null)\n            url_ += \"innsendingsKode=\" + encodeURIComponent(\"\" + innsendingsKode) + \"&\";\n        url_ = url_.replace(/[?&]$/, \"\");\n\n        const content_ = JSON.stringify(høringUttalelseSubmitModelV2);\n\n        let options_: RequestInit = {\n            body: content_,\n            method: \"POST\",\n            signal,\n            headers: {\n                \"Content-Type\": \"application/json\",\n                \"Accept\": \"application/json\"\n            }\n        };\n\n        return this.transformOptions(options_).then(transformedOptions_ => {\n            return this.http.fetch(url_, transformedOptions_);\n        }).then((_response: Response) => {\n            return this.transformResult(url_, _response, (_response: Response) => this.processSubmitUttalelse(_response));\n        });\n    }\n\n    protected processSubmitUttalelse(response: Response): Promise<SubmitViewModel> {\n        const status = response.status;\n        let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\n        if (status === 200) {\n            return response.text().then((_responseText) => {\n            let result200: any = null;\n            result200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver) as SubmitViewModel;\n            return result200;\n            });\n        } else if (status !== 200 && status !== 204) {\n            return response.text().then((_responseText) => {\n            return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n            });\n        }\n        return Promise.resolve<SubmitViewModel>(null as any);\n    }\n\n    lagreManuellRegistrering(hoeringId: number | undefined, eksternId: string, manuellRegistreringsKode: string, høringUttalelseSubmitModelV2: HøringUttalelseSubmitModelV2, signal?: AbortSignal): Promise<string> {\n        let url_ = this.baseUrl + \"/api/client/hoering/ManuellRegistrering/{eksternId}/{manuellRegistreringsKode}?\";\n        if (eksternId === undefined || eksternId === null)\n            throw new Error(\"The parameter 'eksternId' must be defined.\");\n        url_ = url_.replace(\"{eksternId}\", encodeURIComponent(\"\" + eksternId));\n        if (manuellRegistreringsKode === undefined || manuellRegistreringsKode === null)\n            throw new Error(\"The parameter 'manuellRegistreringsKode' must be defined.\");\n        url_ = url_.replace(\"{manuellRegistreringsKode}\", encodeURIComponent(\"\" + manuellRegistreringsKode));\n        if (hoeringId === null)\n            throw new Error(\"The parameter 'hoeringId' cannot be null.\");\n        else if (hoeringId !== undefined)\n            url_ += \"hoeringId=\" + encodeURIComponent(\"\" + hoeringId) + \"&\";\n        url_ = url_.replace(/[?&]$/, \"\");\n\n        const content_ = JSON.stringify(høringUttalelseSubmitModelV2);\n\n        let options_: RequestInit = {\n            body: content_,\n            method: \"POST\",\n            signal,\n            headers: {\n                \"Content-Type\": \"application/json\",\n                \"Accept\": \"application/json\"\n            }\n        };\n\n        return this.transformOptions(options_).then(transformedOptions_ => {\n            return this.http.fetch(url_, transformedOptions_);\n        }).then((_response: Response) => {\n            return this.transformResult(url_, _response, (_response: Response) => this.processLagreManuellRegistrering(_response));\n        });\n    }\n\n    protected processLagreManuellRegistrering(response: Response): Promise<string> {\n        const status = response.status;\n        let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\n        if (status === 200) {\n            return response.text().then((_responseText) => {\n            let result200: any = null;\n            result200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver) as string;\n            return result200;\n            });\n        } else if (status !== 200 && status !== 204) {\n            return response.text().then((_responseText) => {\n            return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n            });\n        }\n        return Promise.resolve<string>(null as any);\n    }\n\n    setIngenMerknader(eksternId: string, manuellRegistreringsKode: string, ingenMerknader: boolean, signal?: AbortSignal): Promise<FileResponse> {\n        let url_ = this.baseUrl + \"/api/client/hoering/SetIngenMerknader/{eksternId}/{manuellRegistreringsKode}\";\n        if (eksternId === undefined || eksternId === null)\n            throw new Error(\"The parameter 'eksternId' must be defined.\");\n        url_ = url_.replace(\"{eksternId}\", encodeURIComponent(\"\" + eksternId));\n        if (manuellRegistreringsKode === undefined || manuellRegistreringsKode === null)\n            throw new Error(\"The parameter 'manuellRegistreringsKode' must be defined.\");\n        url_ = url_.replace(\"{manuellRegistreringsKode}\", encodeURIComponent(\"\" + manuellRegistreringsKode));\n        url_ = url_.replace(/[?&]$/, \"\");\n\n        const content_ = JSON.stringify(ingenMerknader);\n\n        let options_: RequestInit = {\n            body: content_,\n            method: \"POST\",\n            signal,\n            headers: {\n                \"Content-Type\": \"application/json\",\n                \"Accept\": \"application/octet-stream\"\n            }\n        };\n\n        return this.transformOptions(options_).then(transformedOptions_ => {\n            return this.http.fetch(url_, transformedOptions_);\n        }).then((_response: Response) => {\n            return this.transformResult(url_, _response, (_response: Response) => this.processSetIngenMerknader(_response));\n        });\n    }\n\n    protected processSetIngenMerknader(response: Response): Promise<FileResponse> {\n        const status = response.status;\n        let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\n        if (status === 200 || status === 206) {\n            const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\n            let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\n            let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\n            if (fileName) {\n                fileName = decodeURIComponent(fileName);\n            } else {\n                fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\n                fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\n            }\n            return response.blob().then(blob => { return { fileName: fileName, data: blob, status: status, headers: _headers }; });\n        } else if (status !== 200 && status !== 204) {\n            return response.text().then((_responseText) => {\n            return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n            });\n        }\n        return Promise.resolve<FileResponse>(null as any);\n    }\n\n    autoSave(hoeringId: number, eksternId: string | null, model: HøringUttalelseSubmitModelV2, signal?: AbortSignal): Promise<AutoSaveViewModel> {\n        let url_ = this.baseUrl + \"/api/client/hoering/AutoSave/{hoeringId}/{eksternId}\";\n        if (hoeringId === undefined || hoeringId === null)\n            throw new Error(\"The parameter 'hoeringId' must be defined.\");\n        url_ = url_.replace(\"{hoeringId}\", encodeURIComponent(\"\" + hoeringId));\n        if (eksternId === undefined || eksternId === null)\n            throw new Error(\"The parameter 'eksternId' must be defined.\");\n        url_ = url_.replace(\"{eksternId}\", encodeURIComponent(\"\" + eksternId));\n        url_ = url_.replace(/[?&]$/, \"\");\n\n        const content_ = JSON.stringify(model);\n\n        let options_: RequestInit = {\n            body: content_,\n            method: \"POST\",\n            signal,\n            headers: {\n                \"Content-Type\": \"application/json\",\n                \"Accept\": \"application/json\"\n            }\n        };\n\n        return this.transformOptions(options_).then(transformedOptions_ => {\n            return this.http.fetch(url_, transformedOptions_);\n        }).then((_response: Response) => {\n            return this.transformResult(url_, _response, (_response: Response) => this.processAutoSave(_response));\n        });\n    }\n\n    protected processAutoSave(response: Response): Promise<AutoSaveViewModel> {\n        const status = response.status;\n        let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\n        if (status === 200) {\n            return response.text().then((_responseText) => {\n            let result200: any = null;\n            result200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver) as AutoSaveViewModel;\n            return result200;\n            });\n        } else if (status !== 200 && status !== 204) {\n            return response.text().then((_responseText) => {\n            return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n            });\n        }\n        return Promise.resolve<AutoSaveViewModel>(null as any);\n    }\n\n    lagreUtkast(eksternId: string, innsendingsKode: string | null | undefined, innsenderEpost: string, signal?: AbortSignal): Promise<UtkastViewModel> {\n        let url_ = this.baseUrl + \"/api/client/hoering/LagreUtkast/{eksternId}?\";\n        if (eksternId === undefined || eksternId === null)\n            throw new Error(\"The parameter 'eksternId' must be defined.\");\n        url_ = url_.replace(\"{eksternId}\", encodeURIComponent(\"\" + eksternId));\n        if (innsendingsKode !== undefined && innsendingsKode !== null)\n            url_ += \"innsendingsKode=\" + encodeURIComponent(\"\" + innsendingsKode) + \"&\";\n        url_ = url_.replace(/[?&]$/, \"\");\n\n        const content_ = JSON.stringify(innsenderEpost);\n\n        let options_: RequestInit = {\n            body: content_,\n            method: \"POST\",\n            signal,\n            headers: {\n                \"Content-Type\": \"application/json\",\n                \"Accept\": \"application/json\"\n            }\n        };\n\n        return this.transformOptions(options_).then(transformedOptions_ => {\n            return this.http.fetch(url_, transformedOptions_);\n        }).then((_response: Response) => {\n            return this.transformResult(url_, _response, (_response: Response) => this.processLagreUtkast(_response));\n        });\n    }\n\n    protected processLagreUtkast(response: Response): Promise<UtkastViewModel> {\n        const status = response.status;\n        let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\n        if (status === 200) {\n            return response.text().then((_responseText) => {\n            let result200: any = null;\n            result200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver) as UtkastViewModel;\n            return result200;\n            });\n        } else if (status !== 200 && status !== 204) {\n            return response.text().then((_responseText) => {\n            return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n            });\n        }\n        return Promise.resolve<UtkastViewModel>(null as any);\n    }\n\n    delUtkast(innsendingsKode: string | null | undefined, eksternId: string | null, model: DelUtkastViewModel, signal?: AbortSignal): Promise<UtkastViewModel> {\n        let url_ = this.baseUrl + \"/api/client/hoering/DelUtkast/{eksternId}?\";\n        if (eksternId === undefined || eksternId === null)\n            throw new Error(\"The parameter 'eksternId' must be defined.\");\n        url_ = url_.replace(\"{eksternId}\", encodeURIComponent(\"\" + eksternId));\n        if (innsendingsKode !== undefined && innsendingsKode !== null)\n            url_ += \"innsendingsKode=\" + encodeURIComponent(\"\" + innsendingsKode) + \"&\";\n        url_ = url_.replace(/[?&]$/, \"\");\n\n        const content_ = JSON.stringify(model);\n\n        let options_: RequestInit = {\n            body: content_,\n            method: \"POST\",\n            signal,\n            headers: {\n                \"Content-Type\": \"application/json\",\n                \"Accept\": \"application/json\"\n            }\n        };\n\n        return this.transformOptions(options_).then(transformedOptions_ => {\n            return this.http.fetch(url_, transformedOptions_);\n        }).then((_response: Response) => {\n            return this.transformResult(url_, _response, (_response: Response) => this.processDelUtkast(_response));\n        });\n    }\n\n    protected processDelUtkast(response: Response): Promise<UtkastViewModel> {\n        const status = response.status;\n        let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\n        if (status === 200) {\n            return response.text().then((_responseText) => {\n            let result200: any = null;\n            result200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver) as UtkastViewModel;\n            return result200;\n            });\n        } else if (status !== 200 && status !== 204) {\n            return response.text().then((_responseText) => {\n            return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n            });\n        }\n        return Promise.resolve<UtkastViewModel>(null as any);\n    }\n\n    lastOppSporsmaalUttalelseVedlegg(files: FileParameter[] | null | undefined, sporsmalId: number | undefined, eksternId: string | undefined, signal?: AbortSignal): Promise<LastOppSporsmaalUttalelseVedleggViewModel> {\n        let url_ = this.baseUrl + \"/api/client/hoering/LastOppSporsmaalUttalelseVedlegg\";\n        url_ = url_.replace(/[?&]$/, \"\");\n\n        const content_ = new FormData();\n        if (files !== null && files !== undefined)\n            files.forEach(item_ => content_.append(\"Files\", item_.data, item_.fileName ? item_.fileName : \"Files\") );\n        if (sporsmalId === null || sporsmalId === undefined)\n            throw new Error(\"The parameter 'sporsmalId' cannot be null.\");\n        else\n            content_.append(\"SporsmalId\", sporsmalId.toString());\n        if (eksternId === null || eksternId === undefined)\n            throw new Error(\"The parameter 'eksternId' cannot be null.\");\n        else\n            content_.append(\"EksternId\", eksternId.toString());\n\n        let options_: RequestInit = {\n            body: content_,\n            method: \"POST\",\n            signal,\n            headers: {\n                \"Accept\": \"application/json\"\n            }\n        };\n\n        return this.transformOptions(options_).then(transformedOptions_ => {\n            return this.http.fetch(url_, transformedOptions_);\n        }).then((_response: Response) => {\n            return this.transformResult(url_, _response, (_response: Response) => this.processLastOppSporsmaalUttalelseVedlegg(_response));\n        });\n    }\n\n    protected processLastOppSporsmaalUttalelseVedlegg(response: Response): Promise<LastOppSporsmaalUttalelseVedleggViewModel> {\n        const status = response.status;\n        let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\n        if (status === 200) {\n            return response.text().then((_responseText) => {\n            let result200: any = null;\n            result200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver) as LastOppSporsmaalUttalelseVedleggViewModel;\n            return result200;\n            });\n        } else if (status !== 200 && status !== 204) {\n            return response.text().then((_responseText) => {\n            return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n            });\n        }\n        return Promise.resolve<LastOppSporsmaalUttalelseVedleggViewModel>(null as any);\n    }\n\n    slettSporsmaalUttalelseVedlegg(eksternId: string, signal?: AbortSignal): Promise<SlettSporsmaalUttalelseVedleggViewModel> {\n        let url_ = this.baseUrl + \"/api/client/hoering/SlettSporsmaalUttalelseVedlegg/{eksternId}\";\n        if (eksternId === undefined || eksternId === null)\n            throw new Error(\"The parameter 'eksternId' must be defined.\");\n        url_ = url_.replace(\"{eksternId}\", encodeURIComponent(\"\" + eksternId));\n        url_ = url_.replace(/[?&]$/, \"\");\n\n        let options_: RequestInit = {\n            method: \"DELETE\",\n            signal,\n            headers: {\n                \"Accept\": \"application/json\"\n            }\n        };\n\n        return this.transformOptions(options_).then(transformedOptions_ => {\n            return this.http.fetch(url_, transformedOptions_);\n        }).then((_response: Response) => {\n            return this.transformResult(url_, _response, (_response: Response) => this.processSlettSporsmaalUttalelseVedlegg(_response));\n        });\n    }\n\n    protected processSlettSporsmaalUttalelseVedlegg(response: Response): Promise<SlettSporsmaalUttalelseVedleggViewModel> {\n        const status = response.status;\n        let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\n        if (status === 200) {\n            return response.text().then((_responseText) => {\n            let result200: any = null;\n            result200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver) as SlettSporsmaalUttalelseVedleggViewModel;\n            return result200;\n            });\n        } else if (status !== 200 && status !== 204) {\n            return response.text().then((_responseText) => {\n            return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n            });\n        }\n        return Promise.resolve<SlettSporsmaalUttalelseVedleggViewModel>(null as any);\n    }\n\n    endreEpost(eksternId: string, innsenderEpost: string | undefined, innsendingsKode: string | null | undefined, signal?: AbortSignal): Promise<FileResponse> {\n        let url_ = this.baseUrl + \"/api/client/hoering/EndreEpost/{eksternId}?\";\n        if (eksternId === undefined || eksternId === null)\n            throw new Error(\"The parameter 'eksternId' must be defined.\");\n        url_ = url_.replace(\"{eksternId}\", encodeURIComponent(\"\" + eksternId));\n        if (innsenderEpost === null)\n            throw new Error(\"The parameter 'innsenderEpost' cannot be null.\");\n        else if (innsenderEpost !== undefined)\n            url_ += \"innsenderEpost=\" + encodeURIComponent(\"\" + innsenderEpost) + \"&\";\n        if (innsendingsKode !== undefined && innsendingsKode !== null)\n            url_ += \"innsendingsKode=\" + encodeURIComponent(\"\" + innsendingsKode) + \"&\";\n        url_ = url_.replace(/[?&]$/, \"\");\n\n        let options_: RequestInit = {\n            method: \"POST\",\n            signal,\n            headers: {\n                \"Accept\": \"application/octet-stream\"\n            }\n        };\n\n        return this.transformOptions(options_).then(transformedOptions_ => {\n            return this.http.fetch(url_, transformedOptions_);\n        }).then((_response: Response) => {\n            return this.transformResult(url_, _response, (_response: Response) => this.processEndreEpost(_response));\n        });\n    }\n\n    protected processEndreEpost(response: Response): Promise<FileResponse> {\n        const status = response.status;\n        let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\n        if (status === 200 || status === 206) {\n            const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\n            let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\n            let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\n            if (fileName) {\n                fileName = decodeURIComponent(fileName);\n            } else {\n                fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\n                fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\n            }\n            return response.blob().then(blob => { return { fileName: fileName, data: blob, status: status, headers: _headers }; });\n        } else if (status !== 200 && status !== 204) {\n            return response.text().then((_responseText) => {\n            return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n            });\n        }\n        return Promise.resolve<FileResponse>(null as any);\n    }\n}\n\nexport interface IInitialViewModel {\n\n    index(): Promise<V2ViewModel>;\n}\n\nexport class InitialViewModel extends ApiBase implements IInitialViewModel {\n    private http: { fetch(url: RequestInfo, init?: RequestInit): Promise<Response> };\n    private baseUrl: string;\n    protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n    constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise<Response> }) {\n        super();\n        this.http = http ? http : window as any;\n        this.baseUrl = baseUrl ?? \"\";\n    }\n\n    index(signal?: AbortSignal): Promise<V2ViewModel> {\n        let url_ = this.baseUrl + \"/api/client/init\";\n        url_ = url_.replace(/[?&]$/, \"\");\n\n        let options_: RequestInit = {\n            method: \"GET\",\n            signal,\n            headers: {\n                \"Accept\": \"application/json\"\n            }\n        };\n\n        return this.transformOptions(options_).then(transformedOptions_ => {\n            return this.http.fetch(url_, transformedOptions_);\n        }).then((_response: Response) => {\n            return this.transformResult(url_, _response, (_response: Response) => this.processIndex(_response));\n        });\n    }\n\n    protected processIndex(response: Response): Promise<V2ViewModel> {\n        const status = response.status;\n        let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\n        if (status === 400) {\n            return response.text().then((_responseText) => {\n            let result400: any = null;\n            result400 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver) as ValidationProblemDetails;\n            return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\n            });\n        } else if (status === 200) {\n            return response.text().then((_responseText) => {\n            let result200: any = null;\n            result200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver) as V2ViewModel;\n            return result200;\n            });\n        } else if (status !== 200 && status !== 204) {\n            return response.text().then((_responseText) => {\n            return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n            });\n        }\n        return Promise.resolve<V2ViewModel>(null as any);\n    }\n}\n\nexport interface IUttalelseClient {\n\n    getUttalelse(hoeringId: number, eksternId: string, leseTilgangsKode: boolean | undefined, forhandsVisningsKode: string | null | undefined): Promise<UttalelseViewModel>;\n}\n\nexport class UttalelseClient extends ApiBase implements IUttalelseClient {\n    private http: { fetch(url: RequestInfo, init?: RequestInit): Promise<Response> };\n    private baseUrl: string;\n    protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n    constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise<Response> }) {\n        super();\n        this.http = http ? http : window as any;\n        this.baseUrl = baseUrl ?? \"\";\n    }\n\n    getUttalelse(hoeringId: number, eksternId: string, leseTilgangsKode: boolean | undefined, forhandsVisningsKode: string | null | undefined, signal?: AbortSignal): Promise<UttalelseViewModel> {\n        let url_ = this.baseUrl + \"/api/client/uttalelse/get/{hoeringId}/{eksternId}?\";\n        if (hoeringId === undefined || hoeringId === null)\n            throw new Error(\"The parameter 'hoeringId' must be defined.\");\n        url_ = url_.replace(\"{hoeringId}\", encodeURIComponent(\"\" + hoeringId));\n        if (eksternId === undefined || eksternId === null)\n            throw new Error(\"The parameter 'eksternId' must be defined.\");\n        url_ = url_.replace(\"{eksternId}\", encodeURIComponent(\"\" + eksternId));\n        if (leseTilgangsKode === null)\n            throw new Error(\"The parameter 'leseTilgangsKode' cannot be null.\");\n        else if (leseTilgangsKode !== undefined)\n            url_ += \"leseTilgangsKode=\" + encodeURIComponent(\"\" + leseTilgangsKode) + \"&\";\n        if (forhandsVisningsKode !== undefined && forhandsVisningsKode !== null)\n            url_ += \"forhandsVisningsKode=\" + encodeURIComponent(\"\" + forhandsVisningsKode) + \"&\";\n        url_ = url_.replace(/[?&]$/, \"\");\n\n        let options_: RequestInit = {\n            method: \"GET\",\n            signal,\n            headers: {\n                \"Accept\": \"application/json\"\n            }\n        };\n\n        return this.transformOptions(options_).then(transformedOptions_ => {\n            return this.http.fetch(url_, transformedOptions_);\n        }).then((_response: Response) => {\n            return this.transformResult(url_, _response, (_response: Response) => this.processGetUttalelse(_response));\n        });\n    }\n\n    protected processGetUttalelse(response: Response): Promise<UttalelseViewModel> {\n        const status = response.status;\n        let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\n        if (status === 200) {\n            return response.text().then((_responseText) => {\n            let result200: any = null;\n            result200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver) as UttalelseViewModel;\n            return result200;\n            });\n        } else if (status !== 200 && status !== 204) {\n            return response.text().then((_responseText) => {\n            return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n            });\n        }\n        return Promise.resolve<UttalelseViewModel>(null as any);\n    }\n}\n\nexport interface IVersionClient {\n\n    getVersion(): Promise<string>;\n}\n\nexport class VersionClient extends ApiBase implements IVersionClient {\n    private http: { fetch(url: RequestInfo, init?: RequestInit): Promise<Response> };\n    private baseUrl: string;\n    protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n    constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise<Response> }) {\n        super();\n        this.http = http ? http : window as any;\n        this.baseUrl = baseUrl ?? \"\";\n    }\n\n    getVersion(signal?: AbortSignal): Promise<string> {\n        let url_ = this.baseUrl + \"/api/client/version/get\";\n        url_ = url_.replace(/[?&]$/, \"\");\n\n        let options_: RequestInit = {\n            method: \"GET\",\n            signal,\n            headers: {\n                \"Accept\": \"application/json\"\n            }\n        };\n\n        return this.transformOptions(options_).then(transformedOptions_ => {\n            return this.http.fetch(url_, transformedOptions_);\n        }).then((_response: Response) => {\n            return this.transformResult(url_, _response, (_response: Response) => this.processGetVersion(_response));\n        });\n    }\n\n    protected processGetVersion(response: Response): Promise<string> {\n        const status = response.status;\n        let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\n        if (status === 200) {\n            return response.text().then((_responseText) => {\n            let result200: any = null;\n            result200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver) as string;\n            return result200;\n            });\n        } else if (status !== 200 && status !== 204) {\n            return response.text().then((_responseText) => {\n            return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n            });\n        }\n        return Promise.resolve<string>(null as any);\n    }\n}\n\nexport interface FylkeViewModel {\n    navn: string;\n    fylkesNr: string;\n    kommuner: KommuneViewModel[];\n    aktiv: boolean;\n}\n\nexport interface KommuneViewModel {\n    navn: string;\n    orgNr: string;\n    kommuneNr: string;\n    aktiv: boolean;\n}\n\nexport interface HøringViewModel {\n    lukketInnsending: boolean;\n    \"målgrupper\": MalgruppeViewModel[];\n    \"forhåndsvisnings\": boolean;\n    mode: string;\n    notater: HøringsNotatViewModel[];\n    vedlegg: VedleggViewModel[];\n    publiseringsStatus: PubliseringsStatus;\n    \"målforms\": Målforms;\n    kanHaIngenMerknader: boolean;\n    isExpired: boolean;\n    isClosedOrExpired: boolean;\n    isLukketForUttalelser: boolean;\n    skjult: boolean;\n    publisert?: Date | null;\n    frist?: Date | null;\n    tittel: MålformString;\n    id: number;\n}\n\nexport interface MalgruppeViewModel {\n    tittel: string;\n    id: number;\n    \"rekkefølge\": number;\n    sektor: Sektor;\n    erAktiv: boolean;\n    innsenderRepresentererObligatoriskhet: Obligatoriskhet;\n    innsenderStillingObligatoriskhet: Obligatoriskhet;\n    geografiObligatoriskhet: GeografiObligatoriskhet;\n    \"målgruppeUnderTyper\": MalgruppeUnderTypeViewModel[];\n    kanHaFlereUndertyper: boolean;\n    undertypeErObligatorisk: boolean;\n    innsenderRepresentererEtikett?: string | null;\n    bekreftRepresentasjon: boolean;\n    autoPubliser: boolean;\n    arkiverSomPerson: boolean;\n    bekreftRepresentasjonFeilMelding: MålformString;\n    bekreftRepresentasjonTekst: MålformString;\n}\n\nexport enum Sektor {\n    Offentlig = \"Offentlig\",\n    Privat = \"Privat\",\n    Enkeltperson = \"Enkeltperson\",\n}\n\nexport enum Obligatoriskhet {\n    Obligatorisk = \"Obligatorisk\",\n    Valgfritt = \"Valgfritt\",\n    IkkeEtterspør = \"IkkeEtterspør\",\n}\n\nexport enum GeografiObligatoriskhet {\n    IkkeEtterspør = \"IkkeEtterspør\",\n    FylkeObligatorisk = \"FylkeObligatorisk\",\n    FylkeOgKommuneObligatorisk = \"FylkeOgKommuneObligatorisk\",\n}\n\nexport interface MalgruppeUnderTypeViewModel {\n    tittel: string;\n    id: number;\n    erAktiv: boolean;\n    \"rekkefølge\": number;\n}\n\nexport interface MålformString {\n    nb?: string | null;\n    nn?: string | null;\n}\n\nexport interface HøringsNotatViewModel {\n    seksjoner: SeksjonViewModel[];\n    signaturSeksjon?: SignaturSeksjonViewModel | null;\n    vedlegg: VedleggViewModel[];\n    fotnoter?: Fotnote[] | null;\n    saksBehandlereTekst?: string | null;\n    kanHaGenerellKommentar: boolean;\n    kanHaGenerellHoldning: boolean;\n    arkivDisplayNummer?: string | null;\n    menyTittel: MålformString;\n    visInnholdsfortegnelse: boolean;\n    skjulNummerering: boolean;\n    tittel: MålformString;\n    \"rekkefølge\": number;\n    id: number;\n}\n\nexport interface SeksjonViewModel {\n    nummerering: string;\n    \"spørsmål\": SpørsmålViewModel[];\n    tittel: MålformString;\n    \"rekkefølge\": number;\n    \"nivå\": number;\n    \"brødTekst\": MålformString;\n    kanHaMarkering: boolean;\n    id: number;\n}\n\nexport interface SpørsmålViewModel {\n    jaNei: SvarMulighetViewModel;\n    enigUenig: SvarMulighetViewModel;\n    positivNegativ: SvarMulighetViewModel;\n    svarAlternativer: EttFlereValgMulighetViewModel;\n    heltall: SvarMulighetViewModel;\n    kortTekst: KortSvarMulighetViewModel;\n    kommentar: KommentarSvarMulighetViewModel;\n    vedlegg: SvarMulighetViewModel;\n    dato: SvarMulighetViewModel;\n    fylkeKommune: FylkeKommuneSvarMulighetViewModel;\n    tittel: MålformString;\n    \"rekkefølge\": number;\n    \"brødTekst\": MålformString;\n    id: number;\n}\n\nexport interface SvarMulighetViewModel {\n    canHave: boolean;\n    isObligatorisk: boolean;\n}\n\nexport interface EttFlereValgMulighetViewModel extends SvarMulighetViewModel {\n    flereValg: boolean;\n    svarAlternativ: SvarAlternativViewModel[];\n}\n\nexport function isEttFlereValgMulighetViewModel(object: any): object is EttFlereValgMulighetViewModel {\n    return object && object[''] === 'EttFlereValgMulighetViewModel';\n}\n\nexport interface SvarAlternativViewModel {\n    id: number;\n    \"rekkefølge\": number;\n    erEgendefinert: boolean;\n    tittel: MålformString;\n}\n\nexport interface KortSvarMulighetViewModel extends SvarMulighetViewModel {\n    type: KortSvarTypes;\n}\n\nexport function isKortSvarMulighetViewModel(object: any): object is KortSvarMulighetViewModel {\n    return object && object[''] === 'KortSvarMulighetViewModel';\n}\n\nexport enum KortSvarTypes {\n    Tekst = \"Tekst\",\n    Epost = \"Epost\",\n    Orgnr = \"Orgnr\",\n    Kontonr = \"Kontonr\",\n}\n\nexport interface KommentarSvarMulighetViewModel extends SvarMulighetViewModel {\n    obligatoriskKommentarEnigUenig?: string[] | null;\n    obligatoriskKommentarJaNei?: string[] | null;\n    obligatoriskKommentarPositivNegativ?: string[] | null;\n    maxAntallTegn?: number | null;\n}\n\nexport function isKommentarSvarMulighetViewModel(object: any): object is KommentarSvarMulighetViewModel {\n    return object && object[''] === 'KommentarSvarMulighetViewModel';\n}\n\nexport interface FylkeKommuneSvarMulighetViewModel extends SvarMulighetViewModel {\n    type?: FylkeKommuneTypes | null;\n    flereFylker?: boolean | null;\n    flereKommuner?: boolean | null;\n}\n\nexport function isFylkeKommuneSvarMulighetViewModel(object: any): object is FylkeKommuneSvarMulighetViewModel {\n    return object && object[''] === 'FylkeKommuneSvarMulighetViewModel';\n}\n\nexport enum FylkeKommuneTypes {\n    FylkeKommune = \"FylkeKommune\",\n    Fylke = \"Fylke\",\n    Kommune = \"Kommune\",\n}\n\nexport interface SignaturSeksjonViewModel {\n    hilsen: MålformString;\n    footer: MålformString;\n    signaturNavn1?: string | null;\n    signaturStilling1: MålformString;\n    signaturNavn2?: string | null;\n    signaturStilling2: MålformString;\n}\n\nexport interface VedleggViewModel {\n    filNavn: string;\n    id: number;\n}\n\nexport interface Fotnote {\n    id: number;\n    wordId: string;\n    text: string;\n}\n\nexport enum PubliseringsStatus {\n    IkkePublisert = \"IkkePublisert\",\n    PublisertÅpen = \"PublisertÅpen\",\n    PublisertLukket = \"PublisertLukket\",\n}\n\nexport enum Målforms {\n    Bokmål = \"Bokmål\",\n    Nynorsk = \"Nynorsk\",\n}\n\nexport interface SubmitViewModel {\n    eksternId: string;\n    hoeringId: number;\n    bekreftetStatus: BekreftetStatus;\n}\n\nexport enum BekreftetStatus {\n    IkkeBekreftet = \"IkkeBekreftet\",\n    AvInnsender = \"AvInnsender\",\n    AvSaksBehandler = \"AvSaksBehandler\",\n    LukketInnsending = \"LukketInnsending\",\n    ManueltRegistrert = \"ManueltRegistrert\",\n    TrengerIkkeBekreftes = \"TrengerIkkeBekreftes\",\n}\n\nexport interface HøringUttalelseSubmitModelV2 {\n    eksternId: string;\n    sporsmalUttalelser?: SpørsmålUttalelseSubmitModel[] | null;\n    seksjonUttalelser?: SeksjonUttalelseSubmitModel[] | null;\n    notatUttalelser?: HøringsNotatUttalelseSubmitModel[] | null;\n    innsender?: InnsenderViewModel | null;\n    ingenMerknader: boolean;\n    \"userMålform\": Målform;\n}\n\nexport interface SpørsmålUttalelseSubmitModel {\n    id: number;\n    positivNegativHoldning?: PositivNegativHoldning | null;\n    jaNei?: JaNei | null;\n    enigUenig?: EnigUenig | null;\n    kommentar?: string | null;\n    kortTekst?: string | null;\n    heltall?: number | null;\n    dato?: Date | null;\n    fylkeKommune?: string[] | null;\n    \"svarPåSvarAlternativer\"?: number[] | null;\n    egendefinertSvar?: EgendefinertSvarModel[] | null;\n}\n\nexport enum PositivNegativHoldning {\n    IkkeAngitt = \"IkkeAngitt\",\n    Positiv = \"Positiv\",\n    Negativ = \"Negativ\",\n    HverkenEller = \"HverkenEller\",\n}\n\nexport enum JaNei {\n    IkkeAngitt = \"IkkeAngitt\",\n    Ja = \"Ja\",\n    Nei = \"Nei\",\n    VetIkke = \"VetIkke\",\n}\n\nexport enum EnigUenig {\n    IkkeAngitt = \"IkkeAngitt\",\n    HeltUenig = \"HeltUenig\",\n    DelvisUenig = \"DelvisUenig\",\n    HverkenEller = \"HverkenEller\",\n    DelvisEnig = \"DelvisEnig\",\n    HeltEnig = \"HeltEnig\",\n}\n\nexport interface EgendefinertSvarModel {\n    svarAlternativId: number;\n    egendefinertSvar: string;\n}\n\nexport interface SeksjonUttalelseSubmitModel {\n    id: number;\n}\n\nexport interface HøringsNotatUttalelseSubmitModel {\n    id: number;\n    generellKommentar?: string | null;\n    generellHoldning?: PositivNegativHoldning | null;\n}\n\nexport interface InnsenderViewModel {\n    navn: string;\n    epost: string;\n    malgruppe: number;\n    representerer?: string | null;\n    stilling?: string | null;\n    fylke?: string | null;\n    kommune?: string | null;\n    undertype: number[];\n}\n\nexport enum Målform {\n    Bokmål = \"Bokmål\",\n    Nynorsk = \"Nynorsk\",\n}\n\nexport interface AutoSaveViewModel {\n    endret?: Date | null;\n    hoeringId: number;\n    eksternId: string;\n}\n\nexport interface UtkastViewModel {\n    title?: string | null;\n    message?: string | null;\n}\n\nexport interface DelUtkastViewModel {\n    eksternId: string;\n    \"userMålform\": Målform;\n    innsenderEpost: string;\n    mottakerEpost?: string[] | null;\n    kommentar: string;\n    skrivetilgang: boolean;\n}\n\nexport interface LastOppSporsmaalUttalelseVedleggViewModel {\n    files: SpørsmålUttalelseVedleggViewModel[];\n    errors: string;\n}\n\nexport interface SpørsmålUttalelseVedleggViewModel {\n    filNavn: string;\n    eksternId: string;\n    lastetOpp?: string | null;\n}\n\nexport interface SlettSporsmaalUttalelseVedleggViewModel {\n    eksternId?: string | null;\n}\n\nexport interface ProblemDetails {\n    type?: string | null;\n    title?: string | null;\n    status?: number | null;\n    detail?: string | null;\n    instance?: string | null;\n\n    [key: string]: any;\n}\n\nexport interface HttpValidationProblemDetails extends ProblemDetails {\n    errors: { [key: string]: string[]; };\n\n    [key: string]: any;\n}\n\nexport function isHttpValidationProblemDetails(object: any): object is HttpValidationProblemDetails {\n    return object && object[''] === 'HttpValidationProblemDetails';\n}\n\nexport interface ValidationProblemDetails extends HttpValidationProblemDetails {\n    errors: { [key: string]: string[]; };\n\n    [key: string]: any;\n}\n\nexport function isValidationProblemDetails(object: any): object is ValidationProblemDetails {\n    return object && object[''] === 'ValidationProblemDetails';\n}\n\nexport interface V2ViewModel {\n    tittel: string;\n    beskrivelse: string;\n    cssUrl?: string | null;\n    faviconUrl: string;\n    logoUrl: string;\n    opengraphUrl: string;\n    froalaLicense?: string | null;\n    sentryId?: string | null;\n    matomoTagManager?: string | null;\n    institusjonNavnLang: string;\n    hoeringUrls: HoeringUrls;\n    antiForgeryTokenInfo: AntiForgeryTokenInfo;\n    texts: InitialStateTekst;\n    footer?: UrlItem[] | null;\n    personvernerklaering?: any | null;\n    features: { [key: string]: FeatureListViewModel; };\n    version: string;\n    consoleLogTriggerMessage: string;\n}\n\nexport interface HoeringUrls {\n    lastNedVedlegg?: string | null;\n    lastNedUtkastUrl?: string | null;\n    lastNedUttalelseUrl?: string | null;\n    \"lastNedSpørsmålUttalelseVedlegg\"?: string | null;\n}\n\nexport interface AntiForgeryTokenInfo {\n    tokenHeaderName: string;\n    requestToken: string;\n}\n\nexport interface InitialStateTekst {\n    nb: any;\n    nn: any;\n}\n\nexport interface UrlItem {\n    tekst: string;\n    url: string;\n    blank: boolean;\n}\n\nexport interface FeatureListViewModel {\n    kommentarMaxAntallTegn: boolean;\n    svarIngenMerknader: boolean;\n    enSakPerSvarInnstilling: boolean;\n    sendInnKunSisteNotat: boolean;\n    lenkeTilPersonvernerklaering: boolean;\n    bekrefteSvar: boolean;\n}\n\nexport interface UttalelseViewModel {\n    endret?: Date | null;\n    malgruppeId?: number | null;\n    \"høringId\": number;\n    hasFeedback: boolean;\n    status?: string | null;\n    bekreftelsesUri?: string | null;\n    \"spørsmål\": SpørsmålUttalelseViewModel[];\n    seksjoner: SeksjonUttalelseViewModel[];\n    innsenderRepresentererEtikett?: string | null;\n    malgruppe?: string | null;\n    sektor?: Sektor | null;\n    innsenderNavn?: string | null;\n    innsenderEpost?: string | null;\n    innsenderStilling?: string | null;\n    \"påVegneAv\"?: string | null;\n    notater: HøringsNotatUttalelseViewModel[];\n    \"userMålform\": Målform;\n    id: number;\n    navnSkjult: boolean;\n    ingenMerknader: boolean;\n    innsendt: boolean;\n    manueltRegistrert: boolean;\n    mottatt?: Date | null;\n    bekreftetStatus: BekreftetStatus;\n    arkivnummer?: string | null;\n    eksternId: string;\n}\n\nexport interface SpørsmålUttalelseViewModel {\n    \"svarPåSvarAlternativer\": SvarPåAlternativViewModel[];\n    id: number;\n    \"spørsmålId\": number;\n    jaNei: JaNei;\n    enigUenig: EnigUenig;\n    positivNegativHoldning: PositivNegativHoldning;\n    heltall?: number | null;\n    kortTekst?: string | null;\n    kommentar?: string | null;\n    vedlegg: SpørsmålUttalelseVedleggViewModel[];\n    dato?: Date | null;\n    fylkeKommune?: string[] | null;\n}\n\nexport interface SvarPåAlternativViewModel {\n    flereValg: boolean;\n    egendefinertSvar?: string | null;\n    svarAlternativId: number;\n    id?: number | null;\n}\n\nexport interface SeksjonUttalelseViewModel {\n    seksjonId: number;\n    id: number;\n}\n\nexport interface HøringsNotatUttalelseViewModel {\n    notatId: number;\n    id: number;\n    hasFeedback: boolean;\n    generellHoldning: PositivNegativHoldning;\n    generellKommentar?: string | null;\n}\n\nexport interface FileParameter {\n    data: any;\n    fileName: string;\n}\n\nexport interface FileResponse {\n    data: Blob;\n    status: number;\n    fileName?: string;\n    headers?: { [name: string]: any };\n}\n\nexport class ApiException extends Error {\n    override message: string;\n    status: number;\n    response: string;\n    headers: { [key: string]: any; };\n    result: any;\n\n    constructor(message: string, status: number, response: string, headers: { [key: string]: any; }, result: any) {\n        super();\n\n        this.message = message;\n        this.status = status;\n        this.response = response;\n        this.headers = headers;\n        this.result = result;\n    }\n\n    protected isApiException = true;\n\n    static isApiException(obj: any): obj is ApiException {\n        return obj.isApiException === true;\n    }\n}\n\nfunction throwException(message: string, status: number, response: string, headers: { [key: string]: any; }, result?: any): any {\n    if (result !== null && result !== undefined)\n        throw result;\n    else\n        throw new ApiException(message, status, response, headers, null);\n}\n\n/* eslint-disable class-methods-use-this */","import { type AntiForgeryTokenInfo, type V2ViewModel } from \"../ApiClients\";\n\ndeclare global {\n  interface Window {\n    initialState: V2ViewModel;\n    epostRegex: RegExp;\n  }\n}\n\nconst initial = window.initialState;\nexport const urls = initial.hoeringUrls;\nexport const froala = initial.froalaLicense ?? \"\";\nexport const sentry = initial.sentryId ?? undefined;\nexport const matomoId = initial.matomoTagManager ?? undefined;\nexport const { texts, footer, personvernerklaering, features, version, logoUrl } =\n  initial;\n\nexport const institusjonNavnLang = initial.institusjonNavnLang!;\nexport const getAntiForgeryTokenInfo = (): AntiForgeryTokenInfo =>\n  window.initialState.antiForgeryTokenInfo!;\n","import { Målform, Målforms, type MålformString } from \"../ApiClients\";\n\nexport const getDefaultLocaleFromMalforms = (\n  horingMalforms: Målforms,\n): Målform => {\n  return horingMalforms.includes(Målforms.Bokmål)\n    ? Målform.Bokmål\n    : Målform.Nynorsk;\n};\n\nexport const getLocaleCode = (locale: Målform) => {\n  return locale === Målform.Nynorsk ? \"nn\" : \"nb\";\n};\n\nexport const getTextWithLocale = (\n  texts: MålformString | null | undefined,\n  locale: Målform,\n): string => {\n  if (!texts) return \"\";\n  const malformCode = getLocaleCode(locale);\n  return texts[malformCode] ?? \"\";\n};\n","/* eslint-disable @typescript-eslint/no-explicit-any */\n\nexport const flatten = (object: any): any => {\n  return Object.keys(object).reduce((curr, key) => {\n    if (!Object.prototype.hasOwnProperty.call(object, key)) return curr;\n    if (typeof object[key] === \"object\" && object[key] !== null) {\n      const flat = flatten(object[key]);\n      return {\n        ...curr,\n        ...Object.keys(flat).reduce((innerCurr, innerKey) => {\n          if (!Object.prototype.hasOwnProperty.call(flat, innerKey)) {\n            return innerCurr;\n          }\n          return { ...innerCurr, [`${key}.${innerKey}`]: flat[innerKey] };\n        }, {}),\n      };\n    }\n    return { ...curr, [key]: object[key] };\n  }, {});\n};\n","export const SPORSMAL_ID = \"sporsmalId\";\nexport const NOTAT_ID = \"notatId\";\n\nexport const INNSENDINGSKODE = \"innsendingsKode\";\nexport const MANUELLREGISTRERINGSKODE = \"manuellRegistreringsKode\";\nexport const FORHANDSVISNINGSKODE = \"forhandsVisningsKode\";\n","import { createContext, useReducer, useContext } from \"react\";\nimport { Målform } from \"./ApiClients\";\n\nexport const emptyGuid = \"00000000-0000-0000-0000-000000000000\";\n\nconst SET_LOCALE = \"SET_LOCALE\";\nconst SET_AUTOSAVING = \"SET_AUTOSAVING\";\nconst SET_PENDINGCHANGES = \"SET_PENDINGCHANGES\";\nconst SET_INGENMERKNADER = \"SET_INGENMERKNADER\";\n\nexport type ReducerStateProps = {\n  locale: Målform;\n  autosaving: boolean | undefined;\n  pendingchanges: string | undefined;\n  ingenMerknader: boolean;\n};\n\nexport type ActionTypeProps =\n  | {\n      type: typeof SET_LOCALE;\n      payload: Målform;\n    }\n  | {\n      type: typeof SET_PENDINGCHANGES;\n      payload: string;\n    }\n  | {\n      type: typeof SET_AUTOSAVING;\n      payload: boolean | undefined;\n    }\n  | {\n      type: typeof SET_INGENMERKNADER;\n      payload: boolean;\n    };\n\nconst initialState = {\n  locale: Målform.Bokmål,\n  pendingchanges: undefined,\n  autosaving: undefined,\n  ingenMerknader: false,\n} satisfies ReducerStateProps;\n\nconst reducer: React.Reducer<ReducerStateProps, ActionTypeProps> = (\n  state = initialState,\n  action,\n) => {\n  switch (action.type) {\n    case SET_LOCALE:\n      return { ...state, locale: action.payload };\n    case SET_AUTOSAVING:\n      return {\n        ...state,\n        autosaving: action.payload,\n        pendingchanges:\n          action.payload === true ? state.pendingchanges : undefined,\n      };\n    case SET_PENDINGCHANGES:\n      return { ...state, pendingchanges: action.payload };\n    case SET_INGENMERKNADER:\n      return { ...state, ingenMerknader: action.payload };\n    default:\n      return state;\n  }\n};\n\nexport type UseStateProps = [\n  ReducerStateProps,\n  React.Dispatch<ActionTypeProps>,\n];\n\nexport const StateContext = createContext<UseStateProps>([\n  initialState,\n  () => null,\n]);\nexport const useContextState = (): UseStateProps => useContext(StateContext);\n\ntype StateProviderProps = {\n  children: React.ReactNode;\n};\n\nconst StateProvider: React.FC<StateProviderProps> = ({ children }) => {\n  return (\n    <StateContext.Provider\n      value={useReducer<React.Reducer<ReducerStateProps, ActionTypeProps>>(\n        reducer,\n        initialState,\n      )}\n    >\n      {children}\n    </StateContext.Provider>\n  );\n};\n\nexport default StateProvider;\n","export const routes = {\n  hoering: (hoeringId: string | number) => `/hoering/${hoeringId}`,\n  uttalelse: (hoeringId: string | number, uttalelseId: string) =>\n    `${routes.hoering(hoeringId)}/uttalelse/${uttalelseId}`,\n  utkast: (hoeringId: string | number, uttalelseId: string) =>\n    `${routes.hoering(hoeringId)}/utkast/${uttalelseId}`,\n  lesutkast: (hoeringId: string | number, leseTilgangsKode: string) =>\n    `${routes.hoering(hoeringId)}/lesutkast/${leseTilgangsKode}`,\n  pdfHoering: (hoeringId: string | number) => `/pdf/${hoeringId}`,\n  pdfUttalelse: (hoeringId: string | number, uttalelseId: string) =>\n    `/pdf/${hoeringId}/uttalelse/${uttalelseId}`,\n  pdfUtkast: (hoeringId: string | number, uttalelseId: string) =>\n    `/pdf/${hoeringId}/utkast/${uttalelseId}`,\n};\n","import {\n  HøringsNotatUttalelseSubmitModel,\n  HøringViewModel,\n  SpørsmålUttalelseSubmitModel,\n} from \"../ApiClients\";\n\nexport const getNotat = (notatId: number, hoering: HøringViewModel) => {\n  return (\n    hoering.notater.find((n) => n.id === notatId) ??\n    hoering.notater.sort((a, b) => a.rekkefølge - b.rekkefølge)[0]\n  );\n};\n\nexport const getNextNotat = (notatId: number, hoering: HøringViewModel) => {\n  const notat = getNotat(notatId, hoering);\n  const index = hoering.notater.indexOf(notat);\n  if (index >= 0 && index < hoering.notater.length - 1) {\n    return hoering.notater.sort((a, b) => a.rekkefølge - b.rekkefølge)[\n      index + 1\n    ];\n  }\n  return notat;\n};\n\nexport type NotatSvarMulighetTypes = keyof HøringsNotatUttalelseSubmitModel;\nexport const notatPrefix = \"notat\";\nexport type NotatFormId =\n  `${typeof notatPrefix}-${string}-${NotatSvarMulighetTypes}`;\nexport const getNotatFormId = (\n  notatId: number | string,\n  type: NotatSvarMulighetTypes,\n): NotatFormId => `${notatPrefix}-${notatId}-${type}`;\n\nexport type SporsmalSvarMulighetTypes =\n  | keyof SpørsmålUttalelseSubmitModel\n  | \"vedlegg\";\nexport const sporsmalPrefix = \"sporsmal\";\nexport type SpørsmålFormId =\n  `${typeof sporsmalPrefix}-${string}-${SporsmalSvarMulighetTypes}`;\nexport const getSpørsmålFormId = (\n  spørsmålId: number | string,\n  type: SporsmalSvarMulighetTypes,\n): SpørsmålFormId => `${sporsmalPrefix}-${spørsmålId}-${type}`;\n","import {\n  HøringsNotatUttalelseViewModel,\n  SpørsmålUttalelseViewModel,\n  UttalelseViewModel,\n} from \"../ApiClients\";\nimport {\n  getNotatFormId,\n  getSpørsmålFormId,\n  NotatFormId,\n  notatPrefix,\n  NotatSvarMulighetTypes,\n  sporsmalPrefix,\n  SporsmalSvarMulighetTypes,\n  SpørsmålFormId,\n} from \"../utils/hoeringUtils\";\n\nexport const getArray = <T>(array: Array<T> | null | undefined) => {\n  return (array ?? []).length > 0 ? array : undefined;\n};\n\nexport const getString = <T>(obj: T | null | undefined) => {\n  return (obj ?? \"\")?.toString().trim().length > 0 ? obj : undefined;\n};\n\nexport const mapFormToUttalelse = (\n  uttalelse: UttalelseViewModel,\n  values: Record<SpørsmålFormId | NotatFormId, unknown>,\n) => {\n  return {\n    ...uttalelse,\n    notater: Object.values(\n      (Object.keys(values) as Array<NotatFormId>)\n        .map(\n          (key) =>\n            key.split(\"-\") as [\n              typeof notatPrefix,\n              string,\n              NotatSvarMulighetTypes,\n            ],\n        )\n        .filter((keys) => keys[0] === notatPrefix)\n        .reduce(\n          (acc, curr) => ({\n            ...acc,\n            [curr[1]]: {\n              ...(acc[curr[1]] ??\n                ({\n                  notatId: +curr[1],\n                } as HøringsNotatUttalelseViewModel)),\n              [curr[2]]: values[getNotatFormId(curr[1], curr[2])],\n            },\n          }),\n          {} as Record<string, HøringsNotatUttalelseViewModel>,\n        ),\n    ) satisfies Array<HøringsNotatUttalelseViewModel>,\n    spørsmål: Object.values(\n      (Object.keys(values) as Array<SpørsmålFormId>)\n        .map(\n          (key) =>\n            key.split(\"-\") as [\n              typeof sporsmalPrefix,\n              string,\n              SporsmalSvarMulighetTypes,\n            ],\n        )\n        .filter((keys) => keys[0] === sporsmalPrefix)\n        .reduce(\n          (acc, curr) => ({\n            ...acc,\n            [curr[1]]: {\n              ...(acc[curr[1]] ??\n                ({ spørsmålId: +curr[1] } as SpørsmålUttalelseViewModel)),\n              [curr[2]]: values[getSpørsmålFormId(curr[1], curr[2])],\n            },\n          }),\n          {} as Record<string, SpørsmålUttalelseViewModel>,\n        ),\n    ) satisfies Array<SpørsmålUttalelseViewModel>,\n  } satisfies UttalelseViewModel;\n};\n","import { ValidationType } from \"@utdanningsdirektoratet/form\";\nimport { IntlShape } from \"react-intl\";\nimport {\n  EnigUenig,\n  HøringsNotatUttalelseViewModel,\n  JaNei,\n  PositivNegativHoldning,\n  SeksjonUttalelseViewModel,\n  SpørsmålUttalelseVedleggViewModel,\n  SpørsmålUttalelseViewModel,\n  SvarPåAlternativViewModel,\n} from \"../ApiClients\";\n\nexport const angittPositivNegativ = (u?: PositivNegativHoldning) =>\n  u && u !== PositivNegativHoldning.IkkeAngitt;\nexport const angittJaNei = (u?: JaNei) => u && u !== JaNei.IkkeAngitt;\nexport const angittEnigUenig = (u?: EnigUenig) =>\n  u && u !== EnigUenig.IkkeAngitt;\nexport const angittEttValg = (u?: Array<SvarPåAlternativViewModel>) =>\n  u && u.length > 0 && u.some((spsa) => spsa.flereValg === false);\nexport const angittKommentar = (u?: string | null) => u && u.trim();\nexport const angittFlereValg = (u?: Array<SvarPåAlternativViewModel>) =>\n  u && u.length > 0 && u.some((spsa) => spsa.flereValg === true);\nexport const angittVedlegg = (u?: Array<SpørsmålUttalelseVedleggViewModel>) =>\n  u && u.length > 0;\nexport const angittFylke = (u?: Array<string> | null) =>\n  u && u.filter((f) => f.length === 2).length > 0;\nexport const angittKommune = (u?: Array<string> | null) =>\n  u && u.filter((f) => f.length === 4).length > 0;\nexport const angittFylkeKommune = (u?: Array<string> | null) =>\n  u && u.length > 0;\nexport const angittKortTekst = (u?: string | null) => u && u.trim();\nexport const angittDato = (u?: Date | null) => !!u;\nexport const angittHeltall = (u?: number | null) => !!u || u === 0;\n\nexport const gyldigHetall = (u?: number | null) =>\n  !u || u === 0 || (u >= 0 && u <= 2147483647 && Number.isInteger(u));\n\nexport const gyldigKortTekst = (\n  u: string | null | undefined,\n  validator: (input: unknown, values?: unknown) => boolean,\n) => !angittKortTekst(u) || validator(u);\n\nexport const isSporsmalBesvart = (uttalelse?: SpørsmålUttalelseViewModel) =>\n  angittPositivNegativ(uttalelse?.positivNegativHoldning) ||\n  angittJaNei(uttalelse?.jaNei) ||\n  angittEnigUenig(uttalelse?.enigUenig) ||\n  angittEttValg(uttalelse?.svarPåSvarAlternativer) ||\n  angittFlereValg(uttalelse?.svarPåSvarAlternativer) ||\n  angittKommentar(uttalelse?.kommentar) ||\n  angittVedlegg(uttalelse?.vedlegg) ||\n  angittHeltall(uttalelse?.heltall) ||\n  angittKortTekst(uttalelse?.kortTekst) ||\n  angittDato(uttalelse?.dato) ||\n  angittFylkeKommune(uttalelse?.fylkeKommune);\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport const isSeksjonBesvart = (_uttalelse: SeksjonUttalelseViewModel) =>\n  false;\n\nexport const isNotatBesvart = (uttalelse: HøringsNotatUttalelseViewModel) =>\n  angittPositivNegativ(uttalelse.generellHoldning) ||\n  angittKommentar(uttalelse.generellKommentar);\n\nexport const epostValidation = (\n  intl: IntlShape,\n): ValidationType<unknown, unknown> => ({\n  validation: (input) => window.epostRegex.test(input as string),\n  message: intl.formatMessage({ id: \"validation.maVaereGyldigEpostadresse\" }),\n});\n","import { getString } from \"./vmUtils\";\nimport {\n  HøringsNotatUttalelseSubmitModel,\n  HøringsNotatUttalelseViewModel,\n  PositivNegativHoldning,\n} from \"../ApiClients\";\nimport { isNotatBesvart } from \"../logic/validation\";\n\nexport default (\n  notatUttalelser: Array<HøringsNotatUttalelseViewModel> = [],\n  mapAll = false,\n): Array<HøringsNotatUttalelseSubmitModel> =>\n  notatUttalelser\n    .filter((u) => mapAll || isNotatBesvart(u))\n    .map<HøringsNotatUttalelseSubmitModel>(\n      (u) =>\n        ({\n          id: u.notatId,\n          generellHoldning:\n            u.generellHoldning !== PositivNegativHoldning.IkkeAngitt\n              ? u.generellHoldning\n              : undefined,\n          generellKommentar: getString(u.generellKommentar),\n        }) satisfies HøringsNotatUttalelseSubmitModel,\n    );\n","import { Values } from \"@utdanningsdirektoratet/form\";\nimport mapSporsmalUttalelserVm from \"./mapSporsmalUttalelserVm\";\nimport mapSeksjonUttalelserVm from \"./mapSeksjonUttalelserVm\";\nimport mapNotatUttalelserVm from \"./mapNotatUttalelserVm\";\nimport type {\n  HøringUttalelseSubmitModelV2,\n  InnsenderViewModel,\n  Målform,\n  UttalelseViewModel,\n} from \"../ApiClients\";\nimport type { FieldType } from \"../pages/uttalelse/components/sendInn/SendInnPopin\";\n\nexport default (\n  eksternId: string,\n  uttalelse: UttalelseViewModel | undefined,\n  ingenMerknader: boolean,\n  userMalform: Målform,\n  mapAll: boolean,\n  values?: Values<FieldType>,\n): HøringUttalelseSubmitModelV2 => {\n  const sporsmalUttalelser = mapSporsmalUttalelserVm(\n    uttalelse?.spørsmål,\n    mapAll,\n  );\n  const seksjonUttalelser = mapSeksjonUttalelserVm(\n    uttalelse?.seksjoner,\n    mapAll,\n  );\n  const notatUttalelser = mapNotatUttalelserVm(uttalelse?.notater, mapAll);\n\n  const vm: HøringUttalelseSubmitModelV2 = {\n    eksternId,\n    ingenMerknader,\n    sporsmalUttalelser,\n    seksjonUttalelser,\n    notatUttalelser,\n    userMålform: userMalform,\n  };\n\n  if (values) {\n    return {\n      ...vm,\n      innsender: {\n        navn: values.navn,\n        epost: values.epost,\n        malgruppe: +values.malgruppe,\n        representerer: values.representerer,\n        stilling: values.stilling,\n        fylke: values.fylke,\n        kommune: values.kommune,\n        undertype: Object.keys(values.undertype)\n          .filter((key) => values.undertype[key])\n          .map((key) => +key),\n      } satisfies InnsenderViewModel,\n    } satisfies HøringUttalelseSubmitModelV2;\n  }\n\n  return vm;\n};\n","import { getArray, getString } from \"./vmUtils\";\nimport {\n  EgendefinertSvarModel,\n  EnigUenig,\n  JaNei,\n  PositivNegativHoldning,\n  SpørsmålUttalelseSubmitModel,\n  SpørsmålUttalelseViewModel,\n} from \"../ApiClients\";\nimport { isSporsmalBesvart } from \"../logic/validation\";\n\nexport default (\n  sporsmalUttalelser: Array<SpørsmålUttalelseViewModel> = [],\n  mapAll = false,\n): Array<SpørsmålUttalelseSubmitModel> =>\n  sporsmalUttalelser\n    .filter((u) => mapAll || isSporsmalBesvart(u))\n    .map<SpørsmålUttalelseSubmitModel>(\n      (u) =>\n        ({\n          id: u.spørsmålId,\n          positivNegativHoldning:\n            u.positivNegativHoldning !== PositivNegativHoldning.IkkeAngitt\n              ? u.positivNegativHoldning\n              : undefined,\n          jaNei: u.jaNei !== JaNei.IkkeAngitt ? u.jaNei : undefined,\n          enigUenig:\n            u.enigUenig !== EnigUenig.IkkeAngitt ? u.enigUenig : undefined,\n          kommentar: getString(u.kommentar),\n          kortTekst: getString(u.kortTekst),\n          heltall: getString(u.heltall),\n          dato: getString(u.dato),\n          fylkeKommune: getArray(u.fylkeKommune),\n          svarPåSvarAlternativer: getArray(\n            u.svarPåSvarAlternativer?.map((spsa) => spsa.svarAlternativId),\n          ),\n          egendefinertSvar: getArray(\n            u.svarPåSvarAlternativer\n              ?.filter((spsa) => spsa.egendefinertSvar?.trim())\n              .map(\n                (spsa) =>\n                  ({\n                    svarAlternativId: spsa.svarAlternativId,\n                    egendefinertSvar: spsa.egendefinertSvar,\n                  }) as EgendefinertSvarModel,\n              ),\n          ),\n        }) satisfies SpørsmålUttalelseSubmitModel,\n    );\n","import {\n  SeksjonUttalelseSubmitModel,\n  SeksjonUttalelseViewModel,\n} from \"../ApiClients\";\nimport { isSeksjonBesvart } from \"../logic/validation\";\n\nexport default (\n  seksjonUttalelser: Array<SeksjonUttalelseViewModel> = [],\n  mapAll = false,\n): Array<SeksjonUttalelseSubmitModel> =>\n  seksjonUttalelser\n    .filter((u) => mapAll || isSeksjonBesvart(u))\n    .map<SeksjonUttalelseSubmitModel>(\n      (u) =>\n        ({\n          id: u.seksjonId,\n        }) satisfies SeksjonUttalelseSubmitModel,\n    );\n","import useSWR, { SWRConfiguration } from \"swr\";\nimport useSWRMutation from \"swr/mutation\";\nimport { useParams } from \"react-router\";\nimport { useSearchParams } from \"react-router-dom\";\nimport { useDeferredValue } from \"react\";\nimport {\n  FylkeClient,\n  HoeringClient,\n  UttalelseClient,\n  VersionClient,\n} from \"./ApiClients\";\nimport {\n  FORHANDSVISNINGSKODE,\n  INNSENDINGSKODE,\n  MANUELLREGISTRERINGSKODE,\n  NOTAT_ID,\n} from \"./constants/queryParam\";\nimport { emptyGuid, useContextState } from \"./StateProvider\";\nimport { routes } from \"./routes\";\nimport mapVm from \"./vm/mapVm\";\nimport { mapFormToUttalelse } from \"./vm/vmUtils\";\n\nconst hoeringClient = new HoeringClient();\nconst uttalelseClient = new UttalelseClient();\nconst fylkeClient = new FylkeClient();\nconst versionClient = new VersionClient();\n\nconst SWRConfig = {\n  revalidateIfStale: true,\n  revalidateOnFocus: false,\n  revalidateOnReconnect: false,\n} satisfies SWRConfiguration;\n\nexport const useFylker = () => {\n  return useSWR(\"fylker\", () => fylkeClient.getFylker(), SWRConfig);\n};\n\nexport const useLocale = () => {\n  const [{ locale }] = useContextState();\n  return locale;\n};\n\nexport const useEksternId = () => {\n  const { eksternId } = useParams<{\n    eksternId: string;\n  }>();\n  return eksternId ?? emptyGuid;\n};\n\nexport const useVersion = () => {\n  return useSWR(\"version\", () => versionClient.getVersion(), {\n    ...SWRConfig,\n    refreshInterval: 600000,\n  });\n};\n\nexport const useLeseTilgangsKode = () => {\n  const { leseTilgangsKode } = useParams<{\n    leseTilgangsKode: string;\n  }>();\n  return leseTilgangsKode;\n};\n\nexport const useManuellRegistreringsKode = () => {\n  const [searchParams] = useSearchParams();\n  return searchParams.get(MANUELLREGISTRERINGSKODE) ?? undefined;\n};\n\nexport const useInnsendingsKode = () => {\n  const [searchParams] = useSearchParams();\n  return searchParams.get(INNSENDINGSKODE) ?? undefined;\n};\n\nexport const useForhåndsvisning = () => {\n  const [searchParams] = useSearchParams();\n  return searchParams.get(FORHANDSVISNINGSKODE) ?? undefined;\n};\n\nexport const useNotatId = () => {\n  const [searchParams] = useSearchParams();\n  return searchParams.get(NOTAT_ID);\n};\n\nexport const useHoeringId = () => {\n  const { hoeringId } = useParams<{\n    hoeringId: string;\n  }>();\n  return hoeringId!;\n};\n\nexport const useHoering = () => {\n  const hoeringId = useHoeringId();\n  const forhandsVisningsKode = useForhåndsvisning();\n  const innsendingsKode = useInnsendingsKode();\n  return useSWR(\n    routes.hoering(hoeringId),\n    () => hoeringClient.get(+hoeringId!, forhandsVisningsKode, innsendingsKode),\n    { ...SWRConfig, suspense: true },\n  );\n};\n\nexport const useUttalelse = () => {\n  const leseTilgangsKode = useLeseTilgangsKode();\n  const hoeringId = useHoeringId();\n  const uttalelseId = useEksternId();\n  const forhandsVisningsKode = useForhåndsvisning();\n\n  const deferredUttalelseId = useDeferredValue(uttalelseId);\n\n  return useSWR(\n    routes.uttalelse(hoeringId, leseTilgangsKode ?? uttalelseId),\n    async () =>\n      uttalelseClient.getUttalelse(\n        +hoeringId,\n        leseTilgangsKode ?? uttalelseId!,\n        !!leseTilgangsKode,\n        forhandsVisningsKode,\n      ),\n    {\n      ...SWRConfig,\n      suspense: uttalelseId === deferredUttalelseId,\n    },\n  );\n};\n\nexport const useAutoSave = () => {\n  const hoeringId = useHoeringId();\n  const eksternId = useEksternId();\n  const { data: uttalelse } = useUttalelse();\n  const [{ ingenMerknader }] = useContextState();\n  const locale = useLocale();\n\n  return useSWRMutation(\n    `/autosave/${hoeringId}/${eksternId}`,\n    (_, { arg }: { arg: Record<string, unknown> }) => {\n      const model = mapVm(\n        eksternId,\n        mapFormToUttalelse(uttalelse!, arg),\n        ingenMerknader,\n        locale,\n        false,\n      );\n      return hoeringClient.autoSave(+hoeringId, eksternId, model);\n    },\n  );\n};\n","import { Outlet, useLocation } from \"react-router\";\nimport { SlowAction } from \"@utdanningsdirektoratet/slowaction\";\nimport { PopinManager } from \"@utdanningsdirektoratet/popin\";\nimport { usePageViewTracking } from \"@utdanningsdirektoratet/hooks/usePageViewTracking\";\nimport { Notifications } from \"@utdanningsdirektoratet/notifications\";\nimport { IntlProvider } from \"react-intl\";\n\nimport { Progress } from \"@utdanningsdirektoratet/progress\";\nimport { getLocaleCode } from \"./utils/localeUtils\";\nimport { flatten } from \"./utils/objectUtils\";\nimport { texts } from \"./logic/initialState\";\nimport { useLocale } from \"./hooks\";\n\nconst App = () => {\n  const locale = useLocale();\n  const location = useLocation();\n  usePageViewTracking();\n\n  return (\n    <IntlProvider locale=\"no\" messages={flatten(texts[getLocaleCode(locale)])}>\n      <div lang={`${getLocaleCode(locale)}-NO`}>\n        <Outlet />\n        {!location.pathname.includes(\"pdf\") && (\n          <>\n            <Progress />\n            <PopinManager />\n            <SlowAction />\n            <Notifications closeOnClick />\n          </>\n        )}\n      </div>\n    </IntlProvider>\n  );\n};\n\nexport default App;\n","const DocumentMetadata = ({ title }: { title: string | null | undefined }) => {\n  if (title) document.title = title;\n\n  return null;\n};\n\nexport default DocumentMetadata;\n","/* eslint-disable jsx-a11y/control-has-associated-label */\n/* eslint-disable react/jsx-no-target-blank */\nimport { useState } from \"react\";\nimport { Footer } from \"@utdanningsdirektoratet/layout\";\nimport {\n  CookieBanner,\n  MatomoCookieVendor,\n  NecessaryCookie,\n  SentryCookieVendor,\n  StatisticsCookie,\n} from \"@utdanningsdirektoratet/cookiebanner\";\nimport { FormattedMessage, useIntl } from \"react-intl\";\nimport { onKeyDown } from \"@utdanningsdirektoratet/utils/uu\";\nimport { CookieVendor } from \"@utdanningsdirektoratet/cookiebanner/utils\";\nimport { useSearchParams } from \"react-router-dom\";\nimport { footer, matomoId, personvernerklaering } from \"../logic/initialState\";\nimport { useLocale } from \"../hooks\";\n\nconst HoeringsFooter = ({\n  hoeringId,\n}: {\n  hoeringId?: string | number | null;\n}) => {\n  const intl = useIntl();\n  const [showCookieBanner, setShowCookieBanner] = useState(false);\n  const [searchParams] = useSearchParams();\n  const locale = useLocale();\n\n  searchParams.set(\"maalform\", locale);\n  if (hoeringId) searchParams.set(\"hoeringId\", `${hoeringId}`);\n\n  const cookiesLink = (\n    <a\n      href={personvernerklaering?.url ?? `/Cookies?${searchParams.toString()}`}\n      target={personvernerklaering?.blank ? \"_blank\" : undefined}\n      rel={personvernerklaering?.blank ? \"noopener noreferrer\" : undefined}\n    >\n      <FormattedMessage id=\"footer.personvernerklaering\" />\n    </a>\n  );\n\n  const links = [\n    ...(footer ?? []).map((f) => (\n      <a\n        href={f.url}\n        target={f.blank ? \"_blank\" : undefined}\n        rel={f.blank ? \"noopener noreferrer\" : undefined}\n      >\n        {f.tekst}\n      </a>\n    )),\n    cookiesLink,\n    <div\n      tabIndex={0}\n      role=\"link\"\n      onClick={() => setShowCookieBanner(true)}\n      onKeyDown={onKeyDown(() => setShowCookieBanner(true))}\n    >\n      <FormattedMessage id=\"footer.cookiesInnstillinger\" />\n    </div>,\n  ];\n\n  return (\n    <div className=\"Footer\">\n      <Footer items={links} />\n      <CookieBanner\n        necessaryCookie={NecessaryCookie([SentryCookieVendor])}\n        title={intl.formatMessage({ id: \"cookies.cookiesSamtykke\" })}\n        cookies={[\n          {\n            ...StatisticsCookie([\n              ...([matomoId ? MatomoCookieVendor : null].filter(\n                Boolean,\n              ) as Array<CookieVendor>),\n            ]),\n            description: StatisticsCookie([]).description?.replace(\n              \"Utdanningsdirektoratet \",\n              \"\",\n            ),\n          },\n        ]}\n        show={showCookieBanner}\n        onAccept={() => setShowCookieBanner(false)}\n      />\n    </div>\n  );\n};\n\nexport default HoeringsFooter;\n","import { FormattedMessage, useIntl } from \"react-intl\";\nimport { useSearchParams } from \"react-router-dom\";\nimport { institusjonNavnLang } from \"../../logic/initialState\";\nimport DocumentMetadata from \"../../components/DocumentMetadata\";\nimport HoeringsFooter from \"../../components/Footer\";\n\nconst Default = ({\n  page,\n}: {\n  page?: \"servererror\" | \"notfound\" | \"cookies\";\n}) => {\n  const intl = useIntl();\n  const [search] = useSearchParams();\n\n  let content;\n\n  switch (page) {\n    case \"servererror\":\n      content = (\n        <h1 className=\"Page-title u-h1\">\n          <FormattedMessage id=\"error.detharOppstattEnFeil\" />\n        </h1>\n      );\n      break;\n    case \"notfound\":\n      content = (\n        <h1 className=\"Page-title u-h1\">\n          <FormattedMessage id=\"error.sidenFinnesIkke\" />\n        </h1>\n      );\n      break;\n    case \"cookies\":\n      content = (\n        <>\n          <h1 className=\"Page-title u-h1\">\n            <FormattedMessage id=\"cookies.cookiesTittel\" />\n          </h1>\n\n          <p\n            // eslint-disable-next-line react/no-danger\n            dangerouslySetInnerHTML={{\n              __html: intl.formatMessage({ id: \"cookies.cookiesTeknisk\" }),\n            }}\n          />\n\n          <h2 className=\"u-h2\">\n            <FormattedMessage id=\"cookies.cookiesMellomlagringOverskrift\" />\n          </h2>\n          <p>\n            <FormattedMessage id=\"cookies.cookiesMellomlagring\" />\n          </p>\n\n          <h2 className=\"u-h2\">\n            <FormattedMessage id=\"cookies.cookiesStatistikkOverskrift\" />\n          </h2>\n          <p>\n            <FormattedMessage id=\"cookies.cookiesStatistikk\" />\n          </p>\n        </>\n      );\n      break;\n    default:\n      content = (\n        <h1 className=\"Page-title u-h1\">\n          <FormattedMessage id=\"default.forInformasjonOmHoeringerKlikkHer\" />\n        </h1>\n      );\n      break;\n  }\n\n  return (\n    <>\n      <DocumentMetadata title={institusjonNavnLang} />\n      <div className=\"Grid\">\n        <div className=\"Page\">\n          <main id=\"main\" className=\"Page-section u--marginTop4\">\n            {content}\n          </main>\n        </div>\n      </div>\n      <HoeringsFooter hoeringId={search.get(\"hoeringId\")} />\n    </>\n  );\n};\n\nexport default Default;\n","import Default from \"./Default\";\n\nexport default Default;\n","import { remove, update } from \"@utdanningsdirektoratet/utils/array\";\n\nexport const localstorageAvailable = () => {\n  try {\n    const storage = window.localStorage || global.localStorage;\n    const x = \"__storage_test__\";\n    storage.setItem(x, x);\n    if (storage.getItem(x) !== x) {\n      return false;\n    }\n    storage.removeItem(x);\n    return true;\n  } catch (e) {\n    return false;\n  }\n};\n\ntype UtkastType = {\n  eksternId?: string;\n  endret: Date | null | undefined;\n};\n\nexport const getUtkasts = (hoeringId: string | number): Array<UtkastType> => {\n  if (localstorageAvailable()) {\n    return JSON.parse(localStorage.getItem(`${hoeringId}`)!) || [];\n  }\n  return [];\n};\n\nexport const addOrUpdateUtkast = (\n  hoeringId: string | number,\n  utkast: UtkastType,\n) => {\n  if (!utkast || !utkast.eksternId) return;\n  if (localstorageAvailable()) {\n    const utkasts = getUtkasts(hoeringId);\n    const index = utkasts.findIndex((u) => u.eksternId === utkast.eksternId);\n    if (index !== -1) {\n      localStorage.setItem(\n        `${hoeringId}`,\n        JSON.stringify(update(utkasts, index, utkast)),\n      );\n    } else {\n      localStorage.setItem(\n        `${hoeringId}`,\n        JSON.stringify([...utkasts, utkast]),\n      );\n    }\n  }\n};\n\nexport const removeUtkast = (\n  hoeringId: string | number,\n  eksternId?: string,\n) => {\n  if (localstorageAvailable()) {\n    const utkasts = getUtkasts(hoeringId);\n    const index = utkasts.findIndex((u) => u.eksternId === eksternId);\n    if (index !== -1) {\n      localStorage.setItem(\n        `${hoeringId}`,\n        JSON.stringify(remove(utkasts, index)),\n      );\n    }\n  }\n};\n","export const DATE_FORMAT = \"d. MMMM yyyy\";\nexport const TIMESTAMP_FORMAT = \"dd.MM.yyyy HH:mm\";\nexport const UTKAST_FORMAT = \"d. MMMM yyyy 'kl.' HH:mm\";\n","import { close, Popin } from \"@utdanningsdirektoratet/popin\";\nimport {\n  DetailedList,\n  DetailedListRow,\n  DetailedListCell,\n} from \"@utdanningsdirektoratet/detailedlist\";\nimport { FormattedMessage } from \"react-intl\";\nimport { compareDesc } from \"date-fns/compareDesc\";\nimport { parseDate, formatDate } from \"@utdanningsdirektoratet/utils/date\";\nimport { Link } from \"react-router-dom\";\nimport { getUtkasts } from \"../../../../utils/localStorageUtils\";\nimport { UTKAST_FORMAT } from \"../../../../constants/dateFormats\";\nimport { routes } from \"../../../../routes\";\nimport { useHoeringId } from \"../../../../hooks\";\n\nconst UtkastPopin = ({ popinId }: { popinId: string }) => {\n  const hoeringId = useHoeringId();\n  const utkasts = getUtkasts(hoeringId);\n\n  return (\n    <Popin\n      id={popinId}\n      title={<FormattedMessage id=\"utkastPopin.title\" />}\n      disableInitialFocus\n      cancelButton={<FormattedMessage id=\"utkastPopin.nyttUtkast\" />}\n    >\n      <DetailedList>\n        {utkasts\n          .sort((a, b) =>\n            compareDesc(parseDate(a.endret!), parseDate(b.endret!)),\n          )\n          .map((utkast) => (\n            <DetailedListRow key={utkast.eksternId} color=\"grey\">\n              {({ className }) => {\n                return (\n                  <Link\n                    to={routes.utkast(hoeringId, utkast.eksternId!)}\n                    onClick={() => {\n                      close(popinId);\n                    }}\n                    className={className}\n                  >\n                    <DetailedListCell>\n                      <FormattedMessage id=\"utkastPopin.utkastSistLagret\" />\n                    </DetailedListCell>\n                    <DetailedListCell size=\"220px\" right>\n                      {formatDate(utkast.endret!, UTKAST_FORMAT)}\n                    </DetailedListCell>\n                  </Link>\n                );\n              }}\n            </DetailedListRow>\n          ))}\n      </DetailedList>\n    </Popin>\n  );\n};\n\nexport default UtkastPopin;\n","import { formatDate } from \"@utdanningsdirektoratet/utils/date\";\nimport { LinkButton } from \"@utdanningsdirektoratet/button\";\nimport { Icon } from \"@utdanningsdirektoratet/icon\";\nimport { FormattedMessage } from \"react-intl\";\nimport { Link } from \"react-router-dom\";\nimport { RichTextView } from \"@utdanningsdirektoratet/richtext\";\nimport { PubliseringsStatus, Sektor } from \"../../../../ApiClients\";\nimport { urls } from \"../../../../logic/initialState\";\nimport { DATE_FORMAT } from \"../../../../constants/dateFormats\";\nimport { useHoering, useUttalelse } from \"../../../../hooks\";\nimport { routes } from \"../../../../routes\";\n\nconst InnsendtHeader = ({\n  innsenderStilling,\n  referanse,\n  show = false,\n}: {\n  show?: boolean;\n  innsenderStilling?: string | null;\n  referanse?: string | null | undefined;\n}) => {\n  const { data: hoering } = useHoering();\n  const { data: uttalelse } = useUttalelse();\n\n  if (!show || !uttalelse) return null;\n\n  const { eksternId, navnSkjult } = uttalelse;\n\n  return (\n    <div className=\"Header Header--innsendt\">\n      <div className=\"Header-buttons Grid-12-12\">\n        {hoering.publiseringsStatus === PubliseringsStatus.PublisertÅpen && (\n          <LinkButton\n            href={routes.hoering(uttalelse.høringId)}\n            className=\"Header-button\"\n          >\n            {(props) => {\n              return (\n                <Link\n                  {...props}\n                  to={props.href!}\n                  rel=\"noopener noreferrer\"\n                  target=\"_blank\"\n                >\n                  <FormattedMessage id=\"innsendtUttalelse.nyUttalelse\" />\n                </Link>\n              );\n            }}\n          </LinkButton>\n        )}\n        <LinkButton\n          target=\"_blank\"\n          rel=\"noopener noreferrer\"\n          href={`${urls.lastNedUttalelseUrl}/${eksternId}`}\n          className=\"Header-button\"\n        >\n          <Icon icon=\"document\" type=\"small\" placement=\"before\" />\n          <FormattedMessage id=\"innsendtUttalelse.lastNedUttalelse\" />\n        </LinkButton>\n      </div>\n      <div className=\"Header-content Grid-12-12\">\n        <div className=\"Header-title\">\n          <FormattedMessage id=\"innsendtUttalelse.status\" />\n        </div>\n        <div>\n          <RichTextView html={uttalelse.status ?? \"\"} />\n        </div>\n      </div>\n      <div className=\"Grid-12-12\">\n        <div className=\"Header-content Grid-lg-3-12 Grid-6-12\">\n          <div className=\"Header-title\">\n            <FormattedMessage id=\"innsendtUttalelse.innsendtAv\" />\n          </div>\n          {navnSkjult ? (\n            <em>\n              <FormattedMessage id=\"innsendtUttalelse.skjultAv\" />\n            </em>\n          ) : (\n            uttalelse.innsenderNavn\n          )}\n        </div>\n        <div className=\"Header-content Grid-lg-3-12 Grid-6-12\">\n          <div className=\"Header-title\">\n            <FormattedMessage id=\"innsendtUttalelse.innsendtDato\" />\n          </div>\n          {uttalelse.innsendt ? (\n            formatDate(uttalelse.mottatt ?? new Date(), DATE_FORMAT)\n          ) : (\n            <FormattedMessage id=\"innsendtUttalelse.ikkeInnsendt\" />\n          )}\n        </div>\n        <div className=\"Header-content Grid-lg-3-12 Grid-6-12\">\n          <div className=\"Header-title\">\n            {uttalelse.sektor === Sektor.Enkeltperson &&\n            uttalelse.innsenderRepresentererEtikett ? (\n              uttalelse.innsenderRepresentererEtikett\n            ) : (\n              <FormattedMessage id=\"innsendtUttalelse.paVegneAv\" />\n            )}\n          </div>\n          {navnSkjult && uttalelse.sektor === Sektor.Enkeltperson ? (\n            <em>\n              <FormattedMessage id=\"innsendtUttalelse.skjultAv\" />\n            </em>\n          ) : (\n            uttalelse.påVegneAv\n          )}\n        </div>\n        {uttalelse.malgruppe ? (\n          <div className=\"Header-content Grid-lg-3-12 Grid-6-12\">\n            <div className=\"Header-title\">\n              <FormattedMessage id=\"innsendtUttalelse.malgruppe\" />\n            </div>\n            {uttalelse.malgruppe}\n          </div>\n        ) : null}\n      </div>\n      <div className=\"Grid-12-12\">\n        {innsenderStilling ? (\n          <div className=\"Header-content Grid-6-12\">\n            <div className=\"Header-title\">\n              <FormattedMessage id=\"innsendtUttalelse.stilling\" />\n            </div>\n            {innsenderStilling}\n          </div>\n        ) : null}\n        {referanse && referanse !== \"eInnsyn\" ? (\n          <div className=\"Header-content Grid-6-12\">\n            <span>\n              <div className=\"Header-title\">\n                <FormattedMessage id=\"header.varReferanse\" />\n              </div>\n              {referanse}\n            </span>\n          </div>\n        ) : null}\n      </div>\n    </div>\n  );\n};\n\nexport default InnsendtHeader;\n","import { Button } from \"@utdanningsdirektoratet/button\";\nimport { Icon } from \"@utdanningsdirektoratet/icon\";\nimport { Popin, show, close, usePopin } from \"@utdanningsdirektoratet/popin\";\nimport { FormattedMessage, useIntl } from \"react-intl\";\n\nconst IngenMerknader = ({\n  kanHaIngenMerknader,\n  onClick,\n  hasFeedback,\n  readonly,\n  harIngenMerknader,\n}: {\n  onClick: () => void;\n  kanHaIngenMerknader: boolean;\n  readonly: boolean;\n  hasFeedback?: boolean;\n  harIngenMerknader?: boolean;\n}) => {\n  const intl = useIntl();\n  const [popinId] = usePopin();\n  if (!kanHaIngenMerknader || (readonly && !harIngenMerknader)) return null;\n\n  const onClickWrapped = () => {\n    if (hasFeedback) {\n      show(popinId);\n    } else {\n      onClick();\n    }\n  };\n\n  const confirmOnClick = () => {\n    close(popinId);\n    onClick();\n  };\n\n  if (readonly) {\n    return (\n      <div className=\"Page-gray\">\n        <div className=\"Page-section Page-section--narrow\">\n          <strong>\n            <FormattedMessage id=\"slettMerknaderPopin.ingenMerknaderButtonText\" />\n          </strong>\n        </div>\n      </div>\n    );\n  }\n\n  return (\n    <div className=\"Page-gray\">\n      <div className=\"Page-section Page-section--narrow\">\n        <Button onClick={onClickWrapped} disabled={readonly}>\n          <FormattedMessage id=\"slettMerknaderPopin.ingenMerknaderButtonText\" />\n        </Button>\n      </div>\n      <Popin\n        id={popinId}\n        title={intl.formatMessage({ id: \"slettMerknaderPopin.title\" })}\n        closeableByExternalEvents\n        saveButton={\n          <>\n            <Icon icon=\"trash\" placement=\"before\" />\n            <FormattedMessage id=\"slettMerknaderPopin.jaSlett\" />\n          </>\n        }\n        onSave={confirmOnClick}\n        cancelButton={<FormattedMessage id=\"formLabels.avbryt\" />}\n      >\n        <FormattedMessage id=\"slettMerknaderPopin.body\" />\n      </Popin>\n    </div>\n  );\n};\n\nexport default IngenMerknader;\n","import { Checkbox } from \"@utdanningsdirektoratet/checkbox\";\nimport { Popin, usePopin } from \"@utdanningsdirektoratet/popin\";\nimport { FormattedMessage } from \"react-intl\";\n\nconst IngenMerknaderManueltRegistrert = ({\n  kanHaIngenMerknader,\n  onClick,\n  harIngenMerknader,\n}: {\n  onClick: (harIngenMerknader: boolean) => Promise<void>;\n  kanHaIngenMerknader: boolean;\n  harIngenMerknader?: boolean;\n}) => {\n  const [popinId, show, close] = usePopin();\n\n  if (!kanHaIngenMerknader) return null;\n\n  return (\n    <div className=\"Page-gray\">\n      <div className=\"Page-section Page-section--narrow\">\n        <Checkbox\n          label={\n            <FormattedMessage id=\"slettMerknaderPopin.ingenMerknaderButtonText\" />\n          }\n          onChange={(e) => (e.target.checked ? show() : onClick(false))}\n          checked={harIngenMerknader}\n        />\n      </div>\n      <Popin\n        id={popinId}\n        closeableByExternalEvents\n        onSave={() => {\n          onClick(true);\n          close();\n        }}\n        saveButton={<FormattedMessage id=\"formLabels.ja\" />}\n        cancelButton={<FormattedMessage id=\"formLabels.avbryt\" />}\n      >\n        <FormattedMessage id=\"slettMerknaderPopin.ingenMerknaderAdvarsel\" />\n      </Popin>\n    </div>\n  );\n};\n\nexport default IngenMerknaderManueltRegistrert;\n","// extracted by mini-css-extract-plugin\nexport default {\"innholdsfortegnelse\":\"NeutDt0C71fod_Xp2Oo2\",\"innholdsfortegnelseItem\":\"sK8uwMr3VZTL1Qdhho9g\"};","import { animateScroll, scroller } from \"react-scroll\";\n\nexport const ScrollType = {\n  NOTAT: \"notat\",\n  SEKSJON: \"seksjon\",\n  SPORSMAL: \"sporsmal\",\n};\n\nexport const scrollToId = (type: string, id: string | number) =>\n  `${type}-${id}`;\n\nconst defaultOptions = {\n  smooth: true,\n  duration: 250,\n};\n\nexport const scrollToTop = (options?: Record<string, string>) => {\n  animateScroll.scrollToTop({ ...defaultOptions, ...options });\n};\n\nexport const scrollToBottom = (options?: Record<string, string>) => {\n  animateScroll.scrollToBottom({ ...defaultOptions, ...options });\n};\n\n// I options er det en property som heter containerId, denne kan settes hvis en annen scroll enn body skal scrolles.\n// Med andre ord om det er en scrollpane inne i en annen scrollpane kan denne verdien endre hvilken av disse to pane'sa som blir targetet.\nexport const scrollTo = (\n  name: string,\n  options?: Record<string, string | number>,\n) => scroller.scrollTo(name, { ...defaultOptions, ...options });\n\nexport const scrollToHeader = () => {\n  scrollTo(\"headerScroll\", {\n    offset: -40,\n  });\n};\n","import * as React from \"react\";\nimport { Link } from \"@utdanningsdirektoratet/link\";\nimport styles from \"./Innholdsfortegnelse.module.less\";\nimport { scrollTo } from \"../../../../utils/scrollUtils\";\nimport { getTextWithLocale } from \"../../../../utils/localeUtils\";\nimport { Målform, SeksjonViewModel } from \"../../../../ApiClients\";\nimport { useLocale } from \"../../../../hooks\";\n\nconst GetNiva = (\n  seksjoner: Array<SeksjonViewModel>,\n  skjulNummerering = false,\n  locale: Målform,\n  prevLevel = 0,\n): React.ReactNode => {\n  const current = seksjoner[0];\n  if (!current) return null;\n\n  const nextLevel = seksjoner.findIndex((s) => s.nivå !== current.nivå);\n  const tittel = getTextWithLocale(current.tittel, locale);\n\n  if (current.nivå > prevLevel) {\n    return (\n      <>\n        <ol>\n          <li className={styles.innholdsfortegnelseItem}>\n            <Link\n              href={`#seksjon-${current.id}`}\n              onClick={() => scrollTo(`seksjon-${current.id}`)}\n            >\n              {`${skjulNummerering ? tittel : `${current.nummerering} ${tittel}`}`}\n            </Link>\n          </li>\n          {GetNiva(\n            seksjoner.slice(1, nextLevel === -1 ? undefined : nextLevel),\n            skjulNummerering,\n            locale,\n            current.nivå,\n          )}\n        </ol>\n        {nextLevel !== -1 &&\n          GetNiva(\n            seksjoner.slice(nextLevel),\n            skjulNummerering,\n            locale,\n            seksjoner[nextLevel - 1].nivå,\n          )}\n      </>\n    );\n  }\n\n  return (\n    <>\n      <li className={styles.innholdsfortegnelseItem}>\n        <Link\n          onClick={() => scrollTo(`seksjon-${current.id}`)}\n          href={`#seksjon-${current.id}`}\n        >\n          {`${skjulNummerering ? tittel : `${current.nummerering} ${tittel}`}`}\n        </Link>\n      </li>\n      {GetNiva(seksjoner.slice(1), skjulNummerering, locale, current.nivå)}\n    </>\n  );\n};\n\nconst Innholdsfortegnelse = ({\n  seksjoner = [],\n  skjulNummerering = false,\n}: {\n  seksjoner: Array<SeksjonViewModel>;\n  skjulNummerering?: boolean;\n}) => {\n  const locale = useLocale();\n  if (seksjoner.length === 0) return null;\n\n  return (\n    <ol className={styles.innholdsfortegnelse}>\n      {GetNiva(\n        seksjoner.filter((s) => s.nivå <= 1),\n        skjulNummerering,\n        locale,\n      )}\n    </ol>\n  );\n};\n\nexport default Innholdsfortegnelse;\n","import Innholdsfortegnelse from './Innholdsfortegnelse';\n\nexport default Innholdsfortegnelse;\n","import { Button } from \"@utdanningsdirektoratet/button\";\nimport { FormattedMessage } from \"react-intl\";\nimport { useForm } from \"@utdanningsdirektoratet/form\";\nimport { hide, show } from \"@utdanningsdirektoratet/slowaction\";\nimport { HoeringClient } from \"../../../../ApiClients\";\nimport mapVm from \"../../../../vm/mapVm\";\nimport { useHoering, useLocale, useUttalelse } from \"../../../../hooks\";\nimport { emptyGuid, useContextState } from \"../../../../StateProvider\";\nimport { mapFormToUttalelse } from \"../../../../vm/vmUtils\";\n\nconst client = new HoeringClient();\n\nconst LagreOgGaTilbake = ({\n  manuellRegistreringsKode,\n  returnTo,\n}: {\n  manuellRegistreringsKode: string;\n  returnTo: string;\n}) => {\n  const { data: hoering } = useHoering();\n  const locale = useLocale();\n  const { data: uttalelse } = useUttalelse();\n  const { values } = useForm();\n  const [{ ingenMerknader }] = useContextState();\n  const lagreOgGaTilbake = async () => {\n    show();\n    const vm = mapVm(\n      uttalelse!.eksternId,\n      mapFormToUttalelse(uttalelse!, values),\n      ingenMerknader,\n      locale,\n      true,\n    );\n    await client.lagreManuellRegistrering(\n      hoering.id,\n      uttalelse?.eksternId ?? emptyGuid,\n      manuellRegistreringsKode,\n      vm,\n    );\n    hide();\n    window.location.href = returnTo;\n  };\n\n  return (\n    <div className=\"Page-section Page-section--narrow FooterButtons\">\n      <div className=\"Grid-xl-8-12 Grid-md-6-12 Grid-12-12\">\n        <Button\n          className=\"Button--colored FooterButtons-button FooterButtons-submit\"\n          onClick={() => lagreOgGaTilbake()}\n        >\n          <FormattedMessage id=\"formLabels.lagreOgGaTilbake\" />\n        </Button>\n      </div>\n    </div>\n  );\n};\n\nexport default LagreOgGaTilbake;\n","import { SetURLSearchParams } from \"react-router-dom\";\nimport { Fields } from \"@utdanningsdirektoratet/form\";\nimport {\n  scrollTo,\n  scrollToHeader,\n  scrollToId,\n  ScrollType,\n} from \"./scrollUtils\";\nimport { HøringViewModel } from \"../ApiClients\";\nimport { NOTAT_ID } from \"../constants/queryParam\";\nimport {\n  NotatFormId,\n  notatPrefix,\n  NotatSvarMulighetTypes,\n  sporsmalPrefix,\n  SporsmalSvarMulighetTypes,\n  SpørsmålFormId,\n} from \"./hoeringUtils\";\n\nexport const navigateToNotat = (\n  [searchParams, setSearchParams]: [URLSearchParams, SetURLSearchParams],\n  notatId: number,\n  scrollToNotat: boolean | string = false,\n) => {\n  searchParams.set(NOTAT_ID, `${notatId}`);\n  setSearchParams(searchParams);\n  if (scrollToNotat === true) {\n    scrollTo(scrollToId(ScrollType.NOTAT, notatId));\n  } else if (scrollToNotat) {\n    scrollTo(scrollToNotat);\n  } else {\n    scrollToHeader();\n  }\n};\n\nconst navigateToSporsmal = (\n  [searchParams, setSearchParams]: [URLSearchParams, SetURLSearchParams],\n  hoering: HøringViewModel,\n  sporsmalId: number,\n) => {\n  const notat = hoering.notater.find((n) =>\n    n.seksjoner.some((s) => s.spørsmål.some((spm) => spm.id === sporsmalId)),\n  );\n  navigateToNotat(\n    [searchParams, setSearchParams],\n    notat!.id,\n    scrollToId(ScrollType.SPORSMAL, sporsmalId),\n  );\n};\n\nexport const navigateToFootnote = (footNoteId: string, notatId: number) => {\n  window.location.hash = `#fotnote-${notatId}-${footNoteId}`;\n};\n\nconst firstInvalidId = (\n  fields: Fields<Record<NotatFormId | SpørsmålFormId, unknown>>,\n) => {\n  const split =\n    (Object.keys(fields) as Array<keyof typeof fields>)\n      .filter((field) => fields[field].error)\n      .map(\n        (f) =>\n          f.split(\"-\") as [\n            typeof notatPrefix | typeof sporsmalPrefix,\n            string,\n            NotatSvarMulighetTypes | SporsmalSvarMulighetTypes,\n          ],\n      ) ?? [];\n  return {\n    spørsmål: (split.find((s) => s[0] === sporsmalPrefix) ?? [])[1],\n    notat: (split.find((s) => s[0] === notatPrefix) ?? [])[1],\n  };\n};\n\nexport const navigateToInvalid = (\n  searchParams: [URLSearchParams, SetURLSearchParams],\n  hoering: HøringViewModel,\n  fields: Fields<Record<string, unknown>>,\n) => {\n  const invalid = firstInvalidId(fields);\n\n  if (invalid.spørsmål) {\n    navigateToSporsmal(searchParams, hoering, +invalid.spørsmål);\n    return;\n  }\n\n  if (invalid.notat) {\n    navigateToNotat(searchParams, +invalid.notat, true);\n  }\n};\n","import { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { Button, LinkButton } from \"@utdanningsdirektoratet/button\";\nimport { Icon } from \"@utdanningsdirektoratet/icon\";\nimport { Tooltip } from \"@utdanningsdirektoratet/tooltip\";\nimport { FormattedMessage, useIntl } from \"react-intl\";\nimport { show } from \"@utdanningsdirektoratet/popin\";\nimport { useSearchParams, Link } from \"react-router-dom\";\nimport { useForm } from \"@utdanningsdirektoratet/form\";\nimport { useEffect, useState } from \"react\";\nimport { HøringsNotatViewModel } from \"../../../../ApiClients\";\nimport { useHoering } from \"../../../../hooks\";\nimport {\n  navigateToInvalid,\n  navigateToNotat,\n} from \"../../../../utils/navigationUtils\";\nimport { routes } from \"../../../../routes\";\nimport { useContextState } from \"../../../../StateProvider\";\nimport {\n  getNotatFormId,\n  getSpørsmålFormId,\n  NotatSvarMulighetTypes,\n  SporsmalSvarMulighetTypes,\n} from \"../../../../utils/hoeringUtils\";\n\nconst LagreOgSendInn = ({\n  innsendt,\n  forhandsvisning,\n  hasFeedback,\n  readOnly,\n  nextNotat,\n  currentNotat,\n  sendInnKunSisteNotat,\n  sendInnPopinId,\n  lagreUtkastPopinId,\n  videresendUtkastPopinId,\n  autosave,\n}: {\n  innsendt: boolean;\n  hasFeedback?: boolean;\n  readOnly: boolean;\n  forhandsvisning: boolean;\n  nextNotat: HøringsNotatViewModel;\n  currentNotat: HøringsNotatViewModel;\n  sendInnKunSisteNotat?: boolean;\n  sendInnPopinId: string;\n  lagreUtkastPopinId: string;\n  videresendUtkastPopinId: string;\n  autosave: (immediate?: boolean) => Promise<string>;\n}) => {\n  const intl = useIntl();\n  const [, dispatch] = useContextState();\n  const { data: høring } = useHoering();\n  const { fields, isValid, validateFields } = useForm();\n  const searchParams = useSearchParams();\n  const [shouldNavigateToInvalid, setShouldNavigateToInvalid] = useState(false);\n\n  const notatHasSporsmals =\n    currentNotat !==\n      høring.notater.sort((a, b) => a.rekkefølge - b.rekkefølge)[0] ||\n    currentNotat.kanHaGenerellHoldning ||\n    currentNotat.kanHaGenerellKommentar ||\n    currentNotat.seksjoner.some((s) => s.kanHaMarkering) ||\n    currentNotat.seksjoner.some((s) => s.spørsmål.length > 0);\n\n  useEffect(() => {\n    if (shouldNavigateToInvalid && !isValid) {\n      navigateToInvalid(searchParams, høring, fields);\n      setShouldNavigateToInvalid(false);\n    }\n  }, [fields, høring, isValid, searchParams, shouldNavigateToInvalid]);\n\n  if (innsendt || (readOnly && !forhandsvisning)) return null;\n\n  const showLagreOgSendInn = async () => {\n    await autosave(true);\n    dispatch({ type: \"SET_INGENMERKNADER\", payload: false });\n\n    if (!validateFields()) {\n      show(sendInnPopinId);\n    } else {\n      setShouldNavigateToInvalid(true);\n    }\n  };\n\n  const lagreOgGaVidere = async () => {\n    await autosave(true);\n    dispatch({ type: \"SET_INGENMERKNADER\", payload: false });\n\n    const currentNotatSporsmalIds = currentNotat.seksjoner\n      .flatMap((s) => s.spørsmål)\n      .map((sp) => getSpørsmålFormId(sp.id, \"\" as SporsmalSvarMulighetTypes));\n\n    if (\n      !validateFields(\n        (Object.keys(fields) as Array<keyof typeof fields>).filter(\n          (field: string) =>\n            field.indexOf(\n              getNotatFormId(currentNotat.id, \"\" as NotatSvarMulighetTypes),\n            ) !== -1 ||\n            currentNotatSporsmalIds.some((id) => field.indexOf(id) !== -1),\n        ),\n      )\n    ) {\n      navigateToNotat(searchParams, nextNotat.id);\n    } else {\n      setShouldNavigateToInvalid(true);\n    }\n  };\n\n  const showLagreUtkast = async () => {\n    await autosave(true);\n    show(lagreUtkastPopinId);\n  };\n\n  const showVideresendUtkast = async () => {\n    await autosave(true);\n    show(videresendUtkastPopinId);\n  };\n\n  let lagreButton = (\n    <Button\n      color=\"vy\"\n      className=\"Button--colored FooterButtons-button FooterButtons-submit\"\n      disabled={!hasFeedback || readOnly}\n      onClick={showLagreOgSendInn}\n    >\n      <FormattedMessage id=\"formLabels.sendInn\" />\n    </Button>\n  );\n\n  if (sendInnKunSisteNotat && nextNotat.id !== currentNotat.id) {\n    lagreButton = (\n      <Button\n        className=\"Button--colored FooterButtons-button FooterButtons-submit\"\n        disabled={readOnly}\n        onClick={lagreOgGaVidere}\n      >\n        <FormattedMessage id=\"formLabels.lagreOgGaVidere\" />\n        <Icon type=\"wide\" icon=\"arrow right long\" placement=\"after\" />\n      </Button>\n    );\n  }\n\n  const buttonClass = cls({\n    \"Grid-xl-4-12\": notatHasSporsmals,\n    \"Grid-md-6-12\": notatHasSporsmals,\n    \"Grid-12-12\": notatHasSporsmals,\n    \"FooterButtons-next\": notatHasSporsmals,\n  });\n\n  return (\n    <div className=\"Page-section Page-section--narrow FooterButtons\">\n      {notatHasSporsmals ? (\n        <div className=\"Grid-xl-8-12 Grid-md-6-12 Grid-12-12\">\n          {lagreButton}\n          <Button\n            className=\"FooterButtons-button\"\n            disabled={!hasFeedback || readOnly}\n            onClick={showLagreUtkast}\n          >\n            <FormattedMessage id=\"formLabels.lagreUtkast\" />\n          </Button>\n          <Button\n            className=\"FooterButtons-button\"\n            disabled={!hasFeedback || readOnly}\n            onClick={showVideresendUtkast}\n          >\n            <FormattedMessage id=\"formLabels.videresendUtkast\" />\n          </Button>\n          <Tooltip\n            disabled={!hasFeedback || readOnly}\n            className=\"u--inlineBlock\"\n            message={intl.formatMessage({ id: \"formLabels.nyttUtkast\" })}\n          >\n            <LinkButton\n              href={routes.hoering(høring.id)}\n              aria-label={intl.formatMessage({ id: \"formLabels.nyttUtkast\" })}\n              className=\"FooterButtons-button\"\n              disabled={!hasFeedback || readOnly}\n            >\n              {(props) => (\n                <Link\n                  {...props}\n                  to={props.href!}\n                  rel=\"noopener noreferrer\"\n                  target=\"_blank\"\n                >\n                  <Icon type=\"small\" icon=\"plus\" />\n                </Link>\n              )}\n            </LinkButton>\n          </Tooltip>\n        </div>\n      ) : null}\n      <div className={buttonClass}>\n        {!sendInnKunSisteNotat && nextNotat.id !== currentNotat.id ? (\n          <Button\n            className=\"FooterButtons-button\"\n            onClick={() => navigateToNotat(searchParams, nextNotat.id)}\n          >\n            <FormattedMessage id=\"formLabels.nesteNotat\" />\n            <Icon type=\"wide\" icon=\"arrow right long\" placement=\"after\" />\n          </Button>\n        ) : null}\n      </div>\n    </div>\n  );\n};\n\nexport default LagreOgSendInn;\n","import { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { Icon } from \"@utdanningsdirektoratet/icon\";\n\nconst Obligatorisk = ({\n  children,\n  className,\n  isObligatorisk,\n}: {\n  children?: React.ReactNode;\n  className?: string;\n  isObligatorisk?: boolean;\n}) => {\n  if (!isObligatorisk) return children || null;\n\n  const obligatoriskClass = cls(\n    {\n      Obligatorisk: true,\n    },\n    className,\n  );\n\n  return (\n    <span className={obligatoriskClass}>\n      {children}\n      {isObligatorisk ? (\n        <Icon className=\"Obligatorisk-icon\" icon=\"asterix\" />\n      ) : null}\n    </span>\n  );\n};\n\nexport default Obligatorisk;\n","import { FormattedMessage } from \"react-intl\";\nimport { Icon } from \"@utdanningsdirektoratet/icon\";\nimport { Button, ButtonGroup } from \"@utdanningsdirektoratet/button\";\nimport { Tooltip } from \"@utdanningsdirektoratet/tooltip\";\nimport { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { useForm } from \"@utdanningsdirektoratet/form\";\nimport Obligatorisk from \"./Obligatorisk\";\nimport {\n  HøringsNotatUttalelseViewModel,\n  PositivNegativHoldning,\n  SpørsmålUttalelseViewModel,\n} from \"../../../../../ApiClients\";\nimport {\n  getNotatFormId,\n  getSpørsmålFormId,\n  NotatFormId,\n  SpørsmålFormId,\n} from \"../../../../../utils/hoeringUtils\";\nimport { useUttalelse } from \"../../../../../hooks\";\n\nconst PositivNegativSvar = ({\n  readonly,\n  obligatorisk,\n  forhandsvisning,\n  id,\n  generell,\n}: {\n  id: number;\n  readonly: boolean;\n  obligatorisk?: boolean;\n  forhandsvisning: boolean;\n  generell?: boolean;\n}) => {\n  const { data: uttalelse } = useUttalelse();\n  const { fields = {} } =\n    useForm<\n      Record<\n        NotatFormId | SpørsmålFormId,\n        | SpørsmålUttalelseViewModel[\"positivNegativHoldning\"]\n        | HøringsNotatUttalelseViewModel[\"generellKommentar\"]\n      >\n    >();\n\n  let positiv = \"formLabels.positiv\";\n  let negativ = \"formLabels.negativ\";\n  if (generell) {\n    positiv = \"formLabels.genereltPositiv\";\n    negativ = \"formLabels.genereltNegativ\";\n  }\n\n  const field = fields[\n    generell\n      ? getNotatFormId(id, \"generellHoldning\")\n      : getSpørsmålFormId(id, \"positivNegativHoldning\")\n  ] ?? {\n    value: generell\n      ? uttalelse?.notater.find((n) => n.notatId === id)?.generellHoldning\n      : uttalelse?.spørsmål.find((s) => s.spørsmålId === id)\n          ?.positivNegativHoldning,\n  };\n\n  if (!forhandsvisning && readonly) {\n    let svar: React.ReactNode = field.value;\n    if (svar === PositivNegativHoldning.IkkeAngitt) return null;\n    if (svar === PositivNegativHoldning.HverkenEller)\n      svar = <FormattedMessage id=\"formLabels.hverkenEller\" />;\n    if (svar === PositivNegativHoldning.Positiv) {\n      svar = (\n        <span>\n          <Icon icon=\"plus\" type=\"small\" placement=\"before\" />\n          <FormattedMessage id={positiv} />\n        </span>\n      );\n    }\n    if (svar === PositivNegativHoldning.Negativ) {\n      svar = (\n        <span>\n          <Icon icon=\"minus\" type=\"small\" placement=\"before\" />\n          <FormattedMessage id={negativ} />\n        </span>\n      );\n    }\n    return <div className=\"Sporsmal-body Sporsmal-body--bold\">{svar}</div>;\n  }\n  const buttonClass = cls({\n    \"Sporsmal-button\": true,\n    \"Sporsmal-button--error\": field.error,\n  });\n  const button = (val: PositivNegativHoldning, txt: React.ReactNode) => {\n    const active = field.value === val;\n    return (\n      <Button\n        className={buttonClass}\n        active={active}\n        disabled={readonly}\n        onClick={() => {\n          field.onChange(active ? PositivNegativHoldning.IkkeAngitt : val);\n        }}\n      >\n        {txt}\n      </Button>\n    );\n  };\n\n  return (\n    <div className=\"Sporsmal-body\">\n      <Obligatorisk isObligatorisk={obligatorisk}>\n        <Tooltip\n          message={field.message}\n          position=\"top\"\n          align=\"left\"\n          disabled={!field.error}\n          alwaysShow\n        >\n          <ButtonGroup className=\"Sporsmal-buttons\">\n            {button(\n              PositivNegativHoldning.Positiv,\n              <FormattedMessage id={positiv} />,\n            )}\n            {button(\n              PositivNegativHoldning.Negativ,\n              <FormattedMessage id={negativ} />,\n            )}\n            {button(\n              PositivNegativHoldning.HverkenEller,\n              <FormattedMessage id=\"formLabels.hverkenEller\" />,\n            )}\n          </ButtonGroup>\n        </Tooltip>\n      </Obligatorisk>\n    </div>\n  );\n};\n\nexport default PositivNegativSvar;\n","import { Icon, SmallIcon } from \"@utdanningsdirektoratet/icon\";\nimport { Button, ButtonGroup } from \"@utdanningsdirektoratet/button\";\nimport { Tooltip } from \"@utdanningsdirektoratet/tooltip\";\nimport { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { FormattedMessage } from \"react-intl\";\nimport { useForm } from \"@utdanningsdirektoratet/form\";\nimport Obligatorisk from \"./Obligatorisk\";\nimport { JaNei, SpørsmålUttalelseViewModel } from \"../../../../../ApiClients\";\nimport {\n  getSpørsmålFormId,\n  SpørsmålFormId,\n} from \"../../../../../utils/hoeringUtils\";\nimport { useUttalelse } from \"../../../../../hooks\";\n\nconst JaNeiSvar = ({\n  id,\n  readonly,\n  obligatorisk,\n  forhandsvisning,\n}: {\n  id: number;\n  readonly: boolean;\n  obligatorisk: boolean;\n  forhandsvisning: boolean;\n}) => {\n  const { data: uttalelse } = useUttalelse();\n  const { fields = {} } =\n    useForm<Record<SpørsmålFormId, SpørsmålUttalelseViewModel[\"jaNei\"]>>();\n\n  const field = fields[getSpørsmålFormId(id, \"jaNei\")] ?? {\n    value: uttalelse?.spørsmål.find((s) => s.spørsmålId === id)?.jaNei,\n  };\n\n  if (!forhandsvisning && readonly) {\n    let svar: React.ReactNode = field.value;\n    if (svar === JaNei.IkkeAngitt) return null;\n    if (svar === JaNei.VetIkke)\n      svar = <FormattedMessage id=\"formLabels.vetIkke\" />;\n    if (svar === JaNei.Ja) {\n      svar = (\n        <span>\n          <Icon icon=\"check\" type=\"small\" placement=\"before\" />\n          <FormattedMessage id=\"formLabels.ja\" />\n        </span>\n      );\n    }\n    if (svar === JaNei.Nei) {\n      svar = (\n        <span>\n          <Icon icon=\"cross\" type=\"small\" placement=\"before\" />\n          <FormattedMessage id=\"formLabels.nei\" />\n        </span>\n      );\n    }\n    return <div className=\"Sporsmal-body Sporsmal-body--bold\">{svar}</div>;\n  }\n\n  const buttonClass = cls({\n    \"Sporsmal-button\": true,\n    \"Sporsmal-button--error\": field.error,\n  });\n  const button = (val: JaNei, icon: SmallIcon | null, txt: React.ReactNode) => {\n    const iconElement = icon ? (\n      <Icon icon={icon} type=\"small\" placement=\"before\" />\n    ) : null;\n    const active = field.value === val;\n    return (\n      <Button\n        className={buttonClass}\n        active={active}\n        disabled={readonly}\n        onClick={() => field.onChange(active ? JaNei.IkkeAngitt : val)}\n      >\n        {iconElement}\n        {txt}\n      </Button>\n    );\n  };\n\n  return (\n    <div className=\"Sporsmal-body\">\n      <Obligatorisk isObligatorisk={obligatorisk}>\n        <Tooltip\n          message={field.message}\n          position=\"top\"\n          align=\"left\"\n          disabled={!field.error}\n          alwaysShow\n        >\n          <ButtonGroup className=\"Sporsmal-buttons\">\n            {button(JaNei.Ja, \"check\", <FormattedMessage id=\"formLabels.ja\" />)}\n            {button(\n              JaNei.Nei,\n              \"cross\",\n              <FormattedMessage id=\"formLabels.nei\" />,\n            )}\n            {button(\n              JaNei.VetIkke,\n              null,\n              <FormattedMessage id=\"formLabels.vetIkke\" />,\n            )}\n          </ButtonGroup>\n        </Tooltip>\n      </Obligatorisk>\n    </div>\n  );\n};\n\nexport default JaNeiSvar;\n","import { Button, ButtonGroup } from \"@utdanningsdirektoratet/button\";\nimport { Tooltip } from \"@utdanningsdirektoratet/tooltip\";\nimport { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { FormattedMessage } from \"react-intl\";\nimport { useForm } from \"@utdanningsdirektoratet/form\";\nimport Obligatorisk from \"./Obligatorisk\";\nimport {\n  EnigUenig,\n  SpørsmålUttalelseViewModel,\n} from \"../../../../../ApiClients\";\nimport {\n  getSpørsmålFormId,\n  SpørsmålFormId,\n} from \"../../../../../utils/hoeringUtils\";\nimport { useUttalelse } from \"../../../../../hooks\";\n\nconst EnigUenigSvar = ({\n  id,\n  readonly,\n  obligatorisk,\n  forhandsvisning,\n}: {\n  id: number;\n  readonly: boolean;\n  obligatorisk: boolean;\n  forhandsvisning: boolean;\n}) => {\n  const { data: uttalelse } = useUttalelse();\n  const { fields = {} } =\n    useForm<Record<SpørsmålFormId, SpørsmålUttalelseViewModel[\"enigUenig\"]>>();\n\n  const field = fields[getSpørsmålFormId(id, \"enigUenig\")] ?? {\n    value: uttalelse?.spørsmål.find((s) => s.spørsmålId === id)?.enigUenig,\n  };\n\n  if (!forhandsvisning && readonly) {\n    let svar: React.ReactNode = field.value;\n    if (svar === EnigUenig.IkkeAngitt) return null;\n    if (svar === EnigUenig.HverkenEller)\n      svar = <FormattedMessage id=\"formLabels.hverkenEller\" />;\n    if (svar === EnigUenig.HeltEnig)\n      svar = <FormattedMessage id=\"formLabels.heltEnig\" />;\n    if (svar === EnigUenig.DelvisEnig)\n      svar = <FormattedMessage id=\"formLabels.delvisEnig\" />;\n    if (svar === EnigUenig.DelvisUenig)\n      svar = <FormattedMessage id=\"formLabels.delvisUenig\" />;\n    if (svar === EnigUenig.HeltUenig)\n      svar = <FormattedMessage id=\"formLabels.heltUenig\" />;\n    return <div className=\"Sporsmal-body Sporsmal-body--bold\">{svar}</div>;\n  }\n  const buttonClass = cls({\n    \"Sporsmal-button\": true,\n    \"Sporsmal-button--error\": field.error,\n  });\n  const button = (val: EnigUenig, txt: React.ReactNode) => {\n    const active = field.value === val;\n    return (\n      <Button\n        className={buttonClass}\n        active={active}\n        disabled={readonly}\n        onClick={() => field.onChange(active ? EnigUenig.IkkeAngitt : val)}\n      >\n        {txt}\n      </Button>\n    );\n  };\n\n  return (\n    <div className=\"Sporsmal-body\">\n      <Obligatorisk isObligatorisk={obligatorisk}>\n        <Tooltip\n          message={field.message}\n          position=\"top\"\n          align=\"left\"\n          disabled={!field.error}\n          alwaysShow\n        >\n          <ButtonGroup className=\"Sporsmal-buttons\">\n            {button(\n              EnigUenig.HeltEnig,\n              <FormattedMessage id=\"formLabels.heltEnig\" />,\n            )}\n            {button(\n              EnigUenig.DelvisEnig,\n              <FormattedMessage id=\"formLabels.delvisEnig\" />,\n            )}\n            {button(\n              EnigUenig.HverkenEller,\n              <FormattedMessage id=\"formLabels.hverkenEller\" />,\n            )}\n            {button(\n              EnigUenig.DelvisUenig,\n              <FormattedMessage id=\"formLabels.delvisUenig\" />,\n            )}\n            {button(\n              EnigUenig.HeltUenig,\n              <FormattedMessage id=\"formLabels.heltUenig\" />,\n            )}\n          </ButtonGroup>\n        </Tooltip>\n      </Obligatorisk>\n    </div>\n  );\n};\n\nexport default EnigUenigSvar;\n","import { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { Checkbox } from \"@utdanningsdirektoratet/checkbox\";\nimport { Radio } from \"@utdanningsdirektoratet/radio\";\nimport { Input } from \"@utdanningsdirektoratet/input\";\nimport { useIntl } from \"react-intl\";\nimport { isEmpty } from \"@utdanningsdirektoratet/utils/string\";\nimport Obligatorisk from \"./Obligatorisk\";\nimport { getTextWithLocale } from \"../../../../../utils/localeUtils\";\nimport { useLocale } from \"../../../../../hooks\";\nimport { SvarAlternativViewModel } from \"../../../../../ApiClients\";\n\nconst SvarAlternativ = ({\n  id,\n  alternativ,\n  selected,\n  egendefinertSvar,\n  svarAlternativ,\n  error,\n  disabled,\n  obligatorisk,\n  type,\n  message,\n  onChange,\n}: {\n  id: number;\n  selected: boolean;\n  egendefinertSvar: string;\n  disabled: boolean;\n  svarAlternativ: Array<SvarAlternativViewModel>;\n  alternativ: SvarAlternativViewModel;\n  obligatorisk: boolean;\n  message: string;\n  onChange: (selected: boolean, egendefinert: string) => void;\n  type: \"checkbox\" | \"radio\";\n  error: boolean;\n}) => {\n  const intl = useIntl();\n  const hasErrors = error && !disabled;\n  const altError = error && selected && isEmpty(egendefinertSvar);\n  const locale = useLocale();\n\n  const check =\n    type === \"checkbox\" ? (\n      <Checkbox\n        checked={selected}\n        name={`checkbox-alternativ-${id}`}\n        label={\n          alternativ.erEgendefinert\n            ? intl.formatMessage({ id: \"formLabels.annet\" })\n            : getTextWithLocale(alternativ.tittel, locale)\n        }\n        disabled={disabled}\n        error={hasErrors}\n        onChange={() => onChange(!selected, egendefinertSvar)}\n        className=\"SvarAlternativ-checkbox\"\n      />\n    ) : (\n      <Radio\n        checked={selected}\n        name={`radio-alternativ-${id}`}\n        label={\n          alternativ.erEgendefinert\n            ? intl.formatMessage({ id: \"formLabels.annet\" })\n            : getTextWithLocale(alternativ.tittel, locale)\n        }\n        disabled={disabled}\n        error={hasErrors}\n        onChange={() => onChange(!selected, egendefinertSvar)}\n        className=\"SvarAlternativ-radio\"\n      />\n    );\n\n  const svarAlternativClass = cls({\n    SvarAlternativ: true,\n    \"SvarAlternativ--obligatory\": obligatorisk && svarAlternativ.length === 1,\n  });\n\n  const svarAlternativInputClass = cls({\n    \"SvarAlternativ-input\": true,\n    \"SvarAlternativ-input--egendefinert\": alternativ.erEgendefinert,\n  });\n\n  return (\n    <div className={svarAlternativClass}>\n      <div className={svarAlternativInputClass}>{check}</div>\n      {alternativ.erEgendefinert ? (\n        <Input\n          aria-label={intl.formatMessage({ id: \"formLabels.annetTekst\" })}\n          disabled={disabled}\n          value={egendefinertSvar}\n          className=\"SvarAlternativ-wrapper SvarAlternativ-wrapper-input--egendefinert\"\n          onFocus={() => onChange(true, egendefinertSvar)}\n          onChange={(e) => onChange(selected, e.target.value)}\n          error={altError}\n          message={message}\n        />\n      ) : null}\n      {svarAlternativ.length === 1 ? (\n        <Obligatorisk isObligatorisk={obligatorisk}></Obligatorisk>\n      ) : null}\n    </div>\n  );\n};\n\nexport default SvarAlternativ;\n","import { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { Tooltip } from \"@utdanningsdirektoratet/tooltip\";\nimport { FormattedMessage } from \"react-intl\";\nimport { useForm } from \"@utdanningsdirektoratet/form\";\nimport SvarAlternativ from \"./SvarAlternativ\";\nimport Obligatorisk from \"./Obligatorisk\";\nimport {\n  EttFlereValgMulighetViewModel,\n  SpørsmålUttalelseViewModel,\n} from \"../../../../../ApiClients\";\nimport {\n  getSpørsmålFormId,\n  SpørsmålFormId,\n} from \"../../../../../utils/hoeringUtils\";\nimport { useUttalelse } from \"../../../../../hooks\";\n\nconst EttValg = ({\n  ettValg,\n  id,\n  readonly,\n  obligatorisk,\n  forhandsvisning,\n}: {\n  readonly: boolean;\n  obligatorisk: boolean;\n  forhandsvisning: boolean;\n  id: number;\n  ettValg: EttFlereValgMulighetViewModel;\n}) => {\n  const { data: uttalelse } = useUttalelse();\n  const { svarAlternativ } = ettValg;\n\n  const { fields = {} } =\n    useForm<\n      Record<\n        SpørsmålFormId,\n        SpørsmålUttalelseViewModel[\"svarPåSvarAlternativer\"]\n      >\n    >();\n\n  const field = fields[getSpørsmålFormId(id, \"svarPåSvarAlternativer\")] ?? {\n    value: uttalelse?.spørsmål.find((s) => s.spørsmålId === id)\n      ?.svarPåSvarAlternativer,\n  };\n\n  const ettvalgId = ettValg.svarAlternativ;\n  if (!forhandsvisning && readonly && !ettvalgId) {\n    return (\n      <div className=\"Sporsmal-body Sporsmal-body--bold\">\n        <div>\n          <FormattedMessage id=\"validation.velgEttAlternativ\" />\n        </div>\n        <em className=\"u--italic\">\n          <FormattedMessage id=\"validation.intetAlternativerValgt\" />\n        </em>\n      </div>\n    );\n  }\n\n  const updateValue = (\n    svarAlternativId: number,\n    selected: boolean,\n    egendefinert: string,\n  ) => {\n    field.onChange(\n      selected\n        ? [\n            {\n              flereValg: false,\n              egendefinertSvar: egendefinert,\n              svarAlternativId,\n            },\n          ]\n        : [],\n    );\n  };\n\n  const radios = svarAlternativ.map((alternativ) => {\n    const isChecked = field.value.find(\n      (spsa) => spsa.svarAlternativId === alternativ.id,\n    );\n    const svar =\n      isChecked?.egendefinertSvar &&\n      field.value.find((spsa) => spsa.svarAlternativId === alternativ.id)\n        ?.egendefinertSvar;\n\n    return (\n      <SvarAlternativ\n        key={alternativ.id}\n        id={alternativ.id}\n        type=\"radio\"\n        egendefinertSvar={svar ?? \"\"}\n        obligatorisk={obligatorisk}\n        alternativ={alternativ}\n        svarAlternativ={svarAlternativ}\n        error={field.error}\n        message={field.message}\n        disabled={readonly}\n        selected={!!isChecked}\n        onChange={(selected, egendefinert) =>\n          updateValue(alternativ.id, selected, egendefinert)\n        }\n      />\n    );\n  });\n\n  const radioClass = cls({\n    \"u--marginTop1\": radios.length > 1,\n  });\n\n  return (\n    <div className=\"Sporsmal-body\">\n      <Tooltip\n        className=\"u--block\"\n        message={field.message}\n        align=\"left\"\n        position=\"bottom\"\n        disabled={\n          !field.error ||\n          svarAlternativ\n            .filter((sa) =>\n              field.value.find((spsa) => spsa.svarAlternativId === sa.id),\n            )\n            .some((sa) => sa.erEgendefinert)\n        }\n        alwaysShow\n      >\n        {radios.length > 1 ? (\n          <Obligatorisk isObligatorisk={obligatorisk}>\n            <FormattedMessage id=\"validation.velgEttAlternativ\" />\n          </Obligatorisk>\n        ) : null}\n        <div className={radioClass}>{radios}</div>\n      </Tooltip>\n    </div>\n  );\n};\n\nexport default EttValg;\n","import { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { Tooltip } from \"@utdanningsdirektoratet/tooltip\";\nimport { FormattedMessage } from \"react-intl\";\nimport { useForm } from \"@utdanningsdirektoratet/form\";\nimport SvarAlternativ from \"./SvarAlternativ\";\nimport Obligatorisk from \"./Obligatorisk\";\nimport {\n  EttFlereValgMulighetViewModel,\n  SpørsmålUttalelseViewModel,\n} from \"../../../../../ApiClients\";\nimport {\n  getSpørsmålFormId,\n  SpørsmålFormId,\n} from \"../../../../../utils/hoeringUtils\";\nimport { useUttalelse } from \"../../../../../hooks\";\n\nconst FlereValg = ({\n  flereValg,\n  id,\n  readonly,\n  obligatorisk,\n  forhandsvisning,\n}: {\n  readonly: boolean;\n  obligatorisk: boolean;\n  forhandsvisning: boolean;\n  id: number;\n  flereValg: EttFlereValgMulighetViewModel;\n}) => {\n  const { data: uttalelse } = useUttalelse();\n  const { svarAlternativ } = flereValg;\n\n  const { fields = {} } =\n    useForm<\n      Record<\n        SpørsmålFormId,\n        SpørsmålUttalelseViewModel[\"svarPåSvarAlternativer\"]\n      >\n    >();\n\n  const field = fields[getSpørsmålFormId(id, \"svarPåSvarAlternativer\")] ?? {\n    value: uttalelse?.spørsmål.find((s) => s.spørsmålId === id)\n      ?.svarPåSvarAlternativer,\n  };\n\n  const noSelection = field.value.every((spsa) => spsa.flereValg === false);\n  if (!forhandsvisning && readonly && noSelection) {\n    return (\n      <div className=\"Sporsmal-body Sporsmal-body--bold\">\n        <div>\n          <FormattedMessage id=\"validation.velgEttEllerFlereAlternativ\" />\n        </div>\n        <em className=\"u--italic\">\n          <FormattedMessage id=\"validation.ingenAlternativerValgt\" />\n        </em>\n      </div>\n    );\n  }\n\n  const updateValue = (\n    svarAlternativId: number,\n    selected: boolean,\n    egendefinert: string,\n  ) => {\n    const flereSvar = field.value.filter(\n      (alt) => alt.svarAlternativId !== svarAlternativId,\n    );\n    field.onChange(\n      selected\n        ? [\n            ...flereSvar,\n            {\n              flereValg: true,\n              egendefinertSvar: egendefinert,\n              svarAlternativId,\n            },\n          ]\n        : flereSvar,\n    );\n  };\n\n  const checkboxes = svarAlternativ.map((alternativ) => {\n    const isChecked = field.value.find(\n      (spsa) => spsa.svarAlternativId === alternativ.id,\n    );\n    const svar =\n      isChecked?.egendefinertSvar &&\n      field.value.find((spsa) => spsa.svarAlternativId === alternativ.id)\n        ?.egendefinertSvar;\n\n    return (\n      <SvarAlternativ\n        key={alternativ.id}\n        id={alternativ.id}\n        type=\"checkbox\"\n        egendefinertSvar={svar ?? \"\"}\n        obligatorisk={obligatorisk}\n        alternativ={alternativ}\n        svarAlternativ={svarAlternativ}\n        error={field.error}\n        message={field.message}\n        disabled={readonly}\n        selected={!!isChecked}\n        onChange={(selected, egendefinert) =>\n          updateValue(alternativ.id, selected, egendefinert)\n        }\n      />\n    );\n  });\n\n  const checkboxClass = cls({\n    \"u--marginTop1\": checkboxes.length > 1,\n  });\n\n  return (\n    <div className=\"Sporsmal-body\">\n      <Tooltip\n        className=\"u--block\"\n        message={field.message}\n        align=\"left\"\n        position=\"bottom\"\n        disabled={\n          !field.error ||\n          svarAlternativ\n            .filter((sa) =>\n              field.value.find((spsa) => spsa.svarAlternativId === sa.id),\n            )\n            .some((sa) => sa.erEgendefinert)\n        }\n        alwaysShow\n      >\n        {checkboxes.length > 1 ? (\n          <Obligatorisk isObligatorisk={obligatorisk}>\n            <FormattedMessage id=\"validation.velgEttEllerFlereAlternativ\" />\n          </Obligatorisk>\n        ) : null}\n        <div className={checkboxClass}>{checkboxes}</div>\n      </Tooltip>\n    </div>\n  );\n};\n\nexport default FlereValg;\n","import { CurrencyInput } from \"@utdanningsdirektoratet/maskedinput\";\nimport { FormattedMessage } from \"react-intl\";\nimport { useForm } from \"@utdanningsdirektoratet/form\";\nimport { isEmpty } from \"@utdanningsdirektoratet/utils/string\";\nimport Obligatorisk from \"./Obligatorisk\";\nimport { gyldigHetall } from \"../../../../../logic/validation\";\nimport {\n  getSpørsmålFormId,\n  SpørsmålFormId,\n} from \"../../../../../utils/hoeringUtils\";\nimport { SpørsmålUttalelseViewModel } from \"../../../../../ApiClients\";\nimport { useUttalelse } from \"../../../../../hooks\";\n\nconst HeltallSvar = ({\n  id,\n  readonly,\n  obligatorisk,\n  forhandsvisning,\n}: {\n  id: number;\n  readonly: boolean;\n  obligatorisk: boolean;\n  forhandsvisning: boolean;\n}) => {\n  const { data: uttalelse } = useUttalelse();\n  const { fields = {} } =\n    useForm<Record<SpørsmålFormId, SpørsmålUttalelseViewModel[\"heltall\"]>>();\n\n  const field = fields[getSpørsmålFormId(id, \"heltall\")] ?? {\n    value: uttalelse?.spørsmål.find((s) => s.spørsmålId === id)?.heltall,\n  };\n\n  if (!forhandsvisning && readonly) {\n    if (field.value) {\n      return <div className=\"Sporsmal-body\">{field.value}</div>;\n    }\n    return (\n      <div className=\"Sporsmal-body Sporsmal-body--italic\">\n        <FormattedMessage id=\"validation.ikkeAngittHeltall\" />\n      </div>\n    );\n  }\n\n  return (\n    <div className=\"Sporsmal-body\">\n      <Obligatorisk isObligatorisk={obligatorisk}>\n        <CurrencyInput\n          {...field}\n          aria-label=\"Heltall\"\n          className=\"Sporsmal-input Sporsmal-heltall\"\n          disabled={readonly}\n          value={`${field.value}`}\n          onChange={(e) => {\n            if (gyldigHetall(parseInt(e, 10)) && e !== `${field.value}`) {\n              field.onChange(isEmpty(e) ? undefined : parseInt(e, 10));\n            }\n          }}\n          onBlur={(e) => {\n            if (gyldigHetall(parseInt(e, 10)) && e !== `${field.value}`) {\n              field.onBlur(isEmpty(e) ? undefined : parseInt(e, 10));\n            }\n          }}\n          integerLimit={10}\n          allowDecimal={false}\n          allowNegative={false}\n        />\n      </Obligatorisk>\n    </div>\n  );\n};\n\nexport default HeltallSvar;\n","import { useEffect, useMemo, useState } from \"react\";\nimport { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { Input } from \"@utdanningsdirektoratet/input\";\nimport {\n  AccountInput,\n  OrganisasjonsnummerInput,\n} from \"@utdanningsdirektoratet/maskedinput\";\nimport { useIntl, FormattedMessage } from \"react-intl\";\nimport { useSearchParams } from \"react-router-dom\";\nimport { useForm } from \"@utdanningsdirektoratet/form\";\nimport { MaskedInputProps } from \"@utdanningsdirektoratet/maskedinput/MaskedInput\";\nimport Obligatorisk from \"./Obligatorisk\";\nimport {\n  KortSvarTypes,\n  SpørsmålUttalelseViewModel,\n} from \"../../../../../ApiClients\";\nimport {\n  getSpørsmålFormId,\n  SpørsmålFormId,\n} from \"../../../../../utils/hoeringUtils\";\nimport { useUttalelse } from \"../../../../../hooks\";\n\nconst KortTekstSvar = ({\n  id,\n  readonly,\n  obligatorisk,\n  forhandsvisning,\n  type,\n}: {\n  id: number;\n  readonly: boolean;\n  obligatorisk: boolean;\n  forhandsvisning: boolean;\n  type: KortSvarTypes;\n}) => {\n  const { data: uttalelse } = useUttalelse();\n  const [search] = useSearchParams();\n  const intl = useIntl();\n\n  const { fields = {} } =\n    useForm<Record<SpørsmålFormId, SpørsmålUttalelseViewModel[\"kortTekst\"]>>();\n\n  const field = useMemo(\n    () =>\n      fields[getSpørsmålFormId(id, \"kortTekst\")] ?? {\n        value: uttalelse?.spørsmål.find((s) => s.spørsmålId === id)?.kortTekst,\n        onChange: () => null,\n      },\n    [fields, id, uttalelse?.spørsmål],\n  );\n\n  const [value, setValue] = useState(field.value ?? \"\");\n\n  useEffect(() => {\n    if (search.get(\"orgnr\") && type === KortSvarTypes.Orgnr) {\n      field.onChange(search.get(\"orgnr\") ?? \"\");\n    }\n    // eslint-disable-next-line react-hooks/exhaustive-deps\n  }, []);\n\n  useEffect(() => {\n    if (value === field.value) return;\n    field.onChange(value);\n  }, [field, value]);\n\n  const kortTextClass = cls({\n    \"Sporsmal-input\": true,\n    \"Sporsmal-korttekst\": true,\n    \"Sporsmal-korttekst--wide\": field.value && field.value.length >= 42,\n    \"Sporsmal-korttekst--narrow\": type !== KortSvarTypes.Tekst,\n  });\n\n  const oblicatoriskClass = cls({\n    \"Obligatorisk--block\": field.value && field.value.length >= 42,\n  });\n\n  if (!forhandsvisning && readonly) {\n    if (field.value) {\n      return <div className=\"Sporsmal-body\">{field.value}</div>;\n    }\n    return (\n      <div className=\"Sporsmal-body Sporsmal-body--italic\">\n        <FormattedMessage id=\"validation.ikkeAngittKortSvar\" />\n      </div>\n    );\n  }\n\n  const inputProps = {\n    ...field,\n    className: kortTextClass,\n    disabled: readonly,\n    icon: \"warning\",\n    placeholder: intl.formatMessage({ id: \"formLabels.skrivHer\" }),\n  } satisfies React.ComponentProps<typeof Input> &\n    Omit<MaskedInputProps, \"mask\">;\n\n  let input;\n  switch (type) {\n    case KortSvarTypes.Kontonr:\n      input = (\n        <AccountInput\n          {...inputProps}\n          onChange={setValue}\n          aria-label=\"Kontonummer\"\n          placeholder=\"Skriv kontonummer...\"\n        />\n      );\n      break;\n    case KortSvarTypes.Orgnr:\n      input = (\n        <OrganisasjonsnummerInput\n          {...inputProps}\n          onChange={setValue}\n          aria-label=\"Organisasjonsnummer\"\n          placeholder=\"Skriv organisasjonsnummer...\"\n        />\n      );\n      break;\n    case KortSvarTypes.Epost:\n      input = (\n        <Input\n          {...inputProps}\n          onChange={(e) => setValue(e.target.value)}\n          aria-label=\"E-post\"\n          placeholder=\"Skriv e-post...\"\n        />\n      );\n      break;\n    case KortSvarTypes.Tekst:\n    default:\n      input = (\n        <Input\n          {...inputProps}\n          onChange={(e) => setValue(e.target.value)}\n          maxLength={4000}\n          aria-label=\"Tekst\"\n          placeholder=\"Skriv her...\"\n        />\n      );\n      break;\n  }\n\n  return (\n    <div className=\"Sporsmal-body\">\n      <Obligatorisk className={oblicatoriskClass} isObligatorisk={obligatorisk}>\n        {input}\n      </Obligatorisk>\n    </div>\n  );\n};\n\nexport default KortTekstSvar;\n","import { DatePicker } from \"@utdanningsdirektoratet/datepicker\";\nimport { formatDate } from \"@utdanningsdirektoratet/utils/date\";\nimport { FormattedMessage } from \"react-intl\";\nimport { useForm } from \"@utdanningsdirektoratet/form\";\nimport Obligatorisk from \"./Obligatorisk\";\nimport { DATE_FORMAT } from \"../../../../../constants/dateFormats\";\nimport {\n  getSpørsmålFormId,\n  SpørsmålFormId,\n} from \"../../../../../utils/hoeringUtils\";\nimport { SpørsmålUttalelseViewModel } from \"../../../../../ApiClients\";\nimport { useUttalelse } from \"../../../../../hooks\";\n\nconst DatoSvar = ({\n  id,\n  readonly,\n  obligatorisk,\n  forhandsvisning,\n}: {\n  id: number;\n  readonly: boolean;\n  obligatorisk: boolean;\n  forhandsvisning: boolean;\n}) => {\n  const { data: uttalelse } = useUttalelse();\n  const { fields = {} } =\n    useForm<Record<SpørsmålFormId, SpørsmålUttalelseViewModel[\"dato\"]>>();\n\n  const field = fields[getSpørsmålFormId(id, \"dato\")] ?? {\n    value: uttalelse?.spørsmål.find((s) => s.spørsmålId === id)?.dato,\n  };\n\n  if (!forhandsvisning && readonly) {\n    if (field.value) {\n      return (\n        <div className=\"Sporsmal-body\">\n          {formatDate(field.value, DATE_FORMAT)}\n        </div>\n      );\n    }\n    return (\n      <div className=\"Sporsmal-body Sporsmal-body--italic\">\n        <FormattedMessage id=\"validation.ikkeAngittDato\" />\n      </div>\n    );\n  }\n  return (\n    <div className=\"Sporsmal-body\">\n      <Obligatorisk isObligatorisk={obligatorisk}>\n        <DatePicker\n          {...field}\n          onBlur={() => null}\n          className=\"Sporsmal-dato\"\n          disabled={readonly}\n        />\n      </Obligatorisk>\n    </div>\n  );\n};\n\nexport default DatoSvar;\n","import * as React from \"react\";\nimport { MultiSelect } from \"@utdanningsdirektoratet/multiselect\";\nimport { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { useIntl, FormattedMessage } from \"react-intl\";\nimport { useForm } from \"@utdanningsdirektoratet/form\";\nimport Obligatorisk from \"./Obligatorisk\";\nimport {\n  FylkeKommuneSvarMulighetViewModel,\n  FylkeKommuneTypes,\n  SpørsmålUttalelseViewModel,\n} from \"../../../../../ApiClients\";\nimport { useFylker, useUttalelse } from \"../../../../../hooks\";\nimport {\n  getSpørsmålFormId,\n  SpørsmålFormId,\n} from \"../../../../../utils/hoeringUtils\";\n\nconst FylkeKommuneSvar = ({\n  id,\n  readonly,\n  fylkeKommune,\n  forhandsvisning,\n}: {\n  id: number;\n  readonly: boolean;\n  fylkeKommune: FylkeKommuneSvarMulighetViewModel;\n  forhandsvisning: boolean;\n}) => {\n  const { data: uttalelse } = useUttalelse();\n  const { data: fylker = [] } = useFylker();\n  const intl = useIntl();\n  const { fields = {} } =\n    useForm<\n      Record<SpørsmålFormId, SpørsmålUttalelseViewModel[\"fylkeKommune\"]>\n    >();\n\n  const field = fields[getSpørsmålFormId(id, \"fylkeKommune\")] ?? {\n    value:\n      uttalelse?.spørsmål.find((s) => s.spørsmålId === id)?.fylkeKommune ?? [],\n  };\n\n  const selectKommuner =\n    fylkeKommune.type === FylkeKommuneTypes.Kommune ||\n    fylkeKommune.type === FylkeKommuneTypes.FylkeKommune;\n\n  const fylke =\n    field.value && fylkeKommune.flereFylker !== true && field.value.length > 0\n      ? field.value[0].substring(0, 2)\n      : \"\";\n\n  const valgtFylke = fylker.find((f) => f.fylkesNr === fylke);\n  const valgtKommune = React.useCallback(\n    (fylkesNr: string, kommuneNr: string) =>\n      fylker\n        .find((f) => f.fylkesNr === fylkesNr)!\n        .kommuner.find(\n          (k) =>\n            k.kommuneNr !== kommuneNr && field.value?.includes(k.kommuneNr),\n        ),\n    [field.value, fylker],\n  );\n\n  const fylkeOptions = React.useMemo(\n    () =>\n      fylker\n        .filter((f) => f.aktiv)\n        .reduce(\n          (acc, f) => ({\n            ...acc,\n            [f.navn]: {\n              value: f.fylkesNr,\n              disabled:\n                valgtFylke != null && valgtFylke.fylkesNr !== f.fylkesNr,\n              options: !selectKommuner\n                ? []\n                : (f.kommuner || [])\n                    .filter((k) => k.aktiv)\n                    .map((k) => ({\n                      text: k.navn,\n                      value: k.kommuneNr,\n                      disabled:\n                        fylkeKommune.flereKommuner !== true &&\n                        valgtKommune(f.fylkesNr, k.kommuneNr) != null,\n                    })),\n            },\n          }),\n          {},\n        ),\n    [\n      fylker,\n      valgtFylke,\n      selectKommuner,\n      fylkeKommune.flereKommuner,\n      valgtKommune,\n    ],\n  );\n\n  const valgteFylker = fylker.filter(\n    (f) =>\n      field.value?.includes(f.fylkesNr) ||\n      f.kommuner.some((k) => field.value?.includes(k.kommuneNr)),\n  );\n  const valgteKommuner = fylker\n    .flatMap((f) => f.kommuner)\n    .filter((k) => field.value?.includes(k.kommuneNr))\n    .map((m) => m.navn);\n\n  let valgte = [] as Array<string>;\n  if (fylkeKommune.type === FylkeKommuneTypes.FylkeKommune)\n    valgte = [...valgteFylker.map((f) => f.navn), ...valgteKommuner];\n  if (fylkeKommune.type === FylkeKommuneTypes.Fylke)\n    valgte = valgteFylker.map((f) => f.navn);\n  if (fylkeKommune.type === FylkeKommuneTypes.Kommune) valgte = valgteKommuner;\n\n  let placeholder = \"formLabels.velgFylkeKommune\";\n  if (fylkeKommune.type === FylkeKommuneTypes.Kommune)\n    placeholder = \"formLabels.velgKommune\";\n  if (fylkeKommune.type === FylkeKommuneTypes.Fylke)\n    placeholder = \"formLabels.velgFylke\";\n\n  const listClass = cls({\n    \"Sporsmal-liste\": field.value?.some((s) => s.length === 4),\n  });\n\n  if (!forhandsvisning && readonly) {\n    if (field.value) {\n      return (\n        <div className=\"Sporsmal-body\">\n          <ul className={listClass}>\n            {valgteFylker.map((f) => {\n              const _valgteKommuner = f.kommuner.filter((k) =>\n                field.value?.includes(k.kommuneNr),\n              );\n              return (\n                <li key={f.fylkesNr} className=\"Sporsmal-list-item\">\n                  <strong>{f.navn}</strong>\n                  {_valgteKommuner.length > 0 && (\n                    <ul>\n                      {_valgteKommuner.map((k) => (\n                        <li key={k.kommuneNr}>{k.navn}</li>\n                      ))}\n                    </ul>\n                  )}\n                </li>\n              );\n            })}\n          </ul>\n        </div>\n      );\n    }\n    return (\n      <div className=\"Sporsmal-body Sporsmal-body--italic\">\n        <FormattedMessage id=\"validation.ikkeAngittFylkeKommune\" />\n      </div>\n    );\n  }\n\n  return (\n    <div className=\"Sporsmal-body\">\n      <Obligatorisk isObligatorisk={fylkeKommune.isObligatorisk}>\n        <MultiSelect\n          {...field}\n          className=\"Sporsmal-fylkeKommune\"\n          label=\"\"\n          placeholder={\n            valgte.sort().join(\", \") ||\n            `— ${intl.formatMessage({ id: placeholder })} —`\n          }\n          options={fylkeOptions}\n          disabled={readonly}\n        />\n      </Obligatorisk>\n    </div>\n  );\n};\n\nexport default FylkeKommuneSvar;\n","import { useEffect, useMemo, useState } from \"react\";\nimport { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { useIntl, FormattedMessage } from \"react-intl\";\nimport { Icon } from \"@utdanningsdirektoratet/icon\";\nimport { Button } from \"@utdanningsdirektoratet/button\";\nimport {\n  RichText,\n  RichTextView,\n  ConfigBuilder,\n  RichTextProps,\n} from \"@utdanningsdirektoratet/richtext\";\nimport { TrashableRichText } from \"@utdanningsdirektoratet/richtext/TrashableRichText\";\nimport { useToggle } from \"@utdanningsdirektoratet/hooks\";\nimport { Tooltip } from \"@utdanningsdirektoratet/tooltip\";\nimport { useForm } from \"@utdanningsdirektoratet/form\";\nimport { froala } from \"../../../../../logic/initialState\";\nimport {\n  getNotatFormId,\n  getSpørsmålFormId,\n  NotatFormId,\n  SpørsmålFormId,\n} from \"../../../../../utils/hoeringUtils\";\nimport {\n  HøringsNotatUttalelseViewModel,\n  SpørsmålUttalelseViewModel,\n} from \"../../../../../ApiClients\";\nimport { useUttalelse } from \"../../../../../hooks\";\n\nconst Kommentar = ({\n  id,\n  readonly,\n  obligatorisk,\n  forhandsvisning,\n  generell,\n  maxAntallTegn,\n}: {\n  id: number;\n  readonly: boolean;\n  obligatorisk?: boolean;\n  forhandsvisning: boolean;\n  maxAntallTegn?: number | null;\n  generell?: boolean;\n}) => {\n  const { data: uttalelse } = useUttalelse();\n  const intl = useIntl();\n  const { fields = {} } =\n    useForm<\n      Record<\n        NotatFormId | SpørsmålFormId,\n        | HøringsNotatUttalelseViewModel[\"generellKommentar\"]\n        | SpørsmålUttalelseViewModel[\"kommentar\"]\n      >\n    >();\n\n  const field = useMemo(\n    () =>\n      fields[\n        generell\n          ? getNotatFormId(id, \"generellKommentar\")\n          : getSpørsmålFormId(id, \"kommentar\")\n      ] ?? {\n        value: generell\n          ? uttalelse?.notater.find((n) => n.notatId === id)?.generellKommentar\n          : uttalelse?.spørsmål.find((s) => s.spørsmålId === id)?.kommentar,\n        onChange: () => null,\n      },\n    [fields, generell, id, uttalelse?.notater, uttalelse?.spørsmål],\n  );\n\n  const config = useMemo(() => {\n    return new ConfigBuilder()\n      .withToolbar((toolbar) => {\n        return toolbar.filter(\n          (x) =>\n            x !== \"underline\" && x !== \"paragraphFormat\" && x !== \"insertTable\",\n        );\n      })\n      .withPlugins((plugins) => {\n        return maxAntallTegn ? [...plugins, \"charCounter\"] : plugins;\n      })\n      .build();\n  }, [maxAntallTegn]);\n\n  const richTextOptions = {\n    heightMin: 150,\n    pasteDeniedTags: [\"table\", \"thead\", \"tbody\", \"th\", \"tr\", \"td\", \"caption\"],\n    ...(maxAntallTegn ? { charCounterMax: maxAntallTegn } : {}),\n  };\n\n  let buttonText = \"formLabels.leggTilKommentar\";\n  let label = \"formLabels.kommentar\";\n  let ingenKommentar = \"validation.ingenKommentar\";\n  if (generell) {\n    buttonText = \"formLabels.leggTilGenerellKommentar\";\n    label = \"formLabels.generellKommentar\";\n    ingenKommentar = \"validation.ingenGenerellKommentar\";\n  }\n\n  const [value, setValue] = useState(field.value ?? \"\");\n  const [show, toggle, autoFocus] = useToggle(!!field.value || obligatorisk);\n\n  useEffect(() => {\n    if (value === field.value) return;\n    field.onChange(value);\n  }, [field, value]);\n\n  useEffect(() => {\n    if (\n      ((!!field.value || obligatorisk) && !show) ||\n      (!(!!field.value || obligatorisk) && show)\n    )\n      toggle();\n    // eslint-disable-next-line react-hooks/exhaustive-deps\n  }, [field.value, obligatorisk]);\n\n  const onTrash = () => {\n    setValue(\"\");\n    toggle();\n  };\n\n  if (!forhandsvisning && readonly) {\n    if (!field.value) {\n      return (\n        <div className=\"Sporsmal-body Sporsmal-body--italic\">\n          <FormattedMessage id={ingenKommentar} />\n        </div>\n      );\n    }\n    return (\n      <div className=\"Sporsmal-body\">\n        <label // eslint-disable-line jsx-a11y/label-has-associated-control\n          className=\"RichText-label\"\n        >\n          <FormattedMessage id={label} />\n        </label>\n        <RichTextView html={field.value} />\n      </div>\n    );\n  }\n\n  const buttonClass = cls({\n    \"Sporsmal-button\": true,\n    \"Sporsmal-button--error\": field.error,\n  });\n\n  const richtextProps = {\n    disabled: readonly,\n    value,\n    onChange: setValue,\n    onBlur: (e) => setValue(e ?? \"\"),\n    error: field.error,\n    license: froala,\n    icon: \"warning\",\n    message: field.message,\n    \"aria-label\": intl.formatMessage({ id: label }),\n    autoFocus,\n    config,\n    lazy: !!field.value || obligatorisk,\n    options: richTextOptions,\n  } satisfies RichTextProps;\n\n  if (obligatorisk) {\n    return (\n      <div className=\"Sporsmal-body\">\n        <RichText {...richtextProps} />\n      </div>\n    );\n  }\n\n  return (\n    <div className=\"Sporsmal-body\">\n      {show ? (\n        <TrashableRichText\n          {...richtextProps}\n          label={intl.formatMessage({ id: label })}\n          onTrash={onTrash}\n          trashTooltip={intl.formatMessage({ id: \"formLabels.slettKommentar\" })}\n        />\n      ) : (\n        <Tooltip\n          className=\"u--block\"\n          message={field.message}\n          position=\"top\"\n          align=\"left\"\n          disabled={!field.error}\n          alwaysShow\n        >\n          <Button className={buttonClass} onClick={toggle} disabled={readonly}>\n            <Icon icon=\"speech bubble\" type=\"small\" placement=\"before\" />\n            <FormattedMessage id={buttonText} />\n          </Button>\n        </Tooltip>\n      )}\n    </div>\n  );\n};\n\nexport default Kommentar;\n","import { useState } from \"react\";\nimport { FormattedMessage, useIntl } from \"react-intl\";\nimport { Icon } from \"@utdanningsdirektoratet/icon\";\nimport { Vedlegg as VedleggComponent } from \"@utdanningsdirektoratet/vedlegg\";\nimport { Popin, show, close, usePopin } from \"@utdanningsdirektoratet/popin\";\nimport { FileInput } from \"@utdanningsdirektoratet/fileinput\";\nimport { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { newNotification } from \"@utdanningsdirektoratet/notifications\";\nimport { useForm } from \"@utdanningsdirektoratet/form\";\nimport Obligatorisk from \"./Obligatorisk\";\nimport {\n  HoeringClient,\n  SpørsmålUttalelseVedleggViewModel,\n  SpørsmålUttalelseViewModel,\n} from \"../../../../../ApiClients\";\nimport { urls } from \"../../../../../logic/initialState\";\nimport {\n  getSpørsmålFormId,\n  SpørsmålFormId,\n} from \"../../../../../utils/hoeringUtils\";\nimport { useUttalelse } from \"../../../../../hooks\";\n\nconst client = new HoeringClient();\n\nconst getFormData = (files: Array<File>) => {\n  return files.map((file) => ({ fileName: file.name, data: file }));\n};\n\nconst Vedlegg = ({\n  id,\n  readonly,\n  obligatorisk,\n  forhandsvisning,\n  editManueltRegistert,\n  autosave,\n}: {\n  id: number;\n  readonly: boolean;\n  obligatorisk: boolean;\n  forhandsvisning: boolean;\n  editManueltRegistert: boolean;\n  autosave: (immediate?: boolean) => Promise<string>;\n}) => {\n  const [selected, setSelected] = useState<SpørsmålUttalelseVedleggViewModel>();\n  const intl = useIntl();\n  const { data: uttalelse, mutate } = useUttalelse();\n  const { fields = {} } =\n    useForm<Record<SpørsmålFormId, SpørsmålUttalelseViewModel[\"vedlegg\"]>>();\n\n  const field = fields[getSpørsmålFormId(id, \"vedlegg\")] ?? {\n    value: uttalelse?.spørsmål.find((s) => s.spørsmålId === id)?.vedlegg,\n  };\n\n  const [popinId] = usePopin();\n  const uploadFunc = async (files: Array<File>) => {\n    const eksternId = await autosave(true);\n    try {\n      const body = getFormData(files);\n\n      const result = await client.lastOppSporsmaalUttalelseVedlegg(\n        body,\n        id,\n        eksternId,\n      );\n      if (result.errors !== \"\") {\n        newNotification(\n          \"error\",\n          intl.formatMessage({ id: \"validation.opplastingFerdigMedFeil\" }),\n          intl.formatMessage(\n            { id: \"validation.opplastingFerdigMedFeilMessage\" },\n            { 0: result.errors },\n          ),\n        );\n      } else {\n        newNotification(\n          \"success\",\n          intl.formatMessage({ id: \"validation.opplastingFerdig\" }),\n          \"\",\n          true,\n        );\n      }\n\n      if (editManueltRegistert) {\n        await mutate();\n      } else {\n        field.onChange([...field.value, ...result.files]);\n      }\n    } catch {\n      newNotification(\n        \"error\",\n        intl.formatMessage({ id: \"validation.opplastingFerdigMedFeil\" }),\n        intl.formatMessage(\n          { id: \"validation.opplastingFerdigMedFeilMessage\" },\n          { 0: files.map((file) => file.name).join(\", \") },\n        ),\n      );\n    }\n  };\n\n  const showPopin = (_eksternId: string) => {\n    const _selected = field.value.find((v) => v.eksternId === _eksternId);\n    if (_selected) {\n      setSelected(_selected);\n      show(popinId);\n    }\n  };\n\n  const deleteFuncWrapped = async () => {\n    if (selected?.eksternId) {\n      close(popinId);\n\n      try {\n        const result = await client.slettSporsmaalUttalelseVedlegg(\n          selected.eksternId,\n        );\n        newNotification(\n          \"success\",\n          intl.formatMessage({ id: \"validation.vedleggSlettet\" }),\n          \"\",\n          true,\n        );\n        field.onChange(\n          field.value.filter((v) => v.eksternId !== result.eksternId),\n        );\n      } catch {\n        newNotification(\n          \"error\",\n          intl.formatMessage({ id: \"validation.slettingAvVedleggMislyktes\" }),\n        );\n      }\n    }\n  };\n\n  const vedleggs =\n    field.value?.map((v) => {\n      return (\n        <VedleggComponent\n          key={`vedlegg-${v.eksternId}`}\n          title={v.filNavn}\n          href={`${urls.lastNedSpørsmålUttalelseVedlegg}/${v.eksternId}`}\n          onDelete={() => showPopin(v.eksternId)}\n          disabled={readonly}\n          className=\"Vedlegg--uploaded u--marginBottom1\"\n        />\n      );\n    }) ?? [];\n\n  const label = (\n    <span>\n      <Icon icon=\"document\" type=\"small\" placement=\"before\" />\n      <FormattedMessage id=\"formLabels.leggTilVedlegg\" />\n    </span>\n  );\n\n  const selectedVedleggFilename = selected?.filNavn;\n\n  if (!forhandsvisning && readonly) {\n    if (vedleggs.length === 0) {\n      return (\n        <div className=\"Sporsmal-body Sporsmal-body--italic\">\n          <FormattedMessage id=\"validation.ingenVedlegg\" />\n        </div>\n      );\n    }\n  }\n\n  const buttonClass = cls({\n    \"Sporsmal-button--error\": field.error,\n    \"Sporsmal-button-vedlegg\": true,\n  });\n\n  let button = null;\n  if (forhandsvisning || !readonly) {\n    button = (\n      <Obligatorisk isObligatorisk={obligatorisk}>\n        <FileInput\n          {...field}\n          className={buttonClass}\n          onChange={uploadFunc}\n          disabled={readonly}\n          label={label}\n          multiple\n        />\n      </Obligatorisk>\n    );\n  }\n\n  return (\n    <>\n      <div className=\"Sporsmal-body\">\n        {vedleggs.length > 0 ? (\n          <div className=\"u--label\">\n            <FormattedMessage id=\"formLabels.vedlegg\" />\n          </div>\n        ) : null}\n        <div className=\"Vedlegg-container\">{vedleggs}</div>\n        {button}\n      </div>\n      <Popin\n        id={popinId}\n        title={<FormattedMessage id=\"formLabels.slettVedlegg\" />}\n        closeableByExternalEvents\n        saveButton={<FormattedMessage id=\"formLabels.slett\" />}\n        onSave={deleteFuncWrapped}\n        cancelButton={<FormattedMessage id=\"formLabels.avbryt\" />}\n      >\n        <FormattedMessage\n          id=\"formLabels.slettVedleggTekst\"\n          values={{ 0: selectedVedleggFilename }}\n        />\n      </Popin>\n    </>\n  );\n};\n\nexport default Vedlegg;\n","import { Element } from \"react-scroll\";\nimport { RichTextView } from \"@utdanningsdirektoratet/richtext\";\nimport { FormattedMessage } from \"react-intl\";\nimport PositivNegativSvar from \"./components/PositivNegativ\";\nimport JaNeiSvar from \"./components/JaNeiSvar\";\nimport EnigUenigSvar from \"./components/EnigUenigSvar\";\nimport EttValg from \"./components/EttValg\";\nimport FlereValg from \"./components/FlereValg\";\nimport HeltallSvar from \"./components/HeltallSvar\";\nimport KortTekstSvar from \"./components/KortTekstSvar\";\nimport DatoSvar from \"./components/DatoSvar\";\nimport FylkeKommuneSvar from \"./components/FylkeKommuneSvar\";\nimport Kommentar from \"./components/Kommentar\";\nimport Vedlegg from \"./components/Vedlegg\";\nimport { SpørsmålViewModel } from \"../../../../ApiClients\";\nimport { useLocale, useUttalelse } from \"../../../../hooks\";\nimport { getTextWithLocale } from \"../../../../utils/localeUtils\";\nimport { scrollToId, ScrollType } from \"../../../../utils/scrollUtils\";\nimport { isSporsmalBesvart } from \"../../../../logic/validation\";\n\nconst SporsmalUttalelse = ({\n  sporsmal,\n  ingenMerknader,\n  forhandsvisning,\n  editManueltRegistert,\n  autosave,\n  ...rest\n}: {\n  sporsmal: SpørsmålViewModel;\n  ingenMerknader: boolean;\n  readonly: boolean;\n  forhandsvisning: boolean;\n  editManueltRegistert: boolean;\n  autosave: (immediate?: boolean) => Promise<string>;\n}) => {\n  const {\n    tittel,\n    positivNegativ,\n    jaNei,\n    enigUenig,\n    svarAlternativer,\n    heltall,\n    kortTekst,\n    dato,\n    fylkeKommune,\n    kommentar,\n    vedlegg,\n    id,\n  } = sporsmal;\n  const locale = useLocale();\n\n  const { data } = useUttalelse();\n  const uttalelse = data?.spørsmål?.find((s) => s.spørsmålId === sporsmal.id);\n\n  const tittelRiktigMalform = getTextWithLocale(tittel, locale);\n\n  const tittelFormatted = tittelRiktigMalform\n    ? tittelRiktigMalform.replace(/\\n/g, \"\")\n    : \"\";\n  const noAnswers =\n    rest.readonly &&\n    !forhandsvisning &&\n    !isSporsmalBesvart(uttalelse) &&\n    !editManueltRegistert;\n  const readonly = rest.readonly && (!editManueltRegistert || ingenMerknader);\n\n  return (\n    <div className=\"Sporsmal\" id={`sporsmal_${id}`}>\n      <Element name={scrollToId(ScrollType.SPORSMAL, id)} />\n      {tittelFormatted ? (\n        <div className=\"Sporsmal-heading\">\n          <div className=\"Sporsmal-heading-title\">{tittelFormatted}</div>\n          {sporsmal.brødTekst ? (\n            <RichTextView\n              html={getTextWithLocale(sporsmal.brødTekst, locale)}\n            />\n          ) : null}\n        </div>\n      ) : null}\n\n      {noAnswers ? (\n        <div>\n          <div className=\"Sporsmal-body Sporsmal-body--italic\">\n            <FormattedMessage id=\"validation.ikkeSvart\" />\n          </div>\n        </div>\n      ) : (\n        <div>\n          {positivNegativ.canHave ? (\n            <PositivNegativSvar\n              id={id}\n              obligatorisk={positivNegativ.isObligatorisk}\n              readonly={readonly}\n              forhandsvisning={forhandsvisning}\n            />\n          ) : null}\n          {jaNei.canHave ? (\n            <JaNeiSvar\n              readonly={readonly}\n              forhandsvisning={forhandsvisning}\n              obligatorisk={jaNei.isObligatorisk}\n              id={id}\n            />\n          ) : null}\n          {enigUenig.canHave ? (\n            <EnigUenigSvar\n              readonly={readonly}\n              forhandsvisning={forhandsvisning}\n              obligatorisk={enigUenig.isObligatorisk}\n              id={id}\n            />\n          ) : null}\n          {svarAlternativer.canHave && !svarAlternativer.flereValg ? (\n            <EttValg\n              readonly={readonly}\n              forhandsvisning={forhandsvisning}\n              ettValg={svarAlternativer}\n              obligatorisk={svarAlternativer.isObligatorisk}\n              id={id}\n            />\n          ) : null}\n          {svarAlternativer.canHave && svarAlternativer.flereValg ? (\n            <FlereValg\n              readonly={readonly}\n              forhandsvisning={forhandsvisning}\n              flereValg={svarAlternativer}\n              obligatorisk={svarAlternativer.isObligatorisk}\n              id={id}\n            />\n          ) : null}\n          {heltall.canHave ? (\n            <HeltallSvar\n              readonly={readonly}\n              forhandsvisning={forhandsvisning}\n              obligatorisk={heltall.isObligatorisk}\n              id={id}\n            />\n          ) : null}\n          {kortTekst.canHave ? (\n            <KortTekstSvar\n              readonly={readonly}\n              forhandsvisning={forhandsvisning}\n              obligatorisk={kortTekst.isObligatorisk}\n              type={kortTekst.type}\n              id={id}\n            />\n          ) : null}\n          {dato.canHave ? (\n            <DatoSvar\n              readonly={readonly}\n              forhandsvisning={forhandsvisning}\n              obligatorisk={dato.isObligatorisk}\n              id={id}\n            />\n          ) : null}\n          {fylkeKommune.canHave ? (\n            <FylkeKommuneSvar\n              readonly={readonly}\n              forhandsvisning={forhandsvisning}\n              fylkeKommune={fylkeKommune}\n              id={id}\n            />\n          ) : null}\n          {kommentar.canHave ? (\n            <Kommentar\n              readonly={readonly}\n              forhandsvisning={forhandsvisning}\n              obligatorisk={kommentar.isObligatorisk}\n              id={id}\n              maxAntallTegn={kommentar.maxAntallTegn}\n            />\n          ) : null}\n          {vedlegg.canHave ? (\n            <Vedlegg\n              readonly={readonly}\n              forhandsvisning={forhandsvisning}\n              obligatorisk={vedlegg.isObligatorisk}\n              id={id}\n              editManueltRegistert={editManueltRegistert}\n              autosave={autosave}\n            />\n          ) : null}\n        </div>\n      )}\n    </div>\n  );\n};\n\nexport default SporsmalUttalelse;\n","import { RichTextView, ConfigBuilder } from \"@utdanningsdirektoratet/richtext\";\nimport { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { Element } from \"react-scroll\";\nimport { isEmpty } from \"@utdanningsdirektoratet/utils/string\";\nimport SporsmalUttalelse from \"./SporsmalUttalelse\";\nimport { getTextWithLocale } from \"../../../../utils/localeUtils\";\nimport { SeksjonViewModel } from \"../../../../ApiClients\";\nimport { useLocale } from \"../../../../hooks\";\nimport { scrollToId, ScrollType } from \"../../../../utils/scrollUtils\";\n\nconst SeksjonUttalelse = ({\n  seksjons,\n  skjulNummerering,\n  readonly,\n  forhandsvisning = false,\n  editManueltRegistert,\n  ingenMerknader,\n  autosave,\n}: {\n  seksjons: Array<SeksjonViewModel>;\n  skjulNummerering: boolean;\n  readonly: boolean;\n  ingenMerknader: boolean;\n  forhandsvisning?: boolean;\n  editManueltRegistert: boolean;\n  autosave: (immediate?: boolean) => Promise<string>;\n}) => {\n  const locale = useLocale();\n  const body = seksjons\n    .sort((a, b) => {\n      return a.rekkefølge - b.rekkefølge;\n    })\n    .map((seksjon) => {\n      const { tittel, brødTekst, nummerering, id, nivå } = seksjon;\n\n      const malformTittel = getTextWithLocale(tittel, locale);\n      const malformBrodtekst = getTextWithLocale(brødTekst, locale);\n\n      const pageClass = cls({\n        \"Page-section\": true,\n        \"Page-section--empty\": isEmpty(malformBrodtekst),\n      });\n\n      const titleClass = cls({\n        \"u-h1\": nivå === 0,\n        \"u-h2\": nivå === 1,\n        \"u-h3\": nivå > 1,\n        \"Seksjon-title\": true,\n      });\n\n      const TitleTag =\n        `h${Math.min(nivå + 2, 6)}` as keyof JSX.IntrinsicElements;\n\n      const sporsmalElements = seksjon.spørsmål\n        .sort((a, b) => a.rekkefølge - b.rekkefølge)\n        .map((sporsmal) => {\n          return (\n            <SporsmalUttalelse\n              key={`SporsmalUttalelse-${sporsmal.id}`}\n              sporsmal={sporsmal}\n              editManueltRegistert={editManueltRegistert}\n              forhandsvisning={forhandsvisning}\n              ingenMerknader={ingenMerknader}\n              readonly={readonly}\n              autosave={autosave}\n            />\n          );\n        });\n\n      const config = new ConfigBuilder()\n        .withImages()\n        .withAllowedTags([\"span\", \"sup\"])\n        .build();\n      const html = malformBrodtekst\n        .replace(/<table/gi, '<span class=\"table-wrapper\"><table')\n        .replace(/<\\/table>/gi, \"</table></span>\");\n\n      return (\n        <div key={`seksjonsuttalelse-${id}`} className=\"Seksjon\">\n          <Element name={scrollToId(ScrollType.SEKSJON, id)} />\n          <div className={pageClass}>\n            <div id={nummerering.replace(/\\.$/gi, \"\")}>\n              <TitleTag id={`seksjon-${id}`} className={titleClass}>\n                {skjulNummerering\n                  ? malformTittel\n                  : `${nummerering} ${malformTittel}`}\n              </TitleTag>\n            </div>\n            <div className=\"u--marginBottom2\">\n              <RichTextView html={html} config={config} />\n            </div>\n          </div>\n          <div>{sporsmalElements}</div>\n        </div>\n      );\n    });\n\n  return <div>{body}</div>;\n};\n\nexport default SeksjonUttalelse;\n","import { Element } from \"react-scroll\";\n\nimport PositivNegativSvar from \"./components/PositivNegativ\";\nimport Kommentar from \"./components/Kommentar\";\nimport { HøringsNotatViewModel } from \"../../../../ApiClients\";\nimport { scrollToId, ScrollType } from \"../../../../utils/scrollUtils\";\n\nconst NotatUttalelse = ({\n  forhandsvisning = false,\n  notat,\n  ingenMerknader,\n  editManueltRegistert,\n  ...rest\n}: {\n  notat: HøringsNotatViewModel;\n  readonly: boolean;\n  ingenMerknader: boolean;\n  forhandsvisning?: boolean;\n  editManueltRegistert: boolean;\n}) => {\n  const { kanHaGenerellHoldning, kanHaGenerellKommentar, id } = notat;\n\n  if (!kanHaGenerellHoldning && !kanHaGenerellKommentar) return null;\n\n  const readonly = rest.readonly && (!editManueltRegistert || ingenMerknader);\n\n  return (\n    <div key={`notatuttalelse-${id}`} className=\"Notatuttalelse\">\n      <div className=\"Sporsmal\" id={`notat_${id}`}>\n        <Element name={scrollToId(ScrollType.NOTAT, id)} />\n        <div>\n          {kanHaGenerellHoldning ? (\n            <PositivNegativSvar\n              id={id}\n              readonly={readonly}\n              forhandsvisning={forhandsvisning}\n              generell\n            />\n          ) : null}\n\n          {kanHaGenerellKommentar ? (\n            <Kommentar\n              readonly={readonly}\n              forhandsvisning={forhandsvisning}\n              id={id}\n              generell\n            />\n          ) : null}\n        </div>\n      </div>\n    </div>\n  );\n};\n\nexport default NotatUttalelse;\n","import { getTextWithLocale } from \"../../../../utils/localeUtils\";\nimport { SignaturSeksjonViewModel } from \"../../../../ApiClients\";\nimport { useLocale } from \"../../../../hooks\";\n\nconst Signatur = ({\n  signatur,\n}: {\n  signatur: SignaturSeksjonViewModel | null | undefined;\n}) => {\n  const locale = useLocale();\n  if (!signatur) return null;\n  const {\n    footer,\n    hilsen,\n    signaturNavn1,\n    signaturNavn2,\n    signaturStilling1,\n    signaturStilling2,\n  } = signatur;\n\n  const malformHilsen = getTextWithLocale(hilsen, locale);\n  const malformSignaturStilling1 = getTextWithLocale(signaturStilling1, locale);\n  const malformSignaturStilling2 = getTextWithLocale(signaturStilling2, locale);\n  const malformFooter = getTextWithLocale(footer, locale);\n\n  return (\n    <div className=\"Page-section u--marginBottom2\">\n      <div className=\"Grid-12-12 u--marginBottom2\">{malformHilsen}</div>\n      <div className=\"Grid-6-12\">\n        <div>{signaturNavn1}</div>\n        <div>{malformSignaturStilling1}</div>\n      </div>\n      <div className=\"Grid-6-12\">\n        <div>{signaturNavn2}</div>\n        <div>{malformSignaturStilling2}</div>\n      </div>\n      <div className=\"Grid-12-12 u--marginTop2\">{malformFooter}</div>\n    </div>\n  );\n};\n\nexport default Signatur;\n","import { FormattedMessage } from \"react-intl\";\nimport Linkify from \"linkify-react\";\nimport { Fotnote } from \"../../../../ApiClients\";\n\nconst Fotnoter = ({\n  fotnoter,\n  notatId,\n}: {\n  fotnoter: Array<Fotnote> | null | undefined;\n  notatId: number;\n}) => {\n  if (!fotnoter || fotnoter.length < 1) return null;\n\n  return (\n    <div className=\"Page-section Fotnoter\">\n      <div className=\"u-h2 Fotnoter-title\">\n        <FormattedMessage id=\"uttalelse.fotnoter\" />\n      </div>\n      <ol className=\"Fotnoter-list\">\n        {fotnoter.map((fotnote) => {\n          return (\n            <li\n              key={`fotnote-${notatId}-${fotnote.id}`}\n              id={`fotnote-${notatId}-${fotnote.id}`}\n            >\n              <Linkify\n                options={{\n                  target: \"_blank\",\n                  attributes: { rel: \"noopener noreferrer\" },\n                }}\n              >\n                {fotnote.text}\n              </Linkify>\n            </li>\n          );\n        })}\n      </ol>\n    </div>\n  );\n};\n\nexport default Fotnoter;\n","import { Vedlegg as VedleggComponent } from \"@utdanningsdirektoratet/vedlegg\";\nimport { FormattedMessage } from \"react-intl\";\nimport { VedleggViewModel } from \"../../../../ApiClients\";\nimport { useForhåndsvisning } from \"../../../../hooks\";\nimport { FORHANDSVISNINGSKODE } from \"../../../../constants/queryParam\";\nimport { urls } from \"../../../../logic/initialState\";\n\nconst Vedlegg = ({\n  vedlegg,\n  notatVedlegg,\n}: {\n  vedlegg: Array<VedleggViewModel>;\n  notatVedlegg: Array<VedleggViewModel>;\n}) => {\n  const forhåndsvisning = useForhåndsvisning();\n\n  const searchParams = new URLSearchParams();\n  if (forhåndsvisning) searchParams.set(FORHANDSVISNINGSKODE, forhåndsvisning);\n\n  if (notatVedlegg.length === 0 && vedlegg.length === 0) return null;\n  const notatVedleggList = notatVedlegg.map((v) => {\n    return (\n      <VedleggComponent\n        key={`notatVedlegg-${v.id}`}\n        className=\"u--marginBottom0-5\"\n        title={v.filNavn}\n        href={`${urls.lastNedVedlegg}/${v.id}?${searchParams.toString()}`}\n        disabled\n      />\n    );\n  });\n  const vedleggList = vedlegg.map((v) => {\n    return (\n      <VedleggComponent\n        key={`vedlegg-${v.id}`}\n        className=\"u--marginBottom0-5\"\n        title={v.filNavn}\n        href={`${urls.lastNedVedlegg}/${v.id}?${searchParams.toString()}`}\n        disabled\n      />\n    );\n  });\n\n  return (\n    <div className=\"Page-section u--marginBottom2\">\n      <div className=\"u--label\">\n        <FormattedMessage id=\"formLabels.vedlegg\" />\n      </div>\n      {notatVedleggList}\n      {vedleggList}\n    </div>\n  );\n};\n\nexport default Vedlegg;\n","import { Checkbox } from \"@utdanningsdirektoratet/checkbox\";\nimport { Tooltip } from \"@utdanningsdirektoratet/tooltip\";\nimport { useIntl } from \"react-intl\";\nimport { Element } from \"react-scroll\";\nimport { FormValidation } from \"@utdanningsdirektoratet/form\";\nimport { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { type FieldType } from \"../SendInnPopin\";\nimport { MalgruppeViewModel } from \"../../../../../ApiClients\";\nimport { useLocale } from \"../../../../../hooks\";\nimport { getTextWithLocale } from \"../../../../../utils/localeUtils\";\n\nconst BekreftRepresentasjon = ({\n  fields,\n  valgtMalgruppe,\n  className,\n}: {\n  fields: FormValidation<FieldType>[\"fields\"];\n  valgtMalgruppe: MalgruppeViewModel;\n  className?: string;\n}) => {\n  const intl = useIntl();\n  const locale = useLocale();\n  if (!valgtMalgruppe.bekreftRepresentasjon) return null;\n\n  const onChangeWrapped = (e: React.ChangeEvent<HTMLInputElement>) => {\n    const { checked } = e.target;\n    fields.bekreftRepresentasjon.onChange(checked);\n  };\n\n  const label = getTextWithLocale(\n    valgtMalgruppe.bekreftRepresentasjonTekst,\n    locale,\n  )\n    ? getTextWithLocale(valgtMalgruppe.bekreftRepresentasjonTekst, locale)\n    : intl.formatMessage(\n        { id: \"sendInnPopin.bekreftRepresentasjonTekst\" },\n        { 0: valgtMalgruppe.tittel.toLowerCase() },\n      );\n\n  return (\n    <div className={cls(\"Grid-12-12 u--marginTop3\", className)}>\n      <Element name=\"bekreftRepresentasjon\" />\n      <Tooltip\n        className=\"u--block\"\n        message={fields.bekreftRepresentasjon.message}\n        align=\"left\"\n        position=\"bottom\"\n        disabled={!fields.bekreftRepresentasjon.error}\n        alwaysShow\n      >\n        <Checkbox\n          label={label}\n          onChange={onChangeWrapped}\n          checked={fields.bekreftRepresentasjon.value}\n          error={fields.bekreftRepresentasjon.error}\n        />\n      </Tooltip>\n    </div>\n  );\n};\n\nexport default BekreftRepresentasjon;\n","import { FormValidation } from \"@utdanningsdirektoratet/form\";\nimport { Select } from \"@utdanningsdirektoratet/select\";\nimport { useIntl } from \"react-intl\";\nimport { Element } from \"react-scroll\";\nimport type { FieldType } from \"../SendInnPopin\";\n\nimport { MalgruppeViewModel } from \"../../../../../ApiClients\";\n\nconst fieldsToReset = [\n  \"representerer\",\n  \"stilling\",\n  \"fylke\",\n  \"kommune\",\n  \"undertype\",\n  \"bekreftRepresentasjon\",\n] as Array<keyof FieldType>;\n\nconst Sektor = ({\n  fields,\n  malgrupper,\n  resetFields,\n}: {\n  fields: FormValidation<FieldType>[\"fields\"];\n  resetFields: FormValidation<FieldType>[\"resetFields\"];\n  malgrupper: Array<MalgruppeViewModel>;\n}) => {\n  const intl = useIntl();\n  if (malgrupper.length <= 1) return null;\n\n  const onChangeWrapped = (event: React.ChangeEvent<HTMLSelectElement>) => {\n    resetFields(fieldsToReset);\n    fields.sektor.onChange(event);\n    if (event.target.value)\n      fields.malgruppe.onChange(\n        malgrupper.filter((m) => m.sektor === event.target.value)[0].id,\n      );\n  };\n\n  const options = [...new Set(malgrupper.map((m) => m.sektor).sort())].map(\n    (sektor) => ({\n      value: sektor,\n      text: `${intl.formatMessage({ id: `sendInnPopin.${sektor.toLowerCase()}` })}`,\n    }),\n  );\n\n  const withDefault = [\n    {\n      value: \"\",\n      text: `— ${intl.formatMessage({ id: \"sendInnPopin.velg\" })} ${intl.formatMessage({ id: \"sendInnPopin.sektor\" }).toLowerCase()} —`,\n    },\n    ...options,\n  ];\n\n  return (\n    <div className=\"SendInnPopin-flexInput\">\n      <Element name=\"sektor\" />\n      <Select\n        {...fields.sektor}\n        className=\"SendInnPopin-select\"\n        onChange={onChangeWrapped}\n        options={withDefault}\n        id=\"minSektor\"\n        aria-label={intl.formatMessage({ id: \"sendInnPopin.velgSektor\" })}\n      />\n    </div>\n  );\n};\n\nexport default Sektor;\n","import { useState, useEffect } from \"react\";\nimport { Select } from \"@utdanningsdirektoratet/select\";\nimport { useIntl } from \"react-intl\";\nimport { Element } from \"react-scroll\";\nimport { FormValidation } from \"@utdanningsdirektoratet/form\";\nimport type { FieldType } from \"../SendInnPopin\";\nimport { MalgruppeViewModel } from \"../../../../../ApiClients\";\n\nconst fieldsToReset = [\n  \"representerer\",\n  \"stilling\",\n  \"fylke\",\n  \"kommune\",\n  \"undertype\",\n  \"bekreftRepresentasjon\",\n] as Array<keyof FieldType>;\n\nconst Malgruppe = ({\n  fields,\n  malgrupper,\n  alleMalgrupper,\n  resetFields,\n}: {\n  malgrupper: Record<string, Array<MalgruppeViewModel>>;\n  alleMalgrupper: Array<MalgruppeViewModel>;\n  fields: FormValidation<FieldType>[\"fields\"];\n  resetFields: FormValidation<FieldType>[\"resetFields\"];\n}) => {\n  const [localSektor, setLocalSektor] = useState(\"\");\n  const intl = useIntl();\n  useEffect(() => {\n    if (fields.sektor.value) setLocalSektor(fields.sektor.value);\n  }, [fields.sektor.value]);\n\n  const findMalgruppe = (malgruppe: [string, Array<MalgruppeViewModel>]) =>\n    malgruppe[1].find((mg) => mg.sektor === localSektor) || malgruppe[1][0];\n\n  const options = Object.entries(malgrupper)\n    .sort((a, b) => findMalgruppe(a).rekkefølge - findMalgruppe(b).rekkefølge)\n    .map((m) => ({\n      value: findMalgruppe(m).id,\n      text: m[0],\n    }));\n\n  const withDefault = [\n    {\n      value: \"\",\n      text: `— ${intl.formatMessage({ id: \"sendInnPopin.velg\" })} —`,\n    },\n    ...options,\n  ];\n\n  const onChangeWrapped = (e: React.ChangeEvent<HTMLSelectElement>) => {\n    resetFields(fieldsToReset);\n    fields.malgruppe.onChange(e);\n    const valgtMalgruppe = alleMalgrupper.find(\n      (m) => m.id === parseInt(e.target.value, 10),\n    );\n    if (valgtMalgruppe && malgrupper[valgtMalgruppe.tittel].length === 1) {\n      fields.sektor.onChange(valgtMalgruppe.sektor);\n      setLocalSektor(valgtMalgruppe.sektor);\n    } else if (valgtMalgruppe) {\n      fields.sektor.onChange(undefined);\n    }\n  };\n\n  return (\n    <div className=\"SendInnPopin-flexInput\">\n      <Element name=\"malgruppe\" />\n      <Select\n        {...fields.malgruppe}\n        id=\"velgMalgruppe\"\n        className=\"SendInnPopin-select\"\n        onChange={onChangeWrapped}\n        options={withDefault}\n        aria-label={intl.formatMessage({ id: \"sendInnPopin.velgMalgruppe\" })}\n      />\n    </div>\n  );\n};\n\nexport default Malgruppe;\n","import { Checkbox } from \"@utdanningsdirektoratet/checkbox\";\nimport { Radio } from \"@utdanningsdirektoratet/radio\";\nimport { Tooltip } from \"@utdanningsdirektoratet/tooltip\";\nimport { Element } from \"react-scroll\";\nimport { FormValidation } from \"@utdanningsdirektoratet/form\";\nimport type { FieldType } from \"../SendInnPopin\";\nimport { MalgruppeViewModel } from \"../../../../../ApiClients\";\n\nconst Undertype = ({\n  fields,\n  valgtMalgruppe,\n}: {\n  fields: FormValidation<FieldType>[\"fields\"];\n  valgtMalgruppe: MalgruppeViewModel;\n}) => {\n  const onChangeWrapped = (e: React.ChangeEvent<HTMLInputElement>) => {\n    const { value, checked } = e.target;\n\n    const newValue = valgtMalgruppe.kanHaFlereUndertyper\n      ? { ...fields.undertype.value, [value]: checked }\n      : { [value]: checked };\n    fields.undertype.onChange(newValue);\n  };\n\n  const undertyper = valgtMalgruppe.målgruppeUnderTyper\n    .filter((undertype) => undertype.erAktiv)\n    .sort((a, b) => a.rekkefølge - b.rekkefølge)\n    .map((undertype) => {\n      if (valgtMalgruppe.kanHaFlereUndertyper) {\n        return (\n          <Checkbox\n            name=\"undertyper\"\n            key={`undertype-${undertype.id}`}\n            className=\"Grid-12-12 Grid-md-6-12 SendInnPopin-checkbox\"\n            label={undertype.tittel}\n            checked={fields.undertype.value[undertype.id]}\n            onChange={onChangeWrapped}\n            value={undertype.id}\n            error={fields.undertype.error}\n          />\n        );\n      }\n      return (\n        <Radio\n          name=\"undertyper\"\n          key={`undertype-${undertype.id}`}\n          className=\"Grid-12-12 Grid-md-6-12 SendInnPopin-checkbox\"\n          label={undertype.tittel}\n          onChange={onChangeWrapped}\n          checked={fields.undertype.value[undertype.id]}\n          value={undertype.id}\n          error={fields.undertype.error}\n        />\n      );\n    });\n\n  if (undertyper.length === 0) return null;\n\n  return (\n    <div className=\"Grid-12-12 u--marginTop1\">\n      <Element name=\"undertype\" />\n      <Tooltip\n        className=\"u--block\"\n        message={fields.undertype.message}\n        align=\"right\"\n        position=\"top\"\n        disabled={!fields.undertype.error}\n        alwaysShow\n      >\n        {undertyper}\n      </Tooltip>\n    </div>\n  );\n};\n\nexport default Undertype;\n","import { FormValidation } from \"@utdanningsdirektoratet/form\";\nimport { Input } from \"@utdanningsdirektoratet/input\";\nimport { useIntl } from \"react-intl\";\nimport { Element } from \"react-scroll\";\nimport { MalgruppeViewModel, Obligatoriskhet } from \"../../../../../ApiClients\";\n\nimport type { FieldType } from \"../SendInnPopin\";\n\nconst Representerer = ({\n  fields,\n  valgtMalgruppe,\n}: {\n  fields: FormValidation<FieldType>[\"fields\"];\n  valgtMalgruppe: MalgruppeViewModel;\n}) => {\n  const intl = useIntl();\n  const visRepresenterer =\n    valgtMalgruppe.innsenderRepresentererObligatoriskhet ===\n      Obligatoriskhet.Obligatorisk ||\n    valgtMalgruppe.innsenderRepresentererObligatoriskhet ===\n      Obligatoriskhet.Valgfritt;\n\n  if (!visRepresenterer) return null;\n\n  const representererLabel =\n    valgtMalgruppe.innsenderRepresentererObligatoriskhet !==\n    Obligatoriskhet.Obligatorisk\n      ? `${intl.formatMessage({ id: \"sendInnPopin.valgfritt\" })}`\n      : undefined;\n\n  const label = valgtMalgruppe.innsenderRepresentererEtikett\n    ? valgtMalgruppe.innsenderRepresentererEtikett\n    : intl.formatMessage(\n        { id: \"sendInnPopin.navnPa\" },\n        { 0: valgtMalgruppe.tittel.toLowerCase() },\n      );\n\n  return (\n    <div className=\"Grid-12-12\">\n      <Element name=\"representerer\" />\n      <label className=\"SendInnPopin-label\" htmlFor=\"representerer\">\n        {label}\n      </label>\n      <Input\n        {...fields.representerer}\n        id=\"representerer\"\n        className=\"SendInnPopin-input\"\n        placeholder={representererLabel}\n        aria-label={label}\n      />\n    </div>\n  );\n};\n\nexport default Representerer;\n","import { Input } from \"@utdanningsdirektoratet/input\";\nimport { useIntl } from \"react-intl\";\nimport { Element } from \"react-scroll\";\nimport { FormValidation } from \"@utdanningsdirektoratet/form\";\nimport type { FieldType } from \"../SendInnPopin\";\nimport { MalgruppeViewModel, Obligatoriskhet } from \"../../../../../ApiClients\";\n\nconst MinStilling = ({\n  fields,\n  valgtMalgruppe,\n}: {\n  fields: FormValidation<FieldType>[\"fields\"];\n  valgtMalgruppe: MalgruppeViewModel;\n}) => {\n  const intl = useIntl();\n  const visMinStilling =\n    valgtMalgruppe.innsenderStillingObligatoriskhet ===\n      Obligatoriskhet.Obligatorisk ||\n    valgtMalgruppe.innsenderStillingObligatoriskhet ===\n      Obligatoriskhet.Valgfritt;\n\n  if (!visMinStilling) return null;\n\n  const stillingLabel =\n    valgtMalgruppe.innsenderStillingObligatoriskhet !==\n    Obligatoriskhet.Obligatorisk\n      ? `${intl.formatMessage({ id: \"sendInnPopin.valgfritt\" })}`\n      : undefined;\n\n  return (\n    <div className=\"Grid-12-12\">\n      <Element name=\"stilling\" />\n      <label className=\"SendInnPopin-label\" htmlFor=\"minStilling\">\n        {intl.formatMessage({ id: \"sendInnPopin.minStilling\" })}\n      </label>\n      <Input\n        {...fields.stilling}\n        id=\"minStilling\"\n        className=\"SendInnPopin-input\"\n        placeholder={stillingLabel}\n        aria-label={intl.formatMessage({ id: \"sendInnPopin.minStilling\" })}\n      />\n    </div>\n  );\n};\n\nexport default MinStilling;\n","import { FormValidation } from \"@utdanningsdirektoratet/form\";\nimport { Select } from \"@utdanningsdirektoratet/select\";\nimport { useIntl } from \"react-intl\";\nimport { Element } from \"react-scroll\";\nimport type { FieldType } from \"../SendInnPopin\";\nimport {\n  GeografiObligatoriskhet,\n  MalgruppeViewModel,\n} from \"../../../../../ApiClients\";\nimport { useFylker } from \"../../../../../hooks\";\n\nconst selectHasValue = (value: string) => value && value !== \"null\";\n\nconst Kommune = ({\n  fields,\n  valgtMalgruppe,\n}: {\n  fields: FormValidation<FieldType>[\"fields\"];\n  valgtMalgruppe: MalgruppeViewModel;\n}) => {\n  const { data: fylker } = useFylker();\n  const visKommune =\n    valgtMalgruppe.geografiObligatoriskhet ===\n      GeografiObligatoriskhet.FylkeOgKommuneObligatorisk &&\n    selectHasValue(fields.fylke.value);\n\n  const intl = useIntl();\n  if (!visKommune || !fylker) return null;\n\n  const valgtFylke = fylker.find(\n    (fylke) => fylke.fylkesNr === fields.fylke.value,\n  )!;\n\n  const gjeldendeKommuner = valgtFylke.kommuner\n    .filter((f) => f.aktiv)\n    .map((kommune) => (\n      <option key={kommune.kommuneNr} value={kommune.kommuneNr}>\n        {kommune.navn}\n      </option>\n    ));\n  const gamleKommuner = valgtFylke.kommuner\n    .filter((f) => !f.aktiv)\n    .map((kommune) => (\n      <option key={kommune.kommuneNr} value={kommune.kommuneNr}>\n        {kommune.navn}\n      </option>\n    ));\n\n  return (\n    <div className=\"SendInnPopin-flexInput\">\n      <Element name=\"kommune\" />\n      <Select\n        className=\"SendInnPopin-select\"\n        {...fields.kommune}\n        aria-label={intl.formatMessage({ id: \"sendInnPopin.velgKommune\" })}\n      >\n        <option value=\"\">{`— ${intl.formatMessage({ id: \"sendInnPopin.velgKommune\" })} —`}</option>\n        {gamleKommuner.length > 0 && gjeldendeKommuner.length > 0 ? (\n          <optgroup\n            label={intl.formatMessage({ id: \"sendInnPopin.gjeldendeKommuner\" })}\n          >\n            {gjeldendeKommuner}\n          </optgroup>\n        ) : (\n          gjeldendeKommuner\n        )}\n        {gamleKommuner.length > 0 && gjeldendeKommuner.length > 0 ? (\n          <optgroup\n            label={intl.formatMessage({ id: \"sendInnPopin.gamleKommuner\" })}\n          >\n            {gamleKommuner}\n          </optgroup>\n        ) : (\n          gamleKommuner\n        )}\n      </Select>\n    </div>\n  );\n};\n\nexport default Kommune;\n","import { Select } from \"@utdanningsdirektoratet/select\";\nimport { useIntl } from \"react-intl\";\nimport { Element } from \"react-scroll\";\nimport { FormValidation } from \"@utdanningsdirektoratet/form\";\nimport type { FieldType } from \"../SendInnPopin\";\nimport { useFylker } from \"../../../../../hooks\";\n\nconst fieldsToReset = [\"kommune\"] as Array<keyof FieldType>;\n\nconst Fylke = ({\n  fields,\n  resetFields,\n}: {\n  fields: FormValidation<FieldType>[\"fields\"];\n  resetFields: FormValidation<FieldType>[\"resetFields\"];\n}) => {\n  const intl = useIntl();\n\n  const { data: fylker } = useFylker();\n\n  if (!fylker) return null;\n\n  const onChangeWrapped = (e: React.ChangeEvent) => {\n    resetFields(fieldsToReset);\n    fields.fylke.onChange(e);\n  };\n\n  const gjeldendeFylker = fylker\n    .filter((f) => f.aktiv)\n    .map((fylke) => (\n      <option key={fylke.fylkesNr} value={fylke.fylkesNr}>\n        {fylke.navn}\n      </option>\n    ));\n  const gamleFylker = fylker\n    .filter((f) => !f.aktiv)\n    .map((fylke) => (\n      <option key={fylke.fylkesNr} value={fylke.fylkesNr}>\n        {fylke.navn}\n      </option>\n    ));\n\n  return (\n    <div className=\"SendInnPopin-flexInput\">\n      <Element name=\"fylke\" />\n      <Select\n        {...fields.fylke}\n        className=\"SendInnPopin-select\"\n        onChange={onChangeWrapped}\n        aria-label={intl.formatMessage({ id: \"sendInnPopin.velgFylke\" })}\n      >\n        <option value=\"\">{`— ${intl.formatMessage({ id: \"sendInnPopin.velgFylke\" })} —`}</option>\n        {gamleFylker.length > 0 && gjeldendeFylker.length > 0 ? (\n          <optgroup\n            label={intl.formatMessage({ id: \"sendInnPopin.gjeldendeFylker\" })}\n          >\n            {gjeldendeFylker}\n          </optgroup>\n        ) : (\n          gjeldendeFylker\n        )}\n        {gamleFylker.length > 0 && gjeldendeFylker.length > 0 ? (\n          <optgroup\n            label={intl.formatMessage({ id: \"sendInnPopin.gamleFylker\" })}\n          >\n            {gamleFylker}\n          </optgroup>\n        ) : (\n          gamleFylker\n        )}\n      </Select>\n    </div>\n  );\n};\n\nexport default Fylke;\n","import { FormValidation } from \"@utdanningsdirektoratet/form\";\nimport Kommune from \"./Kommune\";\nimport Fylke from \"./Fylke\";\nimport type { FieldType } from \"../SendInnPopin\";\nimport {\n  GeografiObligatoriskhet,\n  MalgruppeViewModel,\n} from \"../../../../../ApiClients\";\n\nconst FylkeKommune = ({\n  fields,\n  resetFields,\n  valgtMalgruppe,\n}: {\n  valgtMalgruppe: MalgruppeViewModel;\n  fields: FormValidation<FieldType>[\"fields\"];\n  resetFields: FormValidation<FieldType>[\"resetFields\"];\n}) => {\n  const visFylke =\n    valgtMalgruppe.geografiObligatoriskhet ===\n      GeografiObligatoriskhet.FylkeObligatorisk ||\n    valgtMalgruppe.geografiObligatoriskhet ===\n      GeografiObligatoriskhet.FylkeOgKommuneObligatorisk;\n\n  if (!visFylke) return null;\n\n  return (\n    <div className=\"Grid-12-12 SendInnPopin-wrapper\">\n      <Fylke fields={fields} resetFields={resetFields} />\n      <Kommune fields={fields} valgtMalgruppe={valgtMalgruppe} />\n    </div>\n  );\n};\n\nexport default FylkeKommune;\n","import { FormValidation } from \"@utdanningsdirektoratet/form\";\nimport Undertype from \"./Undertype\";\nimport Representerer from \"./Representerer\";\nimport MinStilling from \"./MinStilling\";\nimport FylkeKommune from \"./FylkeKommune\";\nimport type { FieldType } from \"../SendInnPopin\";\nimport { MalgruppeViewModel } from \"../../../../../ApiClients\";\n\nconst InnsenderInfo = ({\n  fields,\n  resetFields,\n  malgrupper,\n}: {\n  malgrupper: Array<MalgruppeViewModel>;\n  fields: FormValidation<FieldType>[\"fields\"];\n  resetFields: FormValidation<FieldType>[\"resetFields\"];\n}) => {\n  const malgruppe = fields.malgruppe.value;\n\n  if (!malgruppe) return null;\n\n  const valgtMalgruppe = malgrupper.find((m) => m.id === +malgruppe)!;\n\n  return (\n    <div>\n      <Representerer fields={fields} valgtMalgruppe={valgtMalgruppe} />\n      <FylkeKommune\n        fields={fields}\n        valgtMalgruppe={valgtMalgruppe}\n        resetFields={resetFields}\n      />\n      <Undertype fields={fields} valgtMalgruppe={valgtMalgruppe} />\n      <MinStilling fields={fields} valgtMalgruppe={valgtMalgruppe} />\n    </div>\n  );\n};\n\nexport default InnsenderInfo;\n","import { FormValidation } from \"@utdanningsdirektoratet/form\";\nimport { useIntl } from \"react-intl\";\nimport Sektor from \"./Sektor\";\nimport Malgruppe from \"./Malgruppe\";\nimport InnsenderInfo from \"./InnsenderInfo\";\nimport {\n  MalgruppeViewModel,\n  Sektor as SektorEnum,\n} from \"../../../../../ApiClients\";\n\nimport type { FieldType } from \"../SendInnPopin\";\n\nconst MalgruppeSektor = ({\n  valgtMalgruppe,\n  malgrupper,\n  fields,\n  resetFields,\n}: {\n  valgtMalgruppe?: MalgruppeViewModel;\n  malgrupper: Array<MalgruppeViewModel>;\n  fields: FormValidation<FieldType>[\"fields\"];\n  resetFields: FormValidation<FieldType>[\"resetFields\"];\n}) => {\n  const intl = useIntl();\n  const malgrupperForValgtSektor = malgrupper.filter(\n    (malgruppe) =>\n      !fields.sektor.value || malgruppe.sektor === fields.sektor.value,\n  );\n  const malgrupperGroupByName = malgrupper.reduce(\n    (curr, val) => {\n      if (\n        fields.sektor.value === SektorEnum.Enkeltperson &&\n        val.sektor === SektorEnum.Enkeltperson\n      ) {\n        if (!curr[val.tittel]) return { ...curr, [val.tittel]: [val] };\n        return { ...curr, [val.tittel]: [...curr[val.tittel], val] };\n      }\n      if (\n        fields.sektor.value !== SektorEnum.Enkeltperson &&\n        val.sektor !== SektorEnum.Enkeltperson\n      ) {\n        if (!curr[val.tittel]) return { ...curr, [val.tittel]: [val] };\n        return { ...curr, [val.tittel]: [...curr[val.tittel], val] };\n      }\n      return curr;\n    },\n    {} as { [key: string]: Array<MalgruppeViewModel> },\n  );\n  const malgrupperForValgtMalgruppe = valgtMalgruppe\n    ? malgrupperGroupByName[valgtMalgruppe.tittel]\n    : [];\n\n  if (malgrupperForValgtSektor.length === 0) return null;\n\n  return (\n    <div>\n      {(malgrupperForValgtSektor.length > 1 ||\n        malgrupperForValgtMalgruppe.length > 1) && (\n        <label className=\"SendInnPopin-label\" htmlFor=\"velgMalgruppe\">\n          {intl.formatMessage({\n            id:\n              fields.sektor.value === SektorEnum.Enkeltperson\n                ? \"sendInnPopin.jegErEn\"\n                : \"sendInnPopin.jegRepresenterer\",\n          })}\n        </label>\n      )}\n      <div className=\"Grid-12-12 SendInnPopin-wrapper\">\n        {Object.keys(malgrupperGroupByName).length > 1 ? (\n          <Malgruppe\n            fields={fields}\n            malgrupper={malgrupperGroupByName}\n            alleMalgrupper={malgrupper}\n            resetFields={resetFields}\n          />\n        ) : null}\n        {fields.sektor.value !== SektorEnum.Enkeltperson ? (\n          <Sektor\n            malgrupper={malgrupperForValgtMalgruppe}\n            fields={fields}\n            resetFields={resetFields}\n          />\n        ) : null}\n      </div>\n      {fields.sektor.value && fields.malgruppe.value ? (\n        <InnsenderInfo\n          fields={fields}\n          malgrupper={malgrupper}\n          resetFields={resetFields}\n        />\n      ) : null}\n    </div>\n  );\n};\n\nexport default MalgruppeSektor;\n","import { useState, useEffect, useMemo } from \"react\";\nimport { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { Input } from \"@utdanningsdirektoratet/input\";\nimport { Icon } from \"@utdanningsdirektoratet/icon\";\nimport { PopinFooter } from \"@utdanningsdirektoratet/popin\";\nimport { Fields, Form, FormValidation } from \"@utdanningsdirektoratet/form\";\nimport { Radio, RadioGroup } from \"@utdanningsdirektoratet/radio\";\nimport { useIntl, FormattedMessage } from \"react-intl\";\nimport { Element } from \"react-scroll\";\nimport BekreftRepresentasjon from \"./BekreftRepresentasjon\";\nimport MalgruppeSektor from \"./MalgruppeSektor\";\nimport { type FieldType } from \"../SendInnPopin\";\nimport {\n  GeografiObligatoriskhet,\n  MalgruppeViewModel,\n  Obligatoriskhet,\n  Sektor,\n} from \"../../../../../ApiClients\";\nimport { scrollTo } from \"../../../../../utils/scrollUtils\";\nimport {\n  features,\n  personvernerklaering,\n} from \"../../../../../logic/initialState\";\nimport { useHoering } from \"../../../../../hooks\";\n\nconst fieldsToReset = [\n  \"sektor\",\n  \"malgruppe\",\n  \"representerer\",\n  \"stilling\",\n  \"fylke\",\n  \"kommune\",\n  \"undertype\",\n  \"bekreftRepresentasjon\",\n] as Array<keyof FieldType>;\n\nconst getHasMultipleMalgrupperOrNeedsMoreMetaData = (\n  valgtMalgruppe: MalgruppeViewModel | undefined,\n  malgruppeEnkeltperson: Array<MalgruppeViewModel>,\n  malgruppeOffentligEllerPrivat: Array<MalgruppeViewModel>,\n) => {\n  if (!valgtMalgruppe) return true;\n  if (valgtMalgruppe.sektor === Sektor.Enkeltperson) {\n    return !(\n      valgtMalgruppe.innsenderRepresentererObligatoriskhet ===\n        Obligatoriskhet.IkkeEtterspør &&\n      valgtMalgruppe.innsenderStillingObligatoriskhet ===\n        Obligatoriskhet.IkkeEtterspør &&\n      valgtMalgruppe.geografiObligatoriskhet ===\n        GeografiObligatoriskhet.IkkeEtterspør &&\n      malgruppeEnkeltperson.length === 1\n    );\n  }\n  return !(\n    valgtMalgruppe.innsenderRepresentererObligatoriskhet ===\n      Obligatoriskhet.IkkeEtterspør &&\n    valgtMalgruppe.innsenderStillingObligatoriskhet ===\n      Obligatoriskhet.IkkeEtterspør &&\n    valgtMalgruppe.geografiObligatoriskhet ===\n      GeografiObligatoriskhet.IkkeEtterspør &&\n    malgruppeOffentligEllerPrivat.length === 1\n  );\n};\n\nconst SendInnForm = ({\n  fields,\n  popinId,\n  onSuccess,\n  resetFields,\n  validateFields,\n  representererEnkeltperson,\n  setRepresenterer,\n  ...rest\n}: {\n  fields: Fields<FieldType>;\n  popinId: string;\n  onSuccess: () => void;\n  representererEnkeltperson: boolean | undefined;\n  setRepresenterer: React.Dispatch<React.SetStateAction<boolean | undefined>>;\n} & FormValidation<FieldType>) => {\n  const [onSubmitClicked, setOnSubmitClicked] = useState(false);\n  const intl = useIntl();\n  const { data: hoering} = useHoering();\n  const { lenkeTilPersonvernerklaering, bekrefteSvar } = features[hoering.mode];\n  const { målgrupper } = hoering;\n\n  useEffect(() => {\n    if (målgrupper.length === 1) {\n      fields.sektor.onChange(målgrupper[0].sektor);\n      fields.malgruppe.onChange(målgrupper[0].id);\n    }\n    if ([...new Set(målgrupper.map((m) => m.tittel))].length === 1) {\n      fields.malgruppe.onChange(målgrupper[0].id);\n    }\n    if ([...new Set(målgrupper.map((m) => m.sektor))].length === 1) {\n      fields.sektor.onChange(målgrupper[0].sektor);\n    }\n  }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n  const valgtMalgruppe = useMemo(\n    () => målgrupper.find((m) => m.id === +fields.malgruppe.value),\n    [fields.malgruppe.value, målgrupper],\n  );\n  const malgruppeEnkeltperson = useMemo(\n    () =>\n      målgrupper.filter(\n        (malgruppe) => malgruppe.sektor === Sektor.Enkeltperson,\n      ),\n    [målgrupper],\n  );\n  const malgruppeOffentligEllerPrivat = useMemo(\n    () =>\n      målgrupper.filter(\n        (malgruppe) => malgruppe.sektor !== Sektor.Enkeltperson,\n      ),\n    [målgrupper],\n  );\n\n  const buttonClass = cls({\n    \"u--marginTop2\":\n      bekrefteSvar || (valgtMalgruppe && valgtMalgruppe.autoPubliser),\n    \"u--marginTop5\":\n      !bekrefteSvar && !(valgtMalgruppe && valgtMalgruppe.autoPubliser),\n  });\n\n  const hasMultipleMalgrupperOrNeedsMoreMetaData = useMemo(\n    () =>\n      getHasMultipleMalgrupperOrNeedsMoreMetaData(\n        valgtMalgruppe,\n        malgruppeEnkeltperson,\n        malgruppeOffentligEllerPrivat,\n      ),\n    [malgruppeEnkeltperson, malgruppeOffentligEllerPrivat, valgtMalgruppe],\n  );\n\n  const onValidationError = () => {\n    if (fields.navn.error) {\n      scrollTo(\"navn\", { popinId });\n    } else if (fields.epost.error) {\n      scrollTo(\"epost\", { popinId });\n    } else if (fields.sektor.error) {\n      scrollTo(\"sektor\", { popinId });\n    } else if (fields.malgruppe.error) {\n      scrollTo(\"malgruppe\", { popinId });\n    } else if (fields.representerer.error) {\n      scrollTo(\"representerer\", { popinId });\n    } else if (fields.fylke.error) {\n      scrollTo(\"fylke\", { popinId });\n    } else if (fields.kommune.error) {\n      scrollTo(\"kommune\", { popinId });\n    } else if (fields.undertype.error) {\n      scrollTo(\"undertype\", { popinId });\n    } else if (fields.stilling.error) {\n      scrollTo(\"stilling\", { popinId });\n    } else if (fields.bekreftRepresentasjon.error) {\n      scrollTo(\"bekreftRepresentasjon\", { popinId });\n    }\n    setOnSubmitClicked(false);\n  };\n\n  return (\n    <Form\n      {...rest}\n      fields={fields}\n      resetFields={resetFields}\n      onSubmit={onSuccess}\n      onError={onValidationError}\n      validateFields={validateFields}\n    >\n      {({ onSubmit }) => {\n        const onSubmitClick = () => {\n          setOnSubmitClicked(true);\n          onSubmit();\n        };\n        return (\n          <>\n            <div>\n              <div className=\"Grid-12-12\">\n                <Element name=\"navn\" />\n                <label className=\"SendInnPopin-label\" htmlFor=\"mittNavn\">\n                  {intl.formatMessage({ id: \"sendInnPopin.mittNavn\" })}\n                </label>\n                <Input\n                  aria-label={intl.formatMessage({\n                    id: \"sendInnPopin.mittNavn\",\n                  })}\n                  {...fields.navn}\n                  placeholder=\"\"\n                  id=\"mittNavn\"\n                  className=\"SendInnPopin-input\"\n                />\n              </div>\n\n              <Element name=\"epost\" />\n              <div className=\"Grid-12-12\">\n                <label className=\"SendInnPopin-label\" htmlFor=\"minEpost\">\n                  {intl.formatMessage({ id: \"sendInnPopin.minEpost\" })}\n                </label>\n                <Input\n                  aria-label={intl.formatMessage({\n                    id: \"sendInnPopin.minEpost\",\n                  })}\n                  {...fields.epost}\n                  placeholder=\"\"\n                  id=\"minEpost\"\n                  className=\"SendInnPopin-input\"\n                  autoComplete=\"email\"\n                  type=\"email\"\n                />\n              </div>\n              {malgruppeEnkeltperson.length > 0 &&\n              malgruppeOffentligEllerPrivat.length > 0 ? (\n                <>\n                  <div className=\"SendInnPopin-label\">\n                    <FormattedMessage id=\"sendInnPopin.hvemSender\" />\n                  </div>\n                  <Element name=\"sektor\" />\n                  <RadioGroup\n                    error={fields.sektor.error}\n                    className=\"SendInnPopin-radioWrapper\"\n                    label=\"Sektor valg\"\n                    name=\"group\"\n                  >\n                    <Radio\n                      error={fields.sektor.error}\n                      boxed\n                      checked={\n                        representererEnkeltperson !== undefined &&\n                        representererEnkeltperson\n                      }\n                      label={intl.formatMessage(\n                        { id: \"sendInnPopin.jegSenderPaaVegneAv\" },\n                        {\n                          JegRepresenterer: intl.formatMessage({\n                            id: \"sendInnPopin.megSelv\",\n                          }),\n                        },\n                      )}\n                      className=\"SendInnPopin-radiobuton\"\n                      onChange={() => {\n                        if (\n                          representererEnkeltperson === undefined ||\n                          !representererEnkeltperson\n                        ) {\n                          resetFields(fieldsToReset);\n                          setRepresenterer(true);\n                          fields.sektor.onChange(Sektor.Enkeltperson);\n                          if (malgruppeEnkeltperson.length === 1) {\n                            fields.malgruppe.onChange(\n                              malgruppeEnkeltperson[0].id,\n                            );\n                          }\n                        }\n                      }}\n                    >\n                      {hasMultipleMalgrupperOrNeedsMoreMetaData ? (\n                        <MalgruppeSektor\n                          fields={fields}\n                          valgtMalgruppe={valgtMalgruppe}\n                          malgrupper={målgrupper}\n                          resetFields={resetFields}\n                        />\n                      ) : null}\n                    </Radio>\n                    <Radio\n                      error={fields.sektor.error}\n                      boxed\n                      checked={\n                        representererEnkeltperson !== undefined &&\n                        !representererEnkeltperson\n                      }\n                      label={intl.formatMessage(\n                        { id: \"sendInnPopin.jegSenderPaaVegneAv\" },\n                        {\n                          JegRepresenterer: intl.formatMessage({\n                            id: \"sendInnPopin.minArbeidsgiver\",\n                          }),\n                        },\n                      )}\n                      onChange={() => {\n                        if (\n                          representererEnkeltperson === undefined ||\n                          representererEnkeltperson\n                        ) {\n                          setRepresenterer(false);\n                          resetFields(fieldsToReset);\n                          if (\n                            [\n                              ...new Set(\n                                malgruppeOffentligEllerPrivat.map(\n                                  (m) => m.sektor,\n                                ),\n                              ),\n                            ].length === 1\n                          ) {\n                            fields.sektor.onChange(\n                              malgruppeOffentligEllerPrivat[0].sektor,\n                            );\n                          }\n                          if (\n                            [\n                              ...new Set(\n                                malgruppeOffentligEllerPrivat.map(\n                                  (m) => m.tittel,\n                                ),\n                              ),\n                            ].length === 1\n                          ) {\n                            fields.malgruppe.onChange(\n                              malgruppeOffentligEllerPrivat[0].id,\n                            );\n                          }\n                          if (malgruppeOffentligEllerPrivat.length === 1) {\n                            fields.malgruppe.onChange(\n                              malgruppeOffentligEllerPrivat[0].id,\n                            );\n                          }\n                        }\n                      }}\n                    >\n                      <Element name=\"sektor\" />\n                      {hasMultipleMalgrupperOrNeedsMoreMetaData ? (\n                        <MalgruppeSektor\n                          fields={fields}\n                          valgtMalgruppe={valgtMalgruppe}\n                          malgrupper={målgrupper}\n                          resetFields={resetFields}\n                        />\n                      ) : null}\n                    </Radio>\n                  </RadioGroup>\n                </>\n              ) : (\n                <MalgruppeSektor\n                  fields={fields}\n                  valgtMalgruppe={valgtMalgruppe}\n                  malgrupper={målgrupper}\n                  resetFields={resetFields}\n                />\n              )}\n\n              {valgtMalgruppe && fields.sektor.value ? (\n                <BekreftRepresentasjon\n                  className={\n                    malgruppeEnkeltperson.length > 0 &&\n                    malgruppeOffentligEllerPrivat.length > 0\n                      ? undefined\n                      : \"u--marginTop1\"\n                  }\n                  fields={fields}\n                  valgtMalgruppe={valgtMalgruppe}\n                />\n              ) : null}\n\n              <div>\n                {(!hoering.skjult &&\n                  valgtMalgruppe &&\n                  valgtMalgruppe.autoPubliser) ||\n                (lenkeTilPersonvernerklaering && personvernerklaering) ? (\n                  <div className=\"SendInnPopin-message\">\n                    <Icon icon=\"circle info\" type=\"small\" placement=\"before\" />\n                    {!hoering.skjult &&\n                    valgtMalgruppe &&\n                    valgtMalgruppe.autoPubliser ? (\n                      <>\n                        <FormattedMessage id=\"sendInnPopin.automatiskPublisering\" />\n                        <br />\n                      </>\n                    ) : null}\n                    {lenkeTilPersonvernerklaering && personvernerklaering ? (\n                      <>\n                        <FormattedMessage id=\"sendInnPopin.lenkeTilPersonvernErklaeringText\" />\n                        <br />\n                        <a\n                          href={personvernerklaering.url}\n                          target={\n                            personvernerklaering.blank ? \"_blank\" : undefined\n                          }\n                          rel={\n                            personvernerklaering.blank\n                              ? \"noopener noreferrer\"\n                              : undefined\n                          }\n                        >\n                          {personvernerklaering.tekst}\n                        </a>\n                      </>\n                    ) : null}\n                  </div>\n                ) : null}\n\n                {bekrefteSvar ? (\n                  <div className=\"SendInnPopin-message\">\n                    <Icon icon=\"email\" type=\"small\" placement=\"before\" />\n                    <FormattedMessage id=\"sendInnPopin.duVilMottaBekreftelsesEpost\" />\n                  </div>\n                ) : null}\n              </div>\n            </div>\n            <PopinFooter\n              className={buttonClass}\n              popinId={popinId}\n              onSave={onSubmitClick}\n              saveButtonProps={{\n                disabled: onSubmitClicked,\n              }}\n              cancelButton={<FormattedMessage id=\"formLabels.avbryt\" />}\n              saveButton={<FormattedMessage id=\"formLabels.sendInn\" />}\n            />\n          </>\n        );\n      }}\n    </Form>\n  );\n};\n\nexport default SendInnForm;\n","import { useState } from \"react\";\nimport { FormattedMessage, useIntl } from \"react-intl\";\nimport { close, Popin } from \"@utdanningsdirektoratet/popin\";\nimport {\n  useForm,\n  useFormValidation,\n  validationFunctions,\n  Values,\n} from \"@utdanningsdirektoratet/form\";\nimport { newNotification } from \"@utdanningsdirektoratet/notifications\";\nimport { useNavigate } from \"react-router\";\nimport { hide, show } from \"@utdanningsdirektoratet/slowaction\";\nimport SendInnForm from \"./components/SendInnForm\";\nimport {\n  BekreftetStatus,\n  GeografiObligatoriskhet,\n  HoeringClient,\n  MalgruppeViewModel,\n  Obligatoriskhet,\n  Sektor,\n} from \"../../../../ApiClients\";\nimport {\n  useUttalelse,\n  useHoering,\n  useInnsendingsKode,\n  useLocale,\n} from \"../../../../hooks\";\nimport { epostValidation } from \"../../../../logic/validation\";\nimport mapVm from \"../../../../vm/mapVm\";\nimport { removeUtkast } from \"../../../../utils/localStorageUtils\";\nimport { getLocaleCode } from \"../../../../utils/localeUtils\";\nimport { useContextState } from \"../../../../StateProvider\";\nimport { routes } from \"../../../../routes\";\nimport { mapFormToUttalelse } from \"../../../../vm/vmUtils\";\n\nexport type FieldType = {\n  navn: string;\n  epost: string;\n  sektor: Sektor;\n  stilling: string;\n  malgruppe: number | string;\n  fylke: string;\n  kommune: string;\n  representerer: string;\n  undertype: Record<string, boolean>;\n  bekreftRepresentasjon: boolean;\n};\n\nconst client = new HoeringClient();\n\nconst SendInnPopin = ({ id, ...rest }: { id: string }) => {\n  const intl = useIntl();\n  const { data: hoering } = useHoering();\n  const { data: uttalelse, mutate } = useUttalelse();\n  const userMalform = useLocale();\n  const innsedingsKode = useInnsendingsKode();\n  const navigate = useNavigate();\n  const [{ ingenMerknader }, dispatch] = useContextState();\n  const { values: uttalelseValues } = useForm();\n\n  const [representererEnkeltperson, setRepresenterer] = useState<boolean>();\n\n  const bekreftRepresentasjonRequired = (valgtMalgruppe: MalgruppeViewModel) =>\n    valgtMalgruppe.bekreftRepresentasjon;\n\n  const fylkeRequired = (valgtMalgruppe: MalgruppeViewModel) =>\n    valgtMalgruppe.geografiObligatoriskhet ===\n      GeografiObligatoriskhet.FylkeOgKommuneObligatorisk ||\n    valgtMalgruppe.geografiObligatoriskhet ===\n      GeografiObligatoriskhet.FylkeObligatorisk;\n\n  const kommuneRequired = (valgtMalgruppe: MalgruppeViewModel) =>\n    valgtMalgruppe.geografiObligatoriskhet ===\n    GeografiObligatoriskhet.FylkeOgKommuneObligatorisk;\n\n  const representererRequired = (valgtMalgruppe: MalgruppeViewModel) =>\n    valgtMalgruppe.innsenderRepresentererObligatoriskhet ===\n    Obligatoriskhet.Obligatorisk;\n\n  const stillingRequired = (valgtMalgruppe: MalgruppeViewModel) =>\n    valgtMalgruppe.innsenderStillingObligatoriskhet ===\n    Obligatoriskhet.Obligatorisk;\n\n  const malgruppeHasValue = (values: Values<FieldType>) => {\n    const { malgruppe } = values;\n    return malgruppe && malgruppe !== \"\" && malgruppe !== \"null\";\n  };\n\n  const { målgrupper } = hoering;\n  const valgtMalgruppe = (values: Values<FieldType>) => {\n    const { malgruppe } = values;\n    return målgrupper.find((m) => m.id === +malgruppe)!;\n  };\n  const sektorer = [...new Set(målgrupper.map((m) => m.sektor))];\n  const formValidation = useFormValidation<FieldType>({\n    navn: {\n      value: \"\",\n      validation: [\n        {\n          ...validationFunctions.required,\n          message: intl.formatMessage({ id: \"validation.navnErObligatorisk\" }),\n        },\n      ],\n    },\n    epost: {\n      value: \"\",\n      validation: [\n        {\n          ...validationFunctions.required,\n          message: intl.formatMessage({ id: \"validation.epostErObligatorisk\" }),\n        },\n        epostValidation(intl),\n      ],\n    },\n    sektor: {\n      value: sektorer.length === 1 ? sektorer[0] : undefined,\n      validation: [\n        {\n          ...validationFunctions.required,\n          message: intl.formatMessage({\n            id: \"validation.sektorErObligatorisk\",\n          }),\n        },\n      ],\n    },\n    malgruppe: {\n      value: målgrupper.length === 1 ? målgrupper[0].id : undefined,\n      validation: [\n        {\n          ...validationFunctions.numberRequired,\n          message: intl.formatMessage({\n            id: \"validation.malgruppeErObligatorisk\",\n          }),\n        },\n      ],\n    },\n    representerer: {\n      value: \"\",\n      validation: [\n        {\n          validation: (input, values) =>\n            !malgruppeHasValue(values) ||\n            !representererRequired(valgtMalgruppe(values)) ||\n            validationFunctions.required.validation(input, values),\n          message: (_, values) =>\n            intl.formatMessage(\n              { id: \"validation.representererErObligatorisk\" },\n              { 0: `${valgtMalgruppe(values).innsenderRepresentererEtikett}` },\n            ),\n        },\n      ],\n    },\n    fylke: {\n      value: \"\",\n      validation: [\n        {\n          validation: (input, values) =>\n            !malgruppeHasValue(values) ||\n            !fylkeRequired(valgtMalgruppe(values)) ||\n            validationFunctions.numberRequired.validation(input, values),\n          message: intl.formatMessage({ id: \"validation.fylkeErObligatorisk\" }),\n        },\n      ],\n    },\n    kommune: {\n      value: \"\",\n      validation: [\n        {\n          validation: (input, values) =>\n            !malgruppeHasValue(values) ||\n            !kommuneRequired(valgtMalgruppe(values)) ||\n            validationFunctions.numberRequired.validation(input, values),\n          message: intl.formatMessage({\n            id: \"validation.kommuneErObligatorisk\",\n          }),\n        },\n      ],\n    },\n    stilling: {\n      value: \"\",\n      validation: [\n        {\n          validation: (input, values) =>\n            !malgruppeHasValue(values) ||\n            !stillingRequired(valgtMalgruppe(values)) ||\n            validationFunctions.required.validation(input, values),\n          message: intl.formatMessage({\n            id: \"validation.navnPaStillingErObligatorisk\",\n          }),\n        },\n      ],\n    },\n    undertype: {\n      value: {},\n      validation: [\n        {\n          validation: (input, values) =>\n            !malgruppeHasValue(values) ||\n            !valgtMalgruppe(values).undertypeErObligatorisk ||\n            Object.keys(input).filter((i) => input[i]).length > 0,\n          message: intl.formatMessage({\n            id: \"validation.oppgiMinstEttAlternativ\",\n          }),\n        },\n      ],\n    },\n    bekreftRepresentasjon: {\n      value: false,\n      validation: [\n        {\n          validation: (input, values) =>\n            !malgruppeHasValue(values) ||\n            !bekreftRepresentasjonRequired(valgtMalgruppe(values)) ||\n            validationFunctions.boolRequired.validation(input, values),\n          message: (_, values) =>\n            valgtMalgruppe(values).bekreftRepresentasjonFeilMelding[\n              getLocaleCode(userMalform)\n            ]\n              ? (valgtMalgruppe(values).bekreftRepresentasjonFeilMelding[\n                  getLocaleCode(userMalform)\n                ] as string)\n              : intl.formatMessage(\n                  { id: \"sendInnPopin.bekreftRepresentasjonFeilMelding\" },\n                  { 0: valgtMalgruppe(values).tittel.toLowerCase() },\n                ),\n        },\n      ],\n    },\n  });\n\n  if (!uttalelse) return null;\n\n  const sendInnForm = async () => {\n    show();\n    try {\n      dispatch({\n        type: \"SET_AUTOSAVING\",\n        payload: false,\n      });\n\n      const vm = mapVm(\n        uttalelse.eksternId,\n        mapFormToUttalelse(uttalelse, uttalelseValues),\n        ingenMerknader,\n        userMalform,\n        false,\n        formValidation.values,\n      );\n\n      const data = await client.submitUttalelse(\n        hoering.id,\n        innsedingsKode,\n        uttalelse.eksternId,\n        vm,\n      );\n      await mutate();\n      close(id);\n      removeUtkast(data.hoeringId, data.eksternId);\n      navigate(routes.uttalelse(data.hoeringId, data.eksternId));\n\n      if (data.bekreftetStatus !== BekreftetStatus.IkkeBekreftet) {\n        newNotification(\n          \"success\",\n          intl.formatMessage({ id: \"uttalelse.uttalelseBekreftet\" }),\n          intl.formatMessage({ id: \"uttalelse.uttalelseVilBliBehandlet\" }),\n        );\n      }\n    } catch (error) {\n      dispatch({\n        type: \"SET_AUTOSAVING\",\n        payload: undefined,\n      });\n    }\n    hide();\n  };\n\n  const popinTitle = ingenMerknader ? (\n    <FormattedMessage id=\"sendInnPopin.viHarIngenMerknaderTilHoeringen\" />\n  ) : (\n    <FormattedMessage id=\"sendInnPopin.title\" />\n  );\n\n  return (\n    <Popin\n      className=\"SendInnPopin\"\n      id={id}\n      title={popinTitle}\n      cancelButton={false}\n    >\n      <SendInnForm\n        popinId={id}\n        {...rest}\n        {...formValidation}\n        representererEnkeltperson={representererEnkeltperson}\n        setRepresenterer={setRepresenterer}\n        onSuccess={sendInnForm}\n      />\n    </Popin>\n  );\n};\n\nexport default SendInnPopin;\n","import { FormattedMessage, useIntl } from \"react-intl\";\nimport { Input } from \"@utdanningsdirektoratet/input\";\nimport { Radio } from \"@utdanningsdirektoratet/radio\";\nimport {\n  Form,\n  useFormValidation,\n  validationFunctions,\n} from \"@utdanningsdirektoratet/form\";\nimport { Popin, PopinFooter, close } from \"@utdanningsdirektoratet/popin\";\nimport { downloadFile } from \"@utdanningsdirektoratet/utils/download\";\nimport { newNotification } from \"@utdanningsdirektoratet/notifications\";\nimport { hide, show } from \"@utdanningsdirektoratet/slowaction\";\nimport { HoeringClient } from \"../../../../ApiClients\";\nimport { urls } from \"../../../../logic/initialState\";\nimport { epostValidation } from \"../../../../logic/validation\";\nimport { useInnsendingsKode, useUttalelse } from \"../../../../hooks\";\n\ntype RadioTypes = \"EPOST\" | \"LAST_NED\";\nconst client = new HoeringClient();\n\nconst LagreUtkastPopin = ({ id, ...rest }: { id: string }) => {\n  const { data: uttalelse } = useUttalelse();\n  const innsendingsKode = useInnsendingsKode();\n  const intl = useIntl();\n\n  const formValidation = useFormValidation<{\n    innsenderEpost: string;\n    type: RadioTypes;\n  }>({\n    innsenderEpost: {\n      value: \"\",\n      validation: [\n        {\n          ...validationFunctions.requiredIf(\n            validationFunctions.required,\n            (_, values) => (values as { type: RadioTypes }).type === \"EPOST\",\n          ),\n          message: intl.formatMessage({ id: \"validation.epostErObligatorisk\" }),\n        },\n        {\n          ...validationFunctions.requiredIf(\n            epostValidation(intl),\n            (_, values) => (values as { type: RadioTypes }).type === \"EPOST\",\n          ),\n          message: epostValidation(intl).message,\n        },\n      ],\n    },\n    type: {\n      value: \"EPOST\",\n      validation: [validationFunctions.required],\n    },\n  });\n  const { fields, values } = formValidation;\n\n  if (!uttalelse) return null;\n\n  const { eksternId } = uttalelse;\n  const onSuccess = async () => {\n    if (values.type === \"EPOST\") {\n      show();\n      const result = await client.lagreUtkast(\n        eksternId,\n        innsendingsKode,\n        values.innsenderEpost,\n      );\n      newNotification(\n        \"success\",\n        result.title!,\n        result.message ?? undefined,\n        true,\n      );\n      hide();\n      close(id);\n    } else if (values.type === \"LAST_NED\") {\n      downloadFile(`${urls.lastNedUtkastUrl}/${eksternId}`, \"get\", {\n        innsendingsKode: innsendingsKode as string,\n      });\n    }\n  };\n\n  return (\n    <Popin\n      className=\"LagreUtkastPopin\"\n      id={id}\n      title={<FormattedMessage id=\"lagreUtkastPopin.title\" />}\n      closeableByExternalEvents\n      cancelButton={false}\n    >\n      <Form {...rest} {...formValidation} onSubmit={onSuccess}>\n        {({ onSubmit }) => {\n          return (\n            <div>\n              <p>\n                <FormattedMessage id=\"lagreUtkastPopin.body\" />\n              </p>\n              <Radio\n                label={\n                  <FormattedMessage id=\"lagreUtkastPopin.saveDraftSendEpost\" />\n                }\n                name=\"lagreUtkast\"\n                checked={fields.type.value === \"EPOST\"}\n                onChange={() => fields.type.onChange(\"EPOST\")}\n                error={fields.type.error}\n              >\n                <p>\n                  <FormattedMessage id=\"lagreUtkastPopin.saveDraftLastNedText\" />\n                </p>\n                <Input\n                  {...fields.innsenderEpost}\n                  type=\"email\"\n                  autoComplete=\"email\"\n                  label={<FormattedMessage id=\"lagreUtkastPopin.epost\" />}\n                />\n              </Radio>\n              <Radio\n                label={\n                  <FormattedMessage id=\"lagreUtkastPopin.saveDraftLastNed\" />\n                }\n                name=\"lagreUtkast\"\n                checked={fields.type.value === \"LAST_NED\"}\n                onChange={() => fields.type.onChange(\"LAST_NED\")}\n                error={fields.type.error}\n                boxed\n              />\n              <PopinFooter\n                popinId={id}\n                onSave={onSubmit}\n                saveButton={<FormattedMessage id=\"formLabels.lagre\" />}\n                cancelButton={<FormattedMessage id=\"formLabels.avbryt\" />}\n              />\n            </div>\n          );\n        }}\n      </Form>\n    </Popin>\n  );\n};\n\nexport default LagreUtkastPopin;\n","import {\n  Form,\n  useFormValidation,\n  validationFunctions,\n} from \"@utdanningsdirektoratet/form\";\nimport { Input } from \"@utdanningsdirektoratet/input\";\nimport { TagsInput, TagType } from \"@utdanningsdirektoratet/tagsinput\";\nimport { Textarea } from \"@utdanningsdirektoratet/textarea\";\nimport { Radio } from \"@utdanningsdirektoratet/radio\";\nimport { Popin, PopinFooter, close } from \"@utdanningsdirektoratet/popin\";\nimport { FormattedMessage, useIntl } from \"react-intl\";\nimport { newNotification } from \"@utdanningsdirektoratet/notifications\";\nimport { hide, show } from \"@utdanningsdirektoratet/slowaction\";\nimport { useInnsendingsKode, useUttalelse } from \"../../../../hooks\";\nimport { epostValidation } from \"../../../../logic/validation\";\nimport { HoeringClient, Målform } from \"../../../../ApiClients\";\nimport { emptyGuid } from \"../../../../StateProvider\";\n\ntype Tilgang = \"LESETILGANG\" | \"SKRIVETILGANG\";\n\nconst client = new HoeringClient();\n\nconst VideresendUtkastPopin = ({ id }: { id: string }) => {\n  const intl = useIntl();\n  const { data: uttalelse } = useUttalelse();\n  const innsendingskode = useInnsendingsKode();\n\n  const formValidation = useFormValidation<{\n    innsenderEpost: string;\n    mottakerEpost: Array<TagType>;\n    kommentar: string;\n    tilgang: Tilgang;\n  }>({\n    innsenderEpost: {\n      value: \"\",\n      validation: [\n        {\n          ...validationFunctions.required,\n          message: intl.formatMessage({ id: \"validation.epostErObligatorisk\" }),\n        },\n        epostValidation(intl),\n      ],\n    },\n    mottakerEpost: {\n      value: [],\n      validation: [\n        {\n          ...validationFunctions.required,\n          message: intl.formatMessage({\n            id: \"validation.manglendeMottagereposter\",\n          }),\n        },\n      ],\n    },\n    kommentar: { value: \"\" },\n    tilgang: {\n      value: \"LESETILGANG\",\n      validation: [validationFunctions.required],\n    },\n  });\n  const { fields, values } = formValidation;\n\n  const videresendUtkast = async () => {\n    show();\n    const result = await client.delUtkast(\n      innsendingskode,\n      uttalelse?.eksternId ?? emptyGuid,\n      {\n        ...values,\n        eksternId: uttalelse?.eksternId ?? emptyGuid,\n        mottakerEpost: values.mottakerEpost.map((m) => m.title),\n        skrivetilgang: values.tilgang === \"SKRIVETILGANG\",\n        userMålform:\n          uttalelse?.userMålform === Målform.Nynorsk\n            ? Målform.Nynorsk\n            : Målform.Bokmål,\n      },\n    );\n    close(id);\n    newNotification(\"success\", result.title!, result.message!, true);\n    hide();\n  };\n\n  return (\n    <Popin\n      id={id}\n      title={<FormattedMessage id=\"videresendPopin.title\" />}\n      closeableByExternalEvents\n      cancelButton={false}\n    >\n      <Form {...formValidation} onSubmit={videresendUtkast}>\n        {({ onSubmit }) => {\n          return (\n            <div>\n              <p>\n                <FormattedMessage id=\"videresendPopin.body\" />\n              </p>\n              <Input\n                {...fields.innsenderEpost}\n                type=\"text\"\n                label={\n                  <FormattedMessage id=\"videresendPopin.delUtkastInnsenderEpost\" />\n                }\n              />\n              <div className=\"u--marginTop1\">\n                <TagsInput\n                  {...fields.mottakerEpost}\n                  delimiters={[\"Enter\", \" \", \"Tab\"]}\n                  validationRegex={window.epostRegex}\n                  label={\n                    <FormattedMessage id=\"videresendPopin.delUtkastMottagernesEposter\" />\n                  }\n                  tagmessage={\n                    <FormattedMessage id=\"validation.maVaereGyldigEpostadresse\" />\n                  }\n                  addOnBlur\n                />\n              </div>\n              <div className=\"u--marginTop3\">\n                <Textarea\n                  label={\n                    <FormattedMessage id=\"videresendPopin.delUtkastKommentar\" />\n                  }\n                  {...fields.kommentar}\n                />\n              </div>\n              <div className=\"u--marginTop3\">\n                <Radio\n                  label={\n                    <FormattedMessage id=\"videresendPopin.delUtkastLeseTilgang\" />\n                  }\n                  name=\"videresendtUtkast\"\n                  checked={fields.tilgang.value === \"LESETILGANG\"}\n                  onChange={() => fields.tilgang.onChange(\"LESETILGANG\")}\n                  error={fields.tilgang.error}\n                />\n                <Radio\n                  label={\n                    <FormattedMessage id=\"videresendPopin.delUtkastSkriveTilgang\" />\n                  }\n                  className=\"u--marginTop1\"\n                  name=\"videresendtUtkast\"\n                  checked={fields.tilgang.value === \"SKRIVETILGANG\"}\n                  onChange={() => fields.tilgang.onChange(\"SKRIVETILGANG\")}\n                  error={fields.tilgang.error}\n                />\n              </div>\n              <PopinFooter\n                popinId={id}\n                onSave={onSubmit}\n                cancelButton={<FormattedMessage id=\"formLabels.avbryt\" />}\n                saveButton={<FormattedMessage id=\"formLabels.videresend\" />}\n              />\n            </div>\n          );\n        }}\n      </Form>\n    </Popin>\n  );\n};\n\nexport default VideresendUtkastPopin;\n","import { InpageMessage } from \"@utdanningsdirektoratet/inpagemessage\";\nimport { FormattedMessage, useIntl } from \"react-intl\";\nimport { PubliseringsStatus } from \"../../../../ApiClients\";\nimport {\n  useForhåndsvisning,\n  useHoering,\n  useUttalelse,\n} from \"../../../../hooks\";\n\nconst MessageBanner = ({\n  editManueltRegistert,\n}: {\n  editManueltRegistert?: boolean | undefined;\n}) => {\n  const intl = useIntl();\n  const { data: hoering } = useHoering();\n  const { data: uttalelse } = useUttalelse();\n  const { publiseringsStatus } = hoering;\n  const forhandsvisning = useForhåndsvisning();\n\n  const { innsendt = false, manueltRegistrert = false } = uttalelse ?? {};\n\n  const utgatt = hoering.isExpired;\n  const lukketMenKanSendesInn =\n    hoering.isClosedOrExpired && hoering.lukketInnsending;\n\n  let message;\n  if (editManueltRegistert) {\n    message = (\n      <span\n        // eslint-disable-next-line react/no-danger\n        dangerouslySetInnerHTML={{\n          __html: intl.formatMessage({\n            id: \"uttalelse.andreKanalerRedigering\",\n          }),\n        }}\n      />\n    );\n  } else if (manueltRegistrert) {\n    message = <FormattedMessage id=\"uttalelse.manueltRegistrert\" />;\n  } else if (lukketMenKanSendesInn) {\n    message = <FormattedMessage id=\"uttalelse.lukketMenKanSendesInn\" />;\n  } else if (\n    !innsendt &&\n    publiseringsStatus === PubliseringsStatus.IkkePublisert &&\n    !forhandsvisning\n  ) {\n    message = <FormattedMessage id=\"uttalelse.denneHoeringenErIkkePublisert\" />;\n  } else if (\n    (!innsendt && publiseringsStatus === PubliseringsStatus.PublisertLukket) ||\n    forhandsvisning\n  ) {\n    message = <FormattedMessage id=\"uttalelse.ikkeApenForUttalelse\" />;\n  } else if (\n    !innsendt &&\n    publiseringsStatus === PubliseringsStatus.PublisertÅpen &&\n    utgatt\n  ) {\n    message = <FormattedMessage id=\"uttalelse.fristUtlopt\" />;\n  }\n\n  if (!message) return null;\n\n  return (\n    <InpageMessage\n      type=\"warning\"\n      message={message}\n      className=\"u--marginBottom1\"\n    />\n  );\n};\n\nexport default MessageBanner;\n","import { FormattedMessage } from \"react-intl\";\nimport { formatDate } from \"@utdanningsdirektoratet/utils/date\";\nimport { institusjonNavnLang, logoUrl } from \"../../../../logic/initialState\";\nimport { DATE_FORMAT } from \"../../../../constants/dateFormats\";\n\nconst Header = ({\n  avsender,\n  frist,\n  publisert,\n  referanse,\n}: {\n  avsender?: string | null | undefined;\n  frist?: Date | null | undefined;\n  publisert?: Date | null | undefined;\n  referanse?: string | null | undefined;\n}) => {\n  return (\n    <div className=\"Header\">\n      <div className=\"Grid-12-12\">\n        <img src={logoUrl} alt={institusjonNavnLang} className=\"Header-logo\" />\n      </div>\n      <div className=\"Header-content Grid-xl-6-12 Grid-12-12\">\n        {avsender ? (\n          <span>\n            <div className=\"Header-title\">\n              <FormattedMessage id=\"header.varSaksbehandler\" />\n            </div>\n            {avsender}\n          </span>\n        ) : null}\n      </div>\n      <div className=\"Grid-xl-6-12 Grid-12-12\">\n        {frist ? (\n          <div className=\"Header-content Grid-4-12\">\n            <span>\n              <div className=\"Header-title\">\n                <FormattedMessage id=\"header.fristForUttalelse\" />\n              </div>\n              {formatDate(frist, DATE_FORMAT)}\n            </span>\n          </div>\n        ) : null}\n        {publisert ? (\n          <div className=\"Header-content Grid-4-12\">\n            <span>\n              <div className=\"Header-title\">\n                <FormattedMessage id=\"header.publisertDato\" />\n              </div>\n              {formatDate(publisert, DATE_FORMAT)}\n            </span>\n          </div>\n        ) : null}\n        {referanse && referanse !== \"eInnsyn\" ? (\n          <div className=\"Header-content Grid-4-12\">\n            <span>\n              <div className=\"Header-title\">\n                <FormattedMessage id=\"header.varReferanse\" />\n              </div>\n              {referanse}\n            </span>\n          </div>\n        ) : null}\n      </div>\n    </div>\n  );\n};\n\nexport default Header;\n","import { Link, useSearchParams } from \"react-router-dom\";\nimport { FormattedMessage } from \"react-intl\";\nimport { getTextWithLocale } from \"../../../../utils/localeUtils\";\nimport { HøringsNotatViewModel } from \"../../../../ApiClients\";\nimport { useLocale } from \"../../../../hooks\";\n\nconst NotatLink = ({\n  notat,\n  ingenMerkander,\n}: {\n  notat: HøringsNotatViewModel;\n  ingenMerkander: boolean;\n}) => {\n  const [searchParams] = useSearchParams();\n  const locale = useLocale();\n  searchParams.set(\"notatId\", `${notat.id}`);\n  return (\n    <Link className=\"Sidebar-item-link\" to={`?${searchParams.toString()}`}>\n      {getTextWithLocale(notat.menyTittel, locale)}\n      {ingenMerkander ? (\n        <div className=\"Sidebar-item-label\">\n          <FormattedMessage id=\"innsendtUttalelse.ingenMerknader\" />\n        </div>\n      ) : null}\n    </Link>\n  );\n};\n\nexport default NotatLink;\n","import { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { formatDate } from \"@utdanningsdirektoratet/utils/date\";\nimport { Icon } from \"@utdanningsdirektoratet/icon\";\nimport { FormattedMessage } from \"react-intl\";\nimport NotatLink from \"./NotatLink\";\nimport { HøringsNotatViewModel } from \"../../../../ApiClients\";\nimport { TIMESTAMP_FORMAT } from \"../../../../constants/dateFormats\";\nimport { useUttalelse } from \"../../../../hooks\";\nimport { useContextState } from \"../../../../StateProvider\";\n\nconst getNotatLink = (\n  currentNotat: HøringsNotatViewModel,\n  notat: HøringsNotatViewModel,\n  ingenMerkander: boolean = false,\n) => {\n  const selected = currentNotat.id === notat.id;\n  const itemClass = cls({\n    \"Sidebar-item\": true,\n    \"Sidebar-item--selected\": selected,\n  });\n  return (\n    <div className={itemClass} key={`sidebar-item-${notat.id}`}>\n      <NotatLink notat={notat} ingenMerkander={ingenMerkander} />\n      <Icon className=\"Sidebar-item-icon\" type=\"small\" icon=\"angle right\" />\n    </div>\n  );\n};\n\nconst Sidebar = ({\n  currentNotat,\n  notater,\n  innsendt = false,\n  showTimestamp,\n}: {\n  currentNotat: HøringsNotatViewModel;\n  notater: Array<HøringsNotatViewModel>;\n  innsendt?: boolean;\n  showTimestamp: boolean;\n}) => {\n  const { data: uttalelse } = useUttalelse();\n  const [{ autosaving }] = useContextState();\n\n  const body = notater\n    .filter(\n      (n) =>\n        !innsendt ||\n        uttalelse?.notater.find((hnu) => hnu.notatId === n.id)?.hasFeedback ||\n        n.rekkefølge === 0,\n    )\n    .sort((a, b) => a.rekkefølge - b.rekkefølge)\n    .map((notat) => getNotatLink(currentNotat, notat));\n\n  if (body.length <= 1) return null;\n\n  const notaterWithoutFeedback = notater\n    .filter(\n      (n) =>\n        innsendt &&\n        !uttalelse?.notater.find((hnu) => hnu.notatId === n.id)?.hasFeedback &&\n        n.rekkefølge !== 0,\n    )\n    .map((notat) => getNotatLink(currentNotat, notat, true));\n\n  const timestampClass = cls({\n    \"Sidebar-timestamp\": true,\n    \"Sidebar-timestamp--visible\":\n      showTimestamp && autosaving !== undefined && !!uttalelse?.endret,\n  });\n\n  return (\n    <nav className=\"Sidebar\">\n      <div className=\"Sidebar-wrapper\">{body}</div>\n\n      {innsendt && notaterWithoutFeedback.length > 0 ? (\n        <div className=\"Sidebar-wrapper Sidebar-wrapper--faded\">\n          {notaterWithoutFeedback}\n        </div>\n      ) : null}\n      {autosaving !== undefined || !!uttalelse?.endret ? (\n        <div className={timestampClass}>\n          <FormattedMessage id=\"uttalelse.sistLagret\" />:{\" \"}\n          {autosaving !== true && !!uttalelse?.endret ? (\n            formatDate(uttalelse?.endret, TIMESTAMP_FORMAT)\n          ) : (\n            <FormattedMessage id=\"uttalelse.lagrerUtkastSpinner\" />\n          )}\n        </div>\n      ) : null}\n    </nav>\n  );\n};\n\nexport default Sidebar;\n","import { FormattedMessage } from \"react-intl\";\nimport { Icon } from \"@utdanningsdirektoratet/icon\";\nimport { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { useContextState } from \"../StateProvider\";\nimport { useUttalelse } from \"../hooks\";\n\nconst AutoSaveLoader = () => {\n  const { data: uttalelse } = useUttalelse();\n  const [{ autosaving }] = useContextState();\n\n  if (uttalelse?.innsendt) return null;\n\n  let content = <span>&nbsp;</span>;\n  if (autosaving === true) {\n    content = (\n      <span>\n        <FormattedMessage id=\"uttalelse.lagrerUtkastSpinner\" />\n        <div className=\"AutoSaveLoader-spinner\">\n          <div className=\"AutoSaveLoader-spinner-rect AutoSaveLoader-spinner-rect-1\" />\n          <div className=\"AutoSaveLoader-spinner-rect AutoSaveLoader-spinner-rect-2\" />\n          <div className=\"AutoSaveLoader-spinner-rect AutoSaveLoader-spinner-rect-3\" />\n          <div className=\"AutoSaveLoader-spinner-rect AutoSaveLoader-spinner-rect-4\" />\n          <div className=\"AutoSaveLoader-spinner-rect AutoSaveLoader-spinner-rect-5\" />\n        </div>\n      </span>\n    );\n  } else if (autosaving !== undefined && !!uttalelse?.endret) {\n    content = (\n      <span>\n        <FormattedMessage id=\"uttalelse.utkastLagretSpinner\" />\n        <Icon color=\"white\" type=\"small\" placement=\"after\" icon=\"check\" />\n      </span>\n    );\n  }\n\n  const autoSaveLoaderClass = cls({\n    AutoSaveLoader: true,\n    \"AutoSaveLoader--visible\": autosaving !== undefined,\n  });\n\n  return <div className={autoSaveLoaderClass}>{content}</div>;\n};\n\nexport default AutoSaveLoader;\n","import { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { Element } from \"react-scroll\";\nimport {\n  useLocation,\n  useMatch,\n  useNavigate,\n  useSearchParams,\n} from \"react-router-dom\";\nimport { useCallback, useEffect } from \"react\";\nimport { show, usePopin } from \"@utdanningsdirektoratet/popin\";\nimport { debounce } from \"lodash\";\nimport {\n  MappedProps,\n  useFormValidation,\n  Form,\n  validationFunctions,\n} from \"@utdanningsdirektoratet/form\";\nimport { useIntl } from \"react-intl\";\nimport { isValidDate } from \"@utdanningsdirektoratet/utils/date\";\nimport { newNotification } from \"@utdanningsdirektoratet/notifications\";\nimport InnsendtHeader from \"./components/hoeringsUttalelse/InnsendtHeader\";\nimport IngenMerknader from \"./components/hoeringsUttalelse/IngenMerknader\";\nimport IngenMerknaderManueltRegistrert from \"./components/hoeringsUttalelse/IngenMerknaderManueltRegistrert\";\nimport Innholdsfortegnelse from \"./components/Innholdsfortegnelse\";\nimport LagreOgGaTilbake from \"./components/hoeringsUttalelse/LagreOgGaTilbake\";\nimport LagreOgSendInn from \"./components/hoeringsUttalelse/LagreOgSendInn\";\nimport SeksjonUttalelse from \"./components/uttalelse/SeksjonUttalelse\";\nimport NotatUttalelse from \"./components/uttalelse/NotatUttalelse\";\nimport Signatur from \"./components/hoeringsUttalelse/Signatur\";\nimport Fotnoter from \"./components/hoeringsUttalelse/Fotnoter\";\nimport Vedlegg from \"./components/hoeringsUttalelse/Vedlegg\";\nimport SendInnPopin from \"./components/sendInn/SendInnPopin\";\nimport LagreUtkastPopin from \"./components/lagreUtkast/LagreUtkastPopin\";\nimport VideresendUtkastPopin from \"./components/videresendUtkast/VideresendUtkastPopin\";\nimport MessageBanner from \"./components/hoeringsUttalelse/MessageBanner\";\nimport Header from \"./components/hoeringsUttalelse/Header\";\nimport Sidebar from \"./components/sidebar/Sidebar\";\nimport {\n  EnigUenig,\n  FylkeKommuneTypes,\n  HoeringClient,\n  JaNei,\n  KortSvarTypes,\n  PositivNegativHoldning,\n  PubliseringsStatus,\n  SpørsmålUttalelseVedleggViewModel,\n  SvarPåAlternativViewModel,\n} from \"../../ApiClients\";\nimport {\n  useAutoSave,\n  useHoering,\n  useLeseTilgangsKode,\n  useLocale,\n  useManuellRegistreringsKode,\n  useNotatId,\n  useUttalelse,\n} from \"../../hooks\";\nimport {\n  getNextNotat,\n  getNotat,\n  getNotatFormId,\n  getSpørsmålFormId,\n  NotatFormId,\n  SpørsmålFormId,\n} from \"../../utils/hoeringUtils\";\nimport DocumentMetadata from \"../../components/DocumentMetadata\";\nimport { features, institusjonNavnLang } from \"../../logic/initialState\";\nimport AutoSaveLoader from \"../../components/AutoSaveLoader\";\nimport {\n  getDefaultLocaleFromMalforms,\n  getTextWithLocale,\n} from \"../../utils/localeUtils\";\nimport {\n  navigateToFootnote,\n  navigateToNotat,\n} from \"../../utils/navigationUtils\";\nimport { emptyGuid, useContextState } from \"../../StateProvider\";\nimport {\n  addOrUpdateUtkast,\n  getUtkasts,\n  removeUtkast,\n} from \"../../utils/localStorageUtils\";\nimport { routes } from \"../../routes\";\nimport {\n  angittDato,\n  angittEnigUenig,\n  angittEttValg,\n  angittFlereValg,\n  angittFylke,\n  angittFylkeKommune,\n  angittHeltall,\n  angittJaNei,\n  angittKommentar,\n  angittKommune,\n  angittKortTekst,\n  angittPositivNegativ,\n  angittVedlegg,\n  gyldigHetall,\n  gyldigKortTekst,\n} from \"../../logic/validation\";\nimport HoeringsFooter from \"../../components/Footer\";\n\nconst client = new HoeringClient();\n\nfunction filterFalsy<T extends Record<string, unknown>>(obj: T) {\n  return Object.keys(obj).reduce<T>((acc, key) => {\n    if (obj[key]) {\n      return {\n        ...acc,\n        [key]: obj[key],\n      };\n    }\n\n    return acc;\n  }, {} as T);\n}\n\nconst HoeringsUttalelse = ({ utkastPopinId }: { utkastPopinId: string }) => {\n  const locale = useLocale();\n  const { data: uttalelse, mutate: mutateUttalelse } = useUttalelse();\n  const { data: hoering, mutate: mutateHoering } = useHoering();\n  const navigate = useNavigate();\n  const location = useLocation();\n  const searchParams = useSearchParams();\n  const leseTilgangsKode = useLeseTilgangsKode();\n  const [{ ingenMerknader, autosaving, pendingchanges }, dispatch] =\n    useContextState();\n  const { trigger } = useAutoSave();\n  const intl = useIntl();\n  const manuellRegistreringsKode = useManuellRegistreringsKode();\n  let notatId = +(useNotatId() ?? NaN);\n  if (!notatId) {\n    const notatsWithFeedback =\n      hoering.notater.filter(\n        (n) =>\n          uttalelse?.notater?.find((hnu) => hnu.notatId === n.id)?.hasFeedback,\n      ) ?? [];\n    notatId =\n      notatsWithFeedback.length > 0\n        ? notatsWithFeedback[0].id\n        : hoering.notater.sort((a, b) => a.rekkefølge - b.rekkefølge)[0]?.id;\n  }\n\n  // eslint-disable-next-line react-hooks/exhaustive-deps\n  const debouncedSave = useCallback(\n    debounce((callback: () => void) => {\n      callback();\n    }, 2000),\n    [],\n  );\n\n  const lukketMenKanSendesInn =\n    hoering.isClosedOrExpired && hoering.lukketInnsending;\n  const readOnly =\n    !lukketMenKanSendesInn &&\n    (hoering.isLukketForUttalelser ||\n      uttalelse?.manueltRegistrert ||\n      hoering.publiseringsStatus !== PubliseringsStatus.PublisertÅpen ||\n      hoering.isClosedOrExpired ||\n      !!leseTilgangsKode);\n\n  const currentNotat = getNotat(notatId, hoering);\n  const nextNotat = getNextNotat(notatId, hoering);\n\n  const [sendInnPopinId] = usePopin();\n  const [lagreUtkastPopinId] = usePopin();\n  const [videresendUtkastPopinId] = usePopin();\n\n  const { id, publiseringsStatus, frist, publisert } = hoering;\n  const {\n    eksternId,\n    innsendt = false,\n    manueltRegistrert = false,\n  } = uttalelse ?? {};\n  const editManueltRegistert = manueltRegistrert && !!manuellRegistreringsKode;\n  const hoeringRoute = useMatch(routes.hoering(\":hoeringId\"));\n  const utkastRoute = useMatch(routes.utkast(\":hoeringId\", \":eksternId\"));\n\n  const formValidation = useFormValidation(\n    filterFalsy<MappedProps<Record<NotatFormId | SpørsmålFormId, unknown>>>({\n      ...hoering.notater.reduce<MappedProps<Record<NotatFormId, unknown>>>(\n        (acc, curr) =>\n          ({\n            ...acc,\n            [getNotatFormId(curr.id, \"generellHoldning\")]:\n              curr.kanHaGenerellHoldning\n                ? {\n                    value:\n                      uttalelse?.notater.find((n) => n.notatId === curr.id)\n                        ?.generellHoldning ?? PositivNegativHoldning.IkkeAngitt,\n                    validation: [\n                      {\n                        validation: (\n                          value: PositivNegativHoldning,\n                          values: Record<NotatFormId, string>,\n                        ) =>\n                          !(\n                            angittKommentar(\n                              values[\n                                getNotatFormId(curr.id, \"generellKommentar\")\n                              ],\n                            ) && !angittPositivNegativ(value)\n                          ),\n                        message: intl.formatMessage({\n                          id: \"validation.oppgiPositivNegativ\",\n                        }),\n                      },\n                    ],\n                  }\n                : undefined,\n            [getNotatFormId(curr.id, \"generellKommentar\")]:\n              curr.kanHaGenerellKommentar\n                ? {\n                    value:\n                      uttalelse?.notater.find((n) => n.notatId === curr.id)\n                        ?.generellKommentar ?? \"\",\n                  }\n                : undefined,\n          }) satisfies MappedProps<Record<NotatFormId, unknown>>,\n        {},\n      ),\n      ...hoering.notater\n        .flatMap((n) => n.seksjoner)\n        .flatMap((s) => s.spørsmål)\n        .reduce<MappedProps<Record<SpørsmålFormId, unknown>>>(\n          (acc, curr) =>\n            ({\n              ...acc,\n              [getSpørsmålFormId(curr.id, \"positivNegativHoldning\")]: curr\n                .positivNegativ.canHave\n                ? {\n                    value:\n                      uttalelse?.spørsmål.find(\n                        (sp) => sp.spørsmålId === curr.id,\n                      )?.positivNegativHoldning ??\n                      PositivNegativHoldning.IkkeAngitt,\n                    validation: [\n                      {\n                        validation: (\n                          value: PositivNegativHoldning,\n                          values: Record<SpørsmålFormId, string>,\n                        ) =>\n                          !(\n                            (curr.positivNegativ.isObligatorisk ||\n                              angittKommentar(\n                                values[getSpørsmålFormId(curr.id, \"kommentar\")],\n                              )) &&\n                            !angittPositivNegativ(value)\n                          ),\n                        message: intl.formatMessage({\n                          id: \"validation.oppgiPositivNegativ\",\n                        }),\n                      },\n                    ],\n                  }\n                : undefined,\n              [getSpørsmålFormId(curr.id, \"jaNei\")]: curr.jaNei.canHave\n                ? {\n                    value:\n                      uttalelse?.spørsmål.find(\n                        (sp) => sp.spørsmålId === curr.id,\n                      )?.jaNei ?? JaNei.IkkeAngitt,\n                    validation: [\n                      {\n                        validation: (\n                          value: JaNei,\n                          values: Record<SpørsmålFormId, string>,\n                        ) =>\n                          !(\n                            (curr.jaNei.isObligatorisk ||\n                              angittKommentar(\n                                values[getSpørsmålFormId(curr.id, \"kommentar\")],\n                              )) &&\n                            !angittJaNei(value)\n                          ),\n                        message: intl.formatMessage({\n                          id: \"validation.oppgiJaNei\",\n                        }),\n                      },\n                    ],\n                  }\n                : undefined,\n              [getSpørsmålFormId(curr.id, \"enigUenig\")]: curr.enigUenig.canHave\n                ? {\n                    value:\n                      uttalelse?.spørsmål.find(\n                        (sp) => sp.spørsmålId === curr.id,\n                      )?.enigUenig ?? EnigUenig.IkkeAngitt,\n                    validation: [\n                      {\n                        validation: (\n                          value: EnigUenig,\n                          values: Record<SpørsmålFormId, string>,\n                        ) =>\n                          !(\n                            (curr.enigUenig.isObligatorisk ||\n                              angittKommentar(\n                                values[getSpørsmålFormId(curr.id, \"kommentar\")],\n                              )) &&\n                            !angittEnigUenig(value)\n                          ),\n                        message: intl.formatMessage({\n                          id: \"validation.oppgiEnigUenig\",\n                        }),\n                      },\n                    ],\n                  }\n                : undefined,\n              [getSpørsmålFormId(curr.id, \"heltall\")]: curr.heltall.canHave\n                ? {\n                    value: `${\n                      uttalelse?.spørsmål.find(\n                        (sp) => sp.spørsmålId === curr.id,\n                      )?.heltall ?? \"\"\n                    }`,\n                    validation: [\n                      {\n                        validation: (value: string) =>\n                          !(\n                            (curr.heltall.isObligatorisk &&\n                              !angittHeltall(parseInt(value, 10))) ||\n                            !gyldigHetall(parseInt(value, 10))\n                          ),\n                        message: intl.formatMessage({\n                          id: \"validation.oppgiHeltall\",\n                        }),\n                      },\n                    ],\n                  }\n                : undefined,\n              [getSpørsmålFormId(curr.id, \"svarPåSvarAlternativer\")]: curr\n                .svarAlternativer.canHave\n                ? {\n                    value:\n                      uttalelse?.spørsmål.find(\n                        (sp) => sp.spørsmålId === curr.id,\n                      )?.svarPåSvarAlternativer ?? [],\n                    validation: [\n                      {\n                        validation: (value: Array<SvarPåAlternativViewModel>) =>\n                          !(\n                            curr.svarAlternativer.isObligatorisk &&\n                            !(curr.svarAlternativer.flereValg\n                              ? angittFlereValg(value)\n                              : angittEttValg(value)) &&\n                            curr.svarAlternativer.svarAlternativ.length > 1\n                          ),\n                        message: intl.formatMessage({\n                          id: \"validation.oppgiEttValg\",\n                        }),\n                      },\n                      {\n                        validation: (value: Array<SvarPåAlternativViewModel>) =>\n                          !(\n                            curr.svarAlternativer.isObligatorisk &&\n                            !(curr.svarAlternativer.flereValg\n                              ? angittFlereValg(value)\n                              : angittEttValg(value)) &&\n                            curr.svarAlternativer.svarAlternativ.length <= 1\n                          ),\n                        message: intl.formatMessage({\n                          id: \"validation.vennligstKryssAv\",\n                        }),\n                      },\n                      {\n                        validation: (value: Array<SvarPåAlternativViewModel>) =>\n                          curr.svarAlternativer.svarAlternativ\n                            .filter((alt) => alt.erEgendefinert)\n                            .map((alt) => alt.id)\n                            .filter((_id) =>\n                              value.find(\n                                (spsa) =>\n                                  spsa.svarAlternativId === _id &&\n                                  spsa.flereValg ===\n                                    curr.svarAlternativer.flereValg,\n                              ),\n                            )\n                            .map(\n                              (_id) =>\n                                value.find(\n                                  (spsa) => spsa.svarAlternativId === _id,\n                                )!,\n                            )\n                            .filter(\n                              (spsa) =>\n                                !(\n                                  spsa.egendefinertSvar &&\n                                  spsa.egendefinertSvar.trim()\n                                ),\n                            ).length === 0,\n                        message: intl.formatMessage({\n                          id: \"validation.annetMaHaTekst\",\n                        }),\n                      },\n                    ],\n                  }\n                : undefined,\n              [getSpørsmålFormId(curr.id, \"kortTekst\")]: curr.kortTekst.canHave\n                ? {\n                    value:\n                      uttalelse?.spørsmål.find(\n                        (sp) => sp.spørsmålId === curr.id,\n                      )?.kortTekst ?? \"\",\n                    validation: [\n                      {\n                        validation: (value: string) => {\n                          switch (curr.kortTekst.type) {\n                            case KortSvarTypes.Kontonr:\n                              return !(\n                                (curr.kortTekst.isObligatorisk &&\n                                  !angittKortTekst(value)) ||\n                                !gyldigKortTekst(\n                                  value,\n                                  validationFunctions.kontonummer.validation,\n                                )\n                              );\n                            case KortSvarTypes.Orgnr:\n                              return !(\n                                (curr.kortTekst.isObligatorisk &&\n                                  !angittKortTekst(value)) ||\n                                !gyldigKortTekst(\n                                  value,\n                                  validationFunctions.organisasjonsnummer\n                                    .validation,\n                                )\n                              );\n                            case KortSvarTypes.Epost:\n                              return !(\n                                (curr.kortTekst.isObligatorisk &&\n                                  !angittKortTekst(value)) ||\n                                !gyldigKortTekst(\n                                  value,\n                                  validationFunctions.email.validation,\n                                )\n                              );\n                            case KortSvarTypes.Tekst:\n                              return !(\n                                curr.kortTekst.isObligatorisk &&\n                                !angittKortTekst(value)\n                              );\n                            default:\n                              return true;\n                          }\n                        },\n                        message: () => {\n                          switch (curr.kortTekst.type) {\n                            case KortSvarTypes.Kontonr:\n                              return intl.formatMessage({\n                                id: \"validation.oppgiKortTekstKontonr\",\n                              });\n                            case KortSvarTypes.Orgnr:\n                              return intl.formatMessage({\n                                id: \"validation.oppgiKortTekstOrgnr\",\n                              });\n                            case KortSvarTypes.Epost:\n                              return intl.formatMessage({\n                                id: \"validation.oppgiKortTekstEpost\",\n                              });\n                            case KortSvarTypes.Tekst:\n                              return intl.formatMessage({\n                                id: \"validation.oppgiKortTekst\",\n                              });\n                            default:\n                              return undefined;\n                          }\n                        },\n                      },\n                    ],\n                  }\n                : undefined,\n              [getSpørsmålFormId(curr.id, \"dato\")]: curr.dato.canHave\n                ? {\n                    value: uttalelse?.spørsmål.find(\n                      (sp) => sp.spørsmålId === curr.id,\n                    )?.dato,\n                    validation: [\n                      {\n                        validation: (value: Date) =>\n                          !(curr.dato.isObligatorisk && !angittDato(value)),\n                        message: intl.formatMessage({\n                          id: \"validation.oppgiDato\",\n                        }),\n                      },\n                      {\n                        validation: (value: Date) =>\n                          !(curr.dato.isObligatorisk && !isValidDate(value)),\n                        message: intl.formatMessage({\n                          id: \"validation.ugyldigDato\",\n                        }),\n                      },\n                    ],\n                  }\n                : undefined,\n              [getSpørsmålFormId(curr.id, \"fylkeKommune\")]: curr.fylkeKommune\n                .canHave\n                ? {\n                    value:\n                      uttalelse?.spørsmål.find(\n                        (sp) => sp.spørsmålId === curr.id,\n                      )?.fylkeKommune ?? [],\n                    validation: [\n                      {\n                        validation: (value: Array<string>) =>\n                          !(\n                            (curr.fylkeKommune.isObligatorisk ||\n                              angittFylkeKommune(value)) &&\n                            curr.fylkeKommune.type ===\n                              FylkeKommuneTypes.Kommune &&\n                            !angittKommune(value)\n                          ),\n                        message: intl.formatMessage({\n                          id: \"validation.oppgiKommune\",\n                        }),\n                      },\n                      {\n                        validation: (value: Array<string>) =>\n                          !(\n                            (curr.fylkeKommune.isObligatorisk ||\n                              angittFylkeKommune(value)) &&\n                            curr.fylkeKommune.type ===\n                              FylkeKommuneTypes.Fylke &&\n                            !angittFylke(value)\n                          ),\n                        message: intl.formatMessage({\n                          id: \"validation.oppgiFylke\",\n                        }),\n                      },\n                      {\n                        validation: (value: Array<string>) =>\n                          !(\n                            curr.fylkeKommune.isObligatorisk &&\n                            curr.fylkeKommune.type ===\n                              FylkeKommuneTypes.FylkeKommune &&\n                            !angittFylkeKommune(value)\n                          ),\n                        message: intl.formatMessage({\n                          id: \"validation.oppgiFylkeKommune\",\n                        }),\n                      },\n                    ],\n                  }\n                : undefined,\n              [getSpørsmålFormId(curr.id, \"vedlegg\")]: curr.vedlegg.canHave\n                ? {\n                    value:\n                      uttalelse?.spørsmål.find(\n                        (sp) => sp.spørsmålId === curr.id,\n                      )?.vedlegg ?? [],\n                    validation: [\n                      {\n                        validation: (\n                          value: Array<SpørsmålUttalelseVedleggViewModel>,\n                        ) =>\n                          !(\n                            curr.vedlegg.isObligatorisk && !angittVedlegg(value)\n                          ),\n                        message: intl.formatMessage({\n                          id: \"validation.oppgiVedlegg\",\n                        }),\n                      },\n                    ],\n                  }\n                : undefined,\n              [getSpørsmålFormId(curr.id, \"kommentar\")]: curr.kommentar.canHave\n                ? {\n                    value:\n                      uttalelse?.spørsmål.find((n) => n.spørsmålId === curr.id)\n                        ?.kommentar ?? \"\",\n                    validation: [\n                      {\n                        validation: (value: string) =>\n                          !(\n                            curr.kommentar.isObligatorisk &&\n                            !angittKommentar(value)\n                          ),\n                        message: intl.formatMessage({\n                          id: \"validation.oppgiKommentar\",\n                        }),\n                      },\n                      {\n                        validation: (\n                          value: string,\n                          values: Record<SpørsmålFormId, EnigUenig>,\n                        ) =>\n                          !(\n                            !angittKommentar(value) &&\n                            angittEnigUenig(\n                              values[getSpørsmålFormId(curr.id, \"enigUenig\")],\n                            ) &&\n                            curr.kommentar.obligatoriskKommentarEnigUenig?.some(\n                              (s) =>\n                                s ===\n                                values[getSpørsmålFormId(curr.id, \"enigUenig\")],\n                            )\n                          ),\n                        message: intl.formatMessage({\n                          id: \"validation.oppgiKommentar\",\n                        }),\n                      },\n                      {\n                        validation: (\n                          value: string,\n                          values: Record<SpørsmålFormId, JaNei>,\n                        ) =>\n                          !(\n                            !angittKommentar(value) &&\n                            angittJaNei(\n                              values[getSpørsmålFormId(curr.id, \"jaNei\")],\n                            ) &&\n                            curr.kommentar.obligatoriskKommentarJaNei?.some(\n                              (s) =>\n                                s ===\n                                values[getSpørsmålFormId(curr.id, \"jaNei\")],\n                            )\n                          ),\n                        message: intl.formatMessage({\n                          id: \"validation.oppgiKommentar\",\n                        }),\n                      },\n                      {\n                        validation: (\n                          value: string,\n                          values: Record<\n                            SpørsmålFormId,\n                            PositivNegativHoldning\n                          >,\n                        ) =>\n                          !(\n                            !angittKommentar(value) &&\n                            angittPositivNegativ(\n                              values[\n                                getSpørsmålFormId(\n                                  curr.id,\n                                  \"positivNegativHoldning\",\n                                )\n                              ],\n                            ) &&\n                            curr.kommentar.obligatoriskKommentarPositivNegativ?.some(\n                              (s) =>\n                                s ===\n                                values[\n                                  getSpørsmålFormId(\n                                    curr.id,\n                                    \"positivNegativHoldning\",\n                                  )\n                                ],\n                            )\n                          ),\n                        message: intl.formatMessage({\n                          id: \"validation.oppgiKommentar\",\n                        }),\n                      },\n                    ],\n                  }\n                : undefined,\n            }) satisfies MappedProps<Record<SpørsmålFormId, unknown>>,\n          {},\n        ),\n    } satisfies MappedProps<Record<NotatFormId | SpørsmålFormId, unknown>>),\n    {\n      onChange: () => {\n        dispatch({\n          type: \"SET_PENDINGCHANGES\",\n          payload: eksternId ?? emptyGuid,\n        });\n      },\n    },\n  );\n\n  useEffect(() => {\n    // Set locale if default doesnt exist in høring\n    if (!hoering.målforms.includes(locale)) {\n      dispatch({\n        type: \"SET_LOCALE\",\n        payload: getDefaultLocaleFromMalforms(hoering.målforms),\n      });\n    }\n  }, [dispatch, hoering.målforms, locale]);\n\n  useEffect(() => {\n    // Set locale if default doesnt match usermålform\n    if (uttalelse && uttalelse.innsendt && uttalelse.userMålform !== locale) {\n      dispatch({\n        type: \"SET_LOCALE\",\n        payload: uttalelse.userMålform,\n      });\n    }\n  }, [dispatch, locale, uttalelse]);\n\n  useEffect(() => {\n    // Show utkast popin if utkasts exist\n    const utkasts = getUtkasts(hoering.id);\n    const showUtkastPopin =\n      !uttalelse?.innsendt &&\n      hoering.publiseringsStatus === PubliseringsStatus.PublisertÅpen &&\n      utkasts.length > 0 &&\n      !!hoeringRoute;\n    if (showUtkastPopin) show(utkastPopinId);\n    // eslint-disable-next-line react-hooks/exhaustive-deps\n  }, []);\n\n  useEffect(() => {\n    // Refresh høring if path is changed\n    if (location.pathname) mutateHoering();\n  }, [location.pathname, mutateHoering]);\n\n  useEffect(() => {\n    // Reset saving and ingenMerknader on uttalelse changes\n    if (!uttalelse || uttalelse.eksternId === emptyGuid) {\n      dispatch({ type: \"SET_AUTOSAVING\", payload: undefined });\n      dispatch({ type: \"SET_INGENMERKNADER\", payload: false });\n    }\n  }, [dispatch, uttalelse]);\n\n  useEffect(() => {\n    if (searchParams[0].get(\"bekreftet\")) {\n      newNotification(\n        \"success\",\n        intl.formatMessage({ id: \"uttalelse.uttalelseBekreftet\" }),\n        intl.formatMessage({ id: \"uttalelse.uttalelseVilBliBehandlet\" }),\n      );\n      searchParams[1]((current) => {\n        current.delete(\"bekreftet\");\n        return current;\n      });\n    }\n  }, [intl, searchParams]);\n\n  useEffect(() => {\n    // Navigate to uttalelse if utkast is already submitted\n    if (innsendt && !!utkastRoute) {\n      removeUtkast(id, eksternId);\n      navigate(routes.uttalelse(id, eksternId!));\n    }\n  }, [eksternId, id, innsendt, navigate, utkastRoute]);\n\n  useEffect(() => {\n    const onClick = (e: MouseEvent) => {\n      const { target } = e;\n      if (target instanceof HTMLElement) {\n        if (\n          target.classList.contains(\"fotnote\") ||\n          (target.dataset as { fotnoteId: string }).fotnoteId\n        ) {\n          e.preventDefault();\n          navigateToFootnote(\n            (target.dataset as { fotnoteId: string }).fotnoteId,\n            currentNotat.id,\n          );\n        }\n      }\n    };\n    document.addEventListener(\"click\", onClick);\n    return () => {\n      document.removeEventListener(\"click\", onClick);\n    };\n  }, [currentNotat]);\n\n  useEffect(() => {\n    if (!currentNotat && hoering.notater.length > 0) {\n      navigateToNotat(\n        searchParams,\n        hoering.notater.sort((a, b) => a.rekkefølge - b.rekkefølge)[0].id,\n      );\n    }\n  }, [currentNotat, hoering.notater, searchParams]);\n\n  const autosave = useCallback(\n    async (immediate = false) => {\n      if (\n        !uttalelse?.innsendt &&\n        (uttalelse?.eksternId === pendingchanges || immediate)\n      ) {\n        try {\n          const result = await trigger(formValidation.values, {\n            revalidate: false,\n          });\n          await mutateUttalelse();\n          addOrUpdateUtkast(result.hoeringId, {\n            endret: result.endret,\n            eksternId: result.eksternId,\n          });\n          dispatch({\n            type: \"SET_AUTOSAVING\",\n            payload: false,\n          });\n          navigate(\n            {\n              pathname: routes.utkast(result.hoeringId, result.eksternId),\n              search: searchParams[0].toString(),\n            },\n            {\n              replace: true,\n            },\n          );\n          return result.eksternId;\n        } catch (e) {\n          dispatch({\n            type: \"SET_AUTOSAVING\",\n            payload: undefined,\n          });\n          return eksternId ?? emptyGuid;\n        }\n      }\n      return eksternId ?? emptyGuid;\n    },\n    [\n      dispatch,\n      eksternId,\n      formValidation.values,\n      mutateUttalelse,\n      navigate,\n      pendingchanges,\n      searchParams,\n      trigger,\n      uttalelse?.eksternId,\n      uttalelse?.innsendt,\n    ],\n  );\n\n  useEffect(() => {\n    if (autosaving) {\n      autosave();\n    }\n    // eslint-disable-next-line react-hooks/exhaustive-deps\n  }, [autosaving]);\n\n  useEffect(() => {\n    if (\n      formValidation &&\n      !innsendt &&\n      pendingchanges &&\n      eksternId === pendingchanges\n    ) {\n      debouncedSave(() => {\n        dispatch({\n          type: \"SET_AUTOSAVING\",\n          payload: true,\n        });\n      });\n    }\n    return debouncedSave.cancel;\n  }, [\n    debouncedSave,\n    dispatch,\n    eksternId,\n    innsendt,\n    pendingchanges,\n    formValidation,\n  ]);\n\n  const pageClass = cls({\n    Page: true,\n    \"Page--readonly\": readOnly || innsendt,\n    \"Page--innsendt\": innsendt && !editManueltRegistert,\n  });\n\n  if (\n    !hoering.forhåndsvisnings &&\n    publiseringsStatus === PubliseringsStatus.IkkePublisert\n  ) {\n    return (\n      <>\n        <DocumentMetadata title={institusjonNavnLang} />\n        <div className=\"Grid\">\n          <div className={pageClass}>\n            <Element name=\"headerScroll\" />\n            <Header />\n            <MessageBanner />\n          </div>\n        </div>\n        <HoeringsFooter hoeringId={hoering.id} />\n      </>\n    );\n  }\n\n  if (!currentNotat) return null;\n\n  const { arkivDisplayNummer, saksBehandlereTekst, tittel } = currentNotat;\n\n  const arkivnummer =\n    innsendt &&\n    !editManueltRegistert &&\n    features[hoering.mode].enSakPerSvarInnstilling\n      ? uttalelse?.arkivnummer\n      : arkivDisplayNummer;\n\n  const hasSidebar =\n    hoering.notater.filter(\n      (n) =>\n        !innsendt ||\n        uttalelse?.notater.find((hnu) => hnu.notatId === n.id)?.hasFeedback ||\n        n.rekkefølge === 0,\n    ).length > 1;\n\n  const gridClass = cls({\n    Grid: true,\n    \"Grid--offset\":\n      hasSidebar || (editManueltRegistert && hoering.notater.length > 1),\n    \"Grid--innsendt\": innsendt && !editManueltRegistert,\n  });\n\n  return (\n    <>\n      <DocumentMetadata title={getTextWithLocale(tittel, locale)} />\n      <AutoSaveLoader />\n      <div className={gridClass}>\n        <Sidebar\n          currentNotat={currentNotat}\n          notater={hoering.notater}\n          innsendt={innsendt && !editManueltRegistert}\n          showTimestamp={!innsendt && !readOnly}\n        />\n        <div className={pageClass}>\n          <header>\n            <Element name=\"headerScroll\" />\n            <InnsendtHeader show={innsendt && !editManueltRegistert} />\n            <Header\n              avsender={saksBehandlereTekst}\n              frist={frist}\n              publisert={publisert}\n              referanse={arkivnummer}\n            />\n          </header>\n          <main id=\"main\">\n            <div className=\"Page-section\">\n              <h1 className=\"Page-title u-pageTitle\">\n                {getTextWithLocale(tittel, locale)}\n              </h1>\n            </div>\n\n            <MessageBanner editManueltRegistert={editManueltRegistert} />\n\n            {editManueltRegistert ? (\n              <IngenMerknaderManueltRegistrert\n                onClick={async (_ingenMerknader) => {\n                  dispatch({ type: \"SET_INGENMERKNADER\", payload: true });\n                  await client.setIngenMerknader(\n                    eksternId!,\n                    manuellRegistreringsKode,\n                    _ingenMerknader,\n                  );\n                  await mutateUttalelse();\n                }}\n                kanHaIngenMerknader={hoering.kanHaIngenMerknader}\n                harIngenMerknader={ingenMerknader}\n              />\n            ) : (\n              <IngenMerknader\n                readonly={innsendt || readOnly}\n                onClick={() => {\n                  dispatch({ type: \"SET_INGENMERKNADER\", payload: true });\n                  show(sendInnPopinId);\n                }}\n                hasFeedback={uttalelse?.hasFeedback}\n                kanHaIngenMerknader={hoering.kanHaIngenMerknader}\n                harIngenMerknader={ingenMerknader}\n              />\n            )}\n\n            {currentNotat.visInnholdsfortegnelse && (\n              <Innholdsfortegnelse\n                seksjoner={currentNotat.seksjoner}\n                skjulNummerering={currentNotat.skjulNummerering}\n              />\n            )}\n\n            <Form {...formValidation}>\n              <SeksjonUttalelse\n                readonly={innsendt || readOnly}\n                editManueltRegistert={editManueltRegistert}\n                seksjons={currentNotat.seksjoner}\n                ingenMerknader={ingenMerknader}\n                skjulNummerering={currentNotat.skjulNummerering}\n                autosave={autosave}\n                forhandsvisning={\n                  (hoering.isClosedOrExpired && !innsendt) ||\n                  hoering.forhåndsvisnings ||\n                  editManueltRegistert\n                }\n              />\n\n              <NotatUttalelse\n                readonly={innsendt || readOnly}\n                editManueltRegistert={editManueltRegistert}\n                notat={currentNotat}\n                ingenMerknader={ingenMerknader}\n                forhandsvisning={\n                  (hoering.isClosedOrExpired && !innsendt) ||\n                  hoering.forhåndsvisnings ||\n                  editManueltRegistert\n                }\n              />\n\n              <Signatur signatur={currentNotat.signaturSeksjon} />\n\n              <Fotnoter\n                fotnoter={currentNotat.fotnoter}\n                notatId={currentNotat.id}\n              />\n\n              <Vedlegg\n                vedlegg={hoering.vedlegg}\n                notatVedlegg={currentNotat.vedlegg}\n              />\n\n              {editManueltRegistert ? (\n                <LagreOgGaTilbake\n                  manuellRegistreringsKode={manuellRegistreringsKode}\n                  returnTo={searchParams[0].get(\"returnTo\")!}\n                />\n              ) : (\n                <LagreOgSendInn\n                  innsendt={innsendt}\n                  forhandsvisning={hoering.forhåndsvisnings}\n                  hasFeedback={uttalelse?.hasFeedback}\n                  readOnly={readOnly}\n                  nextNotat={nextNotat}\n                  currentNotat={currentNotat}\n                  sendInnKunSisteNotat={\n                    features[hoering.mode].sendInnKunSisteNotat\n                  }\n                  sendInnPopinId={sendInnPopinId}\n                  lagreUtkastPopinId={lagreUtkastPopinId}\n                  videresendUtkastPopinId={videresendUtkastPopinId}\n                  autosave={autosave}\n                />\n              )}\n\n              <SendInnPopin id={sendInnPopinId} />\n            </Form>\n            <LagreUtkastPopin id={lagreUtkastPopinId} />\n            <VideresendUtkastPopin id={videresendUtkastPopinId} />\n          </main>\n        </div>\n      </div>\n      <HoeringsFooter hoeringId={hoering.id} />\n    </>\n  );\n};\n\nexport default HoeringsUttalelse;\n","import { Dropdown, DropdownItem } from \"@utdanningsdirektoratet/dropdown\";\nimport { MenuPanel } from \"@utdanningsdirektoratet/layout\";\nimport { useHoering, useLocale, useUttalelse } from \"../../../../hooks\";\nimport { institusjonNavnLang } from \"../../../../logic/initialState\";\nimport { useContextState } from \"../../../../StateProvider\";\nimport { Målform } from \"../../../../ApiClients\";\n\nexport const Header = () => {\n  const { data: hoering } = useHoering();\n  const { data: uttalelse } = useUttalelse();\n  const [, dispatch] = useContextState();\n  const locale = useLocale();\n\n  const muligeMalforms = hoering.målforms.split(\", \") as Array<Målform>;\n\n  const malformOptions = muligeMalforms.map((malform) => (\n    <DropdownItem\n      closeOnClick\n      selected={malform === locale}\n      onClick={() => dispatch({ type: \"SET_LOCALE\", payload: malform })}\n    >\n      {malform}\n    </DropdownItem>\n  ));\n\n  return (\n    <MenuPanel title={institusjonNavnLang} external>\n      {malformOptions.length >= 2 && (\n        <Dropdown disabled={uttalelse?.innsendt} lists={[malformOptions]}>\n          {locale}\n        </Dropdown>\n      )}\n    </MenuPanel>\n  );\n};\n","import { close, Popin } from \"@utdanningsdirektoratet/popin\";\nimport { Input } from \"@utdanningsdirektoratet/input\";\nimport { FormattedMessage, useIntl } from \"react-intl\";\nimport {\n  useFormValidation,\n  validationFunctions,\n} from \"@utdanningsdirektoratet/form\";\n\nimport { HoeringClient } from \"../../../ApiClients\";\nimport { epostValidation } from \"../../../logic/validation\";\nimport { useUttalelse } from \"../../../hooks\";\n\nconst client = new HoeringClient();\n\nconst RedigerEpostPopin = ({\n  id,\n  eksternId,\n  epost,\n}: {\n  id: string;\n  eksternId: string;\n  epost: string;\n}) => {\n  const intl = useIntl();\n  const { mutate } = useUttalelse();\n\n  const { fields, values, isValid } = useFormValidation<{\n    epost: string;\n  }>({\n    epost: {\n      value: epost,\n      validation: [\n        {\n          ...validationFunctions.required,\n          message: intl.formatMessage({ id: \"validation.epostErObligatorisk\" }),\n        },\n        epostValidation(intl),\n      ],\n    },\n  });\n\n  const editEmail = async () => {\n    await client.endreEpost(eksternId, values.epost, null);\n    await mutate();\n    close(id);\n  };\n\n  return (\n    <Popin\n      id={id}\n      title={<FormattedMessage id=\"innsendtUttalelse.endreEpostAdresse\" />}\n      onSave={() => {\n        if (isValid) {\n          editEmail();\n        }\n      }}\n      saveButton={<FormattedMessage id=\"innsendtUttalelse.lagreOgSend\" />}\n      cancelButton={<FormattedMessage id=\"formLabels.avbryt\" />}\n    >\n      <Input\n        {...fields.epost}\n        className=\"u--marginBottom2\"\n        type=\"email\"\n        label={intl.formatMessage({ id: \"innsendtUttalelse.epostadresse\" })}\n      />\n    </Popin>\n  );\n};\n\nexport default RedigerEpostPopin;\n","import { useEffect, useState } from \"react\";\nimport { Icon } from \"@utdanningsdirektoratet/icon\";\nimport { FormattedMessage } from \"react-intl\";\nimport { formatDate } from \"@utdanningsdirektoratet/utils/date\";\nimport { show, usePopin } from \"@utdanningsdirektoratet/popin\";\nimport { Button } from \"@utdanningsdirektoratet/button\";\nimport { ButtonLink } from \"@utdanningsdirektoratet/link\";\nimport emailClosed from \"../../../../static/images/email-closed.svg\";\nimport emailOpen from \"../../../../static/images/email-open.svg\";\nimport emailText from \"../../../../static/images/email-text.svg\";\nimport hand from \"../../../../static/images/hand.svg\";\nimport RedigerEpostPopin from \"./RedigerEpostPopin\";\nimport { DATE_FORMAT } from \"../../../constants/dateFormats\";\nimport { BekreftetStatus } from \"../../../ApiClients\";\nimport { useUttalelse } from \"../../../hooks\";\n\nconst TutorialOverlay = () => {\n  const [redigerEpostPopinId] = usePopin();\n  const { data: uttalelse } = useUttalelse();\n  const [overlayIsOpen, setOverlayIsOpen] = useState(\n    uttalelse?.innsendt &&\n      uttalelse?.bekreftetStatus === BekreftetStatus.IkkeBekreftet,\n  );\n\n  useEffect(() => {\n    setOverlayIsOpen(\n      uttalelse?.innsendt &&\n        uttalelse?.bekreftetStatus === BekreftetStatus.IkkeBekreftet,\n    );\n  }, [uttalelse?.bekreftetStatus, uttalelse?.innsendt]);\n\n  const onConfirmLaterClick = (e: React.MouseEvent) => {\n    e.preventDefault();\n\n    setOverlayIsOpen(false);\n  };\n\n  const onEditEmailClick = (e: React.MouseEvent) => {\n    e.preventDefault();\n    show(redigerEpostPopinId);\n  };\n\n  if (!overlayIsOpen || !uttalelse) return null;\n\n  const { eksternId, innsenderEpost, mottatt } = uttalelse;\n\n  return (\n    <div className=\"TutorialOverlay\">\n      <div className=\"TutorialOverlay-wrapper\">\n        <div className=\"TutorialOverlay-box\">\n          <img src={emailClosed} alt=\"E-post\" />\n          <div className=\"TutorialOverlay-badge\">1</div>\n          <div>\n            <FormattedMessage id=\"innsendtUttalelse.bekreftelsesEpostSendtTil\" />\n          </div>\n          <div data-hj-suppress>\n            <strong>{innsenderEpost}</strong>\n          </div>\n          {mottatt && <div>{formatDate(mottatt, DATE_FORMAT)}</div>}\n        </div>\n        <div className=\"TutorialOverlay-box TutorialOverlay-box--icon\">\n          <Icon\n            className=\"TutorialOverlay-arrow\"\n            icon=\"arrow right\"\n            type=\"large\"\n          />\n        </div>\n        <div className=\"TutorialOverlay-box\">\n          <img src={emailOpen} alt=\"E-post\" />\n          <div>\n            <FormattedMessage id=\"innsendtUttalelse.vennligstApneEpostFra\" />{\" \"}\n            <FormattedMessage id=\"innsendtUttalelse.innsendtTilInstitusjon\" />.\n          </div>\n          <p className=\"u--marginTop1 u--marginBottom1\">\n            <FormattedMessage id=\"innsendtUttalelse.ikkeMottattEpost\" />\n          </p>\n          <Button\n            className=\"TutorialOverlay-button\"\n            onClick={(e) => onEditEmailClick(e)}\n          >\n            <FormattedMessage id=\"innsendtUttalelse.sendEpostPåNytt\" />\n          </Button>\n        </div>\n        <div className=\"TutorialOverlay-box TutorialOverlay-box--icon\">\n          <Icon\n            className=\"TutorialOverlay-arrow\"\n            icon=\"arrow right\"\n            type=\"large\"\n          />\n        </div>\n        <div className=\"TutorialOverlay-box\">\n          <img src={emailText} alt=\"\" />\n          <img src={hand} className=\"TutorialOverlay-hand\" alt=\"\" />\n          <div>\n            <FormattedMessage id=\"innsendtUttalelse.klikkPaLenken\" />\n          </div>\n        </div>\n      </div>\n      <div className=\"TutorialOverlay-footer\">\n        <br />\n        <br />\n        <ButtonLink onClick={(e) => onConfirmLaterClick(e)}>\n          <FormattedMessage id=\"innsendtUttalelse.bekreftSenere\" />\n        </ButtonLink>\n      </div>\n      <RedigerEpostPopin\n        id={redigerEpostPopinId}\n        eksternId={eksternId!}\n        epost={innsenderEpost!}\n      />\n    </div>\n  );\n};\n\nexport default TutorialOverlay;\n","import { Placeholder } from \"@utdanningsdirektoratet/placeholder\";\nimport { Suspense, useEffect, useState } from \"react\";\nimport { ErrorBoundary } from \"react-error-boundary\";\nimport { MenuPanel } from \"@utdanningsdirektoratet/layout\";\nimport { usePopin } from \"@utdanningsdirektoratet/popin\";\nimport { FormattedMessage, useIntl } from \"react-intl\";\nimport { newNotification } from \"@utdanningsdirektoratet/notifications\";\nimport UtkastPopin from \"./components/utkastPopin/UtkastPopin\";\nimport HoeringsUttalelse from \"./HoeringsUttalelse\";\nimport { Header } from \"./components/header/header\";\nimport {\n  institusjonNavnLang,\n  logoUrl,\n  version,\n} from \"../../logic/initialState\";\nimport { useVersion } from \"../../hooks\";\nimport TutorialOverlay from \"./components/TutorialOverlay\";\n\nconst Uttalelse = () => {\n  const [popinId] = usePopin();\n  const intl = useIntl();\n  const [currentVersion, setCurrentVersion] = useState(version);\n  const { data: newVersion = version } = useVersion();\n\n  useEffect(() => {\n    if (currentVersion !== newVersion) {\n      newNotification(\n        \"info\",\n        intl.formatMessage({ id: \"default.nyVersjon\" }),\n        intl.formatMessage({ id: \"default.nyVersjonMessage\" }),\n      );\n      setCurrentVersion(newVersion);\n    }\n  }, [currentVersion, intl, newVersion]);\n\n  return (\n    <ErrorBoundary\n      fallback={\n        <>\n          <MenuPanel title={institusjonNavnLang} external></MenuPanel>\n          <div className=\"Grid\">\n            <div className=\"Page\">\n              <header>\n                <div className=\"Header\">\n                  <div className=\"Grid-12-12\">\n                    <img\n                      src={logoUrl}\n                      alt={institusjonNavnLang}\n                      className=\"Header-logo\"\n                    />\n                  </div>\n                </div>\n              </header>\n              <main id=\"main\">\n                <h1>\n                  <div className=\"Page-section\">\n                    <h1 className=\"Page-title u-pageTitle\">\n                      <FormattedMessage id=\"error.detharOppstattEnFeil\" />\n                    </h1>\n                  </div>\n                </h1>\n              </main>\n            </div>\n          </div>\n        </>\n      }\n    >\n      <Suspense\n        fallback={\n          <>\n            <MenuPanel title={institusjonNavnLang} external></MenuPanel>\n            <div className=\"Grid\">\n              <div className=\"Page\">\n                <header>\n                  <div className=\"Header\">\n                    <div className=\"Grid-12-12\">\n                      <img\n                        src={logoUrl}\n                        alt={institusjonNavnLang}\n                        className=\"Header-logo\"\n                      />\n                    </div>\n                  </div>\n                </header>\n                <main id=\"main\">\n                  <div className=\"Page-section\">\n                    <Placeholder height={3} />\n                    <Placeholder height={1} width={50} />\n                    <Placeholder height={1} width={30} />\n                    <Placeholder height={1} width={40} />\n                    <Placeholder height={1} width={70} />\n                  </div>\n                </main>\n              </div>\n            </div>\n          </>\n        }\n      >\n        <Header />\n        <HoeringsUttalelse utkastPopinId={popinId} />\n        <TutorialOverlay />\n      </Suspense>\n      <UtkastPopin popinId={popinId} />\n    </ErrorBoundary>\n  );\n};\n\nexport default Uttalelse;\n","import Uttalelse from \"./Uttalelse\";\n\nexport default Uttalelse;\n","import { Suspense, useEffect } from \"react\";\nimport { ErrorBoundary } from \"react-error-boundary\";\nimport { cls } from \"@utdanningsdirektoratet/utils/cls\";\nimport { useTriggerPdfCreation } from \"@utdanningsdirektoratet/hooks/useTriggerPdfCreation\";\nimport { FormattedMessage, useIntl } from \"react-intl\";\nimport { Icon } from \"@utdanningsdirektoratet/icon\";\nimport DocumentMetadata from \"../../components/DocumentMetadata\";\nimport InnsendtHeader from \"./components/hoeringsUttalelse/InnsendtHeader\";\nimport {\n  getDefaultLocaleFromMalforms,\n  getTextWithLocale,\n} from \"../../utils/localeUtils\";\nimport SeksjonUttalelse from \"./components/uttalelse/SeksjonUttalelse\";\nimport NotatUttalelse from \"./components/uttalelse/NotatUttalelse\";\nimport Signatur from \"./components/hoeringsUttalelse/Signatur\";\nimport Fotnoter from \"./components/hoeringsUttalelse/Fotnoter\";\nimport {\n  useFylker,\n  useHoering,\n  useInnsendingsKode,\n  useLocale,\n  useUttalelse,\n} from \"../../hooks\";\nimport Vedlegg from \"./components/hoeringsUttalelse/Vedlegg\";\nimport { routes } from \"../../routes\";\nimport Header from \"./components/hoeringsUttalelse/Header\";\nimport { features } from \"../../logic/initialState\";\nimport { useContextState } from \"../../StateProvider\";\n\nconst Pdf = ({\n  type = \"høring\",\n}: {\n  type?: \"høring\" | \"utkast\" | \"uttalelse\";\n}) => {\n  const intl = useIntl();\n  const locale = useLocale();\n  const { data: uttalelse } = useUttalelse();\n  const { data: hoering } = useHoering();\n  const { data: fylker } = useFylker();\n  const innsendingskode = useInnsendingsKode();\n  const [, dispatch] = useContextState();\n\n  useTriggerPdfCreation(\n    window.initialState.consoleLogTriggerMessage,\n    uttalelse,\n    hoering,\n    fylker,\n  );\n\n  useEffect(() => {\n    // Set locale if default doesnt exist in høring\n    if (!hoering.målforms.includes(locale)) {\n      dispatch({\n        type: \"SET_LOCALE\",\n        payload: getDefaultLocaleFromMalforms(hoering.målforms),\n      });\n    }\n  }, [dispatch, hoering.målforms, locale]);\n\n  useEffect(() => {\n    // Set locale if default doesnt match usermålform\n    if (uttalelse && uttalelse.innsendt && uttalelse.userMålform !== locale) {\n      dispatch({\n        type: \"SET_LOCALE\",\n        payload: uttalelse.userMålform,\n      });\n    }\n  }, [dispatch, locale, uttalelse]);\n\n  const hasFeedback = uttalelse?.notater.some((hnu) => hnu.hasFeedback);\n\n  const currentNotats = hoering.notater\n    .filter(\n      (hn) =>\n        type === \"høring\" ||\n        uttalelse?.ingenMerknader ||\n        !hasFeedback ||\n        uttalelse?.notater.find((hnu) => hnu.notatId === hn.id)?.hasFeedback,\n    )\n    .sort((a, b) => a.rekkefølge - b.rekkefølge);\n\n  const { innsendt = type === \"uttalelse\" } = uttalelse ?? {};\n\n  const gridClass = cls({\n    Grid: true,\n    \"Grid--innsendt\": innsendt,\n  });\n\n  const pageClass = cls({\n    Page: true,\n    \"Page--readonly\": true,\n    \"Page--innsendt\": innsendt,\n    \"Page--utkast\": type === \"utkast\",\n  });\n\n  const headerClass = cls({\n    PageBreak: type !== \"høring\",\n  });\n\n  if (currentNotats.length === 0) return null;\n\n  const valgtMalgruppe = hoering.målgrupper.find(\n    (m) => m.id === uttalelse?.malgruppeId,\n  );\n\n  const bekreftRepresentasjon = getTextWithLocale(\n    valgtMalgruppe?.bekreftRepresentasjonTekst,\n    locale,\n  )\n    ? getTextWithLocale(valgtMalgruppe?.bekreftRepresentasjonTekst, locale)\n    : intl.formatMessage(\n        { id: \"sendInnPopin.bekreftRepresentasjonTekst\" },\n        { 0: valgtMalgruppe?.tittel.toLowerCase() },\n      );\n\n  return (\n    <ErrorBoundary fallback={null}>\n      <Suspense fallback={null}>\n        <DocumentMetadata title={getTextWithLocale(hoering.tittel, locale)} />\n        <div className={gridClass}>\n          <div className={pageClass}>\n            <header className={headerClass}>\n              <Header />\n              <h1 className=\"Page-title u-pageTitle\">\n                {getTextWithLocale(hoering.tittel, locale)}\n              </h1>\n              <InnsendtHeader\n                show={type !== \"høring\"}\n                innsenderStilling={uttalelse?.innsenderStilling}\n                referanse={\n                  innsendt && features[hoering.mode].enSakPerSvarInnstilling\n                    ? uttalelse?.arkivnummer\n                    : null\n                }\n              />\n              {type === \"utkast\" && (\n                <p>\n                  <strong>\n                    <FormattedMessage id=\"uttalelse.klikkHerForÅRedigereOgSendeInn\" />\n                  </strong>\n                  <br />\n                  <a\n                    href={\n                      routes.utkast(hoering.id, uttalelse!.eksternId) +\n                      (innsendingskode\n                        ? `?innsendingsKode=${innsendingskode}`\n                        : \"\")\n                    }\n                  >\n                    {window.location.origin +\n                      routes.utkast(hoering.id, uttalelse!.eksternId) +\n                      (innsendingskode\n                        ? `?innsendingsKode=${innsendingskode}`\n                        : \"\")}\n                  </a>\n                </p>\n              )}\n              {uttalelse?.bekreftelsesUri && (\n                <p>\n                  <strong>\n                    <FormattedMessage id=\"uttalelse.klikkHerForÅBekrefte\" />\n                  </strong>\n                  <br />\n                  <a href={uttalelse.bekreftelsesUri}>\n                    {uttalelse.bekreftelsesUri}\n                  </a>\n                </p>\n              )}\n              {valgtMalgruppe?.bekreftRepresentasjon && (\n                <p>\n                  <Icon icon=\"check\" placement=\"before\" />\n                  {bekreftRepresentasjon}\n                </p>\n              )}\n              {uttalelse?.ingenMerknader && (\n                <p>\n                  <FormattedMessage id=\"uttalelse.instansenHarIngenMerknader\" />\n                </p>\n              )}\n            </header>\n            <main id=\"main\">\n              {currentNotats.map((currentNotat) => {\n                return (\n                  <div className=\"PageBreak\" key={currentNotat.id}>\n                    {currentNotats.length > 1 &&\n                      getTextWithLocale(currentNotat.tittel, locale) !==\n                        getTextWithLocale(hoering.tittel, locale) && (\n                        <div className=\"Page-section\">\n                          <h1 className=\"Page-title u-pageTitle\">\n                            {getTextWithLocale(currentNotat.tittel, locale)}\n                          </h1>\n                        </div>\n                      )}\n                    {currentNotat.saksBehandlereTekst && (\n                      <div className=\"Header-content Grid-xl-6-12 Grid-12-12\">\n                        <span>\n                          <div className=\"Header-title\">\n                            <FormattedMessage id=\"header.varSaksbehandler\" />\n                          </div>\n                          {currentNotat.saksBehandlereTekst}\n                        </span>\n                      </div>\n                    )}\n                    <SeksjonUttalelse\n                      readonly\n                      editManueltRegistert={false}\n                      seksjons={currentNotat.seksjoner}\n                      ingenMerknader={uttalelse?.ingenMerknader ?? false}\n                      skjulNummerering={currentNotat.skjulNummerering}\n                      forhandsvisning={\n                        type === \"høring\" && hoering.forhåndsvisnings\n                      }\n                      autosave={() => Promise.resolve(\"\")}\n                    />\n                    <br />\n                    <NotatUttalelse\n                      readonly\n                      editManueltRegistert={false}\n                      notat={currentNotat}\n                      ingenMerknader={uttalelse?.ingenMerknader ?? false}\n                      forhandsvisning={\n                        type === \"høring\" && hoering.forhåndsvisnings\n                      }\n                    />\n                    <Signatur signatur={currentNotat.signaturSeksjon} />\n                    <Fotnoter\n                      fotnoter={currentNotat.fotnoter}\n                      notatId={currentNotat.id}\n                    />\n                    {type === \"høring\" && (\n                      <Vedlegg\n                        vedlegg={hoering.vedlegg}\n                        notatVedlegg={currentNotat.vedlegg}\n                      />\n                    )}\n                  </div>\n                );\n              })}\n            </main>\n          </div>\n        </div>\n      </Suspense>\n    </ErrorBoundary>\n  );\n};\n\nexport default Pdf;\n","import \"less/base.less\";\nimport { createRoot } from \"react-dom/client\";\nimport * as React from \"react\";\nimport * as Sentry from \"@sentry/react\";\nimport {\n  createRoutesFromChildren,\n  matchRoutes,\n  useLocation,\n  useNavigationType,\n  Route,\n  Routes,\n  BrowserRouter,\n} from \"react-router-dom\";\nimport { sentry } from \"./logic/initialState\";\nimport App from \"./App\";\nimport StateProvider from \"./StateProvider\";\nimport Default from \"./pages/default\";\nimport Uttalelse from \"./pages/uttalelse\";\nimport { routes } from \"./routes\";\nimport Pdf from \"./pages/uttalelse/Pdf\";\n\nSentry.init({\n  dsn: sentry,\n  integrations: [\n    Sentry.replayIntegration(),\n    Sentry.reactRouterV6BrowserTracingIntegration({\n      useEffect: React.useEffect,\n      useLocation,\n      useNavigationType,\n      createRoutesFromChildren,\n      matchRoutes,\n    }),\n    Sentry.thirdPartyErrorFilterIntegration({\n      filterKeys: [\"hflhss\"],\n      behaviour: \"drop-error-if-contains-third-party-frames\",\n    }),\n  ],\n  tracesSampleRate: 0.1,\n  replaysSessionSampleRate: 0,\n  replaysOnErrorSampleRate: 1.0,\n  tunnel: \"/tunnel\",\n  release: `hoering@${process.env.PACKAGE_VERSION}`,\n});\n\nconst SentryRoutes = Sentry.withSentryReactRouterV6Routing(Routes);\n\nconst container = document.getElementById(\"app\");\nconst root = createRoot(container!);\nroot.render(\n  <React.StrictMode>\n    <Sentry.ErrorBoundary>\n      <StateProvider>\n        <BrowserRouter>\n          <SentryRoutes>\n            <Route element={<App />}>\n              <Route path={routes.pdfHoering(\":hoeringId\")} element={<Pdf />} />\n              <Route\n                path={routes.pdfUttalelse(\":hoeringId\", \":eksternId\")}\n                element={<Pdf type=\"uttalelse\" />}\n              />\n              <Route\n                path={routes.pdfUtkast(\":hoeringId\", \":eksternId\")}\n                element={<Pdf type=\"utkast\" />}\n              />\n              {[\n                routes.hoering(\":hoeringId\"),\n                routes.uttalelse(\":hoeringId\", \":eksternId\"),\n                routes.utkast(\":hoeringId\", \":eksternId\"),\n                routes.lesutkast(\":hoeringId\", \":leseTilgangsKode\"),\n              ].map((path) => (\n                <Route key={path} path={path} element={<Uttalelse />} />\n              ))}\n              <Route path=\"/cookies\" element={<Default page=\"cookies\" />} />\n              <Route index element={<Default />} />\n              <Route path=\"*\" element={<Default page=\"notfound\" />} />\n            </Route>\n          </SentryRoutes>\n        </BrowserRouter>\n      </StateProvider>\n    </Sentry.ErrorBoundary>\n  </React.StrictMode>,\n);\n","require(\"./app/index.tsx\");\n"],"names":["map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","module","exports","isValidationProblemDetailsObject","error","_type","type","includes","isValidationProblemDetail","isProblemDetails","title","isProblemDetail","_regeneratorRuntime","t","r","prototype","n","hasOwnProperty","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","__await","then","callInvokeWithMethodAndArg","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","catch","delegateYield","asyncGeneratorStep","ownKeys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","apply","_objectSpread","arguments","_defineProperty","getOwnPropertyDescriptors","defineProperties","_defineProperties","_toPropertyKey","key","_createClass","_classCallCheck","toPrimitive","String","_toPrimitive","ApiBase","options","setTimeout","show","tokenInfo","getAntiForgeryTokenInfo","headers","tokenHeaderName","requestToken","_ref","_callee","_url","response","onComplete","_response$headers$get","_response$headers$get2","_error$title","_error$detail","_context","hide","SlowAction","ok","get","toLowerCase","indexOf","clone","json","newNotification","_problem$title","problem","_problem$errors","errors","flatMap","join","detail","undefined","message","_next","_throw","_x","_x2","_x3","FylkeClient","_ApiBase2","baseUrl","http","_this","_callSuper","window","_inherits","signal","_this2","url_","this","replace","options_","transformOptions","transformedOptions_","fetch","_response","transformResult","processGetFylker","_this3","status","_headers","k","text","_responseText","JSON","parse","jsonParseReviver","throwException","HoeringClient","_ApiBase3","_this4","hoeringId","forhandsVisningsKode","innsendingsKode","_this5","encodeURIComponent","processGet","_this6","eksternId","høringUttalelseSubmitModelV2","_this7","body","stringify","processSubmitUttalelse","_this8","manuellRegistreringsKode","_this9","processLagreManuellRegistrering","_this10","ingenMerknader","_this11","processSetIngenMerknader","contentDisposition","fileNameMatch","exec","fileName","decodeURIComponent","blob","data","model","_this12","processAutoSave","_this13","innsenderEpost","_this14","processLagreUtkast","_this15","_this16","processDelUtkast","_this17","files","sporsmalId","_this18","content_","FormData","item_","append","toString","processLastOppSporsmaalUttalelseVedlegg","_this19","_this20","processSlettSporsmaalUttalelseVedlegg","_this21","_this22","processEndreEpost","UttalelseClient","_ApiBase5","_this26","leseTilgangsKode","_this27","processGetUttalelse","_this28","VersionClient","_ApiBase6","_this29","_this30","processGetVersion","_this31","Sektor","Obligatoriskhet","GeografiObligatoriskhet","KortSvarTypes","FylkeKommuneTypes","PubliseringsStatus","Målforms","BekreftetStatus","PositivNegativHoldning","JaNei","EnigUenig","Målform","ApiException","_Error","result","_this32","obj","isApiException","_wrapNativeSuper","initial","initialState","urls","hoeringUrls","froala","_initial$froalaLicens","froalaLicense","sentry","_initial$sentryId","sentryId","matomoId","_initial$matomoTagMan","matomoTagManager","texts","footer","personvernerklaering","features","version","logoUrl","institusjonNavnLang","antiForgeryTokenInfo","getDefaultLocaleFromMalforms","horingMalforms","Bokmål","Nynorsk","getLocaleCode","locale","getTextWithLocale","_texts$malformCode","flatten","object","reduce","curr","flat","innerCurr","innerKey","concat","NOTAT_ID","FORHANDSVISNINGSKODE","emptyGuid","pendingchanges","autosaving","reducer","state","action","payload","StateContext","createContext","useContextState","useContext","children","_jsx","Provider","useReducer","routes","hoering","uttalelse","uttalelseId","utkast","lesutkast","pdfHoering","pdfUttalelse","pdfUtkast","getNotat","notatId","_hoering$notater$find","notater","find","sort","b","rekkefølge","notatPrefix","getNotatFormId","sporsmalPrefix","getSpørsmålFormId","spørsmålId","getArray","array","getString","trim","mapFormToUttalelse","split","acc","_acc$curr$","spørsmål","_acc$curr$2","angittPositivNegativ","IkkeAngitt","angittJaNei","angittEnigUenig","angittEttValg","some","spsa","flereValg","angittKommentar","angittFlereValg","angittVedlegg","angittFylkeKommune","angittKortTekst","angittDato","angittHeltall","gyldigHetall","Number","isInteger","gyldigKortTekst","validator","isSporsmalBesvart","positivNegativHoldning","jaNei","enigUenig","svarPåSvarAlternativer","kommentar","vedlegg","heltall","kortTekst","dato","fylkeKommune","epostValidation","intl","validation","input","epostRegex","test","formatMessage","mapAll","generellHoldning","generellKommentar","isNotatBesvart","userMalform","sporsmalUttalelser","_u$svarPåSvarAlternat","_u$svarPåSvarAlternat2","svarAlternativId","egendefinertSvar","_spsa$egendefinertSva","mapSporsmalUttalelserVm","seksjonUttalelser","seksjonId","mapSeksjonUttalelserVm","seksjoner","vm","notatUttalelser","mapNotatUttalelserVm","userMålform","innsender","navn","epost","malgruppe","representerer","stilling","fylke","kommune","undertype","_asyncToGenerator","_slicedToArray","Array","isArray","_arrayWithHoles","_iterableToArrayLimit","_arrayLikeToArray","from","_unsupportedIterableToArray","_nonIterableRest","hoeringClient","uttalelseClient","fylkeClient","versionClient","SWRConfig","revalidateIfStale","revalidateOnFocus","revalidateOnReconnect","useFylker","useSWR","getFylker","useLocale","useEksternId","useParams","useLeseTilgangsKode","useInnsendingsKode","_searchParams$get2","useSearchParams","useForhåndsvisning","_searchParams$get3","useHoeringId","useHoering","suspense","useUttalelse","deferredUttalelseId","useDeferredValue","getUttalelse","location","useLocation","usePageViewTracking","IntlProvider","messages","_jsxs","lang","Outlet","pathname","_Fragment","Progress","PopinManager","Notifications","closeOnClick","document","_personvernerklaering","_StatisticsCookie$des","useIntl","_useState2","useState","showCookieBanner","setShowCookieBanner","searchParams","set","cookiesLink","href","url","target","blank","rel","FormattedMessage","links","_toConsumableArray","tekst","tabIndex","role","onClick","onKeyDown","className","Footer","items","CookieBanner","necessaryCookie","NecessaryCookie","SentryCookieVendor","cookies","StatisticsCookie","MatomoCookieVendor","Boolean","description","onAccept","content","page","search","dangerouslySetInnerHTML","__html","DocumentMetadata","HoeringsFooter","localstorageAvailable","storage","localStorage","global","x","setItem","getItem","removeItem","getUtkasts","addOrUpdateUtkast","utkasts","index","findIndex","update","removeUtkast","remove","DATE_FORMAT","popinId","Popin","disableInitialFocus","cancelButton","DetailedList","compareDesc","parseDate","endret","DetailedListRow","color","_ref2","Link","to","close","DetailedListCell","size","right","formatDate","_uttalelse$status","_uttalelse$mottatt","innsenderStilling","referanse","_ref$show","navnSkjult","publiseringsStatus","PublisertÅpen","LinkButton","høringId","props","lastNedUttalelseUrl","Icon","icon","placement","RichTextView","html","innsenderNavn","innsendt","mottatt","Date","sektor","Enkeltperson","innsenderRepresentererEtikett","påVegneAv","kanHaIngenMerknader","hasFeedback","readonly","harIngenMerknader","usePopin","Button","disabled","closeableByExternalEvents","saveButton","onSave","_usePopin2","Checkbox","label","onChange","checked","ScrollType","scrollToId","defaultOptions","smooth","duration","scrollTo","scroller","GetNiva","skjulNummerering","prevLevel","current","nextLevel","nivå","tittel","styles","nummerering","_ref$seksjoner","_ref$skjulNummerering","client","returnTo","useForm","lagreOgGaTilbake","_uttalelse$eksternId","mapVm","lagreManuellRegistrering","navigateToNotat","setSearchParams","scrollToNotat","offset","forhandsvisning","readOnly","nextNotat","currentNotat","sendInnKunSisteNotat","sendInnPopinId","lagreUtkastPopinId","videresendUtkastPopinId","autosave","dispatch","høring","_useForm","fields","isValid","validateFields","shouldNavigateToInvalid","setShouldNavigateToInvalid","notatHasSporsmals","kanHaGenerellHoldning","kanHaGenerellKommentar","kanHaMarkering","useEffect","invalid","_filter$map","_split$find","_split$find2","field","notat","firstInvalidId","_ref3","_ref4","spm","navigateToSporsmal","navigateToInvalid","showLagreOgSendInn","lagreOgGaVidere","_callee2","currentNotatSporsmalIds","_context2","sp","showLagreUtkast","_callee3","_context3","showVideresendUtkast","_ref5","_callee4","_context4","lagreButton","buttonClass","cls","Tooltip","isObligatorisk","obligatoriskClass","Obligatorisk","_fields","_uttalelse$notater$fi","_uttalelse$spørsmål$f","obligatorisk","generell","_useForm$fields","positiv","negativ","svar","HverkenEller","Positiv","Negativ","button","val","txt","active","position","align","alwaysShow","ButtonGroup","_fields$getSpørsmålFo","VetIkke","Ja","Nei","iconElement","HeltEnig","DelvisEnig","DelvisUenig","HeltUenig","alternativ","selected","svarAlternativ","hasErrors","altError","isEmpty","check","erEgendefinert","Radio","svarAlternativClass","SvarAlternativ","svarAlternativInputClass","Input","onFocus","ettValg","ettvalgId","radios","_field$value$find","isChecked","egendefinert","updateValue","radioClass","sa","noSelection","every","checkboxes","flereSvar","alt","checkboxClass","CurrencyInput","parseInt","onBlur","integerLimit","allowDecimal","allowNegative","_field$value","useMemo","setValue","_search$get","Orgnr","kortTextClass","Tekst","oblicatoriskClass","inputProps","placeholder","Kontonr","AccountInput","OrganisasjonsnummerInput","Epost","maxLength","DatePicker","_uttalelse$spørsmål$f2","_field$value5","_useFylker$data","fylker","selectKommuner","Kommune","FylkeKommune","flereFylker","substring","valgtFylke","fylkesNr","valgtKommune","React","kommuneNr","kommuner","fylkeOptions","aktiv","flereKommuner","valgteFylker","_field$value2","_field$value3","valgteKommuner","_field$value4","m","valgte","Fylke","listClass","_valgteKommuner","_field$value6","MultiSelect","maxAntallTegn","config","ConfigBuilder","withToolbar","toolbar","withPlugins","plugins","build","richTextOptions","heightMin","pasteDeniedTags","charCounterMax","buttonText","ingenKommentar","_useToggle2","useToggle","toggle","autoFocus","richtextProps","license","lazy","RichText","TrashableRichText","onTrash","trashTooltip","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","getFormData","file","_field$value$map","editManueltRegistert","setSelected","_useUttalelse","mutate","uploadFunc","lastOppSporsmaalUttalelseVedlegg","t0","deleteFuncWrapped","slettSporsmaalUttalelseVedlegg","vedleggs","VedleggComponent","filNavn","lastNedSpørsmålUttalelseVedlegg","onDelete","_eksternId","_selected","selectedVedleggFilename","FileInput","multiple","_data$spørsmål","sporsmal","rest","_objectWithoutProperties","_excluded","positivNegativ","svarAlternativer","tittelRiktigMalform","tittelFormatted","noAnswers","Element","brødTekst","canHave","PositivNegativSvar","JaNeiSvar","EnigUenigSvar","EttValg","FlereValg","HeltallSvar","KortTekstSvar","DatoSvar","FylkeKommuneSvar","Kommentar","Vedlegg","seksjons","_ref$forhandsvisning","seksjon","malformTittel","malformBrodtekst","pageClass","titleClass","TitleTag","Math","min","sporsmalElements","SporsmalUttalelse","withImages","withAllowedTags","signatur","hilsen","signaturNavn1","signaturNavn2","signaturStilling1","signaturStilling2","malformHilsen","malformSignaturStilling1","malformSignaturStilling2","malformFooter","fotnoter","fotnote","Linkify","attributes","notatVedlegg","forhåndsvisning","URLSearchParams","notatVedleggList","lastNedVedlegg","vedleggList","valgtMalgruppe","bekreftRepresentasjon","bekreftRepresentasjonTekst","fieldsToReset","malgrupper","resetFields","Set","withDefault","Select","event","alleMalgrupper","localSektor","setLocalSektor","findMalgruppe","mg","entries","onChangeWrapped","_e$target","newValue","kanHaFlereUndertyper","undertyper","målgruppeUnderTyper","erAktiv","innsenderRepresentererObligatoriskhet","Valgfritt","representererLabel","htmlFor","innsenderStillingObligatoriskhet","stillingLabel","visKommune","geografiObligatoriskhet","FylkeOgKommuneObligatorisk","gjeldendeKommuner","gamleKommuner","gjeldendeFylker","gamleFylker","FylkeObligatorisk","Representerer","Undertype","MinStilling","malgrupperForValgtSektor","malgrupperGroupByName","SektorEnum","malgrupperForValgtMalgruppe","Malgruppe","InnsenderInfo","onSuccess","representererEnkeltperson","setRepresenterer","onSubmitClicked","setOnSubmitClicked","_features$hoering$mod","mode","lenkeTilPersonvernerklaering","bekrefteSvar","målgrupper","malgruppeEnkeltperson","malgruppeOffentligEllerPrivat","autoPubliser","hasMultipleMalgrupperOrNeedsMoreMetaData","IkkeEtterspør","getHasMultipleMalgrupperOrNeedsMoreMetaData","Form","onSubmit","onError","autoComplete","RadioGroup","boxed","JegRepresenterer","MalgruppeSektor","BekreftRepresentasjon","skjult","PopinFooter","saveButtonProps","_objectWithoutPropertiesLoose","propertyIsEnumerable","innsedingsKode","navigate","useNavigate","_useContextState2","uttalelseValues","malgruppeHasValue","sektorer","formValidation","useFormValidation","validationFunctions","representererRequired","_","fylkeRequired","kommuneRequired","stillingRequired","undertypeErObligatorisk","bekreftRepresentasjonRequired","bekreftRepresentasjonFeilMelding","sendInnForm","submitUttalelse","bekreftetStatus","IkkeBekreftet","popinTitle","SendInnForm","_result$message","lagreUtkast","downloadFile","lastNedUtkastUrl","innsendingskode","mottakerEpost","tilgang","videresendUtkast","_uttalelse$eksternId2","delUtkast","skrivetilgang","TagsInput","delimiters","validationRegex","tagmessage","addOnBlur","Textarea","_ref2$innsendt","_ref2$manueltRegistre","manueltRegistrert","utgatt","isExpired","lukketMenKanSendesInn","isClosedOrExpired","lukketInnsending","IkkePublisert","PublisertLukket","InpageMessage","avsender","frist","publisert","src","ingenMerkander","menyTittel","getNotatLink","itemClass","NotatLink","_ref$innsendt","showTimestamp","hnu","notaterWithoutFeedback","_uttalelse$notater$fi2","timestampClass","autoSaveLoaderClass","AutoSaveLoader","_useNotatId","_searchParams$get","utkastPopinId","mutateUttalelse","_useHoering","mutateHoering","_useContextState2$","_useAutoSave","useSWRMutation","autoSave","useAutoSave","trigger","NaN","_hoering$notater$filt","_hoering$notater$sort","notatsWithFeedback","_uttalelse$notater","debouncedSave","useCallback","debounce","callback","isLukketForUttalelser","getNextNotat","hoeringRoute","useMatch","utkastRoute","_uttalelse$notater$fi3","_uttalelse$notater$fi4","_uttalelse$spørsmål$f3","_uttalelse$spørsmål$f4","_uttalelse$spørsmål$f5","_uttalelse$spørsmål$f6","_uttalelse$spørsmål$f7","_uttalelse$spørsmål$f8","_uttalelse$spørsmål$f9","_uttalelse$spørsmål$f10","_uttalelse$spørsmål$f11","_uttalelse$spørsmål$f12","_uttalelse$spørsmål$f13","_uttalelse$spørsmål$f14","_uttalelse$spørsmål$f15","_uttalelse$spørsmål$f16","_uttalelse$spørsmål$f17","_uttalelse$spørsmål$f18","_uttalelse$spørsmål$f19","_id","isValidDate","_curr$kommentar$oblig","obligatoriskKommentarEnigUenig","_curr$kommentar$oblig2","obligatoriskKommentarJaNei","_curr$kommentar$oblig3","obligatoriskKommentarPositivNegativ","målforms","delete","HTMLElement","classList","contains","dataset","fotnoteId","preventDefault","footNoteId","hash","navigateToFootnote","addEventListener","removeEventListener","immediate","_args","revalidate","cancel","Page","forhåndsvisnings","Header","MessageBanner","arkivDisplayNummer","saksBehandlereTekst","arkivnummer","enSakPerSvarInnstilling","hasSidebar","_uttalelse$notater$fi5","gridClass","Grid","Sidebar","InnsendtHeader","IngenMerknaderManueltRegistrert","_ingenMerknader","setIngenMerknader","IngenMerknader","visInnholdsfortegnelse","Innholdsfortegnelse","SeksjonUttalelse","NotatUttalelse","Signatur","signaturSeksjon","Fotnoter","LagreOgGaTilbake","LagreOgSendInn","SendInnPopin","LagreUtkastPopin","VideresendUtkastPopin","malformOptions","malform","DropdownItem","MenuPanel","external","Dropdown","lists","_useFormValidation","editEmail","endreEpost","redigerEpostPopinId","overlayIsOpen","setOverlayIsOpen","onEditEmailClick","ButtonLink","onConfirmLaterClick","RedigerEpostPopin","currentVersion","setCurrentVersion","_useVersion$data","getVersion","refreshInterval","newVersion","ErrorBoundary","fallback","Suspense","Placeholder","height","width","HoeringsUttalelse","TutorialOverlay","UtkastPopin","_ref$type","useTriggerPdfCreation","consoleLogTriggerMessage","currentNotats","hn","headerClass","PageBreak","malgruppeId","origin","bekreftelsesUri","_uttalelse$ingenMerkn","_uttalelse$ingenMerkn2","Sentry","dsn","integrations","useNavigationType","createRoutesFromChildren","matchRoutes","filterKeys","behaviour","tracesSampleRate","replaysSessionSampleRate","replaysOnErrorSampleRate","tunnel","release","process","SentryRoutes","Routes","container","getElementById","createRoot","render","StateProvider","BrowserRouter","Route","element","App","path","Pdf","Uttalelse","Default","require"],"sourceRoot":""}