{"version":3,"file":"js/7508-f424412127f0857c61e7.chunk.js","mappings":";iHAEA,MAAMA,EAAsB,EAAQ,OAEpCC,EAAQ,EAAUD,EAAoBE,yCCHtC,IAAIC,EAAUC,MAAQA,KAAKD,QAAW,SAAUE,EAAGC,GAC/C,IAAIC,EAAI,CAAC,EACT,IAAK,IAAIC,KAAKH,EAAOI,OAAOC,UAAUC,eAAeC,KAAKP,EAAGG,IAAMF,EAAEO,QAAQL,GAAK,IAC9ED,EAAEC,GAAKH,EAAEG,IACb,GAAS,MAALH,GAAqD,mBAAjCI,OAAOK,sBACtB,KAAIC,EAAI,EAAb,IAAgBP,EAAIC,OAAOK,sBAAsBT,GAAIU,EAAIP,EAAEQ,OAAQD,IAC3DT,EAAEO,QAAQL,EAAEO,IAAM,GAAKN,OAAOC,UAAUO,qBAAqBL,KAAKP,EAAGG,EAAEO,MACvER,EAAEC,EAAEO,IAAMV,EAAEG,EAAEO,IAF4B,CAItD,OAAOR,CACX,EACIW,EAAmBd,MAAQA,KAAKc,iBAAoB,SAAUC,GAC9D,OAAQA,GAAOA,EAAIC,WAAcD,EAAM,CAAE,QAAWA,EACxD,EACAV,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQsB,oBAAiB,EACzB,MAAMC,EAAgB,EAAQ,OACxBC,EAAU,EAAQ,OAClBC,EAAoBR,EAAgB,EAAQ,QAC5CS,EAAc,EAAQ,OACtBC,EAAU,EAAQ,OAClBC,EAAoB,EAAQ,OAC5BC,EAAoB,EAAQ,OAC5BC,EAAoB,EAAQ,OAC5BC,EAAkB,EAAQ,OAC1BC,EAAoB,EAAQ,OAC5BC,EAAmC,EAAQ,OAE3CC,EAA6B,CAACC,EAAaC,EAAmBC,EAAmBC,EAAoBC,EAAiBC,KACxH,MAAM,MAAEC,EAAK,IAAEC,EAAG,MAAEC,GAAWjB,EAAYkB,aAC3C,OAAQT,GACJ,KAAKQ,EACD,OAAO,IAAIX,EAAkBa,gBAAgB,CACzCT,oBACAC,oBACAC,uBAER,KAAKI,EACD,OAAO,IAAIX,EAAgBe,cAAc,CACrCV,oBACAG,kBACAC,qBAER,KAAKC,EACD,OAAO,IAAIb,EAAkBmB,gBAAgB,CACzCX,sBAER,QACI,MAAM,IAAIY,MAAM,8CACxB,EAEEC,EAA6B,CAACd,EAAaC,EAAmBc,EAAgBC,KAChF,MAAM,MAAEC,EAAK,MAAEC,GAAW3B,EAAYkB,aACtC,OAAQT,GACJ,KAAKiB,EACD,OAAO,IAAIvB,EAAkByB,gBAAgB,CACzClB,oBACAc,iBACAC,sBAER,KAAKE,EACD,OAAO,IAAIvB,EAAkByB,gBAAgB,CACzCnB,sBAER,QACI,MAAM,IAAIY,MAAM,8CACxB,EAiBEQ,EAAiBnD,GAAMA,EAAEoD,QAAQ,GA4KvCzD,EAAQsB,eA3KgBoC,IACpB,MAAM,2BAAEC,EAA0B,2BAAEC,EAA0B,SAAEC,EAAQ,eAAEX,EAAiB,IAAG,kBAAEC,EAAoB,IAAG,UAAEW,GAAY,EAAI,oBAAEC,EAAsBpC,EAAQqC,KAAI,6BAAEC,EAA+BtC,EAAQqC,KAAI,eAAEE,EAAgBC,kBAAmBC,EAAwBzC,EAAQqC,KAAI,kBAAE3B,EAAoB,IAAG,mBAAEC,EAAqB,EAAC,+BAAE+B,GAAiC,EAAK,MAAEC,EAAK,SAAEC,GAAW,EAAE,gBAAEhC,EAAkB,IAAG,iBAAEC,EAAmB,EAAC,WAAEgC,GAAed,EAAOe,EAAOvE,EAAOwD,EAAO,CAAC,6BAA8B,6BAA8B,WAAY,iBAAkB,oBAAqB,YAAa,sBAAuB,+BAAgC,iBAAkB,oBAAqB,oBAAqB,qBAAsB,iCAAkC,QAAS,WAAY,kBAAmB,mBAAoB,eAI10BgB,GAAW,EAAIlD,EAAQmD,QAAQ,IAAI1C,EAAiC2C,gCACpEC,GAAS,EAAIrD,EAAQmD,QAAQ,MAC7BG,GAAY,EAAItD,EAAQmD,QAAQ,KAI/BI,EAAmBC,IAAwB,EAAIxD,EAAQyD,UAAU,CACpEC,MAAO,EACPC,OAAQ,KAELC,EAA2CC,IAAiD,EAAI7D,EAAQyD,WAAU,IAClHK,EAAUC,IAAe,EAAI/D,EAAQyD,WAAU,IAC/CO,EAAmBC,IAAwB,EAAIjE,EAAQyD,WAAU,IACjES,EAAUC,IAAe,EAAInE,EAAQyD,UAAU,CAClDW,EAAG,EACHC,EAAG,KAKP,EAAIpE,EAAkBqE,SAASjB,GAASkB,GAAUf,EAzCzB,CAACgB,IAC1B,MAAM,MAAEd,EAAK,OAAEC,GAAYa,EAC3B,MAAO,CACHd,QACAC,SACH,EAoCsEc,CAAqBF,EAAMG,gBAElG,MAAMC,EAAyBC,IAC3Bb,EAAYa,EAAMd,SAAS,GAExBe,EAAiBC,IAAsB,EAAI9E,EAAQyD,UAAU/C,EAA2B0B,EAA4BuC,EAAuB9D,EAAmBC,EAAoBC,EAAiBC,KACnM+D,EAAiBC,IAAsB,EAAIhF,EAAQyD,UAAUhC,EAA2BU,EAA4BwC,EAAuBjD,EAAgBC,IAI5JsD,EAAiD,KACnD3B,EAAU4B,QAAQC,KAAK,CACnBC,KAAMlF,EAAYmF,iCAClBC,GAAIC,YAAW,KACX1B,GAA6C,EAAM,GACpD,IACL,EAEA2B,EAAoBC,IACtBxB,EArDqB,EAACyB,EAAKnC,KAC/B,MAAM,EAAEa,EAAC,EAAEC,GAAMqB,GACX,MAAEhC,EAAK,OAAEC,GAAYJ,EAC3B,OAAQa,EAAI,GACLC,EAAI,GACJD,EAAIV,GACJW,EAAIV,CAAO,EA+COgC,CAAqBF,EAAalC,IACvDY,EAAYsB,EAAY,EAEtBG,EAAkB,KACpBnD,EAA6B,CACzBoD,iBAAiB,EACjBC,iBAAiB,GACnB,EA+DAC,EAAwBlH,IAC1B,MAAMmH,EAAKnH,EAAEoH,OACc5C,EAAO6B,SAAWc,aAAcE,MAAQ7C,EAAO6B,QAAQiB,SAASH,IAEvFtD,EAAe7D,EACnB,EAEEuH,EAAuB,KACzBC,SAASC,oBAAoB,QAASP,EAAqB,EA0C/D,OArCA,EAAI/F,EAAQuG,YAAW,KACnBH,IACI9D,GACA+D,SAASG,iBAAiB,QAAST,EAAsB,CAAEU,QAASzD,IAEjE,IAAMoD,MAEd,CAAC9D,KACJ,EAAItC,EAAQuG,YAAW,KACflD,EAAO6B,UACPhC,EAASgC,QAAQwB,QAAUrD,EAAO6B,QAEtC,GACD,CAAC7B,KACJ,EAAIrD,EAAQuG,YAAW,KACnB3D,EAAsB,CAClBoB,oBACAE,aAEJ3B,EAAoB,CAAEuB,YAAW,GAElC,CAACA,KACJ,EAAI9D,EAAQuG,YAAW,KACnB3D,EAAsB,CAClBoB,oBACAE,YACF,GAEH,CAACF,EAAmBE,KACvB,EAAIlE,EAAQuG,YAAW,KACnBzB,EAAmBpE,EAA2B0B,EAA4BuC,EAAuB9D,EAAmBC,EAAoBC,EAAiBC,IACzJgE,EAAmBvD,EAA2BU,EAA4BwC,EAAuBjD,EAAgBC,GAAmB,GAErI,CACCQ,EACAC,KAEI,EAAIrC,EAAc4G,KAAK,MAAO3H,OAAO4H,OAAO,CAAEC,IAAKxD,EAAQyD,KAAM,SAAUhE,MAAO9D,OAAO4H,OAAO5H,OAAO4H,OAAO,CAAC,EAAG9D,GAAQ,CAAEiE,iBAAkB,SAAWhE,SAAUA,EAAUiE,QAAS1E,EA/DzKzD,IACjB2G,EAAiBtC,EAASgC,QAAQ+B,kBAAkBpI,IACpDkG,EAAgBmC,eAChBtB,GAAiB,OA4DmMuB,EAAWC,UAAW9E,EA1DvNzD,IACnBA,EAAEwI,iBACFtD,GAAY,EAAK,OAwDqPoD,EAAWG,QAAShF,EAtDzQzD,IACjBA,EAAEwI,iBACFtD,GAAY,EAAM,OAoDkSoD,EAAWI,aAAcjF,EArGvTzD,IAClB+E,IAGJgC,IACAJ,EAAiBtC,EAASgC,QAAQ+B,kBAAkBpI,IACpDkG,EAAgByC,eAAc,OA+F8UL,EAAWM,aAAcnF,EAnFhX,KACrByC,EAAgB2C,YAChBzD,GAAqB,EAAK,OAiF0YkD,EAAWQ,YAAarF,EAnEvazD,IACrB,MAAM4G,EAAcvC,EAASgC,QAAQ+B,kBAAkBpI,GACvD2G,EAAiBC,EAAY,OAiE6b0B,EAAWS,cAAetF,EAxF9d,KACtBuC,EAAgBgD,gBAChB5C,GAAgD,OAsFoekC,EAAWW,WAAYxF,EA7FxhB,KACnBuC,EAAgBkD,aAChB9C,GAAgD,OA2FwhBkC,EAAWa,YAAa1F,EA9E3kBzD,IACrB,MAAM4G,EAAcvC,EAASgC,QAAQ+B,kBAAkBjF,EAAcnD,IACrEgG,EAAgBoD,WAAW,CAAEpJ,EAAGqF,SAAUuB,IACtC3B,IACA0B,EAAiBC,GACjB5G,EAAEwI,iBACExE,GACAhE,EAAEqJ,kBAEV,OAqE8nBf,EAAWgB,aAAc7F,EA/GjoBzD,IACtB4D,EAA6B,CACzBoD,iBAAiB,EACjBC,iBAAiB,IAErBjC,GAA6C,GAC7C,MAAM4B,EAAcvC,EAASgC,QAAQ+B,kBAAkBjF,EAAcnD,IACrE2G,EAAiBC,GACjBZ,EAAgBuD,aAAa,CAAEvJ,EAAGqF,SAAUuB,GAAc,OAuG4nB0B,GAAalE,EAAM,CAAEZ,SAAUA,EAAS,CAC1tByB,WACAE,oBACAT,oBACAW,eACG,yBC7Pf,IAAIxF,EAAUC,MAAQA,KAAKD,QAAW,SAAUE,EAAGC,GAC/C,IAAIC,EAAI,CAAC,EACT,IAAK,IAAIC,KAAKH,EAAOI,OAAOC,UAAUC,eAAeC,KAAKP,EAAGG,IAAMF,EAAEO,QAAQL,GAAK,IAC9ED,EAAEC,GAAKH,EAAEG,IACb,GAAS,MAALH,GAAqD,mBAAjCI,OAAOK,sBACtB,KAAIC,EAAI,EAAb,IAAgBP,EAAIC,OAAOK,sBAAsBT,GAAIU,EAAIP,EAAEQ,OAAQD,IAC3DT,EAAEO,QAAQL,EAAEO,IAAM,GAAKN,OAAOC,UAAUO,qBAAqBL,KAAKP,EAAGG,EAAEO,MACvER,EAAEC,EAAEO,IAAMV,EAAEG,EAAEO,IAF4B,CAItD,OAAOR,CACX,EACAE,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQ6J,6BAA0B,EAClC,MAAMtI,EAAgB,EAAQ,OACxBuI,EAAqB,EAAQ,OAMnC9J,EAAQ6J,wBALyBnG,IAC7B,MAAM,MAAEY,GAAUZ,EAAOe,EAAOvE,EAAOwD,EAAO,CAAC,UACzCqG,EAAgBvJ,OAAO4H,OAAO,CAAE1C,SAAU,WAAYsE,IAAK,MAAOC,KAAM,MAAOC,OAAQ,KAAO5F,GACpG,OAAQ,EAAI/C,EAAc4G,KAAK2B,EAAmBK,iBAAkB3J,OAAO4H,OAAO,CAAEgC,aAAa,EAAM9F,MAAOyF,GAAiBtF,GAAO,yBClB1I,IAAIvE,EAAUC,MAAQA,KAAKD,QAAW,SAAUE,EAAGC,GAC/C,IAAIC,EAAI,CAAC,EACT,IAAK,IAAIC,KAAKH,EAAOI,OAAOC,UAAUC,eAAeC,KAAKP,EAAGG,IAAMF,EAAEO,QAAQL,GAAK,IAC9ED,EAAEC,GAAKH,EAAEG,IACb,GAAS,MAALH,GAAqD,mBAAjCI,OAAOK,sBACtB,KAAIC,EAAI,EAAb,IAAgBP,EAAIC,OAAOK,sBAAsBT,GAAIU,EAAIP,EAAEQ,OAAQD,IAC3DT,EAAEO,QAAQL,EAAEO,IAAM,GAAKN,OAAOC,UAAUO,qBAAqBL,KAAKP,EAAGG,EAAEO,MACvER,EAAEC,EAAEO,IAAMV,EAAEG,EAAEO,IAF4B,CAItD,OAAOR,CACX,EACAE,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQmK,sBAAmB,EAC3B,MAAM5I,EAAgB,EAAQ,OACxBC,EAAU,EAAQ,OAClB6I,EAAqB,EAAQ,OAC7B1I,EAAU,EAAQ,OAClB2I,EAAW,EAAQ,OAyCzBtK,EAAQmK,iBAxCkBzG,IACtB,MAAM,oBAAE6G,EAAmB,aAAEC,EAAY,iBAAEC,EAAmB,EAAGC,eAAgBC,EAAiB,MAAK,WAAEC,EAAU,SAAEtF,EAAQ,aAAEuF,GAAe,EAAI,YAAET,EAAW,iBAAEU,EAAgB,kBAAEtF,EAAiB,SAAEE,EAAQ,sBAAEqF,EAAqB,MAAEzG,GAAUZ,EAAOe,EAAOvE,EAAOwD,EAAO,CAAC,sBAAuB,eAAgB,mBAAoB,iBAAkB,aAAc,WAAY,eAAgB,cAAe,mBAAoB,oBAAqB,WAAY,wBAAyB,UAC5doB,GAAY,EAAItD,EAAQmD,QAAQ,KAC/BqG,EAAsBC,IAA2B,EAAIzJ,EAAQyD,WAAU,IACvEiG,EAAoBC,IAAyB,EAAI3J,EAAQyD,WAAU,IACnEmG,EAAqBC,IAA0B,EAAI7J,EAAQyD,WAAU,IACrE,CAAEqG,IAAuB,EAAI9J,EAAQyD,WAAU,GAChDsG,GAAaV,GAAiBA,IAAiBG,GAAwBE,GAAsBE,GAC7FI,EAAmBpB,GACnB,EAAIC,EAAmBoB,qCAAqClB,EAAqBK,EAAYlF,IAC7F,EAAI2E,EAAmBqB,sCAAsCnB,EAAqBC,EAAcI,EAAYlF,EAAUqF,IAC5H,EAAIvJ,EAAQuG,YAAW,IAAM,KACzB,IAAI4D,EACJ,OAAoC,QAA5BA,EAAK7G,EAAU4B,eAA4B,IAAPiF,OAAgB,EAASA,EAAGC,SAASC,IAC7EC,aAAaD,EAAQ,GACvB,GACH,KACH,EAAIrK,EAAQuG,YAAW,KACfzC,IAAaE,GACb8F,GAAoB,GACpBL,GAAwB,GACxBnG,EAAU4B,QAAQC,KAAKoF,OAAOhF,YAAW,KACrCkE,GAAwB,GACxBE,GAAsB,EAAK,GAC5B,MAGHE,GAAuB,GACvBF,GAAsB,GACtBrG,EAAU4B,QAAQC,KAAKoF,OAAOhF,YAAW,KACrCuE,GAAoB,GACpBD,GAAuB,EAAM,GAC9BZ,IACP,GACD,CAACA,EAAkBnF,EAAUE,IAChC,MAAMwG,GAAqB,EAAIxK,EAAQyK,UAAS,KAAM,EAAI3B,EAAS4B,wBAAwBtB,IAAa,CAACA,IACnGuB,EAAyB3L,OAAO4H,OAAO5H,OAAO4H,OAAO,CAAEgE,SAAU,WAAY,EAAI9B,EAAS+B,0BAA0B9B,EAAqBjG,EAAOmG,KAAoB,EAAIH,EAASgC,0BAA0BpB,IAC3MqB,EAAqB/L,OAAO4H,OAAO5H,OAAO4H,OAAO,CAAC,EAAG4D,IAAqB,EAAI1B,EAASkC,mCAAmChB,IAChI,OAAOD,GAAa,EAAIhK,EAAc4G,KAAK,MAAO3H,OAAO4H,OAAO,CAAC,EAAG3D,EAAM,CAAEH,MAAO6H,GAA0B,CAAEtI,UAAU,EAAItC,EAAc4G,KAAKwC,EAAgBnK,OAAO4H,OAAO,CAAC,EAAGwC,EAAY,CAAE6B,IAAK7B,EAAW6B,KAAO,GAAInI,MAAOiI,EAAoBG,QAAS9B,EAAW8B,SAAW/K,EAAQqC,KAAM2I,OAAQ/B,EAAW+B,QAAUhL,EAAQqC,WAAgB,IAAI,yBCxDhW,IAAI9D,EAAUC,MAAQA,KAAKD,QAAW,SAAUE,EAAGC,GAC/C,IAAIC,EAAI,CAAC,EACT,IAAK,IAAIC,KAAKH,EAAOI,OAAOC,UAAUC,eAAeC,KAAKP,EAAGG,IAAMF,EAAEO,QAAQL,GAAK,IAC9ED,EAAEC,GAAKH,EAAEG,IACb,GAAS,MAALH,GAAqD,mBAAjCI,OAAOK,sBACtB,KAAIC,EAAI,EAAb,IAAgBP,EAAIC,OAAOK,sBAAsBT,GAAIU,EAAIP,EAAEQ,OAAQD,IAC3DT,EAAEO,QAAQL,EAAEO,IAAM,GAAKN,OAAOC,UAAUO,qBAAqBL,KAAKP,EAAGG,EAAEO,MACvER,EAAEC,EAAEO,IAAMV,EAAEG,EAAEO,IAF4B,CAItD,OAAOR,CACX,EACAE,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQ4M,4BAAyB,EACjC,MAAMrL,EAAgB,EAAQ,OACxBC,EAAU,EAAQ,OAElBqL,EAAc,EAAQ,OACtBC,EAAiB,EAAQ,OACzBhD,EAAqB,EAAQ,OAC7BiD,EAAe,EAAQ,KAEvBrL,EAAc,EAAQ,OAC5B1B,EAAQ4M,wBAAyB,EAAIpL,EAAQwL,aAAY,CAACtJ,EAAO2E,KAC7D,MAAM,YAAE4E,EAAc,CAAC,GAAMvJ,EAAOe,EAAOvE,EAAOwD,EAAO,CAAC,iBACpD,UAAEwJ,EAAS,GAAEpG,EAAE,MAAExC,EAAK,UAAE6I,EAAYzL,EAAY0L,uBAAuBC,KAAI,SAAEC,EAAQ,cAAEC,EAAa,WAAEC,EAAU,UAAEC,EAAY,GAAE,iBAAEC,EAAmB,EAAC,eAAEC,EAAiB,GAAOV,GAC/KW,EAAeC,IAAoB,EAAIrM,EAAQyD,UAAU,MAC1D6I,GAAS,EAAIhB,EAAeiB,WAAW1F,EAAI3B,QAASkH,EAAe,CACrET,UAAWA,EACXG,WACAC,gBACAE,UAAW,CACP,CACI7G,KAAM,SACNoH,QAAS,CACLC,OAAQ,CAACN,EAAgBD,QAG9BD,KAGLS,GAAS,EAAInB,EAAaoB,aAAY,IAAOC,KAAKC,MAAsB,KAAhBD,KAAKE,YAC7DC,GAAY,EAAIxB,EAAaoB,aAAY,IAAMtG,SAAS2G,cAAc,SACtEC,GAAY,EAAIjN,EAAQkN,cAAcC,IAC3B,OAATA,GACAd,EAAiBc,EACrB,GACD,IACGnH,EAAK+G,EAAU7H,QAgBrB,OAfAc,EAAGV,GAAKA,GAAM,GAAGpF,EAAYkN,qBAAqBV,EAAOxH,UAErDwG,IACA1F,EAAG0F,UAAYA,GAEfM,GACAhG,EAAGqH,aAAa,eAAgBrB,IAEpC,EAAIhM,EAAQuG,YAAW,KACnBF,SAASiH,KAAKC,YAAYvH,GACnB,KACHK,SAASiH,KAAKE,YAAYxH,EAAG,IAGlC,KACI,EAAIqF,EAAYoC,eAAc,EAAI1N,EAAc4G,KAAK,MAAO3H,OAAO4H,OAAO,CAAEC,IAAKoG,EAAWnK,MAAO9D,OAAO4H,OAAO5H,OAAO4H,OAAO,CAAE8B,OAAQ,KAAO4D,EAAOoB,OAAOpB,QAASxJ,IAAUwJ,EAAOqB,WAAWrB,OAAQ,CAAEjK,UAAU,EAAItC,EAAc4G,KAAK2B,EAAmBK,iBAAkB3J,OAAO4H,OAAO,CAAE0C,kBAAkB,GAAQrG,OAAY+C,EAAG,2BC/DvV,IAAItH,EAAUC,MAAQA,KAAKD,QAAW,SAAUE,EAAGC,GAC/C,IAAIC,EAAI,CAAC,EACT,IAAK,IAAIC,KAAKH,EAAOI,OAAOC,UAAUC,eAAeC,KAAKP,EAAGG,IAAMF,EAAEO,QAAQL,GAAK,IAC9ED,EAAEC,GAAKH,EAAEG,IACb,GAAS,MAALH,GAAqD,mBAAjCI,OAAOK,sBACtB,KAAIC,EAAI,EAAb,IAAgBP,EAAIC,OAAOK,sBAAsBT,GAAIU,EAAIP,EAAEQ,OAAQD,IAC3DT,EAAEO,QAAQL,EAAEO,IAAM,GAAKN,OAAOC,UAAUO,qBAAqBL,KAAKP,EAAGG,EAAEO,MACvER,EAAEC,EAAEO,IAAMV,EAAEG,EAAEO,IAF4B,CAItD,OAAOR,CACX,EACAE,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQC,uBAAoB,EAC5B,MAAMsB,EAAgB,EAAQ,OACxB6N,EAAc,EAAQ,OACtB5N,EAAU,EAAQ,OAClB6N,EAA2B,EAAQ,OACnCC,EAAmB,EAAQ,MAC3BC,EAAmB,EAAQ,OAC3BC,EAAgB,EAAQ,OACxBC,EAAS,EAAQ,OACjBC,EAAe,EAAQ,MACvBC,EAAmB,EAAQ,OAC3BC,EAA4B,EAAQ,OACpCtF,EAAW,EAAQ,OACnB3I,EAAU,EAAQ,OAClBD,EAAc,EAAQ,OAqI5B1B,EAAQC,kBAlImByD,IACvB,IAAIiI,EACJ,MAAM,0BAAEkE,EAAyB,2BAAElM,EAA6BjC,EAAYkB,aAAaQ,MAAK,2BAAEQ,EAA6BlC,EAAYkB,aAAaD,MAAK,iBAAE8H,EAAmB,IAAKqF,cAAeC,EAAgBP,EAAcQ,YAAW,UAAEC,EAAS,UAAEnM,GAAY,EAAM4G,eAAgBC,EAAiB,MAAK,WAAEC,EAAYsF,cAAeC,EAAiB,UAAEC,EAAS,sBAAEC,EAAqB,wBAAEC,EAAuB,oBAAEC,EAAqBtD,YAAauD,EAAe,2BAAEC,GAA6B,EAAK,MAAEnM,GAAUZ,EAAOe,EAAOvE,EAAOwD,EAAO,CAAC,4BAA6B,6BAA8B,6BAA8B,mBAAoB,gBAAiB,YAAa,YAAa,iBAAkB,aAAc,gBAAiB,YAAa,wBAAyB,0BAA2B,sBAAuB,cAAe,6BAA8B,WACn2B,OAAEiJ,GAAW/B,EAAY8F,EAAoBxQ,EAAO0K,EAAY,CAAC,WACjE+F,EAAkBd,IAA8BnO,EAAYkB,aAAaS,MAE3EwM,GACGlM,IAA+BjC,EAAYkB,aAAaS,OACoE,gBAAlD,QAAxEsI,EAAiB,OAAZiF,cAAgC,IAAZA,aAAqB,EAAS,41IAAgC,IAAPjF,OAAgB,EAASA,EAAGkF,WAEjHC,QAAQC,KAAK,+EACoClB,gDAAwEnO,EAAYkB,aAAaS,yFAOtJ,MAAM2N,GAAW,EAAIxP,EAAQmD,QAAQ,OAC9BsM,EAAYC,IAAiB,EAAI1P,EAAQyD,WAAU,EAAItD,EAAQwP,mBAAmBvG,KAClFtD,EAAiB8J,IAAsB,EAAI5P,EAAQyD,UAAUmK,EAAYiC,eAAiB3P,EAAY4P,WAAWC,QACjHlK,EAAiBmK,IAAsB,EAAIhQ,EAAQyD,UAAUmK,EAAYiC,eAAiB3P,EAAY4P,WAAW7O,QACjHgP,EAAaC,IAAkB,EAAIlQ,EAAQyD,WAAU,IACrD0M,EAAyBC,IAA8B,EAAIpQ,EAAQyD,UAAU0L,GAI9E1D,EAAczM,OAAO4H,OAAO5H,OAAO4H,OAAO,CAAC,EAAGoI,GAAkB,CAAErD,WAAYqD,aAAyD,EAASA,EAAgBrD,aAAe9F,EAC3K3F,EAAY0L,uBAAuByE,KACnCnQ,EAAY0L,uBAAuB0E,QACvCC,EAAgB9E,EAAYE,YAAczL,EAAY0L,uBAAuByE,KAC7EG,GAAkBD,IAAkB1K,EAIpC4K,GAAgB,EAAIzQ,EAAQyK,UAAS,IAAM,KAAM,EAAItK,EAAQuQ,6BAA6BlB,EAAStK,QAASwK,EAAetG,IAAa,IACxIuH,GAA2C,EAAI3Q,EAAQyK,UAAS,KAClE,IAAIN,EAAIyG,EACR,MAAO,CACHlN,OAAO,EAAIwK,EAAa2C,qCAAqChC,aAAqE,EAASA,EAAsBnL,QAAUxD,EAAY4Q,iCAAkH,QAA/E3G,EAAKqF,aAA2C,EAASA,EAAStK,eAA4B,IAAPiF,OAAgB,EAASA,EAAG4G,cAAgBtB,EAAW/L,OAASxD,EAAY4Q,gCAAiCjC,aAAqE,EAASA,EAAsBmC,MAAOT,GACzgB5M,QAAQ,EAAIuK,EAAa2C,qCAAqChC,aAAqE,EAASA,EAAsBlL,SAAWzD,EAAY+Q,kCAAmH,QAA/EL,EAAKpB,aAA2C,EAASA,EAAStK,eAA4B,IAAP0L,OAAgB,EAASA,EAAGM,eAAiBzB,EAAW9L,QAAUzD,EAAY+Q,iCAAkCpC,aAAqE,EAASA,EAAsBmC,MAAOT,GACjhB,GACH,CAAC1B,EAAuBY,EAAYc,IACjCvH,IAAe,EAAIhJ,EAAQyK,UAAS,KAAM,EAAIwD,EAAOkD,sBAAqB,EAAIhR,EAAQiR,yBAAyB3B,EAAYD,GAAWT,EAAqB4B,IAA2C,CAACA,EAA0C5B,EAAqBU,KAI5Q,EAAIzP,EAAQuG,YAAW,KACnBmJ,GAAc,EAAIvP,EAAQwP,mBAAmBvG,GAAY,GAC1D,CAACA,KACJ,EAAIpJ,EAAQuG,YAAW,KACnB6J,EAA2B/B,IAA8BnO,EAAYkB,aAAaS,MAAM,GACzF,CAACwM,KACJ,EAAIrO,EAAQuG,YAAW,MACd,EAAIpG,EAAQkR,SAASjI,GAKtBmB,OAAOjE,oBAAoB,SAAUmK,KAJrC,EAAItQ,EAAQuQ,6BAA6BlB,EAAStK,QAASwK,EAAetG,GAC1EmB,OAAO/D,iBAAiB,SAAUiK,IAK/B,IAAMlG,OAAOjE,oBAAoB,SAAUmK,KAEnD,CAACrH,EAAYoG,IAIhB,MA4BM8B,GAAkB,MACf,EAAInR,EAAQkR,SAASjI,KACtB,EAAIjJ,EAAQuQ,6BAA6BlB,EAAStK,QAASwK,EAAetG,GAE9E8G,GAAe,EAAK,EAElBqB,GAA6B1S,IAC1BoR,IACGR,EAAWtE,QACXsE,EAAWtE,OAAOtM,GAEtByS,KACJ,EAEEE,GAAsBnD,GA/GT,CAACA,GAA+BA,IAA8BnO,EAAYkB,aAAaS,OACvGwM,IAA8BnO,EAAYkB,aAAaQ,MA8GD6P,CAAepD,IACjE,EAAItO,EAAc4G,KAAK4H,EAAevP,OAAO4H,OAAO,CAAC,EAAG6H,EAAW,CAAEiD,eAAgBjD,aAA6C,EAASA,EAAUiD,gBAAkB,IAAG,EAAIvR,EAAQwR,YAAYtD,aAAsCuD,eAAgBnD,aAA6C,EAASA,EAAUmD,gBAAkB,qBAAsB9L,gBAAiBA,EAAiBD,gBAAiBA,EAAiB/C,MA3CjZ,CAAC+O,IACvB,MAAMC,EAAY9S,OAAO4H,OAAO,CAAC,EAAGiL,GAMpC,OAHI1B,IACA2B,EAAUC,OAAS,WAEhBD,CAAS,EAoC8ZE,CAAkBvD,aAA6C,EAASA,EAAU3L,OAAQkE,QAASmJ,EA9B5ftR,IACrBA,EAAEwI,iBACFxI,EAAEqJ,kBACFkI,GAA2B,EAAM,OA2B4hBjJ,EAAWW,WAAYqI,EAzB5jBtR,IACxBA,EAAEwI,iBACFxI,EAAEqJ,kBACFkI,GAA2B,EAAM,OAsBkmBjJ,KAAiB,KAClpB8K,GAAgBtD,GAAqBM,EAA6BlB,EAAiBmE,kBAAoBpE,EAAiBqE,kBAiB9H,OAbA,EAAInS,EAAQoS,kBAAiB,KACzB,IAAIjI,GAC4B,QAA3BA,EAAKqF,EAAStK,eAA4B,IAAPiF,OAAgB,EAASA,EAAGkI,WAChEf,IACJ,GAED,KACH,EAAItR,EAAQuG,YAAW,KACfiJ,EAAStK,UACTsK,EAAStK,QAAQoN,OAASf,GAC9B,GAED,KACK,EAAIxR,EAAc4G,KAAKwH,EAAiBrO,eAAgBd,OAAO4H,OAAO,CAAE/D,gCAAgC,EAAMV,2BAA4BA,EAA4BC,2BAA4BA,EAA4BE,UAAWA,EAAWQ,OAAO,EAAIgG,EAASyJ,mBAAmB9C,EAAY3M,EAAOqN,GAA0B1N,6BApDtS+P,IACtC5C,EAAmB4C,EAAkB1M,iBACrCkK,EAAmBwC,EAAkB3M,gBAAgB,EAkDuVnD,eAtCrX,KACnByM,GACAiB,GAA2B,EAC/B,GAmCkbnN,EAAM,CAAEZ,SAAU,EAAG6B,WAAUJ,WAAUE,wBAAyB,EAAIjE,EAAc0S,MAAM1S,EAAc2S,SAAU,CAAErQ,SAAU,EAAC,EAAItC,EAAc4G,KAAKwC,EAAgBnK,OAAO4H,OAAO,CAAC,EAAGsI,EAAmB,CAAEjE,IAAKwE,EAAWxE,IAAKpE,IAAK2I,EAAU1M,OAAO,EAAIgG,EAAS6J,oBAAoBlD,EAAYrG,EAAWtG,UAAYmN,IAAgB,EAAIlQ,EAAc0S,MAAM1S,EAAc2S,SAAU,CAAErQ,SAAU,CAACmP,GAAqBhB,IAAmBL,IAA4B,EAAIpQ,EAAc4G,KAAKsL,GAAejT,OAAO4H,OAAO,CAAEoC,aAAcA,GAAcC,iBAAkBA,EAAkBnF,SAAUA,EAAUE,kBAAmBA,EAAmBE,SAAUA,GAAY0K,EAAW,CAAE/H,IAAK2I,KAAee,IAAkBJ,IAA4B,EAAIpQ,EAAc4G,KAAKyH,EAA0B/F,wBAAyBrJ,OAAO4H,OAAO,CAAEmC,oBAAqB4H,EAA0C3H,aAAcA,GAAcC,iBAAkBA,EAAkBC,eAAgB4F,EAAyB1F,WAAY2F,EAAqBjL,SAAUA,EAAUE,kBAAmBA,EAAmBE,SAAUA,EAAUqF,uBAAuB,EAAIpJ,EAAQiR,yBAAyB3B,EAAYD,IAAaX,KAA2B0B,IAAkBJ,IAA4B,EAAIpQ,EAAc4G,KAAKkH,EAAyBzC,uBAAwBpM,OAAO4H,OAAO,CAAEmC,oBAAqB4H,EAA0C3H,aAAcA,GAAcC,iBAAkBA,EAAkBC,eAAgB4F,EAAyB1F,WAAY2F,EAAqBjL,SAAUA,EAAUE,kBAAmBA,EAAmByH,YAAaA,EAAavH,SAAUA,EAAUqF,uBAAuB,EAAIpJ,EAAQiR,yBAAyB3B,EAAYD,IAAaX,EAAuB,CAAEhI,IAAK2I,aAA4B,iBC7JnsExQ,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQoN,uBAAyBpN,EAAQsS,gCAAkCtS,EAAQyS,iCAAmCzS,EAAQ4C,aAAe5C,EAAQoU,4BAA8BpU,EAAQqU,0BAA4BrU,EAAQ6G,iCAAmC7G,EAAQsU,uBAAyBtU,EAAQuU,uBAAyBvU,EAAQ4O,kBAAoB5O,EAAQsR,gBAAa,EACrXtR,EAAQsR,WAAa,CACjBC,MAAO,QACP9O,MAAO,SAEXzC,EAAQ4O,kBAAoB,6BAC5B5O,EAAQuU,uBAAyB,aACjCvU,EAAQsU,uBAAyB,MACjCtU,EAAQ6G,iCAAmC,iBAC3C7G,EAAQqU,0BAA4B,cACpCrU,EAAQoU,4BAA8B,gBACtCpU,EAAQ4C,aAAe,CACnBH,MAAO,QACPC,IAAK,MACLC,MAAO,QACPU,MAAO,QACPD,MAAO,QACPoR,UAAW,cAEfxU,EAAQyS,iCAAmC,OAC3CzS,EAAQsS,gCAAkC,OAC1CtS,EAAQoN,uBAAyB,CAC7ByE,KAAM,OACNC,KAAM,OACN,aAAc,aACd,WAAY,WACZ2C,IAAK,MACL,YAAa,YACb,UAAW,UACXC,OAAQ,SACR,eAAgB,eAChB,aAAc,aACdC,MAAO,QACP,cAAe,cACf,YAAa,YACbtH,KAAM,OACN,aAAc,aACd,WAAY,mCCtChB,IAAInN,EAAUC,MAAQA,KAAKD,QAAW,SAAUE,EAAGC,GAC/C,IAAIC,EAAI,CAAC,EACT,IAAK,IAAIC,KAAKH,EAAOI,OAAOC,UAAUC,eAAeC,KAAKP,EAAGG,IAAMF,EAAEO,QAAQL,GAAK,IAC9ED,EAAEC,GAAKH,EAAEG,IACb,GAAS,MAALH,GAAqD,mBAAjCI,OAAOK,sBACtB,KAAIC,EAAI,EAAb,IAAgBP,EAAIC,OAAOK,sBAAsBT,GAAIU,EAAIP,EAAEQ,OAAQD,IAC3DT,EAAEO,QAAQL,EAAEO,IAAM,GAAKN,OAAOC,UAAUO,qBAAqBL,KAAKP,EAAGG,EAAEO,MACvER,EAAEC,EAAEO,IAAMV,EAAEG,EAAEO,IAF4B,CAItD,OAAOR,CACX,EACAE,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQgQ,iBAAc,EACtB,MAAMzO,EAAgB,EAAQ,OACxBC,EAAU,EAAQ,OACxBxB,EAAQgQ,aAAc,EAAIxO,EAAQoT,OAAOlR,IACrC,MAAM,gBAAE4D,EAAe,gBAAED,EAAe,cAAE6L,EAAa,cAAEE,EAAa,MAAE9O,GAAUZ,EAAOe,EAAOvE,EAAOwD,EAAO,CAAC,kBAAmB,kBAAmB,gBAAiB,gBAAiB,UACvL,OAAQ,EAAInC,EAAc4G,KAAK,MAAO3H,OAAO4H,OAAO,CAAE9D,MAAO9D,OAAO4H,OAAO,CAAElD,MAAO,OAAQ2P,QAAS,OAAQC,eAAgB,SAAUpP,SAAU,WAAYqP,OAAQ,OAAQ7K,OAAQ,IAAM5F,IAAUG,EAAM,CAAEZ,UAAU,EAAItC,EAAc0S,MAAM,MAAOzT,OAAO4H,OAAO,CAAE9D,MAAO,CACjQuQ,QAAS,OACTG,WAAY,SACZC,QAAS,WACTC,gBAAiB,OACjBC,aAAc,OACdC,QAAS,SACR,CAAEvR,SAAU,EAAC,EAAItC,EAAc4G,KAAK,MAAO,CAAEsE,IAAK,GAAI4I,IAAK,sgDAAugD/Q,MAAO,CAClkDY,MAAO,OACPC,OAAQ,WACN,EAAI5D,EAAc4G,KAAK,OAAQ3H,OAAO4H,OAAO,CAAE9D,MAAO,CACxD2Q,QAAS,cACTK,WAAY,oBACZC,SAAU,OACVC,MAAO,UACN,CAAE3R,SAAUwD,EAAkB+L,EAAgBF,WAA2B,mBChClG1S,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQmO,gBAAa,EACrB,MAAM3M,EAAU,EAAQ,OAClBiU,EAAUC,OAAO,mBAQvB1V,EAAQmO,WAPYwH,IAChB,MAAMC,GAAU,EAAIpU,EAAQmD,QAAQ8Q,GAIpC,OAHIG,EAAQlP,UAAY+O,IACpBG,EAAQlP,QAAUiP,KAEfC,CAAO,yBCTlB,IAAI1V,EAAUC,MAAQA,KAAKD,QAAW,SAAUE,EAAGC,GAC/C,IAAIC,EAAI,CAAC,EACT,IAAK,IAAIC,KAAKH,EAAOI,OAAOC,UAAUC,eAAeC,KAAKP,EAAGG,IAAMF,EAAEO,QAAQL,GAAK,IAC9ED,EAAEC,GAAKH,EAAEG,IACb,GAAS,MAALH,GAAqD,mBAAjCI,OAAOK,sBACtB,KAAIC,EAAI,EAAb,IAAgBP,EAAIC,OAAOK,sBAAsBT,GAAIU,EAAIP,EAAEQ,OAAQD,IAC3DT,EAAEO,QAAQL,EAAEO,IAAM,GAAKN,OAAOC,UAAUO,qBAAqBL,KAAKP,EAAGG,EAAEO,MACvER,EAAEC,EAAEO,IAAMV,EAAEG,EAAEO,IAF4B,CAItD,OAAOR,CACX,EACAE,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQ6V,UAAO,EACf,MAAMtU,EAAgB,EAAQ,OAoB9BvB,EAAQ6V,KAnBMnS,IACV,MAAM,iBAAE+G,EAAmB,EAAC,SAAEnF,EAAQ,kBAAEE,EAAmBlB,MAAOwR,GAAyBpS,EAAOe,EAAOvE,EAAOwD,EAAO,CAAC,mBAAoB,WAAY,oBAAqB,UAUvKqG,EAAgB,CAClBrE,SAAU,WACV0P,QAAU9P,IAAaE,EAAqB,EAAI,EAChDuQ,WAAY,WAAWtL,eAErBuL,EAAgBxV,OAAO4H,OAAO5H,OAAO4H,OAAO5H,OAAO4H,OAAO,CAAC,EAd5C,CACjBlD,MAAO,OACPC,OAAQ,OACR6E,IAAK,OACLiM,MAAO,OACPlB,OAAQ,OACR9K,KAAM,OACN4K,QAAS,UAOsEiB,GAAuB/L,GAC1G,OAAO,EAAIxI,EAAc4G,KAAK,MAAO3H,OAAO4H,OAAO,CAAE9D,MAAO0R,GAAiBvR,GAAM,yBC/BvF,IAAIvE,EAAUC,MAAQA,KAAKD,QAAW,SAAUE,EAAGC,GAC/C,IAAIC,EAAI,CAAC,EACT,IAAK,IAAIC,KAAKH,EAAOI,OAAOC,UAAUC,eAAeC,KAAKP,EAAGG,IAAMF,EAAEO,QAAQL,GAAK,IAC9ED,EAAEC,GAAKH,EAAEG,IACb,GAAS,MAALH,GAAqD,mBAAjCI,OAAOK,sBACtB,KAAIC,EAAI,EAAb,IAAgBP,EAAIC,OAAOK,sBAAsBT,GAAIU,EAAIP,EAAEQ,OAAQD,IAC3DT,EAAEO,QAAQL,EAAEO,IAAM,GAAKN,OAAOC,UAAUO,qBAAqBL,KAAKP,EAAGG,EAAEO,MACvER,EAAEC,EAAEO,IAAMV,EAAEG,EAAEO,IAF4B,CAItD,OAAOR,CACX,EACAE,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQkW,gBAAa,EACrB,MAAM3U,EAAgB,EAAQ,OACxBC,EAAU,EAAQ,OAClB2U,EAAU,EAAQ,OAClBC,EAAS,EAAQ,OACvBpW,EAAQkW,YAAa,EAAI1U,EAAQwL,aAAY,CAACtJ,EAAO2E,KACjD,MAAM,aAAEmC,EAAY,SAAE9E,EAAQ,iBAAE+E,EAAgB,SAAEnF,EAAQ,kBAAEE,EAAmBlB,MAAOwR,GAAyBpS,EAAOe,EAAOvE,EAAOwD,EAAO,CAAC,eAAgB,WAAY,mBAAoB,WAAY,oBAAqB,UACvN2S,EAAWhO,EACjB,KAAMgO,aAA2C,EAASA,EAAS3P,SAC/D,OAAO,KAEX,MAAM4P,EAAmC,EAAjB9L,EAAa3E,EAC/B0Q,EAAiBF,EAAS3P,QAAQgM,aAAehN,EAASG,EAAI2E,EAAa3E,EAC3E2Q,EAAYH,EAAS3P,QAAQgM,aAAe4D,EAC5CnR,GAAS,EAAIgR,EAAQM,OAAOF,EAAgB,EAAGC,GAC/CE,EAAkBhR,EAASG,EAAI2E,EAAa3E,EAE5CkE,EAAgB,CAClB5E,OAAQ,GAAGA,MACXD,MAAO,OACP8E,IAAK,GAJGoE,KAAKuI,IAAID,EAAiBJ,QAMtC,OAAQ,EAAI/U,EAAc4G,KAAKiO,EAAOP,KAAMrV,OAAO4H,OAAO,CAAEqC,iBAAkBA,EAAkBnF,SAAUA,EAAUE,kBAAmBA,EAAmBlB,MAAO9D,OAAO4H,OAAO5H,OAAO4H,OAAO,CAAC,EAAG0N,GAAuB/L,IAAkBtF,GAAO,IAErPzE,EAAQkW,WAAWU,YAAc,oCCpCjC,IAAI1W,EAAUC,MAAQA,KAAKD,QAAW,SAAUE,EAAGC,GAC/C,IAAIC,EAAI,CAAC,EACT,IAAK,IAAIC,KAAKH,EAAOI,OAAOC,UAAUC,eAAeC,KAAKP,EAAGG,IAAMF,EAAEO,QAAQL,GAAK,IAC9ED,EAAEC,GAAKH,EAAEG,IACb,GAAS,MAALH,GAAqD,mBAAjCI,OAAOK,sBACtB,KAAIC,EAAI,EAAb,IAAgBP,EAAIC,OAAOK,sBAAsBT,GAAIU,EAAIP,EAAEQ,OAAQD,IAC3DT,EAAEO,QAAQL,EAAEO,IAAM,GAAKN,OAAOC,UAAUO,qBAAqBL,KAAKP,EAAGG,EAAEO,MACvER,EAAEC,EAAEO,IAAMV,EAAEG,EAAEO,IAF4B,CAItD,OAAOR,CACX,EACAE,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQ6W,cAAW,EACnB,MAAMtV,EAAgB,EAAQ,OACxBC,EAAU,EAAQ,OAClB2U,EAAU,EAAQ,OAClBC,EAAS,EAAQ,OACvBpW,EAAQ6W,UAAW,EAAIrV,EAAQwL,aAAY,CAACtJ,EAAO2E,KAC/C,MAAM,aAAEmC,EAAY,SAAE9E,EAAQ,iBAAE+E,EAAgB,SAAEnF,EAAQ,kBAAEE,EAAmBlB,MAAOwR,GAAyBpS,EAAOe,EAAOvE,EAAOwD,EAAO,CAAC,eAAgB,WAAY,mBAAoB,WAAY,oBAAqB,UACvN2S,EAAWhO,EACjB,KAAMgO,aAA2C,EAASA,EAAS3P,SAC/D,OAAO,KAEX,MAAM4P,EAAmC,EAAjB9L,EAAa3E,EAC/BiR,EAAkC,EAAjBtM,EAAa5E,EAC9B4Q,EAAYH,EAAS3P,QAAQgM,aAAe4D,EAC5CS,EAAWV,EAAS3P,QAAQ6L,YAAcuE,EAI1C/M,EAAgB,CAClB5E,OAAQ,GAJGmR,MAKXpR,MAAO,IAJG,EAAIiR,EAAQM,OAAO/Q,EAASE,EAAI4E,EAAa5E,EAAG,EAAGmR,OAK7D/M,IAAK,IAJG,EAAImM,EAAQM,OAAO/Q,EAASG,EAAI2E,EAAa3E,EAAG,EAAG2Q,OAK3DvM,KAAM,OAEV,OAAQ,EAAI1I,EAAc4G,KAAKiO,EAAOP,KAAMrV,OAAO4H,OAAO,CAAEqC,iBAAkBA,EAAkBnF,SAAUA,EAAUE,kBAAmBA,EAAmBlB,MAAO9D,OAAO4H,OAAO5H,OAAO4H,OAAO,CAAC,EAAG0N,GAAuB/L,IAAkBtF,GAAO,IAErPzE,EAAQ6W,SAASD,YAAc,kCCtC/B,IAAI1W,EAAUC,MAAQA,KAAKD,QAAW,SAAUE,EAAGC,GAC/C,IAAIC,EAAI,CAAC,EACT,IAAK,IAAIC,KAAKH,EAAOI,OAAOC,UAAUC,eAAeC,KAAKP,EAAGG,IAAMF,EAAEO,QAAQL,GAAK,IAC9ED,EAAEC,GAAKH,EAAEG,IACb,GAAS,MAALH,GAAqD,mBAAjCI,OAAOK,sBACtB,KAAIC,EAAI,EAAb,IAAgBP,EAAIC,OAAOK,sBAAsBT,GAAIU,EAAIP,EAAEQ,OAAQD,IAC3DT,EAAEO,QAAQL,EAAEO,IAAM,GAAKN,OAAOC,UAAUO,qBAAqBL,KAAKP,EAAGG,EAAEO,MACvER,EAAEC,EAAEO,IAAMV,EAAEG,EAAEO,IAF4B,CAItD,OAAOR,CACX,EACAE,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQgX,eAAY,EACpB,MAAMzV,EAAgB,EAAQ,OACxBC,EAAU,EAAQ,OAClB2U,EAAU,EAAQ,OAClBC,EAAS,EAAQ,OACvBpW,EAAQgX,WAAY,EAAIxV,EAAQwL,aAAY,CAACtJ,EAAO2E,KAChD,MAAM,aAAEmC,EAAY,SAAE9E,EAAQ,iBAAE+E,EAAgB,SAAEnF,EAAQ,kBAAEE,EAAmBlB,MAAOwR,GAAyBpS,EAAOe,EAAOvE,EAAOwD,EAAO,CAAC,eAAgB,WAAY,mBAAoB,WAAY,oBAAqB,UACvN2S,EAAWhO,EACjB,KAAMgO,aAA2C,EAASA,EAAS3P,SAC/D,OAAO,KAEX,MAAM4P,EAAmC,EAAjB9L,EAAa3E,EAC/BiR,EAAkC,EAAjBtM,EAAa5E,EAC9B4Q,EAAYH,EAAS3P,QAAQgM,aAAe4D,EAC5CS,EAAWV,EAAS3P,QAAQ6L,YAAcuE,EAI1C/M,EAAgB,CAClB5E,OAAQ,GAJGmR,MAKXpR,MAAO,IAJG,EAAIiR,EAAQM,OAAOJ,EAAS3P,QAAQ6L,YAAc7M,EAASE,EAAI4E,EAAa5E,EAAG,EAAGmR,OAK5F/M,IAAK,IAJG,EAAImM,EAAQM,OAAO/Q,EAASG,EAAI2E,EAAa3E,EAAG,EAAG2Q,OAK3DP,MAAO,OAEX,OAAQ,EAAI1U,EAAc4G,KAAKiO,EAAOP,KAAMrV,OAAO4H,OAAO,CAAEqC,iBAAkBA,EAAkBnF,SAAUA,EAAUE,kBAAmBA,EAAmBlB,MAAO9D,OAAO4H,OAAO5H,OAAO4H,OAAO,CAAC,EAAG0N,GAAuB/L,IAAkBtF,GAAO,IAErPzE,EAAQgX,UAAUJ,YAAc,mCCtChC,IAAI1W,EAAUC,MAAQA,KAAKD,QAAW,SAAUE,EAAGC,GAC/C,IAAIC,EAAI,CAAC,EACT,IAAK,IAAIC,KAAKH,EAAOI,OAAOC,UAAUC,eAAeC,KAAKP,EAAGG,IAAMF,EAAEO,QAAQL,GAAK,IAC9ED,EAAEC,GAAKH,EAAEG,IACb,GAAS,MAALH,GAAqD,mBAAjCI,OAAOK,sBACtB,KAAIC,EAAI,EAAb,IAAgBP,EAAIC,OAAOK,sBAAsBT,GAAIU,EAAIP,EAAEQ,OAAQD,IAC3DT,EAAEO,QAAQL,EAAEO,IAAM,GAAKN,OAAOC,UAAUO,qBAAqBL,KAAKP,EAAGG,EAAEO,MACvER,EAAEC,EAAEO,IAAMV,EAAEG,EAAEO,IAF4B,CAItD,OAAOR,CACX,EACAE,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQiX,aAAU,EAClB,MAAM1V,EAAgB,EAAQ,OACxBC,EAAU,EAAQ,OAClB2U,EAAU,EAAQ,OAClBC,EAAS,EAAQ,OACvBpW,EAAQiX,SAAU,EAAIzV,EAAQwL,aAAY,CAACtJ,EAAO2E,KAC9C,MAAM,aAAEmC,EAAY,SAAE9E,EAAQ,iBAAE+E,EAAgB,SAAEnF,EAAQ,kBAAEE,EAAmBlB,MAAOwR,GAAyBpS,EAAOe,EAAOvE,EAAOwD,EAAO,CAAC,eAAgB,WAAY,mBAAoB,WAAY,oBAAqB,UACvN2S,EAAWhO,EACjB,KAAMgO,aAA2C,EAASA,EAAS3P,SAC/D,OAAO,KAEX,MAAM4P,EAAmC,EAAjB9L,EAAa3E,EAC/B2Q,EAAYH,EAAS3P,QAAQgM,aAAe4D,EAE5CvM,EAAgB,CAClB5E,OAAQ,IAFG,EAAIgR,EAAQM,OAAO/Q,EAASG,EAAI2E,EAAa3E,EAAG,EAAG2Q,OAG9DtR,MAAO,OACP8E,IAAK,OAET,OAAQ,EAAIzI,EAAc4G,KAAKiO,EAAOP,KAAMrV,OAAO4H,OAAO,CAAEqC,iBAAkBA,EAAkBnF,SAAUA,EAAUE,kBAAmBA,EAAmBlB,MAAO9D,OAAO4H,OAAO5H,OAAO4H,OAAO,CAAC,EAAG0N,GAAuB/L,IAAkBtF,GAAO,IAErPzE,EAAQiX,QAAQL,YAAc,gCCjC9B,IAAI1W,EAAUC,MAAQA,KAAKD,QAAW,SAAUE,EAAGC,GAC/C,IAAIC,EAAI,CAAC,EACT,IAAK,IAAIC,KAAKH,EAAOI,OAAOC,UAAUC,eAAeC,KAAKP,EAAGG,IAAMF,EAAEO,QAAQL,GAAK,IAC9ED,EAAEC,GAAKH,EAAEG,IACb,GAAS,MAALH,GAAqD,mBAAjCI,OAAOK,sBACtB,KAAIC,EAAI,EAAb,IAAgBP,EAAIC,OAAOK,sBAAsBT,GAAIU,EAAIP,EAAEQ,OAAQD,IAC3DT,EAAEO,QAAQL,EAAEO,IAAM,GAAKN,OAAOC,UAAUO,qBAAqBL,KAAKP,EAAGG,EAAEO,MACvER,EAAEC,EAAEO,IAAMV,EAAEG,EAAEO,IAF4B,CAItD,OAAOR,CACX,EACAE,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQ2T,uBAAoB,EAC5B,MAAMpS,EAAgB,EAAQ,OACxBC,EAAU,EAAQ,OAClB0V,EAAY,EAAQ,OACpBC,EAAa,EAAQ,OACrBC,EAAc,EAAQ,OACtBC,EAAe,EAAQ,OAC7BrX,EAAQ2T,mBAAoB,EAAInS,EAAQwL,aAAY,CAACtJ,EAAO2E,KACxD,MAAM,aAAEmC,EAAY,iBAAEC,EAAgB,SAAEnF,EAAQ,kBAAEE,EAAiB,SAAEE,EAAUpB,MAAOgT,GAAuB5T,EAAOe,EAAOvE,EAAOwD,EAAO,CAAC,eAAgB,mBAAoB,WAAY,oBAAqB,WAAY,UACrN6T,EAAoB/W,OAAO4H,OAAO,CAAE8M,gBAAiB,kBAAoBoC,GAC/E,OAAQ,EAAI/V,EAAc0S,MAAM,MAAOzT,OAAO4H,OAAO,CAAC,EAAG3D,EAAM,CAAEZ,SAAU,EAAC,EAAItC,EAAc4G,KAAK+O,EAAUD,QAASzW,OAAO4H,OAAO,CAAC,EAAG1E,EAAO,CAAE2E,IAAKA,EAAK/D,MAAOiT,MAAuB,EAAIhW,EAAc4G,KAAKgP,EAAWN,SAAUrW,OAAO4H,OAAO,CAAC,EAAG1E,EAAO,CAAE2E,IAAKA,EAAK/D,MAAOiT,MAAuB,EAAIhW,EAAc4G,KAAKiP,EAAYJ,UAAWxW,OAAO4H,OAAO,CAAC,EAAG1E,EAAO,CAAE2E,IAAKA,EAAK/D,MAAOiT,MAAuB,EAAIhW,EAAc4G,KAAKkP,EAAanB,WAAY1V,OAAO4H,OAAO,CAAC,EAAG1E,EAAO,CAAE2E,IAAKA,EAAK/D,MAAOiT,QAA2B,IAEphBvX,EAAQ2T,kBAAkBiD,YAAc,mCCxBxCpW,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQwX,aAAU,EAClBxX,EAAQwX,QAAU,oeCFlB,IAAItX,EAAUC,MAAQA,KAAKD,QAAW,SAAUE,EAAGC,GAC/C,IAAIC,EAAI,CAAC,EACT,IAAK,IAAIC,KAAKH,EAAOI,OAAOC,UAAUC,eAAeC,KAAKP,EAAGG,IAAMF,EAAEO,QAAQL,GAAK,IAC9ED,EAAEC,GAAKH,EAAEG,IACb,GAAS,MAALH,GAAqD,mBAAjCI,OAAOK,sBACtB,KAAIC,EAAI,EAAb,IAAgBP,EAAIC,OAAOK,sBAAsBT,GAAIU,EAAIP,EAAEQ,OAAQD,IAC3DT,EAAEO,QAAQL,EAAEO,IAAM,GAAKN,OAAOC,UAAUO,qBAAqBL,KAAKP,EAAGG,EAAEO,MACvER,EAAEC,EAAEO,IAAMV,EAAEG,EAAEO,IAF4B,CAItD,OAAOR,CACX,EACAE,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQ0T,uBAAoB,EAC5B,MAAMnS,EAAgB,EAAQ,OACxB4U,EAAU,EAAQ,OAClBsB,EAA2B,EAAQ,OACnCjW,EAAU,EAAQ,OACxBxB,EAAQ0T,mBAAoB,EAAIlS,EAAQwL,aAAY,CAACtJ,EAAO2E,KACxD,MAAM,SAAE/C,EAAQ,kBAAEE,EAAiB,iBAAEiF,EAAkBD,cAAgB5E,EAAG8R,EAAe7R,EAAG8R,GAAkBjS,UAAYE,EAAGgS,EAAW/R,EAAGgS,GAAcvT,MAAOgT,GAAuB5T,EAAOe,EAAOvE,EAAOwD,EAAO,CAAC,WAAY,oBAAqB,mBAAoB,eAAgB,WAAY,UAC/R2S,EAAWhO,EACjB,KAAMgO,aAA2C,EAASA,EAAS3P,SAC/D,OAAO,KAEX,MAAMoR,EAAe,CACjB/B,WAAY,WAAWtL,cACvBsN,gBAAiB,OAAON,EAAyBD,YAE/CtS,EAAwB,EAAhBwS,EACRvS,EAAyB,EAAhBwS,EACTpM,EAAYjG,IAAaE,EACzBwE,EAAM6N,EAAYF,EAClB1N,EAAO2N,EAAYF,EACnBM,EAAS3B,EAAS3P,QAAQgM,aAAevN,EACzC8S,EAAU5B,EAAS3P,QAAQ6L,YAAcrN,EAEzCgT,EAAgB,CAClBxS,SAAU,WACVsE,IAAK,IAAG,EAAImM,EAAQM,OAAOzM,EAHb,EAG6BgO,OAC3C/N,KAAM,IAAG,EAAIkM,EAAQM,OAAOxM,EAJd,EAI+BgO,OAC7C/S,MAAO,GAAGA,MACVC,OAAQ,GAAGA,MACXiQ,QAAS7J,EAAY,EAAI,GAE7B,OAAQ,EAAIhK,EAAc4G,KAAK,MAAO3H,OAAO4H,OAAO,CAAE9D,MAAO9D,OAAO4H,OAAO5H,OAAO4H,OAAO5H,OAAO4H,OAAO,CAAC,EAAG0P,GAAeR,GAAqBY,IAAkBzT,GAAO,IAE5KzE,EAAQ0T,kBAAkBkD,YAAc,mCC7CxCpW,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQmY,gBAAa,EA2CrBnY,EAAQmY,WA1CR,MACI,WAAAC,CAAYpK,GACR7N,KAAKiC,kBAAoB4L,EAAQ5L,kBACjCjC,KAAKmF,UAAW,EAChBnF,KAAKkY,OAAS,EAClB,CACA,QAAAC,GACInY,KAAKmF,UAAW,EAChBnF,KAAKiC,kBAAkB,CAAEkD,UAAU,GACvC,CACA,UAAAiT,GACIpY,KAAKmF,UAAW,EAChBnF,KAAKiC,kBAAkB,CAAEkD,UAAU,IACnCnF,KAAKqY,aACT,CACA,gBAAAC,GACQtY,KAAKmF,SACLnF,KAAKoY,aAGLpY,KAAKmY,UAEb,CACA,WAAAE,GACI,MAAM,OAAEH,GAAWlY,KACnB,KAAOkY,EAAOtX,QAAQ,CAClB,MAAM2X,EAAQL,EAAOM,OACjBD,aAAqC,EAASA,EAAM5R,KAEpDgF,aAAa4M,EAAM5R,GAE3B,CACJ,CACA,UAAA8R,CAAWC,GACP1Y,KAAKkY,OAAOzM,SAAS8M,IACbA,EAAM9R,OAASiS,GAEf/M,aAAa4M,EAAM5R,GACvB,GAER,oBC1CJtG,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQuD,qBAAkB,EAC1B,MAAMuV,EAA+B,EAAQ,OAC7C,MAAMvV,UAAwBuV,EAA6BC,2BACvD,YAAArQ,GACIvI,KAAKsY,kBACT,EAEJzY,EAAQuD,gBAAkBA,mBCR1B/C,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQsD,qBAAkB,EAC1B,MAAM5B,EAAc,EAAQ,OACtBoX,EAA+B,EAAQ,OAC7C,MAAMxV,UAAwBwV,EAA6BC,2BACvD,WAAAX,CAAYpK,GACRgL,MAAM,CAAE5W,kBAAmB4L,EAAQ5L,oBACnCjC,KAAK+C,eAAiB8K,EAAQ9K,eAC9B/C,KAAKgD,kBAAoB6K,EAAQ7K,iBACrC,CACA,YAAA6F,GACI7I,KAAKqY,cACLrY,KAAK8Y,kBAAkB9Y,KAAK+C,eAChC,CACA,SAAAgG,GACI/I,KAAKqY,cACLrY,KAAK+Y,qBAAqB/Y,KAAKgD,kBACnC,CACA,iBAAA8V,CAAkBE,GACd,MAAMC,EAAarS,YAAW,KAC1B5G,KAAKmY,UAAU,GAChBa,GACHhZ,KAAKkY,OAAO1R,KAAK,CACbG,GAAIsS,EACJxS,KAAMlF,EAAY2S,2BAE1B,CACA,oBAAA6E,CAAqBC,GACjB,MAAMC,EAAarS,YAAW,KAC1B5G,KAAKoY,YAAY,GAClBY,GACHhZ,KAAKkY,OAAO1R,KAAK,CACbG,GAAIsS,EACJxS,KAAMlF,EAAY0S,6BAE1B,EAEJpU,EAAQsD,gBAAkBA,mBCrC1B9C,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQ+Y,gCAA6B,EAErC,MAAMM,EAAe,EAAQ,OAC7B,MAAMN,UAAmCM,EAAalB,WAClD,YAAAnP,GAEA,CACA,UAAAsQ,GAEA,CACA,SAAApQ,GAEA,CACA,YAAAR,GAEA,EAEJ1I,EAAQ+Y,2BAA6BA,mBClBrCvY,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQ6C,qBAAkB,EAC1B,MAAMnB,EAAc,EAAQ,OACtB6X,EAA+B,EAAQ,OAC7C,MAAM1W,UAAwB0W,EAA6BC,2BACvD,WAAApB,CAAYpK,GACRgL,MAAM,CAAE5W,kBAAmB4L,EAAQ5L,oBACnCjC,KAAKkC,kBAAoB2L,EAAQ3L,kBACjClC,KAAKmC,mBAAqB0L,EAAQ1L,kBACtC,CACA,YAAAsH,CAAaxD,GACTjG,KAAKsZ,uBAAuBrT,EAAMV,UAClCvF,KAAKuZ,oBACT,CACA,UAAAjQ,CAAWrD,GACHjG,KAAKmF,UAGTnF,KAAKwZ,sBAAsBvT,EAAMV,SACrC,CACA,kBAAAgU,GACIvZ,KAAKkY,OAAO1R,KAAK,CACbC,KAAMlF,EAAY6S,uBAClBzN,GAAIC,YAAW,KACPqH,KAAKwL,IAAIzZ,KAAK0Z,aAAe1Z,KAAK2Z,cAAgB3Z,KAAKmC,oBACvDnC,KAAKmY,UACT,GACDnY,KAAKkC,oBAEhB,CACA,qBAAAsX,CAAsBjU,GAClBvF,KAAK0Z,aAAenU,EAASG,CACjC,CACA,sBAAA4T,CAAuB/T,GACnB,MAAMsE,EAAMtE,EAASG,EACrB1F,KAAK2Z,aAAe9P,EACpB7J,KAAK0Z,aAAe7P,CACxB,EAEJhK,EAAQ6C,gBAAkBA,iBCvC1BrC,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQ4E,oCAAiC,EAmDzC5E,EAAQ4E,+BAlDR,MACI,WAAIsD,GACA,OAAO/H,KAAK4Z,QAChB,CACA,WAAI7R,CAAQ7G,GACRlB,KAAK4Z,SAAW1Y,CACpB,CACA,iCAAI2Y,GACA,IAAK7Z,KAAK4Z,SACN,MAAM,IAAI/W,MAAM,2CAKpB,OAHK7C,KAAK8Z,gBACN9Z,KAAK8Z,cAAgB9Z,KAAK+Z,iCAAiC/Z,KAAK4Z,WAE7D5Z,KAAK8Z,aAChB,CACA,gCAAAC,CAAiC1S,GAC7B,MAAM2S,EAASha,KAAKia,YAAY5S,IACxByC,KAAMoQ,EAASrQ,IAAKsQ,GAAYH,EAAOI,yBACvCtQ,KAAMuQ,EAAQxQ,IAAKyQ,GAAWjT,EAAG+S,wBACzC,MAAO,CACH3U,EAAGwI,KAAKwL,IAAIS,GAAWG,EACvB3U,EAAGuI,KAAKwL,IAAIU,GAAUG,EAE9B,CACA,WAAAL,CAAY5S,GACR,OAAIA,EAAGkT,cACIva,KAAKia,YAAY5S,EAAGkT,eAExBlT,CACX,CACA,wCAAAmT,CAAyCvU,EAAO4T,GAC5C,MAAMtU,EAAWvF,KAAKya,kCAAkCxU,IAChDR,EAAGiV,EAAShV,EAAGiV,GAAYpV,GAC3BE,EAAGmV,EAASlV,EAAGmV,GAAYhB,EACnC,MAAO,CACHpU,EAAGwI,KAAK6M,MAAMJ,EAAUE,GACxBlV,EAAGuI,KAAK6M,MAAMH,EAAUE,GAEhC,CACA,iCAAAJ,CAAkCxU,GAC9B,MAAO,CACHR,EAAGQ,EAAM8U,MACTrV,EAAGO,EAAM+U,MAEjB,CACA,iBAAA1S,CAAkBrC,GACd,OAAOjG,KAAKwa,yCAAyCvU,EAAOjG,KAAK6Z,8BACrE,oBClDJxZ,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQ8C,mBAAgB,EACxB,MAAMpB,EAAc,EAAQ,OACtB6X,EAA+B,EAAQ,OAC7C,MAAMzW,UAAsByW,EAA6BC,2BACrD,WAAApB,CAAYpK,GACRgL,MAAM,CAAE5W,kBAAmB4L,EAAQ5L,oBACnCjC,KAAKib,oBAAqB,EAC1Bjb,KAAKoC,gBAAkByL,EAAQzL,gBAC/BpC,KAAKqC,iBAAmBwL,EAAQxL,gBACpC,CACA,YAAAoH,CAAaxD,GACTjG,KAAKib,oBAAqB,EAC1Bjb,KAAKkb,kBAAkBjV,EAAMV,UAC7BvF,KAAKmb,kBACT,CACA,UAAA7R,CAAWrD,GACHjG,KAAKmF,UAGTnF,KAAKob,yBAAyBnV,EAAMV,SACxC,CACA,UAAA6D,GACIpJ,KAAKib,oBAAqB,CAC9B,CACA,0BAAII,GACA,OAAOpN,KAAKwL,IAAIzZ,KAAK0Z,aAAe1Z,KAAK2Z,cAAgB3Z,KAAKqC,gBAClE,CACA,sBAAIiZ,GACA,OAAQtb,KAAKqb,wBAA0Brb,KAAKib,kBAChD,CACA,gBAAAE,GACInb,KAAKkY,OAAO1R,KAAK,CACbC,KAAMlF,EAAY4S,uBAClBxN,GAAIC,YAAW,KACP5G,KAAKsb,oBACLtb,KAAKsY,kBACT,GACDtY,KAAKoC,kBAEhB,CACA,wBAAAgZ,CAAyB7V,GACrBvF,KAAK0Z,aAAenU,EAASG,CACjC,CACA,iBAAAwV,CAAkB3V,GACd,MAAMsE,EAAMtE,EAASG,EACrB1F,KAAK2Z,aAAe9P,EACpB7J,KAAK0Z,aAAe7P,CACxB,EAEJhK,EAAQ8C,cAAgBA,mBClDxBtC,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQ+C,qBAAkB,EAC1B,MAAMwW,EAA+B,EAAQ,OAC7C,MAAMxW,UAAwBwW,EAA6BC,2BACvD,YAAA5P,CAAaxD,GACTA,EAAM/F,EAAEwI,iBACR1I,KAAKmY,UACT,EAEJtY,EAAQ+C,gBAAkBA,mBCT1BvC,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQwZ,gCAA6B,EAGrC,MAAMH,EAAe,EAAQ,OAC7B,MAAMG,UAAmCH,EAAalB,WAClD,WAAAC,CAAYpK,GACRgL,MAAMhL,GACN7N,KAAK2Z,aAAe,EACpB3Z,KAAK0Z,aAAe,CACxB,CACA,YAAAjQ,CAAaxD,GACT,MAAM,IAAIpD,MAAM,oBACpB,CACA,UAAAyG,CAAWrD,GACP,MAAM,IAAIpD,MAAM,oBACpB,CACA,UAAAuG,GACIpJ,KAAKoY,YACT,CACA,aAAAlP,GACIlJ,KAAKoY,YACT,EAEJvY,EAAQwZ,2BAA6BA,iBCxBrChZ,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQyW,WAAQ,EAOhBzW,EAAQyW,MALR,SAAepV,EAAOqa,EAAK/E,GACvB,OAAO+E,EAAM/E,EACNtV,EAAQqa,EAAMA,EAAMra,EAAQsV,EAAMA,EAAMtV,EACxCA,EAAQsV,EAAMA,EAAMtV,EAAQqa,EAAMA,EAAMra,CACnD,gBCLA,SAASsa,EAAmBC,GACxB,MAAuB,iBAARA,GACR,SAASC,KAAKD,EACzB,CAEA,SAASE,EAA2BC,EAAYC,EAAc,KAC1D,MAAMC,EAA+B,iBAAhBD,EAA2BE,SAASF,EAAa,IAAMA,EAC5E,OAA8B,iBAAfD,EAA0BG,SAASH,EAAY,IAAMA,GAAcE,CACtF,CAVAzb,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQqS,mCAAqCrS,EAAQ8b,2BAA6B9b,EAAQ2b,wBAAqB,EAK/G3b,EAAQ2b,mBAAqBA,EAK7B3b,EAAQ8b,2BAA6BA,EA2BrC9b,EAAQqS,mCA1BR,SAA4C8J,EAAoBC,EAAqB5J,EAAOT,GACxF,IAAIpG,EACJ,OAAIoG,EACOqK,EAEP5J,GACIA,GAAS,GAAiI,gBAAlD,QAAxE7G,EAAiB,OAAZiF,cAAgC,IAAZA,aAAqB,EAAS,41IAAgC,IAAPjF,OAAgB,EAASA,EAAGkF,YAE5HC,QAAQC,KAAK,oFACqCyB,wCAGlDA,EAAQ,KAEJmJ,EAAmBS,GACrBN,EAA2BM,GAC3BA,GACA5J,GAENmJ,EAAmBQ,GACZR,EAAmBS,GACpBN,EAA2BM,EAAqBD,GAChDC,EAAsBN,EAA2BK,GAEpDA,CACX,mBCrCA3b,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQyL,oCAAsCzL,EAAQ0L,0CAAuC,EAC7F,MAAMyK,EAAU,EAAQ,OAClBkG,EAAe,EAAQ,OAC7B,SAASC,EAAkBC,EAAWC,GAClC,MAAO,CACH5W,GAA4C,GAAvC4W,EAAWtX,MAAQqX,EAAUrX,OAClCW,GAA8C,GAAzC2W,EAAWrX,OAASoX,EAAUpX,QAE3C,CAOA,SAASsX,EAAsBjR,EAAkBkR,EAAgBC,GAC7D,MAAO,CACH/W,GAAG,EAAIuQ,EAAQM,OAAOjL,EAAiB5F,EAAG8W,EAAe9W,EAAG+W,EAAe/W,GAC3EC,GAAG,EAAIsQ,EAAQM,OAAOjL,EAAiB3F,EAAG6W,EAAe7W,EAAG8W,EAAe9W,GAEnF,CAkBA7F,EAAQ0L,qCAXR,SAA8CnB,EAAqBC,EAAcoS,EAAgBlX,EAAUmX,GACvG,MAAMC,EAPV,SAA0CpX,EAAUqX,GAChD,MAAO,CACHnX,EAAGF,EAASE,EAAImX,EAAiBnX,EACjCC,EAAGH,EAASG,EAAIkX,EAAiBlX,EAEzC,CAE6BmX,CAAiCtX,EAAU8E,GAC9DyS,GAAQ,EAAIZ,EAAaa,2BAA2BL,EAAOD,GAOjE,OAAOH,EANa,CAChB7W,GAAgD,EAA5CwI,KAAK6M,MAAM6B,EAAiBlX,EAAIqX,EAAMrX,GAC1CC,GAAgD,EAA5CuI,KAAK6M,MAAM6B,EAAiBjX,EAAIoX,EAAMpX,IAEvByW,EAAkB/R,EAAqBqS,GAxBvD,CACHhX,EAAG,EACHC,EAAG,GAyBX,EAYA7F,EAAQyL,oCAVR,SAA6ClB,EAAqBqS,EAAgBlX,GAC9E,MAAMgX,EAAiBJ,EAAkB/R,EAAqBqS,GACxDD,EA/BC,CACH/W,EAAG,EACHC,EAAG,GA8BDoX,GAAQ,EAAIZ,EAAac,0BAA0B5S,EAAqBqS,GAK9E,OAAOH,EAJa,CAChB7W,GAAwC,EAApCwI,KAAK6M,MAAMvV,EAASE,EAAIqX,EAAMrX,GAClCC,GAAwC,EAApCuI,KAAK6M,MAAMvV,EAASG,EAAIoX,EAAMpX,IAEI6W,EAAgBC,EAC9D,iBC/CA,SAASS,EAA4BC,EAAcC,GAC/C,MAAO,CACH1X,EAAGyX,EAAanY,MAASoY,EAAapY,MAAQmY,EAAanY,MAAS,EACpEW,EAAGwX,EAAalY,OAAUmY,EAAanY,OAASkY,EAAalY,OAAU,EAE/E,CAPA3E,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQmd,yBAA2Bnd,EAAQud,0BAA4Bvd,EAAQkd,+BAA4B,EAU3Gld,EAAQkd,0BAHR,SAAmCjM,EAAYuL,GAC3C,OAAOY,EAA4BnM,EAAYuL,EACnD,EAQAxc,EAAQud,0BANR,SAAmCtM,EAAYuL,GAC3C,MAAO,CACH5W,EAAGqL,EAAW/L,MAAS+L,EAAW/L,MAAQsX,EAAWtX,MAAS,EAC9DW,EAAGoL,EAAW9L,OAAU8L,EAAW9L,OAASqX,EAAWrX,OAAU,EAEzE,EAQAnF,EAAQmd,yBANR,SAAkCZ,EAAWM,GACzC,OAAOO,EAA4Bb,EAAW,CAC1CrX,MAAO2X,EAAM3X,MAAQqX,EAAUrX,MAC/BC,OAAQ0X,EAAM1X,OAASoX,EAAUpX,QAEzC,mBCxBA3E,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQ2S,yBAAsB,EAC9B,MAAM0J,EAAe,EAAQ,OAC7B,SAASmB,EAA6Bnc,EAAO4b,GACzC,OAAO7O,KAAK6M,MAAO5Z,EAAQ4b,EAAS,EACxC,CAQAjd,EAAQ2S,oBAPR,SAA6B1B,EAAYuL,EAAYiB,GACjD,MAAMR,GAAQ,EAAIZ,EAAakB,2BAA2BtM,EAAYuL,GACtE,MAAO,CACH5W,EAAG4X,EAA6BC,EAAiCvY,MAAO+X,EAAMrX,GAC9EC,EAAG2X,EAA6BC,EAAiCtY,OAAQ8X,EAAMpX,GAEvF,mBCZArF,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQkM,uBAAyBlM,EAAQwM,kCAAoCxM,EAAQqM,yBAA2BrM,EAAQsM,yBAA2BtM,EAAQmU,mBAAqBnU,EAAQ+T,uBAAoB,EAC5M,MAAMpS,EAAU,EAAQ,OAKxB3B,EAAQ+T,kBAJR,SAA2B9C,EAAY3M,EAAOqN,GAC1C,MAAM,MAAEzM,EAAK,OAAEC,GAAY8L,EAC3B,OAAOzQ,OAAO4H,OAAO,CAAEmL,OAAQ5B,EAA0B,UAAY,YAAajM,SAAU,WAAYP,QAAQ,EAAIxD,EAAQ+b,kBAAkBvY,GAAUA,EAAS,GAAGA,MAAYD,OAAO,EAAIvD,EAAQ+b,kBAAkBxY,GAASA,EAAQ,GAAGA,OAAaZ,EAC1P,EAMAtE,EAAQmU,mBAJR,SAA4BlD,EAAY3M,GAEpC,OADgC9D,OAAO4H,OAAO,CAAEuV,cAAe,OAAQxY,OAAQ,OAAQD,MAAO,QAAUZ,EAE5G,EAOAtE,EAAQsM,yBALR,SAAkCpB,GAC9B,MAAO,CACHkK,QAASlK,EAAqB,EAAI,EAE1C,EAKAlL,EAAQqM,yBAHR,SAAkC9B,EAAqBjG,EAAOmG,GAC1D,OAAOjK,OAAO4H,OAAO,CAAElD,MAAOqF,EAAoBrF,MAAOC,OAAQoF,EAAoBpF,OAAQ4Q,WAAY,WAAWtL,cAA8BkT,cAAe,QAAUrZ,EAC/K,EAUAtE,EAAQwM,kCARR,SAA2ChB,GACvC,MAAMoS,EAAY,aAAapS,EAAiB5F,QAAQ4F,EAAiB3F,OACzE,MAAO,CACHgY,UAAWD,EACXE,gBAAiBF,EACjBG,YAAaH,EAErB,EAKA5d,EAAQkM,uBAHR,SAAgC0Q,GAC5B,OAAOpc,OAAO4H,OAAO,CAAElD,MAAO0X,EAAe1X,MAAOC,OAAQyX,EAAezX,OAAQwY,cAAe,QAAUf,EAAetY,MAC/H,iBClCA9D,OAAOY,eAAepB,EAAS,aAAc,CAAEqB,OAAO,IACtDrB,EAAQkS,4BAA8BlS,EAAQmR,kBAAoBnR,EAAQ4S,wBAA0B5S,EAAQmT,WAAanT,EAAQge,eAAiBhe,EAAQ6S,QAAU7S,EAAQ0d,iBAAmB1d,EAAQgE,UAAO,EAE9M,MAAMia,EAAmB,IAAIC,OAAO,kFAAmF,MACvH,SAASla,IAET,CAEA,SAAS0Z,EAAiBrc,GACtB,IAAI8c,EAA0B,iBAAV9c,EAGpB,OAFA8c,EAASA,QAAoBxV,IAAVtH,GAAuB4c,EAAiBpC,KAAKxa,GAChE4c,EAAiBG,UAAY,EACtBD,CACX,CAkCA,SAAShN,EAAkBkN,EAAgBC,EAAkBC,GACzD,MAAMtN,EAAazQ,OAAO4H,OAAO5H,OAAO4H,OAAO,CAAC,EAAGiW,GAAiB,CAAElZ,OAAQmZ,GAAoBD,EAAelZ,QAAU,OAAQD,MAAOqZ,GAAmBF,EAAenZ,OAAS,SAIrL,OAHK+L,EAAWtE,SACZsE,EAAWtE,OAAS3I,GAEjBiN,CACX,CA9CAjR,EAAQgE,KAAOA,EAOfhE,EAAQ0d,iBAAmBA,EAK3B1d,EAAQ6S,QAJR,SAAiB5B,GACb,MAAMkN,EAAST,EAAiBzM,EAAW9L,SAAWuY,EAAiBzM,EAAW/L,OAClF,YAA8ByD,IAAtBsI,EAAW9L,aAA6CwD,IAArBsI,EAAW/L,OAAwBiZ,CAClF,EAKAne,EAAQge,eAHR,SAAwB1Z,GACpB,OAAO9D,OAAOge,QAAQla,GAAOma,KAAI,EAAEC,EAAGC,KAAO,GAAGD,EAAEE,QAAQ,UAAWC,GAAU,IAAIA,EAAMC,qBAAoBH,MAAKI,KAAK,IAC3H,EAKA/e,EAAQmT,WAHR,SAAoB6L,GAChB,OAAOA,EAAIC,OAAO,GAAGC,cAAgBF,EAAIG,MAAM,EACnD,EAoBAnf,EAAQ4S,wBAlBR,SAAiChI,EAAYvC,GACzC,MAAiC,iBAAtBuC,EAAWzF,QAAmD,iBAArByF,EAAW1F,MACpD,CACHC,OAAQyF,EAAWzF,OACnBD,MAAO0F,EAAW1F,QAGpBmD,aAAiC,EAASA,EAAI3B,SAM7C,CACHvB,OAAQkD,EAAI3B,QAAQgM,aACpBxN,MAAOmD,EAAI3B,QAAQ6L,aAPZ,CACHpN,OAAQ,EACRD,MAAO,EAOnB,EASAlF,EAAQmR,kBAAoBA,EAQ5BnR,EAAQkS,4BAPR,SAAqCkN,EAAKlO,EAAemN,GACrD,GAAIe,EAAK,CACL,MAAM,cAAEC,EAAa,aAAEC,EAAY,aAAE5M,EAAY,YAAEH,GAAiB6M,EAEpElO,EADsBC,EAAkBkN,EAAgBX,EAAiBW,EAAelZ,QAAUkZ,EAAelZ,OAASuN,GAAgB2M,EAAe3B,EAAiBW,EAAenZ,OAASmZ,EAAenZ,MAAQqN,GAAe+M,GAE5O,CACJ,iDC9DA,ICAIC,EDAAC,EAAkB,GEAlBC,EAAM,iEDCV,SAAWF,GACPA,EAAqC,WAAI,aACzCA,EAAsC,YAAI,cAC1CA,EAAmD,yBAAI,0BAC1D,CAJD,CAIGA,IAA6BA,EAA2B,CAAC,IELrD,ICAHG,EDAOC,EAAS,SAAUC,GAAO,OAAOpf,OAAOmf,OAAOC,EAAM,EEC5DC,EACA,SAA4BC,EAAYC,GACpC5f,KAAK2f,WAAaA,EAClB3f,KAAK4f,UAAYA,EACjBJ,EAAOxf,KACX,ECLA6f,EAAmB,WACnB,SAASA,EAAgBpa,EAAGC,EAAGX,EAAOC,GASlC,OARAhF,KAAKyF,EAAIA,EACTzF,KAAK0F,EAAIA,EACT1F,KAAK+E,MAAQA,EACb/E,KAAKgF,OAASA,EACdhF,KAAK6J,IAAM7J,KAAK0F,EAChB1F,KAAK8J,KAAO9J,KAAKyF,EACjBzF,KAAK4U,OAAS5U,KAAK6J,IAAM7J,KAAKgF,OAC9BhF,KAAK8V,MAAQ9V,KAAK8J,KAAO9J,KAAK+E,MACvBya,EAAOxf,KAClB,CAQA,OAPA6f,EAAgBvf,UAAUwf,OAAS,WAC/B,IAAItU,EAAKxL,KACT,MAAO,CAAEyF,EADU+F,EAAG/F,EACPC,EADc8F,EAAG9F,EACXmE,IADoB2B,EAAG3B,IACbiM,MAD0BtK,EAAGsK,MACflB,OAD+BpJ,EAAGoJ,OAClB9K,KADiC0B,EAAG1B,KACxB/E,MADsCyG,EAAGzG,MAC3BC,OAD2CwG,EAAGxG,OAEzI,EACA6a,EAAgBE,SAAW,SAAUC,GACjC,OAAO,IAAIH,EAAgBG,EAAUva,EAAGua,EAAUta,EAAGsa,EAAUjb,MAAOib,EAAUhb,OACpF,EACO6a,CACX,CApBsB,GCDlBI,EAAQ,SAAU3Y,GAAU,OAAOA,aAAkB4Y,YAAc,YAAa5Y,CAAQ,EACxF6Y,EAAW,SAAU7Y,GACrB,GAAI2Y,EAAM3Y,GAAS,CACf,IAAIkE,EAAKlE,EAAO8Y,UAAWrb,EAAQyG,EAAGzG,MAAOC,EAASwG,EAAGxG,OACzD,OAAQD,IAAUC,CACtB,CACA,IAAIiN,EAAK3K,EAAQ8K,EAAcH,EAAGG,YAAaG,EAAeN,EAAGM,aACjE,QAASH,GAAeG,GAAgBjL,EAAO+Y,iBAAiBzf,OACpE,EACI0f,EAAY,SAAUb,GACtB,IAAIjU,EACJ,GAAIiU,aAAec,QACf,OAAO,EAEX,IAAIC,EAA+E,QAAtEhV,EAAKiU,aAAiC,EAASA,EAAIgB,qBAAkC,IAAPjV,OAAgB,EAASA,EAAGkV,YACvH,SAAUF,GAASf,aAAee,EAAMD,QAC5C,EChBWI,EAA2B,oBAAX/U,OAAyBA,OAAS,CAAC,ECM1DgV,EAAQ,IAAIC,QACZC,EAAe,cACfC,EAAiB,eACjBC,EAAK,gBAAkBtF,KAAKiF,EAAOM,WAAaN,EAAOM,UAAUC,WACjEC,EAAiB,SAAUC,GAAS,OAAOC,WAAWD,GAAS,IAAM,EACrEE,EAAO,SAAU3B,EAAYC,EAAW2B,GAIxC,YAHmB,IAAf5B,IAAyBA,EAAa,QACxB,IAAdC,IAAwBA,EAAY,QACpB,IAAhB2B,IAA0BA,GAAc,GACrC,IAAI7B,GAAoB6B,EAAc3B,EAAYD,IAAe,GAAI4B,EAAc5B,EAAaC,IAAc,EACzH,EACI4B,EAAYhC,EAAO,CACnBiC,0BAA2BH,IAC3BI,cAAeJ,IACfK,eAAgBL,IAChBvb,YAAa,IAAI8Z,EAAgB,EAAG,EAAG,EAAG,KAE1C+B,EAAoB,SAAUta,EAAQua,GAEtC,QAD2B,IAAvBA,IAAiCA,GAAqB,GACtDjB,EAAMkB,IAAIxa,KAAYua,EACtB,OAAOjB,EAAMmB,IAAIza,GAErB,GAAI6Y,EAAS7Y,GAET,OADAsZ,EAAMoB,IAAI1a,EAAQka,GACXA,EAEX,IAAIS,EAAKC,iBAAiB5a,GACtB6a,EAAMlC,EAAM3Y,IAAWA,EAAO8a,iBAAmB9a,EAAO8Y,UACxDiC,GAAiBrB,GAAuB,eAAjBiB,EAAGK,UAC1Bf,EAAcR,EAAerF,KAAKuG,EAAGM,aAAe,IACpDC,GAAuBL,GAAOrB,EAAapF,KAAKuG,EAAGQ,WAAa,IAChEC,GAAyBP,GAAOrB,EAAapF,KAAKuG,EAAGU,WAAa,IAClEC,EAAaT,EAAM,EAAIhB,EAAec,EAAGW,YACzCC,EAAeV,EAAM,EAAIhB,EAAec,EAAGY,cAC3CC,EAAgBX,EAAM,EAAIhB,EAAec,EAAGa,eAC5CC,EAAcZ,EAAM,EAAIhB,EAAec,EAAGc,aAC1CC,EAAYb,EAAM,EAAIhB,EAAec,EAAGgB,gBACxCC,EAAcf,EAAM,EAAIhB,EAAec,EAAGkB,kBAC1CC,EAAejB,EAAM,EAAIhB,EAAec,EAAGoB,mBAE3CC,EAAoBP,EAAcF,EAClCU,EAAkBX,EAAaE,EAC/BU,GAHarB,EAAM,EAAIhB,EAAec,EAAGwB,kBAGLP,EACpCQ,EAAqBV,EAAYI,EACjCO,EAAgCjB,EAA4Bpb,EAAOiL,aAAemR,EAAqBpc,EAAOsc,aAAtD,EACxDC,EAA8BrB,EAA0Blb,EAAO8K,YAAcoR,EAAuBlc,EAAOwc,YAAvD,EACpDC,EAAiB1B,EAAgBiB,EAAoBE,EAAuB,EAC5EQ,EAAkB3B,EAAgBkB,EAAkBG,EAAqB,EACzEO,EAAe9B,EAAMA,EAAIpd,MAAQoc,EAAec,EAAGld,OAASgf,EAAiBF,EAC7EK,EAAgB/B,EAAMA,EAAInd,OAASmc,EAAec,EAAGjd,QAAUgf,EAAkBL,EACjFQ,EAAiBF,EAAeX,EAAoBO,EAA6BL,EACjFY,EAAkBF,EAAgBX,EAAkBI,EAA+BD,EACnFW,EAAQ7E,EAAO,CACfiC,0BAA2BH,EAAKrT,KAAK6M,MAAMmJ,EAAeK,kBAAmBrW,KAAK6M,MAAMoJ,EAAgBI,kBAAmB/C,GAC3HG,cAAeJ,EAAK6C,EAAgBC,EAAiB7C,GACrDI,eAAgBL,EAAK2C,EAAcC,EAAe3C,GAClDxb,YAAa,IAAI8Z,EAAgBkD,EAAaH,EAAYqB,EAAcC,KAG5E,OADAtD,EAAMoB,IAAI1a,EAAQ+c,GACXA,CACX,EACIE,EAAmB,SAAUjd,EAAQkd,EAAa3C,GAClD,IAAIrW,EAAKoW,EAAkBta,EAAQua,GAAqBH,EAAgBlW,EAAGkW,cAAeC,EAAiBnW,EAAGmW,eAAgBF,EAA4BjW,EAAGiW,0BAC7J,OAAQ+C,GACJ,KAAKpF,EAAyBqF,yBAC1B,OAAOhD,EACX,KAAKrC,EAAyBsF,WAC1B,OAAOhD,EACX,QACI,OAAOC,EAEnB,EC3EIgD,EACA,SAA6Brd,GACzB,IAAI+c,EAAQzC,EAAkBta,GAC9BtH,KAAKsH,OAASA,EACdtH,KAAK+F,YAAcse,EAAMte,YACzB/F,KAAK0hB,cAAgBlC,EAAO,CAAC6E,EAAM3C,gBACnC1hB,KAAK2hB,eAAiBnC,EAAO,CAAC6E,EAAM1C,iBACpC3hB,KAAKyhB,0BAA4BjC,EAAO,CAAC6E,EAAM5C,2BACnD,ECTAmD,EAAwB,SAAUpW,GAClC,GAAI2R,EAAS3R,GACT,OAAOqW,IAIX,IAFA,IAAIC,EAAQ,EACRC,EAASvW,EAAKwW,WACXD,GACHD,GAAS,EACTC,EAASA,EAAOC,WAEpB,OAAOF,CACX,ECRIG,EAA8B,WAC9B,IAAIC,EAAkBL,IAClBM,EAAY,GAChB9F,EAAgB5T,SAAQ,SAAyB2Z,GAC7C,GAAgC,IAA5BA,EAAGC,cAAczkB,OAArB,CAGA,IAAIyd,EAAU,GACd+G,EAAGC,cAAc5Z,SAAQ,SAAuB6Z,GAC5C,IAAI1f,EAAQ,IAAI+e,EAAoBW,EAAGhe,QACnCie,EAAcX,EAAsBU,EAAGhe,QAC3C+W,EAAQ7X,KAAKZ,GACb0f,EAAGE,iBAAmBjB,EAAiBe,EAAGhe,OAAQge,EAAGd,aACjDe,EAAcL,IACdA,EAAkBK,EAE1B,IACAJ,EAAU3e,MAAK,WACX4e,EAAGK,SAASjlB,KAAK4kB,EAAG7gB,SAAU8Z,EAAS+G,EAAG7gB,SAC9C,IACA6gB,EAAGC,cAAcK,OAAO,EAAGN,EAAGC,cAAczkB,OAd5C,CAeJ,IACA,IAAK,IAAI+kB,EAAK,EAAGC,EAAcT,EAAWQ,EAAKC,EAAYhlB,OAAQ+kB,IAAM,EAErEF,EADeG,EAAYD,KAE/B,CACA,OAAOT,CACX,EC7BIW,EAAkC,SAAUf,GAC5CzF,EAAgB5T,SAAQ,SAAyB2Z,GAC7CA,EAAGC,cAAcK,OAAO,EAAGN,EAAGC,cAAczkB,QAC5CwkB,EAAGU,eAAeJ,OAAO,EAAGN,EAAGU,eAAellB,QAC9CwkB,EAAGW,mBAAmBta,SAAQ,SAAuB6Z,GAC7CA,EAAGngB,aACCyf,EAAsBU,EAAGhe,QAAUwd,EACnCM,EAAGC,cAAc7e,KAAK8e,GAGtBF,EAAGU,eAAetf,KAAK8e,GAGnC,GACJ,GACJ,ECZI7U,EAAU,WACV,IZJIxK,EYIA6e,EAAQ,EAEZ,IADAe,EAAgCf,GCLzBzF,EAAgB2G,MAAK,SAAUZ,GAAM,OAAOA,EAAGC,cAAczkB,OAAS,CAAG,KDO5EkkB,EAAQG,IACRY,EAAgCf,GAKpC,OEbOzF,EAAgB2G,MAAK,SAAUZ,GAAM,OAAOA,EAAGU,eAAellB,OAAS,CAAG,MdCvD,mBAAfqlB,WACPhgB,EAAQ,IAAIggB,WAAW,QAAS,CAC5BC,QAAS5G,MAIbrZ,EAAQyB,SAASye,YAAY,UACvBC,UAAU,SAAS,GAAO,GAChCngB,EAAMigB,QAAU5G,GAEpB1T,OAAOya,cAAcpgB,IYEd6e,EAAQ,CACnB,EVfIK,EAAY,GAEZmB,EAAiB,SAAUb,GAC3B,IAAKlG,EAAS,CACV,IAAIgH,EAAW,EACXC,EAAO9e,SAAS+e,eAAe,IAEnC,IAAIC,kBAAiB,WAAc,OANTvB,EAAUO,OAAO,GAAGja,SAAQ,SAAUkb,GAAM,OAAOA,GAAM,GAM/B,IAAGC,QAAQJ,EADlD,CAAEK,eAAe,IAE9BtH,EAAU,WAAciH,EAAKM,YAAc,GAAGC,OAAOR,EAAWA,IAAaA,IAAa,CAC9F,CACApB,EAAU3e,KAAKif,GACflG,GACJ,EaVIyH,EAAW,EAGXC,EAAiB,CAAEjY,YAAY,EAAM6X,eAAe,EAAMK,WAAW,EAAMC,SAAS,GACpFC,EAAS,CACT,SACA,OACA,gBACA,eACA,iBACA,qBACA,QACA,UACA,UACA,YACA,YACA,WACA,OACA,SAEAC,EAAO,SAAUC,GAEjB,YADgB,IAAZA,IAAsBA,EAAU,GAC7BC,KAAKC,MAAQF,CACxB,EACIG,GAAY,EAkEZC,EAAY,IAjEC,WACb,SAASC,IACL,IAAIC,EAAQ5nB,KACZA,KAAK6nB,SAAU,EACf7nB,KAAK8nB,SAAW,WAAc,OAAOF,EAAM5O,UAAY,CAC3D,CA0DA,OAzDA2O,EAAUrnB,UAAUynB,IAAM,SAAUT,GAChC,IAAIM,EAAQ5nB,KAEZ,QADgB,IAAZsnB,IAAsBA,EA/Bf,MAgCPG,EAAJ,CAGAA,GAAY,EACZ,ICxC4Bd,EDwCxBqB,EAAQX,EAAKC,GCxCWX,EDyCR,WAChB,IAAIsB,GAAsB,EAC1B,IACIA,EAAsBxX,GAC1B,CACA,QAGI,GAFAgX,GAAY,EACZH,EAAUU,EAAQX,KA7CML,EA+CpB,OAEAiB,EACAL,EAAMG,IAAI,KAELT,EAAU,EACfM,EAAMG,IAAIT,GAGVM,EAAMM,OAEd,CACJ,EC7DJ5B,GAAe,WACX6B,sBAAsBxB,EAC1B,GDmCI,CAyBJ,EACAgB,EAAUrnB,UAAU0Y,SAAW,WAC3BhZ,KAAKooB,OACLpoB,KAAK+nB,KACT,EACAJ,EAAUrnB,UAAUsmB,QAAU,WAC1B,IAAIgB,EAAQ5nB,KACR2mB,EAAK,WAAc,OAAOiB,EAAMrjB,UAAYqjB,EAAMrjB,SAASqiB,QAAQlf,SAASiH,KAAMsY,EAAiB,EACvGvf,SAASiH,KAAOgY,IAAOhG,EAAO9Y,iBAAiB,mBAAoB8e,EACvE,EACAgB,EAAUrnB,UAAU4nB,MAAQ,WACxB,IAAIN,EAAQ5nB,KACRA,KAAK6nB,UACL7nB,KAAK6nB,SAAU,EACf7nB,KAAKuE,SAAW,IAAImiB,iBAAiB1mB,KAAK8nB,UAC1C9nB,KAAK4mB,UACLQ,EAAO3b,SAAQ,SAAUhF,GAAQ,OAAOka,EAAO9Y,iBAAiBpB,EAAMmhB,EAAME,UAAU,EAAO,IAErG,EACAH,EAAUrnB,UAAU8nB,KAAO,WACvB,IAAIR,EAAQ5nB,KACPA,KAAK6nB,UACN7nB,KAAKuE,UAAYvE,KAAKuE,SAAS8jB,aAC/BjB,EAAO3b,SAAQ,SAAUhF,GAAQ,OAAOka,EAAOhZ,oBAAoBlB,EAAMmhB,EAAME,UAAU,EAAO,IAChG9nB,KAAK6nB,SAAU,EAEvB,EACOF,CACX,CAhEgB,IAkEZW,EAAc,SAAUC,IACvBvB,GAAYuB,EAAI,GAAKb,EAAUQ,UAChClB,GAAYuB,IACCb,EAAUU,MAC3B,EE1FII,EAAqB,WACrB,SAASA,EAAkBlhB,EAAQkd,GAC/BxkB,KAAKsH,OAASA,EACdtH,KAAKwkB,YAAcA,GAAepF,EAAyBqJ,YAC3DzoB,KAAKwlB,iBAAmB,CACpB7F,WAAY,EACZC,UAAW,EAEnB,CAYA,OAXA4I,EAAkBloB,UAAU6E,SAAW,WACnC,IAf4BmC,EAexBga,EAAOiD,EAAiBvkB,KAAKsH,OAAQtH,KAAKwkB,aAAa,GAI3D,OAnB4Bld,EAgBJtH,KAAKsH,OAfzB2Y,EAAM3Y,IZaM,SAAUA,GAC9B,OAAQA,EAAOohB,SACX,IAAK,QACD,GAAoB,UAAhBphB,EAAOqhB,KACP,MAER,IAAK,QACL,IAAK,QACL,IAAK,QACL,IAAK,SACL,IAAK,SACL,IAAK,SACL,IAAK,MACD,OAAO,EAEf,OAAO,CACX,CY5BYC,CAAkBthB,IACkB,WAArC4a,iBAAiB5a,GAAQoN,UAcxB1U,KAAKwlB,iBAAmBlE,GAExBthB,KAAKwlB,iBAAiB7F,aAAe2B,EAAK3B,YACvC3f,KAAKwlB,iBAAiB5F,YAAc0B,EAAK1B,SAIpD,EACO4I,CACX,CArBwB,GCRpBK,EACA,SAA8BC,EAAgBrD,GAC1CzlB,KAAKqlB,cAAgB,GACrBrlB,KAAK8lB,eAAiB,GACtB9lB,KAAK+lB,mBAAqB,GAC1B/lB,KAAKuE,SAAWukB,EAChB9oB,KAAKylB,SAAWA,CACpB,ECHAsD,EAAc,IAAIlI,QAClBmI,EAAsB,SAAUjD,EAAoBze,GACpD,IAAK,IAAI3G,EAAI,EAAGA,EAAIolB,EAAmBnlB,OAAQD,GAAK,EAChD,GAAIolB,EAAmBplB,GAAG2G,SAAWA,EACjC,OAAO3G,EAGf,OAAQ,CACZ,EACIsoB,EAA4B,WAC5B,SAASA,IACT,CA+BA,OA9BAA,EAAyBC,QAAU,SAAUJ,EAAgBrD,GACzD,IAAI0D,EAAS,IAAIN,EAAqBC,EAAgBrD,GACtDsD,EAAY/G,IAAI8G,EAAgBK,EACpC,EACAF,EAAyBrC,QAAU,SAAUkC,EAAgBxhB,EAAQuG,GACjE,IAAIsb,EAASJ,EAAYhH,IAAI+G,GACzBM,EAAwD,IAArCD,EAAOpD,mBAAmBnlB,OAC7CooB,EAAoBG,EAAOpD,mBAAoBze,GAAU,IACzD8hB,GAAoB/J,EAAgB7Y,KAAK2iB,GACzCA,EAAOpD,mBAAmBvf,KAAK,IAAIgiB,EAAkBlhB,EAAQuG,GAAWA,EAAQwb,MAChFf,EAAY,GACZZ,EAAU1O,WAElB,EACAiQ,EAAyBK,UAAY,SAAUR,EAAgBxhB,GAC3D,IAAI6hB,EAASJ,EAAYhH,IAAI+G,GACzBS,EAAQP,EAAoBG,EAAOpD,mBAAoBze,GACvDkiB,EAAuD,IAArCL,EAAOpD,mBAAmBnlB,OAC5C2oB,GAAS,IACTC,GAAmBnK,EAAgBqG,OAAOrG,EAAgB5e,QAAQ0oB,GAAS,GAC3EA,EAAOpD,mBAAmBL,OAAO6D,EAAO,GACxCjB,GAAa,GAErB,EACAW,EAAyBZ,WAAa,SAAUS,GAC5C,IAAIlB,EAAQ5nB,KACRmpB,EAASJ,EAAYhH,IAAI+G,GAC7BK,EAAOpD,mBAAmB/G,QAAQvT,SAAQ,SAAU6Z,GAAM,OAAOsC,EAAM0B,UAAUR,EAAgBxD,EAAGhe,OAAS,IAC7G6hB,EAAO9D,cAAcK,OAAO,EAAGyD,EAAO9D,cAAczkB,OACxD,EACOqoB,CACX,CAlC+B,GCX3BQ,EAAkB,WAClB,SAASA,EAAehE,GACpB,GAAyB,IAArBiE,UAAU9oB,OACV,MAAM,IAAI+oB,UAAU,kFAExB,GAAwB,mBAAblE,EACP,MAAM,IAAIkE,UAAU,iGAExBV,EAAyBC,QAAQlpB,KAAMylB,EAC3C,CAyBA,OAxBAgE,EAAenpB,UAAUsmB,QAAU,SAAUtf,EAAQuG,GACjD,GAAyB,IAArB6b,UAAU9oB,OACV,MAAM,IAAI+oB,UAAU,6FAExB,IAAKrJ,EAAUhZ,GACX,MAAM,IAAIqiB,UAAU,wFAExBV,EAAyBrC,QAAQ5mB,KAAMsH,EAAQuG,EACnD,EACA4b,EAAenpB,UAAUgpB,UAAY,SAAUhiB,GAC3C,GAAyB,IAArBoiB,UAAU9oB,OACV,MAAM,IAAI+oB,UAAU,+FAExB,IAAKrJ,EAAUhZ,GACX,MAAM,IAAIqiB,UAAU,0FAExBV,EAAyBK,UAAUtpB,KAAMsH,EAC7C,EACAmiB,EAAenpB,UAAU+nB,WAAa,WAClCY,EAAyBZ,WAAWroB,KACxC,EACAypB,EAAeG,SAAW,WACtB,MAAO,gDACX,EACOH,CACX,CAnCqB,cCDrB,MACA,EAD+B,EAA0B,oBAAb/hB,eAAuD,IAA3BA,SAAS2G,cAA2B,kBAAoB,aCShI,EARkB9H,IAChB,MAAMsjB,EAAc,SAAatjB,GAIjC,OAHA,aAAgB,KACdsjB,EAAYtjB,QAAUA,CAAO,IAExBsjB,CAAW,ECDd,EAAmC,oBAAXje,QAA0B,mBAAoBA,OAC5EA,OAAO6d,eAAiB,EASxB,SAASK,IAAQ,CAkFjB,IAAIC,EAEJ,MAAMC,EAAoB,IAAOD,IAAkBA,EA5DnD,WACE,IAAIE,GAAU,EACVC,EAAa,GACjB,MAAM/E,EAAY,IAAIgF,IAChB5lB,EAAW,IAAI,GAAe,CAAC8Z,EAAS+L,KAC5CF,EAAaA,EAAWnD,OAAO1I,GAgB1B4L,GACHre,OAAOuc,uBAfT,WACE,MAAMkC,EAAY,IAAIC,IAEtB,IAAK,IAAI3pB,EAAI,EAAGA,EAAIupB,EAAWtpB,OAAQD,IAAK,CAC1C,GAAI0pB,EAAUvI,IAAIoI,EAAWvpB,GAAG2G,QAAS,SACzC+iB,EAAUE,IAAIL,EAAWvpB,GAAG2G,QAC5B,MAAMkjB,EAAMrF,EAAUpD,IAAImI,EAAWvpB,GAAG2G,QACxCkjB,SAA0CA,EAAI/e,SAAQkb,GAAMA,EAAGuD,EAAWvpB,GAAIypB,IAChF,CAEAF,EAAa,GACbD,GAAU,CACZ,IAMAA,GAAU,CAAI,IAEhB,MAAO,CACL1lB,WAEA,SAAAkmB,CAAUnjB,EAAQme,GAChB,IAAIiF,EAEJnmB,EAASqiB,QAAQtf,GACjB,MAAMkjB,EAAmD,QAA5CE,EAAiBvF,EAAUpD,IAAIza,UAAwC,IAAnBojB,EAA4BA,EAAiB,GAC9GF,EAAIhkB,KAAKif,GACTN,EAAUnD,IAAI1a,EAAQkjB,EACxB,EAEA,WAAAG,CAAYrjB,EAAQme,GAClB,IAAImF,EAEJ,MAAMJ,EAAoD,QAA7CI,EAAkBzF,EAAUpD,IAAIza,UAAyC,IAApBsjB,EAA6BA,EAAkB,GAEjH,GAAmB,IAAfJ,EAAI5pB,OAGN,OAFA2D,EAAS+kB,UAAUhiB,QACnB6d,EAAU0F,OAAOvjB,GAInB,MAAMwjB,EAAUN,EAAI/pB,QAAQglB,IACX,IAAbqF,GAAgBN,EAAI9E,OAAOoF,EAAS,GACxC3F,EAAUnD,IAAI1a,EAAQkjB,EACxB,EAGJ,CAIqEO,IAErE,EApFA,SAA2BzjB,EAAQme,GACjC,MAAMqD,EAAiBkB,IACjBgB,EAAiB,EAAUvF,GAiBjC,OAhBA,GAAgB,KACd,IAAIwF,GAAiB,EACrB,MAAMC,EAAW5jB,GAAU,YAAaA,EAASA,EAAOf,QAAUe,EAClE,IAAK4jB,EAAU,OAAOpB,EAEtB,SAASnD,EAAG/gB,EAAOrB,GACb0mB,GACJD,EAAezkB,QAAQX,EAAOrB,EAChC,CAGA,OADAukB,EAAe2B,UAAUS,EAAUvE,GAC5B,KACLsE,GAAiB,EACjBnC,EAAe6B,YAAYO,EAAUvE,EAAG,CACzC,GACA,CAACrf,EAAQwhB,EAAgBkC,IACrBlC,EAAevkB,QACxB,yJCrCA,IAAI4mB,EAAsB,oBAAXvf,OAAyBA,OAAS,CAAEwf,OAAQ,CAAC,EAAGnK,UAAW,CAAC,GACvEoK,GAAcF,EAAEE,YAAc,WAAe,MAAO,CAAGC,SAAS,EAAW,GAAGC,KAAKJ,GAGnFK,GAAwB,EACxB3d,EAAU,CACV,WAAI4d,GACA,OAAQD,GAAwB,CACpC,GAOA3nB,EAAO,WAAc,EACzBsnB,EAAEtjB,kBAAoBsjB,EAAEtjB,iBAAiB,IAAKhE,EAAMgK,GACpDsd,EAAExjB,qBAAuBwjB,EAAExjB,oBAAoB,IAAK9D,GAAM,GAC1D,IAAI6nB,EAAwBF,EACxBG,EAAwB,iBAAkBR,EAC1CS,EAAuB,iBAAkBT,EAWzCU,EAAsBD,GAVD,eAAgBT,GAWdE,EAAW,yBAAyBC,QAC3DQ,GAAYX,EAAElK,UAAU8K,gBAAkB,GAAK,GAAKF,EAIpD3K,EAAYiK,EAAElK,UAAUC,WAAa,GAOrC8K,EAASX,EAAW,qBAAqBC,SAIzC,iBAAiB5P,KAAKwF,IACtBjT,KAAKsN,IAAI4P,EAAEC,OAAOrmB,OAAS,EAAGomB,EAAEC,OAAOpmB,QAAU,IAAM,IACvDinB,GAA2BZ,EAAW,qBAAqBC,UAIzDD,EAAW,mBAAmBC,SAAWM,KAI1C,mBAAmBlQ,KAAKwF,GACzBgL,EAA8Bb,EAAW,uBAAuBC,SAChED,EAAW,sBAAsBC,SAEjCU,IAGCJ,EAIDO,GAAaL,IAAaI,GAAgCD,EAExDH,EACI,YACA,YAHJ,SAIF5a,EAA8B,cAAfib,EACb,QACe,cAAfA,GAIMF,EAHF,QAKQ,qHClFPG,EAA8B,kBAC9BC,EAAoC,kBACxC,SAASC,EAAQxC,GACtB,IAAIpmB,EAAWomB,EAAKpmB,SAEhB6oB,EAAkB,WAAe,MACjCC,EAAgBD,EAAgB,GAChCE,EAAmBF,EAAgB,GAEnCG,EAAe,UAAa,GAChC,aAAgB,WACd,OAAO,WACLA,EAAanmB,SAAU,CACzB,CACF,GAAG,IACH,IAAIomB,EAAyB,eAAkB,SAAUne,GAClDke,EAAanmB,SAChBkmB,EAAiBje,EAErB,GAAG,IACH,OAAoB,gBAAoB4d,EAA4BQ,SAAU,CAC5E1rB,MAAOsrB,GACO,gBAAoBH,EAAkCO,SAAU,CAC9E1rB,MAAOyrB,GACNjpB,GACL,2BCrBImpB,EAAO,WAEX,EAEIC,EAAe,WACjB,OAAOC,QAAQC,QAAQ,KACzB,EAEIC,EAAkB,GACf,SAASC,EAAOpD,GACrB,IAAIqD,EAAiBrD,EAAK9c,UACtBA,OAA+B,IAAnBmgB,EAA4B,SAAWA,EACnDC,EAAgBtD,EAAK3c,SACrBA,OAA6B,IAAlBigB,EAA2B,WAAaA,EACnDC,EAAiBvD,EAAKxc,UACtBA,OAA+B,IAAnB+f,EAA4BJ,EAAkBI,EAC1DC,EAAmBxD,EAAKwD,iBACxBlgB,EAAgB0c,EAAK1c,cACrBmgB,EAAWzD,EAAKyD,SAChB7pB,EAAWomB,EAAKpmB,SAChB8oB,EAAgB,aAAiBJ,GAEjCG,EAAkB,WAAe,MACjC9e,EAAgB8e,EAAgB,GAChC7e,EAAmB6e,EAAgB,GAEnCiB,EAAmB,WAAe,MAClCC,EAAeD,EAAiB,GAChCE,EAAkBF,EAAiB,GAEvC,aAAgB,YACd,QAAOD,EAAU9f,EACnB,GAAG,CAAC8f,EAAU9f,IACd,IAAII,EAAU,WAAc,WAC1B,MAAO,CACLb,UAAWA,EACXG,SAAUA,EACVC,cAAeA,EACfE,UAAW,GAAGyZ,OAAOzZ,EAAW,CAAC,CAC/B7G,KAAM,QACNknB,QAAyB,MAAhBF,EACT5f,QAAS,CACP+f,QAASH,MAIjB,GAAG,CAACzgB,EAAWG,EAAUC,EAAeE,EAAWmgB,IAE/CI,GAAa,EAAAjgB,EAAA,GAAU0f,GAAoBd,EAAe/e,EAAeI,GACzEigB,EAAQD,EAAWC,MACnB/e,EAAS8e,EAAW9e,OACpBgf,EAAcF,EAAWE,YACzBC,EAASH,EAAWG,OAEpBC,EAAgB,WAAc,WAChC,MAAO,CACL/lB,IAAKwF,EACLvJ,MAAO4K,EAAOpB,OACdX,UAAW8gB,EAAQA,EAAM9gB,UAAYA,EACrCkhB,iBAAkBJ,GAASA,EAAMK,cAAcC,KAAON,EAAMK,cAAcC,KAAKF,iBAAmB,KAClGG,kBAAmBP,GAASA,EAAMK,cAAcC,KAAON,EAAMK,cAAcC,KAAKC,kBAAoB,KACpGC,WAAY,CACVnqB,MAAO4K,EAAOwf,MACdrmB,IAAKwlB,GAEPK,YAAaA,GAAelB,EAC5BmB,OAAQA,GAAUlB,EAEtB,GAAG,CAACpf,EAAkBggB,EAAiB1gB,EAAW8gB,EAAO/e,EAAQif,EAAQD,IACzE,OAAO,QAAYrqB,EAAZ,CAAsBuqB,EAC/B,yBCvEO,SAASO,EAAU1E,GACxB,IAAIpmB,EAAWomB,EAAKpmB,SAChB6pB,EAAWzD,EAAKyD,SAChBd,EAAmB,aAAiBJ,GACpCoC,EAAa,eAAkB,SAAUjgB,IAC3C,QAAO+e,EAAU/e,IACjB,QAAWie,EAAkBje,EAC/B,GAAG,CAAC+e,EAAUd,IAWd,OARA,aAAgB,WACd,OAAO,WACL,OAAO,QAAOc,EAAU,KAC1B,CACF,GAAG,IACH,aAAgB,WACd,IAAQmB,QAAQjC,GAAmB,mEACrC,GAAG,CAACA,KACG,QAAY/oB,EAAZ,CAAsB,CAC3BwE,IAAKumB,GAET,mBChBa,IAAIE,EAAE,EAAQ,OAASpQ,EAAEhJ,OAAOqZ,IAAI,iBAAiBC,EAAEtZ,OAAOqZ,IAAI,kBAAkBE,EAAEzuB,OAAOC,UAAUC,eAAegoB,EAAEoG,EAAEI,mDAAmDC,kBAAkB5uB,EAAE,CAAC6uB,KAAI,EAAG/mB,KAAI,EAAGgnB,QAAO,EAAGC,UAAS,GAChP,SAASC,EAAEC,EAAEC,EAAEC,GAAG,IAAIC,EAAEC,EAAE,CAAC,EAAEvvB,EAAE,KAAKwvB,EAAE,KAAiF,IAAIF,UAAhF,IAASD,IAAIrvB,EAAE,GAAGqvB,QAAG,IAASD,EAAEL,MAAM/uB,EAAE,GAAGovB,EAAEL,UAAK,IAASK,EAAEpnB,MAAMwnB,EAAEJ,EAAEpnB,KAAconB,EAAER,EAAEtuB,KAAK8uB,EAAEE,KAAKpvB,EAAEG,eAAeivB,KAAKC,EAAED,GAAGF,EAAEE,IAAI,GAAGH,GAAGA,EAAEM,aAAa,IAAIH,KAAKF,EAAED,EAAEM,kBAAe,IAASF,EAAED,KAAKC,EAAED,GAAGF,EAAEE,IAAI,MAAM,CAACI,SAASrR,EAAEoK,KAAK0G,EAAEJ,IAAI/uB,EAAEgI,IAAIwnB,EAAEnsB,MAAMksB,EAAEI,OAAOtH,EAAEhiB,QAAQ,CAAC1G,EAAQkU,SAAS8a,EAAEhvB,EAAQmI,IAAIonB,EAAEvvB,EAAQiU,KAAKsb,mBCPxWU,EAAOjwB,QAAU,EAAjB,kBCaF,IAEIkwB,EAAU,WAAY,EA2C1BD,EAAOjwB,QAAUkwB,oFCxDbC,EAAmB,IAAS,IAAOC,wBAAqBznB,EAc5D,QALA,SAAuBtH,GACrB,OAAO,EAAAgvB,EAAA,GAAQhvB,KAAU,EAAAivB,EAAA,GAAYjvB,OAChC8uB,GAAoB9uB,GAASA,EAAM8uB,GAC1C,ECoBA,QAvBA,SAASI,EAAYC,EAAOvL,EAAOwL,EAAWC,EAAUvS,GACtD,IAAIuL,GAAS,EACT3oB,EAASyvB,EAAMzvB,OAKnB,IAHA0vB,IAAcA,EAAY,GAC1BtS,IAAWA,EAAS,MAEXuL,EAAQ3oB,GAAQ,CACvB,IAAIM,EAAQmvB,EAAM9G,GACdzE,EAAQ,GAAKwL,EAAUpvB,GACrB4jB,EAAQ,EAEVsL,EAAYlvB,EAAO4jB,EAAQ,EAAGwL,EAAWC,EAAUvS,IAEnD,OAAUA,EAAQ9c,GAEVqvB,IACVvS,EAAOA,EAAOpd,QAAUM,EAE5B,CACA,OAAO8c,CACT,oCCLA,QAfA,SAAiBqS,GAMf,IALA,IAAI9G,GAAS,EACT3oB,EAAkB,MAATyvB,EAAgB,EAAIA,EAAMzvB,OACnC4vB,EAAW,EACXxS,EAAS,KAEJuL,EAAQ3oB,GAAQ,CACvB,IAAIM,EAAQmvB,EAAM9G,GACdroB,IACF8c,EAAOwS,KAActvB,EAEzB,CACA,OAAO8c,CACT,6DCRA,QAVA,SAAoByS,EAAYH,GAC9B,IAAItS,EAAS,GAMb,OALA,OAASyS,GAAY,SAASvvB,EAAOqoB,EAAOkH,GACtCH,EAAUpvB,EAAOqoB,EAAOkH,IAC1BzS,EAAOxX,KAAKtF,EAEhB,IACO8c,CACT,4BCiCA,QALA,SAAgByS,EAAYH,GAE1B,QADW,EAAAJ,EAAA,GAAQO,GAAc,IAAc,GACnCA,GAAY,OAAaH,EAAW,GAClD,mDC5BA,QALA,SAAiBD,GAEf,OADsB,MAATA,EAAgB,EAAIA,EAAMzvB,SACvB,OAAYyvB,EAAO,GAAK,EAC1C","sources":["webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/index.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/CursorPosition.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/InPlaceMagnifyContainer.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/MaginfyContainer.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/MagnifyContainerPortal.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/ReactImageMagnify.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/constants.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/hint/DefaultHint.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/hooks/useLazyRef.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lens/negative-space/Lens.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lens/negative-space/LensBottom.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lens/negative-space/LensLeft.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lens/negative-space/LensRight.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lens/negative-space/LensTop.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lens/negative-space/index.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lens/positive-space/assets/textured-lens-data-uri.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lens/positive-space/index.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lib/Activation.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lib/ClickActivation.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lib/HoverActivation.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lib/MouseEnvironmentActivation.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lib/PressActivation.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lib/RelativeCursorPositionObserver.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lib/TapActivation.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lib/TouchActivation.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lib/TouchEnvironmentActivation.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lib/clamp.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lib/dimensions.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lib/imageCoordinates.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lib/imageRatio.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lib/lens.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/lib/styles.js","webpack://printivity/./node_modules/@blacklab/react-image-magnify/dist/src/utils/index.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/utils/resizeObservers.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/ResizeObserverBoxOptions.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/algorithms/deliverResizeLoopError.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/utils/freeze.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/utils/queueMicroTask.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/ResizeObserverSize.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/DOMRectReadOnly.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/utils/element.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/utils/global.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/algorithms/calculateBoxSize.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/ResizeObserverEntry.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/algorithms/calculateDepthForNode.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/algorithms/broadcastActiveObservations.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/algorithms/gatherActiveObservationsAtDepth.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/utils/process.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/algorithms/hasActiveObservations.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/algorithms/hasSkippedObservations.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/utils/scheduler.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/utils/queueResizeObserver.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/ResizeObservation.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/ResizeObserverDetail.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/ResizeObserverController.js","webpack://printivity/./node_modules/@juggle/resize-observer/lib/ResizeObserver.js","webpack://printivity/./node_modules/@react-hook/passive-layout-effect/dist/module/index.js","webpack://printivity/./node_modules/@react-hook/latest/dist/module/index.js","webpack://printivity/./node_modules/@react-hook/resize-observer/dist/module/index.js","webpack://printivity/./node_modules/detect-it/dist/detect-it.esm.js","webpack://printivity/./node_modules/react-popper/lib/esm/Manager.js","webpack://printivity/./node_modules/react-popper/lib/esm/Popper.js","webpack://printivity/./node_modules/react-popper/lib/esm/Reference.js","webpack://printivity/./node_modules/react/cjs/react-jsx-runtime.production.min.js","webpack://printivity/./node_modules/react/jsx-runtime.js","webpack://printivity/./node_modules/warning/warning.js","webpack://printivity/./node_modules/lodash-es/_isFlattenable.js","webpack://printivity/./node_modules/lodash-es/_baseFlatten.js","webpack://printivity/./node_modules/lodash-es/compact.js","webpack://printivity/./node_modules/lodash-es/_baseFilter.js","webpack://printivity/./node_modules/lodash-es/filter.js","webpack://printivity/./node_modules/lodash-es/flatten.js"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst ReactImageMagnify_1 = require(\"./src/ReactImageMagnify\");\n// eslint-disable-next-line import/no-default-export\nexports.default = ReactImageMagnify_1.ReactImageMagnify;\n//# sourceMappingURL=index.js.map","\"use strict\";\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.CursorPosition = void 0;\nconst jsx_runtime_1 = require(\"react/jsx-runtime\");\nconst react_1 = require(\"react\");\nconst resize_observer_1 = __importDefault(require(\"@react-hook/resize-observer\"));\nconst constants_1 = require(\"./constants\");\nconst utils_1 = require(\"./utils\");\nconst TouchActivation_1 = require(\"./lib/TouchActivation\");\nconst HoverActivation_1 = require(\"./lib/HoverActivation\");\nconst ClickActivation_1 = require(\"./lib/ClickActivation\");\nconst TapActivation_1 = require(\"./lib/TapActivation\");\nconst PressActivation_1 = require(\"./lib/PressActivation\");\nconst RelativeCursorPositionObserver_1 = require(\"./lib/RelativeCursorPositionObserver\");\n// TODO move to utils\nconst getTouchActivationStrategy = (interaction, onIsActiveChanged, pressDurationInMs, pressMoveThreshold, tapDurationInMs, tapMoveThreshold) => {\n const { touch, tap, press, } = constants_1.INTERACTIONS;\n switch (interaction) {\n case press:\n return new PressActivation_1.PressActivation({\n onIsActiveChanged,\n pressDurationInMs,\n pressMoveThreshold,\n });\n case tap:\n return new TapActivation_1.TapActivation({\n onIsActiveChanged,\n tapDurationInMs,\n tapMoveThreshold,\n });\n case touch:\n return new TouchActivation_1.TouchActivation({\n onIsActiveChanged,\n });\n default:\n throw new Error('Must implement a touch activation strategy');\n }\n};\nconst getMouseActivationStrategy = (interaction, onIsActiveChanged, hoverDelayInMs, hoverOffDelayInMs) => {\n const { hover, click, } = constants_1.INTERACTIONS;\n switch (interaction) {\n case hover:\n return new HoverActivation_1.HoverActivation({\n onIsActiveChanged,\n hoverDelayInMs,\n hoverOffDelayInMs,\n });\n case click:\n return new ClickActivation_1.ClickActivation({\n onIsActiveChanged,\n });\n default:\n throw new Error('Must implement a mouse activation strategy');\n }\n};\nconst getElementDimensions = (rect) => {\n const { width, height, } = rect;\n return {\n width,\n height,\n };\n};\nconst getIsPositionOutside = (pos, elementDimensions) => {\n const { x, y } = pos;\n const { width, height, } = elementDimensions;\n return (x < 0\n || y < 0\n || x > width\n || y > height);\n};\nconst getTouchEvent = (e) => e.touches[0];\nconst CursorPosition = (props) => {\n const { activationInteractionMouse, activationInteractionTouch, children, hoverDelayInMs = 250, hoverOffDelayInMs = 150, isEnabled = true, onActivationChanged = utils_1.noop, onDetectedEnvironmentChanged = utils_1.noop, onOutsideClick, onPositionChanged: onPositionChangedProp = utils_1.noop, pressDurationInMs = 500, pressMoveThreshold = 5, shouldStopTouchMovePropagation = false, style, tabIndex = -1, tapDurationInMs = 180, tapMoveThreshold = 5, useCapture } = props, rest = __rest(props, [\"activationInteractionMouse\", \"activationInteractionTouch\", \"children\", \"hoverDelayInMs\", \"hoverOffDelayInMs\", \"isEnabled\", \"onActivationChanged\", \"onDetectedEnvironmentChanged\", \"onOutsideClick\", \"onPositionChanged\", \"pressDurationInMs\", \"pressMoveThreshold\", \"shouldStopTouchMovePropagation\", \"style\", \"tabIndex\", \"tapDurationInMs\", \"tapMoveThreshold\", \"useCapture\"]);\n ///\n /// Refs\n ///\n const observer = (0, react_1.useRef)(new RelativeCursorPositionObserver_1.RelativeCursorPositionObserver());\n const divRef = (0, react_1.useRef)(null);\n const timersRef = (0, react_1.useRef)([]);\n ///\n /// State\n ///\n const [elementDimensions, setElementDimensions] = (0, react_1.useState)({\n width: 0,\n height: 0,\n });\n const [shouldGuardAgainstMouseEmulationByDevices, setShouldGuardAgainstMouseEmulationByDevices,] = (0, react_1.useState)(false);\n const [isActive, setIsActive] = (0, react_1.useState)(false);\n const [isPositionOutside, setIsPositionOutside] = (0, react_1.useState)(true);\n const [position, setPosition] = (0, react_1.useState)({\n x: 0,\n y: 0,\n });\n ///\n /// Hooks\n ///\n (0, resize_observer_1.default)(divRef, (entry) => setElementDimensions(getElementDimensions(entry.contentRect)));\n // TODO remove / replace\n const handleIsActiveChanged = (event) => {\n setIsActive(event.isActive);\n };\n const [touchActivation, setTouchActivation] = (0, react_1.useState)(getTouchActivationStrategy(activationInteractionTouch, handleIsActiveChanged, pressDurationInMs, pressMoveThreshold, tapDurationInMs, tapMoveThreshold));\n const [mouseActivation, setMouseActivation] = (0, react_1.useState)(getMouseActivationStrategy(activationInteractionMouse, handleIsActiveChanged, hoverDelayInMs, hoverOffDelayInMs));\n ///\n /// Functions\n ///\n const unsetShouldGuardAgainstMouseEmulationByDevices = () => {\n timersRef.current.push({\n name: constants_1.MOUSE_EMULATION_GUARD_TIMER_NAME,\n id: setTimeout(() => {\n setShouldGuardAgainstMouseEmulationByDevices(false);\n }, 0),\n });\n };\n const setPositionState = (newPosition) => {\n setIsPositionOutside(getIsPositionOutside(newPosition, elementDimensions));\n setPosition(newPosition);\n };\n const onMouseDetected = () => {\n onDetectedEnvironmentChanged({\n isTouchDetected: false,\n isMouseDetected: true,\n });\n };\n const handleTouchStart = (e) => {\n onDetectedEnvironmentChanged({\n isTouchDetected: true,\n isMouseDetected: false,\n });\n setShouldGuardAgainstMouseEmulationByDevices(true);\n const newPosition = observer.current.getCursorPosition(getTouchEvent(e));\n setPositionState(newPosition);\n touchActivation.touchStarted({ e, position: newPosition });\n };\n const handleMouseEnter = (e) => {\n if (shouldGuardAgainstMouseEmulationByDevices) {\n return;\n }\n onMouseDetected();\n setPositionState(observer.current.getCursorPosition(e));\n mouseActivation.mouseEntered();\n };\n const handleTouchEnd = () => {\n touchActivation.touchEnded();\n unsetShouldGuardAgainstMouseEmulationByDevices();\n // TODO destroy?\n };\n const handleTouchCancel = () => {\n touchActivation.touchCanceled();\n unsetShouldGuardAgainstMouseEmulationByDevices();\n // TODO destroy?\n };\n const handleMouseLeave = () => {\n mouseActivation.mouseLeft();\n setIsPositionOutside(true);\n // TODO destroy?\n };\n const handleTouchMove = (e) => {\n const newPosition = observer.current.getCursorPosition(getTouchEvent(e));\n touchActivation.touchMoved({ e, position: newPosition });\n if (isActive) {\n setPositionState(newPosition);\n e.preventDefault();\n if (shouldStopTouchMovePropagation) {\n e.stopPropagation();\n }\n }\n };\n const handleMouseMove = (e) => {\n const newPosition = observer.current.getCursorPosition(e);\n setPositionState(newPosition);\n };\n const handleClick = (e) => {\n setPositionState(observer.current.getCursorPosition(e));\n mouseActivation.mouseClicked();\n onMouseDetected();\n };\n const handleKeyDown = (e) => {\n e.preventDefault();\n setIsActive(true);\n };\n const handleKeyUp = (e) => {\n e.preventDefault();\n setIsActive(false);\n };\n const onDocumentMouseClick = (e) => {\n const el = e.target;\n const isDescendantOfRoot = divRef.current && el instanceof Node && divRef.current.contains(el);\n if (!isDescendantOfRoot) {\n onOutsideClick(e);\n }\n };\n const removeEventListeners = () => {\n document.removeEventListener('click', onDocumentMouseClick);\n };\n ///\n /// Effects\n ///\n (0, react_1.useEffect)(() => {\n removeEventListeners();\n if (isEnabled) {\n document.addEventListener('click', onDocumentMouseClick, { capture: useCapture });\n }\n return () => removeEventListeners();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isEnabled]);\n (0, react_1.useEffect)(() => {\n if (divRef.current) {\n observer.current.subject = divRef.current;\n // setElementDimensions(getElementDimensions(divRef.current));\n }\n }, [divRef]);\n (0, react_1.useEffect)(() => {\n onPositionChangedProp({\n isPositionOutside,\n position,\n });\n onActivationChanged({ isActive });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isActive]);\n (0, react_1.useEffect)(() => {\n onPositionChangedProp({\n isPositionOutside,\n position,\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isPositionOutside, position]);\n (0, react_1.useEffect)(() => {\n setTouchActivation(getTouchActivationStrategy(activationInteractionTouch, handleIsActiveChanged, pressDurationInMs, pressMoveThreshold, tapDurationInMs, tapMoveThreshold));\n setMouseActivation(getMouseActivationStrategy(activationInteractionMouse, handleIsActiveChanged, hoverDelayInMs, hoverOffDelayInMs));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n activationInteractionMouse,\n activationInteractionTouch,\n ]);\n return ((0, jsx_runtime_1.jsx)(\"div\", Object.assign({ ref: divRef, role: \"button\", style: Object.assign(Object.assign({}, style), { WebkitUserSelect: 'none' }), tabIndex: tabIndex, onClick: isEnabled ? handleClick : undefined, onKeyDown: isEnabled ? handleKeyDown : undefined, onKeyUp: isEnabled ? handleKeyUp : undefined, onMouseEnter: isEnabled ? handleMouseEnter : undefined, onMouseLeave: isEnabled ? handleMouseLeave : undefined, onMouseMove: isEnabled ? handleMouseMove : undefined, onTouchCancel: isEnabled ? handleTouchCancel : undefined, onTouchEnd: isEnabled ? handleTouchEnd : undefined, onTouchMove: isEnabled ? handleTouchMove : undefined, onTouchStart: isEnabled ? handleTouchStart : undefined }, rest, { children: children({\n isActive,\n isPositionOutside,\n elementDimensions,\n position,\n }) })));\n};\nexports.CursorPosition = CursorPosition;\n//# sourceMappingURL=CursorPosition.js.map","\"use strict\";\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.InPlaceMagnifyContainer = void 0;\nconst jsx_runtime_1 = require(\"react/jsx-runtime\");\nconst MaginfyContainer_1 = require(\"./MaginfyContainer\");\nconst InPlaceMagnifyContainer = (props) => {\n const { style } = props, rest = __rest(props, [\"style\"]);\n const computedStyle = Object.assign({ position: 'absolute', top: '0px', left: '0px', zIndex: 100 }, style);\n return ((0, jsx_runtime_1.jsx)(MaginfyContainer_1.MagnifyContainer, Object.assign({ inPlaceMode: true, style: computedStyle }, rest)));\n};\nexports.InPlaceMagnifyContainer = InPlaceMagnifyContainer;\n//# sourceMappingURL=InPlaceMagnifyContainer.js.map","\"use strict\";\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.MagnifyContainer = void 0;\nconst jsx_runtime_1 = require(\"react/jsx-runtime\");\nconst react_1 = require(\"react\");\nconst imageCoordinates_1 = require(\"./lib/imageCoordinates\");\nconst utils_1 = require(\"./utils\");\nconst styles_1 = require(\"./lib/styles\");\nconst MagnifyContainer = (props) => {\n const { containerDimensions, cursorOffset, fadeDurationInMs = 0, imageComponent: ImageComponent = 'img', imageProps, isActive, isLazyLoaded = true, inPlaceMode, isPortalRendered, isPositionOutside, position, sourceImageDimensions, style } = props, rest = __rest(props, [\"containerDimensions\", \"cursorOffset\", \"fadeDurationInMs\", \"imageComponent\", \"imageProps\", \"isActive\", \"isLazyLoaded\", \"inPlaceMode\", \"isPortalRendered\", \"isPositionOutside\", \"position\", \"sourceImageDimensions\", \"style\"]);\n const timersRef = (0, react_1.useRef)([]);\n const [isTransitionEntering, setIsTransitionEntering] = (0, react_1.useState)(false);\n const [isTransitionActive, setIsTransitionActive] = (0, react_1.useState)(false);\n const [isTransitionLeaving, setIsTransitionLeaving] = (0, react_1.useState)(false);\n const [, setIsTransitionDone] = (0, react_1.useState)(false);\n const isVisible = !isLazyLoaded || (isLazyLoaded && (isTransitionEntering || isTransitionActive || isTransitionLeaving));\n const imageCoordinates = inPlaceMode\n ? (0, imageCoordinates_1.getInPlaceMagnifiedImageCoordinates)(containerDimensions, imageProps, position)\n : (0, imageCoordinates_1.getLensModeMagnifiedImageCoordinates)(containerDimensions, cursorOffset, imageProps, position, sourceImageDimensions);\n (0, react_1.useEffect)(() => () => {\n var _a;\n return (_a = timersRef.current) === null || _a === void 0 ? void 0 : _a.forEach((timerId) => {\n clearTimeout(timerId);\n });\n }, []);\n (0, react_1.useEffect)(() => {\n if (isActive && !isPositionOutside) {\n setIsTransitionDone(false);\n setIsTransitionEntering(true);\n timersRef.current.push(window.setTimeout(() => {\n setIsTransitionEntering(false);\n setIsTransitionActive(true);\n }, 0));\n }\n else {\n setIsTransitionLeaving(true);\n setIsTransitionActive(false);\n timersRef.current.push(window.setTimeout(() => {\n setIsTransitionDone(true);\n setIsTransitionLeaving(false);\n }, fadeDurationInMs));\n }\n }, [fadeDurationInMs, isActive, isPositionOutside]);\n const enlargedImageStyle = (0, react_1.useMemo)(() => (0, styles_1.getMagnifiedImageStyle)(imageProps), [imageProps]);\n const computedContainerStyle = Object.assign(Object.assign({ overflow: 'hidden' }, (0, styles_1.getMagnifyContainerStyle)(containerDimensions, style, fadeDurationInMs)), (0, styles_1.getTransitionActiveStyle)(isTransitionActive));\n const computedImageStyle = Object.assign(Object.assign({}, enlargedImageStyle), (0, styles_1.getMagnifiedImageTranslationStyle)(imageCoordinates));\n return isVisible ? ((0, jsx_runtime_1.jsx)(\"div\", Object.assign({}, rest, { style: computedContainerStyle }, { children: (0, jsx_runtime_1.jsx)(ImageComponent, Object.assign({}, imageProps, { alt: imageProps.alt || '', style: computedImageStyle, onError: imageProps.onError || utils_1.noop, onLoad: imageProps.onLoad || utils_1.noop })) }))) : null;\n};\nexports.MagnifyContainer = MagnifyContainer;\n//# sourceMappingURL=MaginfyContainer.js.map","\"use strict\";\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.MagnifyContainerPortal = void 0;\nconst jsx_runtime_1 = require(\"react/jsx-runtime\");\nconst react_1 = require(\"react\");\n// eslint-disable-next-line import/no-extraneous-dependencies\nconst react_dom_1 = require(\"react-dom\");\nconst react_popper_1 = require(\"react-popper\");\nconst MaginfyContainer_1 = require(\"./MaginfyContainer\");\nconst useLazyRef_1 = require(\"./hooks/useLazyRef\");\n// import { styleToCssText } from 'src/utils';\nconst constants_1 = require(\"./constants\");\nexports.MagnifyContainerPortal = (0, react_1.forwardRef)((props, ref) => {\n const { portalProps = {} } = props, rest = __rest(props, [\"portalProps\"]);\n const { className, id, style, placement = constants_1.MagnifiedImagePosition.LEFT, strategy, onFirstUpdate, dataTestId, modifiers = [], horizontalOffset = 0, verticalOffset = 0, } = portalProps;\n const [popperElement, setPopperElement] = (0, react_1.useState)(null);\n const popper = (0, react_popper_1.usePopper)(ref.current, popperElement, {\n placement: placement,\n strategy,\n onFirstUpdate,\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [verticalOffset, horizontalOffset],\n },\n },\n ...modifiers,\n ],\n });\n const randId = (0, useLazyRef_1.useLazyRef)(() => (Math.floor(Math.random() * 9999)));\n const portalRef = (0, useLazyRef_1.useLazyRef)(() => document.createElement('div'));\n const popperRef = (0, react_1.useCallback)((node) => {\n if (node !== null) {\n setPopperElement(node);\n }\n }, []);\n const el = portalRef.current;\n el.id = id || `${constants_1.DEFAULT_PORTAL_ID}-${randId.current}`;\n // el.style.cssText = styleToCssText({ zIndex: 101, ...style });\n if (className) {\n el.className = className;\n }\n if (dataTestId) {\n el.setAttribute('data-test-id', dataTestId);\n }\n (0, react_1.useEffect)(() => {\n document.body.appendChild(el);\n return () => {\n document.body.removeChild(el);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n return (0, react_dom_1.createPortal)((0, jsx_runtime_1.jsx)(\"div\", Object.assign({ ref: popperRef, style: Object.assign(Object.assign({ zIndex: 101 }, popper.styles.popper), style) }, popper.attributes.popper, { children: (0, jsx_runtime_1.jsx)(MaginfyContainer_1.MagnifyContainer, Object.assign({ isPortalRendered: true }, rest)) })), el);\n});\n//# sourceMappingURL=MagnifyContainerPortal.js.map","\"use strict\";\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ReactImageMagnify = void 0;\nconst jsx_runtime_1 = require(\"react/jsx-runtime\");\nconst detect_it_1 = require(\"detect-it\");\nconst react_1 = require(\"react\");\nconst MagnifyContainerPortal_1 = require(\"./MagnifyContainerPortal\");\nconst negative_space_1 = require(\"./lens/negative-space\");\nconst positive_space_1 = require(\"./lens/positive-space\");\nconst DefaultHint_1 = require(\"./hint/DefaultHint\");\nconst lens_1 = require(\"./lib/lens\");\nconst dimensions_1 = require(\"./lib/dimensions\");\nconst CursorPosition_1 = require(\"./CursorPosition\");\nconst InPlaceMagnifyContainer_1 = require(\"./InPlaceMagnifyContainer\");\nconst styles_1 = require(\"./lib/styles\");\nconst utils_1 = require(\"./utils\");\nconst constants_1 = require(\"./constants\");\nconst shouldShowHint = (activationInteractionHint) => (activationInteractionHint === constants_1.INTERACTIONS.click\n || activationInteractionHint === constants_1.INTERACTIONS.hover);\nconst ReactImageMagnify = (props) => {\n var _a;\n const { activationInteractionHint, activationInteractionMouse = constants_1.INTERACTIONS.hover, activationInteractionTouch = constants_1.INTERACTIONS.press, fadeDurationInMs = 300, hintComponent: HintComponent = DefaultHint_1.DefaultHint, hintProps, isEnabled = true, imageComponent: ImageComponent = 'img', imageProps, lensComponent: LensComponentProp, lensProps, magnifyContainerProps, magnifiedImageComponent, magnifiedImageProps, portalProps: portalPropsProp, shouldUsePositiveSpaceLens = false, style } = props, rest = __rest(props, [\"activationInteractionHint\", \"activationInteractionMouse\", \"activationInteractionTouch\", \"fadeDurationInMs\", \"hintComponent\", \"hintProps\", \"isEnabled\", \"imageComponent\", \"imageProps\", \"lensComponent\", \"lensProps\", \"magnifyContainerProps\", \"magnifiedImageComponent\", \"magnifiedImageProps\", \"portalProps\", \"shouldUsePositiveSpaceLens\", \"style\"]);\n const { onLoad } = imageProps, usabledImageProps = __rest(imageProps, [\"onLoad\"]);\n const isZoomClickable = activationInteractionHint === constants_1.INTERACTIONS.click;\n // Prop Validation\n if (activationInteractionHint\n && activationInteractionMouse === constants_1.INTERACTIONS.click\n && ((_a = process === null || process === void 0 ? void 0 : process.env) === null || _a === void 0 ? void 0 : _a.NODE_ENV) !== 'production') {\n // eslint-disable-next-line no-console\n console.warn(`[ReactImageMagnify]\n Warning! \"activationInteractionHint\" is set to ${activationInteractionHint} and \"activationInteractionMouse\" is set to ${constants_1.INTERACTIONS.click}.\n These are incompatible options and may beahve unexpectedly.\n `);\n }\n ///\n /// Hooks\n ///\n const imageRef = (0, react_1.useRef)(null);\n const [smallImage, setSmallImage] = (0, react_1.useState)((0, utils_1.resolveSmallImage)(imageProps));\n const [isMouseDetected, setIsMouseDetected] = (0, react_1.useState)(detect_it_1.primaryInput === constants_1.INPUT_TYPE.mouse);\n const [isTouchDetected, setIsTouchDetected] = (0, react_1.useState)(detect_it_1.primaryInput === constants_1.INPUT_TYPE.touch);\n const [imageLoaded, setImageLoaded] = (0, react_1.useState)(false);\n const [lockedByHintInteraction, setLockedByHintInteraction] = (0, react_1.useState)(isZoomClickable);\n ///\n /// Derived data from state\n ///\n const portalProps = Object.assign(Object.assign({}, portalPropsProp), { placement: (portalPropsProp === null || portalPropsProp === void 0 ? void 0 : portalPropsProp.placement) || (isTouchDetected\n ? constants_1.MagnifiedImagePosition.OVER\n : constants_1.MagnifiedImagePosition.AUTO) });\n const isInPlaceMode = portalProps.placement === constants_1.MagnifiedImagePosition.OVER;\n const shouldShowLens = !isInPlaceMode && !isTouchDetected;\n ///\n /// Memos\n ///\n const resizeHandler = (0, react_1.useMemo)(() => () => (0, utils_1.setSmallImageDimensionState)(imageRef.current, setSmallImage, imageProps), []);\n const computedEnlargedImageContainerDimensions = (0, react_1.useMemo)(() => {\n var _a, _b;\n return ({\n width: (0, dimensions_1.getEnlargedImageContainerDimension)((magnifyContainerProps === null || magnifyContainerProps === void 0 ? void 0 : magnifyContainerProps.width) || constants_1.DEFAULT_MAGNIFY_CONTAINER_WIDTH, ((_a = imageRef === null || imageRef === void 0 ? void 0 : imageRef.current) === null || _a === void 0 ? void 0 : _a.offsetWidth) || smallImage.width || constants_1.DEFAULT_MAGNIFY_CONTAINER_WIDTH, magnifyContainerProps === null || magnifyContainerProps === void 0 ? void 0 : magnifyContainerProps.scale, isInPlaceMode),\n height: (0, dimensions_1.getEnlargedImageContainerDimension)((magnifyContainerProps === null || magnifyContainerProps === void 0 ? void 0 : magnifyContainerProps.height) || constants_1.DEFAULT_MAGNIFY_CONTAINER_HEIGHT, ((_b = imageRef === null || imageRef === void 0 ? void 0 : imageRef.current) === null || _b === void 0 ? void 0 : _b.offsetHeight) || smallImage.height || constants_1.DEFAULT_MAGNIFY_CONTAINER_HEIGHT, magnifyContainerProps === null || magnifyContainerProps === void 0 ? void 0 : magnifyContainerProps.scale, isInPlaceMode),\n });\n }, [magnifyContainerProps, smallImage, isInPlaceMode]);\n const cursorOffset = (0, react_1.useMemo)(() => (0, lens_1.getLensCursorOffset)((0, utils_1.imageToStrictDimensions)(smallImage, imageRef), magnifiedImageProps, computedEnlargedImageContainerDimensions), [computedEnlargedImageContainerDimensions, magnifiedImageProps, smallImage]);\n ///\n /// Effects\n ///\n (0, react_1.useEffect)(() => {\n setSmallImage((0, utils_1.resolveSmallImage)(imageProps));\n }, [imageProps]);\n (0, react_1.useEffect)(() => {\n setLockedByHintInteraction(activationInteractionHint === constants_1.INTERACTIONS.click);\n }, [activationInteractionHint]);\n (0, react_1.useEffect)(() => {\n if (!(0, utils_1.isFluid)(imageProps)) {\n (0, utils_1.setSmallImageDimensionState)(imageRef.current, setSmallImage, imageProps);\n window.addEventListener('resize', resizeHandler);\n }\n else {\n window.removeEventListener('resize', resizeHandler);\n }\n return () => window.removeEventListener('resize', resizeHandler);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [imageProps, imageRef]);\n ///\n /// Handlers\n ///\n const generateHintStyle = (hintPropsStyle) => {\n const hintStyle = Object.assign({}, hintPropsStyle);\n // Check and set via if-statements to prevent accidentally overriding existing\n // styles or styles that are set later\n if (lockedByHintInteraction) {\n hintStyle.cursor = 'pointer';\n }\n return hintStyle;\n };\n const handleDetectedEnvironmentChanged = (detectedInputType) => {\n setIsMouseDetected(detectedInputType.isMouseDetected);\n setIsTouchDetected(detectedInputType.isTouchDetected);\n };\n const handleHintClick = (e) => {\n e.preventDefault();\n e.stopPropagation();\n setLockedByHintInteraction(false);\n };\n const handleHintTouchEnd = (e) => {\n e.preventDefault();\n e.stopPropagation();\n setLockedByHintInteraction(false);\n };\n const handleOutsideClick = () => {\n if (isZoomClickable) {\n setLockedByHintInteraction(true);\n }\n };\n const onImageComplete = () => {\n if (!(0, utils_1.isFluid)(imageProps)) {\n (0, utils_1.setSmallImageDimensionState)(imageRef.current, setSmallImage, imageProps);\n }\n setImageLoaded(true);\n };\n const handleImageLoadOrComplete = (e) => {\n if (!imageLoaded) {\n if (smallImage.onLoad) {\n smallImage.onLoad(e);\n }\n onImageComplete();\n }\n };\n const HintComponentOrNull = activationInteractionHint && shouldShowHint(activationInteractionHint)\n ? ((0, jsx_runtime_1.jsx)(HintComponent, Object.assign({}, hintProps, { hintTextMouse: (hintProps === null || hintProps === void 0 ? void 0 : hintProps.hintTextMouse) || `${(0, utils_1.capitalize)(activationInteractionHint)} to Zoom`, hintTextTouch: (hintProps === null || hintProps === void 0 ? void 0 : hintProps.hintTextTouch) || 'Long-Touch to Zoom', isMouseDetected: isMouseDetected, isTouchDetected: isTouchDetected, style: generateHintStyle(hintProps === null || hintProps === void 0 ? void 0 : hintProps.style), onClick: lockedByHintInteraction ? handleHintClick : undefined, onTouchEnd: lockedByHintInteraction ? handleHintTouchEnd : undefined }))) : null;\n const LensComponent = LensComponentProp || shouldUsePositiveSpaceLens ? positive_space_1.PositiveSpaceLens : negative_space_1.NegativeSpaceLens;\n ///\n /// More Effects\n ///\n (0, react_1.useLayoutEffect)(() => {\n var _a;\n if ((_a = imageRef.current) === null || _a === void 0 ? void 0 : _a.complete) {\n onImageComplete();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n (0, react_1.useEffect)(() => {\n if (imageRef.current) {\n imageRef.current.onload = handleImageLoadOrComplete;\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n return ((0, jsx_runtime_1.jsx)(CursorPosition_1.CursorPosition, Object.assign({ shouldStopTouchMovePropagation: true, activationInteractionMouse: activationInteractionMouse, activationInteractionTouch: activationInteractionTouch, isEnabled: isEnabled, style: (0, styles_1.getContainerStyle)(smallImage, style, lockedByHintInteraction), onDetectedEnvironmentChanged: handleDetectedEnvironmentChanged, onOutsideClick: handleOutsideClick }, rest, { children: ({ position, isActive, isPositionOutside }) => ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(ImageComponent, Object.assign({}, usabledImageProps, { alt: smallImage.alt, ref: imageRef, style: (0, styles_1.getSmallImageStyle)(smallImage, imageProps.style) })), imageLoaded && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [HintComponentOrNull, shouldShowLens && !lockedByHintInteraction && ((0, jsx_runtime_1.jsx)(LensComponent, Object.assign({ cursorOffset: cursorOffset, fadeDurationInMs: fadeDurationInMs, isActive: isActive, isPositionOutside: isPositionOutside, position: position }, lensProps, { ref: imageRef }))), isInPlaceMode && !lockedByHintInteraction && ((0, jsx_runtime_1.jsx)(InPlaceMagnifyContainer_1.InPlaceMagnifyContainer, Object.assign({ containerDimensions: computedEnlargedImageContainerDimensions, cursorOffset: cursorOffset, fadeDurationInMs: fadeDurationInMs, imageComponent: magnifiedImageComponent, imageProps: magnifiedImageProps, isActive: isActive, isPositionOutside: isPositionOutside, position: position, sourceImageDimensions: (0, utils_1.imageToStrictDimensions)(smallImage, imageRef) }, magnifyContainerProps))), !isInPlaceMode && !lockedByHintInteraction && ((0, jsx_runtime_1.jsx)(MagnifyContainerPortal_1.MagnifyContainerPortal, Object.assign({ containerDimensions: computedEnlargedImageContainerDimensions, cursorOffset: cursorOffset, fadeDurationInMs: fadeDurationInMs, imageComponent: magnifiedImageComponent, imageProps: magnifiedImageProps, isActive: isActive, isPositionOutside: isPositionOutside, portalProps: portalProps, position: position, sourceImageDimensions: (0, utils_1.imageToStrictDimensions)(smallImage, imageRef) }, magnifyContainerProps, { ref: imageRef })))] }))] })) })));\n};\nexports.ReactImageMagnify = ReactImageMagnify;\n//# sourceMappingURL=ReactImageMagnify.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.MagnifiedImagePosition = exports.DEFAULT_MAGNIFY_CONTAINER_WIDTH = exports.DEFAULT_MAGNIFY_CONTAINER_HEIGHT = exports.INTERACTIONS = exports.UNSET_ACTIVATION_TIMER_NAME = exports.SET_ACTIVATION_TIMER_NAME = exports.MOUSE_EMULATION_GUARD_TIMER_NAME = exports.TAP_GESTURE_TIMER_NAME = exports.PRESS_EVENT_TIMER_NAME = exports.DEFAULT_PORTAL_ID = exports.INPUT_TYPE = void 0;\nexports.INPUT_TYPE = {\n mouse: 'mouse',\n touch: 'touch',\n};\nexports.DEFAULT_PORTAL_ID = 'react-image-magnify-portal';\nexports.PRESS_EVENT_TIMER_NAME = 'pressEvent';\nexports.TAP_GESTURE_TIMER_NAME = 'tap';\nexports.MOUSE_EMULATION_GUARD_TIMER_NAME = 'mouseEmulation';\nexports.SET_ACTIVATION_TIMER_NAME = 'setHovering';\nexports.UNSET_ACTIVATION_TIMER_NAME = 'unsetHovering';\nexports.INTERACTIONS = {\n touch: 'touch',\n tap: 'tap',\n press: 'press',\n click: 'click',\n hover: 'hover',\n doubleTap: 'double_tap',\n};\nexports.DEFAULT_MAGNIFY_CONTAINER_HEIGHT = '100%';\nexports.DEFAULT_MAGNIFY_CONTAINER_WIDTH = '100%';\nexports.MagnifiedImagePosition = {\n OVER: 'over',\n AUTO: 'auto',\n 'AUTO-START': 'auto-start',\n 'AUTO-END': 'auto-end',\n TOP: 'top',\n 'TOP-START': 'top-start',\n 'TOP-END': 'top-end',\n BOTTOM: 'bottom',\n 'BOTTOM-START': 'bottom-start',\n 'BOTTOM-END': 'bottom-end',\n RIGHT: 'right',\n 'RIGHT-START': 'right-start',\n 'RIGHT-END': 'right-end',\n LEFT: 'left',\n 'LEFT-START': 'left-start',\n 'LEFT-END': 'left-end',\n};\n//# sourceMappingURL=constants.js.map","\"use strict\";\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DefaultHint = void 0;\nconst jsx_runtime_1 = require(\"react/jsx-runtime\");\nconst react_1 = require(\"react\");\nexports.DefaultHint = (0, react_1.memo)((props) => {\n const { isMouseDetected, isTouchDetected, hintTextMouse, hintTextTouch, style } = props, rest = __rest(props, [\"isMouseDetected\", \"isTouchDetected\", \"hintTextMouse\", \"hintTextTouch\", \"style\"]);\n return ((0, jsx_runtime_1.jsx)(\"div\", Object.assign({ style: Object.assign({ width: '100%', display: 'flex', justifyContent: 'center', position: 'absolute', bottom: '25px', zIndex: 99 }, style) }, rest, { children: (0, jsx_runtime_1.jsxs)(\"div\", Object.assign({ style: {\n display: 'flex',\n alignItems: 'center',\n padding: '5px 10px',\n backgroundColor: '#333',\n borderRadius: '10px',\n opacity: '0.90',\n } }, { children: [(0, jsx_runtime_1.jsx)(\"img\", { alt: \"\", src: \"data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDQ5MC4yIDQ5MC4yIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA0OTAuMiA0OTAuMjsiIHhtbDpzcGFjZT0icHJlc2VydmUiIHdpZHRoPSI1MTJweCIgaGVpZ2h0PSI1MTJweCI+CjxnPgoJPGc+CgkJPHBhdGggZD0iTTQxOC41LDQxOC41Yzk1LjYtOTUuNiw5NS42LTI1MS4yLDAtMzQ2LjhzLTI1MS4yLTk1LjYtMzQ2LjgsMHMtOTUuNiwyNTEuMiwwLDM0Ni44UzMyMi45LDUxNC4xLDQxOC41LDQxOC41eiBNODksODkgICAgYzg2LjEtODYuMSwyMjYuMS04Ni4xLDMxMi4yLDBzODYuMSwyMjYuMSwwLDMxMi4ycy0yMjYuMSw4Ni4xLTMxMi4yLDBTMywxNzUuMSw4OSw4OXoiIGZpbGw9IiNGRkZGRkYiLz4KCQk8cGF0aCBkPSJNMjQ1LjEsMzM2LjljMy40LDAsNi40LTEuNCw4LjctMy42YzIuMi0yLjIsMy42LTUuMywzLjYtOC43di02Ny4zaDY3LjNjMy40LDAsNi40LTEuNCw4LjctMy42YzIuMi0yLjIsMy42LTUuMywzLjYtOC43ICAgIGMwLTYuOC01LjUtMTIuMy0xMi4yLTEyLjJoLTY3LjN2LTY3LjNjMC02LjgtNS41LTEyLjMtMTIuMi0xMi4yYy02LjgsMC0xMi4zLDUuNS0xMi4yLDEyLjJ2NjcuM2gtNjcuM2MtNi44LDAtMTIuMyw1LjUtMTIuMiwxMi4yICAgIGMwLDYuOCw1LjUsMTIuMywxMi4yLDEyLjJoNjcuM3Y2Ny4zQzIzMi44LDMzMS40LDIzOC4zLDMzNi45LDI0NS4xLDMzNi45eiIgZmlsbD0iI0ZGRkZGRiIvPgoJPC9nPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+Cjwvc3ZnPgo=\", style: {\n width: '25px',\n height: '25px',\n } }), (0, jsx_runtime_1.jsx)(\"span\", Object.assign({ style: {\n padding: '2px 0 0 5px',\n fontFamily: 'Arial, sans-serif',\n fontSize: '14px',\n color: 'white',\n } }, { children: isTouchDetected ? hintTextTouch : hintTextMouse }))] })) })));\n});\n//# sourceMappingURL=DefaultHint.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useLazyRef = void 0;\nconst react_1 = require(\"react\");\nconst noValue = Symbol('lazyRef.noValue');\nconst useLazyRef = (getInitialValue) => {\n const lazyRef = (0, react_1.useRef)(noValue);\n if (lazyRef.current === noValue) {\n lazyRef.current = getInitialValue();\n }\n return lazyRef;\n};\nexports.useLazyRef = useLazyRef;\n//# sourceMappingURL=useLazyRef.js.map","\"use strict\";\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Lens = void 0;\nconst jsx_runtime_1 = require(\"react/jsx-runtime\");\nconst Lens = (props) => {\n const { fadeDurationInMs = 0, isActive, isPositionOutside, style: parentSpecifiedStyle } = props, rest = __rest(props, [\"fadeDurationInMs\", \"isActive\", \"isPositionOutside\", \"style\"]);\n const defaultStyle = {\n width: 'auto',\n height: 'auto',\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto',\n display: 'block',\n };\n const computedStyle = {\n position: 'absolute',\n opacity: (isActive && !isPositionOutside) ? 1 : 0,\n transition: `opacity ${fadeDurationInMs}ms ease-in`,\n };\n const compositStyle = Object.assign(Object.assign(Object.assign({}, defaultStyle), parentSpecifiedStyle), computedStyle);\n return (0, jsx_runtime_1.jsx)(\"div\", Object.assign({ style: compositStyle }, rest));\n};\nexports.Lens = Lens;\n//# sourceMappingURL=Lens.js.map","\"use strict\";\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.LensBottom = void 0;\nconst jsx_runtime_1 = require(\"react/jsx-runtime\");\nconst react_1 = require(\"react\");\nconst clamp_1 = require(\"../../lib/clamp\");\nconst Lens_1 = require(\"./Lens\");\nexports.LensBottom = (0, react_1.forwardRef)((props, ref) => {\n const { cursorOffset, position, fadeDurationInMs, isActive, isPositionOutside, style: parentSpecifiedStyle } = props, rest = __rest(props, [\"cursorOffset\", \"position\", \"fadeDurationInMs\", \"isActive\", \"isPositionOutside\", \"style\"]);\n const typedRef = ref;\n if (!(typedRef === null || typedRef === void 0 ? void 0 : typedRef.current)) {\n return null;\n }\n const clearLensHeight = cursorOffset.y * 2;\n const computedHeight = typedRef.current.offsetHeight - position.y - cursorOffset.y;\n const maxHeight = typedRef.current.offsetHeight - clearLensHeight;\n const height = (0, clamp_1.clamp)(computedHeight, 0, maxHeight);\n const clearLensBottom = position.y + cursorOffset.y;\n const top = Math.max(clearLensBottom, clearLensHeight);\n const computedStyle = {\n height: `${height}px`,\n width: '100%',\n top: `${top}px`,\n };\n return ((0, jsx_runtime_1.jsx)(Lens_1.Lens, Object.assign({ fadeDurationInMs: fadeDurationInMs, isActive: isActive, isPositionOutside: isPositionOutside, style: Object.assign(Object.assign({}, parentSpecifiedStyle), computedStyle) }, rest)));\n});\nexports.LensBottom.displayName = 'LensBottom';\n//# sourceMappingURL=LensBottom.js.map","\"use strict\";\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.LensLeft = void 0;\nconst jsx_runtime_1 = require(\"react/jsx-runtime\");\nconst react_1 = require(\"react\");\nconst clamp_1 = require(\"../../lib/clamp\");\nconst Lens_1 = require(\"./Lens\");\nexports.LensLeft = (0, react_1.forwardRef)((props, ref) => {\n const { cursorOffset, position, fadeDurationInMs, isActive, isPositionOutside, style: parentSpecifiedStyle } = props, rest = __rest(props, [\"cursorOffset\", \"position\", \"fadeDurationInMs\", \"isActive\", \"isPositionOutside\", \"style\"]);\n const typedRef = ref;\n if (!(typedRef === null || typedRef === void 0 ? void 0 : typedRef.current)) {\n return null;\n }\n const clearLensHeight = cursorOffset.y * 2;\n const clearLensWidth = cursorOffset.x * 2;\n const maxHeight = typedRef.current.offsetHeight - clearLensHeight;\n const maxWidth = typedRef.current.offsetWidth - clearLensWidth;\n const height = clearLensHeight;\n const width = (0, clamp_1.clamp)(position.x - cursorOffset.x, 0, maxWidth);\n const top = (0, clamp_1.clamp)(position.y - cursorOffset.y, 0, maxHeight);\n const computedStyle = {\n height: `${height}px`,\n width: `${width}px`,\n top: `${top}px`,\n left: '0px',\n };\n return ((0, jsx_runtime_1.jsx)(Lens_1.Lens, Object.assign({ fadeDurationInMs: fadeDurationInMs, isActive: isActive, isPositionOutside: isPositionOutside, style: Object.assign(Object.assign({}, parentSpecifiedStyle), computedStyle) }, rest)));\n});\nexports.LensLeft.displayName = 'LensLeft';\n//# sourceMappingURL=LensLeft.js.map","\"use strict\";\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.LensRight = void 0;\nconst jsx_runtime_1 = require(\"react/jsx-runtime\");\nconst react_1 = require(\"react\");\nconst clamp_1 = require(\"../../lib/clamp\");\nconst Lens_1 = require(\"./Lens\");\nexports.LensRight = (0, react_1.forwardRef)((props, ref) => {\n const { cursorOffset, position, fadeDurationInMs, isActive, isPositionOutside, style: parentSpecifiedStyle } = props, rest = __rest(props, [\"cursorOffset\", \"position\", \"fadeDurationInMs\", \"isActive\", \"isPositionOutside\", \"style\"]);\n const typedRef = ref;\n if (!(typedRef === null || typedRef === void 0 ? void 0 : typedRef.current)) {\n return null;\n }\n const clearLensHeight = cursorOffset.y * 2;\n const clearLensWidth = cursorOffset.x * 2;\n const maxHeight = typedRef.current.offsetHeight - clearLensHeight;\n const maxWidth = typedRef.current.offsetWidth - clearLensWidth;\n const height = clearLensHeight;\n const width = (0, clamp_1.clamp)(typedRef.current.offsetWidth - position.x - cursorOffset.x, 0, maxWidth);\n const top = (0, clamp_1.clamp)(position.y - cursorOffset.y, 0, maxHeight);\n const computedStyle = {\n height: `${height}px`,\n width: `${width}px`,\n top: `${top}px`,\n right: '0px',\n };\n return ((0, jsx_runtime_1.jsx)(Lens_1.Lens, Object.assign({ fadeDurationInMs: fadeDurationInMs, isActive: isActive, isPositionOutside: isPositionOutside, style: Object.assign(Object.assign({}, parentSpecifiedStyle), computedStyle) }, rest)));\n});\nexports.LensRight.displayName = 'LensRight';\n//# sourceMappingURL=LensRight.js.map","\"use strict\";\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.LensTop = void 0;\nconst jsx_runtime_1 = require(\"react/jsx-runtime\");\nconst react_1 = require(\"react\");\nconst clamp_1 = require(\"../../lib/clamp\");\nconst Lens_1 = require(\"./Lens\");\nexports.LensTop = (0, react_1.forwardRef)((props, ref) => {\n const { cursorOffset, position, fadeDurationInMs, isActive, isPositionOutside, style: parentSpecifiedStyle } = props, rest = __rest(props, [\"cursorOffset\", \"position\", \"fadeDurationInMs\", \"isActive\", \"isPositionOutside\", \"style\"]);\n const typedRef = ref;\n if (!(typedRef === null || typedRef === void 0 ? void 0 : typedRef.current)) {\n return null;\n }\n const clearLensHeight = cursorOffset.y * 2;\n const maxHeight = typedRef.current.offsetHeight - clearLensHeight;\n const height = (0, clamp_1.clamp)(position.y - cursorOffset.y, 0, maxHeight);\n const computedStyle = {\n height: `${height}px`,\n width: '100%',\n top: '0px',\n };\n return ((0, jsx_runtime_1.jsx)(Lens_1.Lens, Object.assign({ fadeDurationInMs: fadeDurationInMs, isActive: isActive, isPositionOutside: isPositionOutside, style: Object.assign(Object.assign({}, parentSpecifiedStyle), computedStyle) }, rest)));\n});\nexports.LensTop.displayName = 'LensTop';\n//# sourceMappingURL=LensTop.js.map","\"use strict\";\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NegativeSpaceLens = void 0;\nconst jsx_runtime_1 = require(\"react/jsx-runtime\");\nconst react_1 = require(\"react\");\nconst LensTop_1 = require(\"./LensTop\");\nconst LensLeft_1 = require(\"./LensLeft\");\nconst LensRight_1 = require(\"./LensRight\");\nconst LensBottom_1 = require(\"./LensBottom\");\nexports.NegativeSpaceLens = (0, react_1.forwardRef)((props, ref) => {\n const { cursorOffset, fadeDurationInMs, isActive, isPositionOutside, position, style: userSpecifiedStyle } = props, rest = __rest(props, [\"cursorOffset\", \"fadeDurationInMs\", \"isActive\", \"isPositionOutside\", \"position\", \"style\"]);\n const compositLensStyle = Object.assign({ backgroundColor: 'rgba(0,0,0,.4)' }, userSpecifiedStyle);\n return ((0, jsx_runtime_1.jsxs)(\"div\", Object.assign({}, rest, { children: [(0, jsx_runtime_1.jsx)(LensTop_1.LensTop, Object.assign({}, props, { ref: ref, style: compositLensStyle })), (0, jsx_runtime_1.jsx)(LensLeft_1.LensLeft, Object.assign({}, props, { ref: ref, style: compositLensStyle })), (0, jsx_runtime_1.jsx)(LensRight_1.LensRight, Object.assign({}, props, { ref: ref, style: compositLensStyle })), (0, jsx_runtime_1.jsx)(LensBottom_1.LensBottom, Object.assign({}, props, { ref: ref, style: compositLensStyle }))] })));\n});\nexports.NegativeSpaceLens.displayName = 'NegativeSpaceLens';\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.dataUri = void 0;\nexports.dataUri = 'data:image/gif;base64,R0lGODlhZABkAPABAHOf4fj48yH5BAEAAAEALAAAAABkAGQAAAL+jI+py+0PowOB2oqvznz7Dn5iSI7SiabqWrbj68bwTLL2jUv0Lvf8X8sJhzmg0Yc8mojM5kmZjEKPzqp1MZVqs7Cr98rdisOXr7lJHquz57YwDV8j3XRb/C7v1vcovD8PwicY8VcISDGY2GDIKKf4mNAoKQZZeXg5aQk5yRml+dgZ2vOpKGraQpp4uhqYKsgKi+H6iln7N8sXG4u7p2s7ykvnyxos/DuMWtyGfKq8fAwd5nzGHN067VUtiv2lbV3GDfY9DhQu7p1pXoU+rr5ODk/j7sSePk9Ub33PlN+4jx8v4JJ/RQQa3EDwzcGFiBLi6AfN4UOGCyXegGjIoh0fisQ0rsD4y+NHjgZFqgB5y2Qfks1UPmEZ0OVLlIcKAAA7';\n//# sourceMappingURL=textured-lens-data-uri.js.map","\"use strict\";\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PositiveSpaceLens = void 0;\nconst jsx_runtime_1 = require(\"react/jsx-runtime\");\nconst clamp_1 = require(\"../../lib/clamp\");\nconst textured_lens_data_uri_1 = require(\"./assets/textured-lens-data-uri\");\nconst react_1 = require(\"react\");\nexports.PositiveSpaceLens = (0, react_1.forwardRef)((props, ref) => {\n const { isActive, isPositionOutside, fadeDurationInMs, cursorOffset: { x: cursorOffsetX, y: cursorOffsetY, }, position: { x: positionX, y: positionY, }, style: userSpecifiedStyle } = props, rest = __rest(props, [\"isActive\", \"isPositionOutside\", \"fadeDurationInMs\", \"cursorOffset\", \"position\", \"style\"]);\n const typedRef = ref;\n if (!(typedRef === null || typedRef === void 0 ? void 0 : typedRef.current)) {\n return null;\n }\n const defaultStyle = {\n transition: `opacity ${fadeDurationInMs}ms ease-in`,\n backgroundImage: `url(${textured_lens_data_uri_1.dataUri})`,\n };\n const width = cursorOffsetX * 2;\n const height = cursorOffsetY * 2;\n const isVisible = isActive && !isPositionOutside;\n const top = positionY - cursorOffsetY;\n const left = positionX - cursorOffsetX;\n const maxTop = typedRef.current.offsetHeight - height;\n const maxLeft = typedRef.current.offsetWidth - width;\n const minOffset = 0;\n const priorityStyle = {\n position: 'absolute',\n top: `${(0, clamp_1.clamp)(top, minOffset, maxTop)}px`,\n left: `${(0, clamp_1.clamp)(left, minOffset, maxLeft)}px`,\n width: `${width}px`,\n height: `${height}px`,\n opacity: isVisible ? 1 : 0,\n };\n return ((0, jsx_runtime_1.jsx)(\"div\", Object.assign({ style: Object.assign(Object.assign(Object.assign({}, defaultStyle), userSpecifiedStyle), priorityStyle) }, rest)));\n});\nexports.PositiveSpaceLens.displayName = 'PositiveSpaceLens';\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Activation = void 0;\nclass Activation {\n constructor(options) {\n this.onIsActiveChanged = options.onIsActiveChanged;\n this.isActive = false;\n this.timers = [];\n }\n activate() {\n this.isActive = true;\n this.onIsActiveChanged({ isActive: true });\n }\n deactivate() {\n this.isActive = false;\n this.onIsActiveChanged({ isActive: false });\n this.clearTimers();\n }\n toggleActivation() {\n if (this.isActive) {\n this.deactivate();\n }\n else {\n this.activate();\n }\n }\n clearTimers() {\n const { timers } = this;\n while (timers.length) {\n const timer = timers.pop();\n if (timer === null || timer === void 0 ? void 0 : timer.id) {\n // @ts-expect-error\n clearTimeout(timer.id);\n }\n }\n }\n clearTimer(timerName) {\n this.timers.forEach((timer) => {\n if (timer.name === timerName) {\n // @ts-expect-error\n clearTimeout(timer.id);\n }\n });\n }\n}\nexports.Activation = Activation;\n//# sourceMappingURL=Activation.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ClickActivation = void 0;\nconst MouseEnvironmentActivation_1 = require(\"./MouseEnvironmentActivation\");\nclass ClickActivation extends MouseEnvironmentActivation_1.MouseEnvironmentActivation {\n mouseClicked() {\n this.toggleActivation();\n }\n}\nexports.ClickActivation = ClickActivation;\n//# sourceMappingURL=ClickActivation.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.HoverActivation = void 0;\nconst constants_1 = require(\"../constants\");\nconst MouseEnvironmentActivation_1 = require(\"./MouseEnvironmentActivation\");\nclass HoverActivation extends MouseEnvironmentActivation_1.MouseEnvironmentActivation {\n constructor(options) {\n super({ onIsActiveChanged: options.onIsActiveChanged });\n this.hoverDelayInMs = options.hoverDelayInMs;\n this.hoverOffDelayInMs = options.hoverOffDelayInMs;\n }\n mouseEntered() {\n this.clearTimers();\n this.schedulActivation(this.hoverDelayInMs);\n }\n mouseLeft() {\n this.clearTimers();\n this.scheduleDeactivation(this.hoverOffDelayInMs);\n }\n schedulActivation(schedule) {\n const scheduleId = setTimeout(() => {\n this.activate();\n }, schedule);\n this.timers.push({\n id: scheduleId,\n name: constants_1.SET_ACTIVATION_TIMER_NAME,\n });\n }\n scheduleDeactivation(schedule) {\n const scheduleId = setTimeout(() => {\n this.deactivate();\n }, schedule);\n this.timers.push({\n id: scheduleId,\n name: constants_1.UNSET_ACTIVATION_TIMER_NAME,\n });\n }\n}\nexports.HoverActivation = HoverActivation;\n//# sourceMappingURL=HoverActivation.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.MouseEnvironmentActivation = void 0;\n/* eslint-disable class-methods-use-this */\nconst Activation_1 = require(\"./Activation\");\nclass MouseEnvironmentActivation extends Activation_1.Activation {\n mouseEntered() {\n // Do nothing\n }\n mouseMoved() {\n // Do nothing\n }\n mouseLeft() {\n // Do nothing\n }\n mouseClicked() {\n // Do nothing\n }\n}\nexports.MouseEnvironmentActivation = MouseEnvironmentActivation;\n//# sourceMappingURL=MouseEnvironmentActivation.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PressActivation = void 0;\nconst constants_1 = require(\"../constants\");\nconst TouchEnvironmentActivation_1 = require(\"./TouchEnvironmentActivation\");\nclass PressActivation extends TouchEnvironmentActivation_1.TouchEnvironmentActivation {\n constructor(options) {\n super({ onIsActiveChanged: options.onIsActiveChanged });\n this.pressDurationInMs = options.pressDurationInMs;\n this.pressMoveThreshold = options.pressMoveThreshold;\n }\n touchStarted(event) {\n this.initPressEventCriteria(event.position);\n this.setPressEventTimer();\n }\n touchMoved(event) {\n if (this.isActive) {\n return;\n }\n this.setPressEventCriteria(event.position);\n }\n setPressEventTimer() {\n this.timers.push({\n name: constants_1.PRESS_EVENT_TIMER_NAME,\n id: setTimeout(() => {\n if (Math.abs(this.currentElTop - this.initialElTop) < this.pressMoveThreshold) {\n this.activate();\n }\n }, this.pressDurationInMs),\n });\n }\n setPressEventCriteria(position) {\n this.currentElTop = position.y;\n }\n initPressEventCriteria(position) {\n const top = position.y;\n this.initialElTop = top;\n this.currentElTop = top;\n }\n}\nexports.PressActivation = PressActivation;\n//# sourceMappingURL=PressActivation.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.RelativeCursorPositionObserver = void 0;\nclass RelativeCursorPositionObserver {\n get subject() {\n return this._subject;\n }\n set subject(value) {\n this._subject = value;\n }\n get documentRelativeElementOffset() {\n if (!this._subject) {\n throw new Error('Not yet initialized. Subject is not set');\n }\n if (!this.elementOffset) {\n this.elementOffset = this.getDocumentRelativeElementOffset(this._subject);\n }\n return this.elementOffset;\n }\n getDocumentRelativeElementOffset(el) {\n const rootEl = this.getRootOfEl(el);\n const { left: docLeft, top: docTop, } = rootEl.getBoundingClientRect();\n const { left: elLeft, top: elTop, } = el.getBoundingClientRect();\n return {\n x: Math.abs(docLeft) + elLeft,\n y: Math.abs(docTop) + elTop,\n };\n }\n getRootOfEl(el) {\n if (el.parentElement) {\n return this.getRootOfEl(el.parentElement);\n }\n return el;\n }\n getComputedElementRelativeCursorPosition(event, documentRelativeElementOffset) {\n const position = this.getDocumentRelativeCursorPosition(event);\n const { x: cursorX, y: cursorY } = position;\n const { x: offsetX, y: offsetY } = documentRelativeElementOffset;\n return {\n x: Math.round(cursorX - offsetX),\n y: Math.round(cursorY - offsetY),\n };\n }\n getDocumentRelativeCursorPosition(event) {\n return {\n x: event.pageX,\n y: event.pageY,\n };\n }\n getCursorPosition(event) {\n return this.getComputedElementRelativeCursorPosition(event, this.documentRelativeElementOffset);\n }\n}\nexports.RelativeCursorPositionObserver = RelativeCursorPositionObserver;\n//# sourceMappingURL=RelativeCursorPositionObserver.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TapActivation = void 0;\nconst constants_1 = require(\"../constants\");\nconst TouchEnvironmentActivation_1 = require(\"./TouchEnvironmentActivation\");\nclass TapActivation extends TouchEnvironmentActivation_1.TouchEnvironmentActivation {\n constructor(options) {\n super({ onIsActiveChanged: options.onIsActiveChanged });\n this.hasTapGestureEnded = false;\n this.tapDurationInMs = options.tapDurationInMs;\n this.tapMoveThreshold = options.tapMoveThreshold;\n }\n touchStarted(event) {\n this.hasTapGestureEnded = false;\n this.initMoveThreshold(event.position);\n this.setTapEventTimer();\n }\n touchMoved(event) {\n if (this.isActive) {\n return;\n }\n this.setMoveThresholdCriteria(event.position);\n }\n touchEnded() {\n this.hasTapGestureEnded = true;\n }\n get hasPassedMoveThreshold() {\n return Math.abs(this.currentElTop - this.initialElTop) > this.tapMoveThreshold;\n }\n get isTapGestureActive() {\n return !this.hasPassedMoveThreshold && this.hasTapGestureEnded;\n }\n setTapEventTimer() {\n this.timers.push({\n name: constants_1.TAP_GESTURE_TIMER_NAME,\n id: setTimeout(() => {\n if (this.isTapGestureActive) {\n this.toggleActivation();\n }\n }, this.tapDurationInMs),\n });\n }\n setMoveThresholdCriteria(position) {\n this.currentElTop = position.y;\n }\n initMoveThreshold(position) {\n const top = position.y;\n this.initialElTop = top;\n this.currentElTop = top;\n }\n}\nexports.TapActivation = TapActivation;\n//# sourceMappingURL=TapActivation.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TouchActivation = void 0;\nconst TouchEnvironmentActivation_1 = require(\"./TouchEnvironmentActivation\");\nclass TouchActivation extends TouchEnvironmentActivation_1.TouchEnvironmentActivation {\n touchStarted(event) {\n event.e.preventDefault();\n this.activate();\n }\n}\nexports.TouchActivation = TouchActivation;\n//# sourceMappingURL=TouchActivation.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TouchEnvironmentActivation = void 0;\n/* eslint-disable class-methods-use-this */\n/* eslint-disable @typescript-eslint/no-unused-vars */\nconst Activation_1 = require(\"./Activation\");\nclass TouchEnvironmentActivation extends Activation_1.Activation {\n constructor(options) {\n super(options);\n this.initialElTop = 0;\n this.currentElTop = 0;\n }\n touchStarted(event) {\n throw new Error('NotYetImplemented');\n }\n touchMoved(event) {\n throw new Error('NotYetImplemented');\n }\n touchEnded() {\n this.deactivate();\n }\n touchCanceled() {\n this.deactivate();\n }\n}\nexports.TouchEnvironmentActivation = TouchEnvironmentActivation;\n//# sourceMappingURL=TouchEnvironmentActivation.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.clamp = void 0;\n/* eslint-disable no-nested-ternary */\nfunction clamp(value, min, max) {\n return min < max\n ? (value < min ? min : value > max ? max : value)\n : (value < max ? max : value > min ? min : value);\n}\nexports.clamp = clamp;\n//# sourceMappingURL=clamp.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getEnlargedImageContainerDimension = exports.convertPercentageToDecimal = exports.isPercentageFormat = void 0;\nfunction isPercentageFormat(val) {\n return (typeof val === 'string'\n && /^\\d+%$/.test(val));\n}\nexports.isPercentageFormat = isPercentageFormat;\nfunction convertPercentageToDecimal(percentage, denominator = 100) {\n const denom = typeof denominator === 'string' ? parseInt(denominator, 10) : denominator;\n return (typeof percentage === 'string' ? parseInt(percentage, 10) : percentage) / denom;\n}\nexports.convertPercentageToDecimal = convertPercentageToDecimal;\nfunction getEnlargedImageContainerDimension(containerDimension, smallImageDimension, scale, isInPlaceMode) {\n var _a;\n if (isInPlaceMode) {\n return smallImageDimension;\n }\n if (scale) {\n if (scale <= 0 && ((_a = process === null || process === void 0 ? void 0 : process.env) === null || _a === void 0 ? void 0 : _a.NODE_ENV) !== 'production') {\n // eslint-disable-next-line no-console\n console.warn(`[ReactImageMagnify]\n Warning! \"scale\" cannot be 0 or less (found ${scale}). Defaulting to 0.5.\n `);\n // eslint-disable-next-line no-param-reassign\n scale = 0.5;\n }\n return (isPercentageFormat(smallImageDimension)\n ? convertPercentageToDecimal(smallImageDimension)\n : smallImageDimension)\n * scale;\n }\n if (isPercentageFormat(containerDimension)) {\n return isPercentageFormat(smallImageDimension)\n ? convertPercentageToDecimal(smallImageDimension, containerDimension)\n : smallImageDimension * convertPercentageToDecimal(containerDimension);\n }\n return containerDimension;\n}\nexports.getEnlargedImageContainerDimension = getEnlargedImageContainerDimension;\n//# sourceMappingURL=dimensions.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getInPlaceMagnifiedImageCoordinates = exports.getLensModeMagnifiedImageCoordinates = void 0;\nconst clamp_1 = require(\"./clamp\");\nconst imageRatio_1 = require(\"./imageRatio\");\nfunction getMinCoordinates(container, largeImage) {\n return {\n x: ((largeImage.width - container.width) * -1),\n y: ((largeImage.height - container.height) * -1),\n };\n}\nfunction getMaxCoordinates() {\n return {\n x: 0,\n y: 0,\n };\n}\nfunction clampImageCoordinates(imageCoordinates, minCoordinates, maxCoordinates) {\n return {\n x: (0, clamp_1.clamp)(imageCoordinates.x, minCoordinates.x, maxCoordinates.x),\n y: (0, clamp_1.clamp)(imageCoordinates.y, minCoordinates.y, maxCoordinates.y),\n };\n}\nfunction getCursorPositionAdjustedForLens(position, lensCursorOffset) {\n return {\n x: position.x - lensCursorOffset.x,\n y: position.y - lensCursorOffset.y,\n };\n}\nfunction getLensModeMagnifiedImageCoordinates(containerDimensions, cursorOffset, magnifiedImage, position, image) {\n const adjustedPosition = getCursorPositionAdjustedForLens(position, cursorOffset);\n const ratio = (0, imageRatio_1.getSmallToLargeImageRatio)(image, magnifiedImage);\n const coordinates = {\n x: (Math.round(adjustedPosition.x * ratio.x) * -1),\n y: (Math.round(adjustedPosition.y * ratio.y) * -1),\n };\n const minCoordinates = getMinCoordinates(containerDimensions, magnifiedImage);\n const maxCoordinates = getMaxCoordinates();\n return clampImageCoordinates(coordinates, minCoordinates, maxCoordinates);\n}\nexports.getLensModeMagnifiedImageCoordinates = getLensModeMagnifiedImageCoordinates;\nfunction getInPlaceMagnifiedImageCoordinates(containerDimensions, magnifiedImage, position) {\n const minCoordinates = getMinCoordinates(containerDimensions, magnifiedImage);\n const maxCoordinates = getMaxCoordinates();\n const ratio = (0, imageRatio_1.getContainerToImageRatio)(containerDimensions, magnifiedImage);\n const coordinates = {\n x: (Math.round(position.x * ratio.x) * -1),\n y: (Math.round(position.y * ratio.y) * -1),\n };\n return clampImageCoordinates(coordinates, minCoordinates, maxCoordinates);\n}\nexports.getInPlaceMagnifiedImageCoordinates = getInPlaceMagnifiedImageCoordinates;\n//# sourceMappingURL=imageCoordinates.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getContainerToImageRatio = exports.getLargeToSmallImageRatio = exports.getSmallToLargeImageRatio = void 0;\nfunction getSmallToLargeElementRatio(smallElement, largeElement) {\n return {\n x: smallElement.width ? (largeElement.width / smallElement.width) : 1,\n y: smallElement.height ? (largeElement.height / smallElement.height) : 1,\n };\n}\nfunction getSmallToLargeImageRatio(smallImage, largeImage) {\n return getSmallToLargeElementRatio(smallImage, largeImage);\n}\nexports.getSmallToLargeImageRatio = getSmallToLargeImageRatio;\nfunction getLargeToSmallImageRatio(smallImage, largeImage) {\n return {\n x: smallImage.width ? (smallImage.width / largeImage.width) : 1,\n y: smallImage.height ? (smallImage.height / largeImage.height) : 1,\n };\n}\nexports.getLargeToSmallImageRatio = getLargeToSmallImageRatio;\nfunction getContainerToImageRatio(container, image) {\n return getSmallToLargeElementRatio(container, {\n width: image.width - container.width,\n height: image.height - container.height,\n });\n}\nexports.getContainerToImageRatio = getContainerToImageRatio;\n//# sourceMappingURL=imageRatio.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getLensCursorOffset = void 0;\nconst imageRatio_1 = require(\"./imageRatio\");\nfunction getLensCursorOffsetDimension(value, ratio) {\n return Math.round((value * ratio) / 2);\n}\nfunction getLensCursorOffset(smallImage, largeImage, enlargedImageContainerDimensions) {\n const ratio = (0, imageRatio_1.getLargeToSmallImageRatio)(smallImage, largeImage);\n return {\n x: getLensCursorOffsetDimension(enlargedImageContainerDimensions.width, ratio.x),\n y: getLensCursorOffsetDimension(enlargedImageContainerDimensions.height, ratio.y),\n };\n}\nexports.getLensCursorOffset = getLensCursorOffset;\n//# sourceMappingURL=lens.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getMagnifiedImageStyle = exports.getMagnifiedImageTranslationStyle = exports.getMagnifyContainerStyle = exports.getTransitionActiveStyle = exports.getSmallImageStyle = exports.getContainerStyle = void 0;\nconst utils_1 = require(\"../utils\");\nfunction getContainerStyle(smallImage, style, lockedByHintInteraction) {\n const { width, height, } = smallImage;\n return Object.assign({ cursor: lockedByHintInteraction ? 'default' : 'crosshair', position: 'relative', height: (0, utils_1.isFluidDimension)(height) ? height : `${height}px`, width: (0, utils_1.isFluidDimension)(width) ? width : `${width}px` }, style);\n}\nexports.getContainerStyle = getContainerStyle;\nfunction getSmallImageStyle(smallImage, style) {\n const compositSmallImageStyle = Object.assign({ pointerEvents: 'none', height: '100%', width: '100%' }, style);\n return compositSmallImageStyle;\n}\nexports.getSmallImageStyle = getSmallImageStyle;\nfunction getTransitionActiveStyle(isTransitionActive) {\n return {\n opacity: isTransitionActive ? 1 : 0,\n };\n}\nexports.getTransitionActiveStyle = getTransitionActiveStyle;\nfunction getMagnifyContainerStyle(containerDimensions, style, fadeDurationInMs) {\n return Object.assign({ width: containerDimensions.width, height: containerDimensions.height, transition: `opacity ${fadeDurationInMs}ms ease-in`, pointerEvents: 'none' }, style);\n}\nexports.getMagnifyContainerStyle = getMagnifyContainerStyle;\nfunction getMagnifiedImageTranslationStyle(imageCoordinates) {\n const translate = `translate(${imageCoordinates.x}px, ${imageCoordinates.y}px)`;\n return {\n transform: translate,\n WebkitTransform: translate,\n msTransform: translate,\n };\n}\nexports.getMagnifiedImageTranslationStyle = getMagnifiedImageTranslationStyle;\nfunction getMagnifiedImageStyle(magnifiedImage) {\n return Object.assign({ width: magnifiedImage.width, height: magnifiedImage.height, pointerEvents: 'none' }, magnifiedImage.style);\n}\nexports.getMagnifiedImageStyle = getMagnifiedImageStyle;\n//# sourceMappingURL=styles.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.setSmallImageDimensionState = exports.resolveSmallImage = exports.imageToStrictDimensions = exports.capitalize = exports.styleToCssText = exports.isFluid = exports.isFluidDimension = exports.noop = void 0;\n// eslint-disable-next-line prefer-regex-literals\nconst fluidCheckRegexp = new RegExp(/(%|vh|vw|vmin|vmax|fit-content|max-content|min-content|auto|stretch|available)$/, 'gi');\nfunction noop() {\n // noop\n}\nexports.noop = noop;\nfunction isFluidDimension(value) {\n let result = typeof value !== 'number';\n result = result && value !== undefined && fluidCheckRegexp.test(value);\n fluidCheckRegexp.lastIndex = 0;\n return result;\n}\nexports.isFluidDimension = isFluidDimension;\nfunction isFluid(smallImage) {\n const result = isFluidDimension(smallImage.height) && isFluidDimension(smallImage.width);\n return (smallImage.height === undefined || smallImage.width === undefined) || result;\n}\nexports.isFluid = isFluid;\nfunction styleToCssText(style) {\n return Object.entries(style).map(([k, v]) => `${k.replace(/[A-Z]/g, (match) => `-${match.toLowerCase()}`)}:${v}`).join(';');\n}\nexports.styleToCssText = styleToCssText;\nfunction capitalize(str) {\n return str.charAt(0).toUpperCase() + str.slice(1);\n}\nexports.capitalize = capitalize;\nfunction imageToStrictDimensions(imageProps, ref) {\n if (typeof imageProps.height === 'number' && typeof imageProps.width === 'number') {\n return {\n height: imageProps.height,\n width: imageProps.width,\n };\n }\n if (!(ref === null || ref === void 0 ? void 0 : ref.current)) {\n return {\n height: 0,\n width: 0,\n };\n }\n return {\n height: ref.current.offsetHeight,\n width: ref.current.offsetWidth,\n };\n}\nexports.imageToStrictDimensions = imageToStrictDimensions;\nfunction resolveSmallImage(smallImageProp, smallImageHeight, smallImageWidth) {\n const smallImage = Object.assign(Object.assign({}, smallImageProp), { height: smallImageHeight || smallImageProp.height || '100%', width: smallImageWidth || smallImageProp.width || '100%' });\n if (!smallImage.onLoad) {\n smallImage.onLoad = noop;\n }\n return smallImage;\n}\nexports.resolveSmallImage = resolveSmallImage;\nfunction setSmallImageDimensionState(img, setSmallImage, smallImageProp) {\n if (img) {\n const { naturalHeight, naturalWidth, offsetHeight, offsetWidth, } = img;\n const newSmallImage = resolveSmallImage(smallImageProp, isFluidDimension(smallImageProp.height) ? smallImageProp.height : offsetHeight || naturalHeight, isFluidDimension(smallImageProp.width) ? smallImageProp.width : offsetWidth || naturalWidth);\n setSmallImage(newSmallImage);\n }\n}\nexports.setSmallImageDimensionState = setSmallImageDimensionState;\n//# sourceMappingURL=index.js.map","var resizeObservers = [];\nexport { resizeObservers };\n","var ResizeObserverBoxOptions;\n(function (ResizeObserverBoxOptions) {\n ResizeObserverBoxOptions[\"BORDER_BOX\"] = \"border-box\";\n ResizeObserverBoxOptions[\"CONTENT_BOX\"] = \"content-box\";\n ResizeObserverBoxOptions[\"DEVICE_PIXEL_CONTENT_BOX\"] = \"device-pixel-content-box\";\n})(ResizeObserverBoxOptions || (ResizeObserverBoxOptions = {}));\nexport { ResizeObserverBoxOptions };\n","var msg = 'ResizeObserver loop completed with undelivered notifications.';\nvar deliverResizeLoopError = function () {\n var event;\n if (typeof ErrorEvent === 'function') {\n event = new ErrorEvent('error', {\n message: msg\n });\n }\n else {\n event = document.createEvent('Event');\n event.initEvent('error', false, false);\n event.message = msg;\n }\n window.dispatchEvent(event);\n};\nexport { deliverResizeLoopError };\n","export var freeze = function (obj) { return Object.freeze(obj); };\n","var trigger;\nvar callbacks = [];\nvar notify = function () { return callbacks.splice(0).forEach(function (cb) { return cb(); }); };\nvar queueMicroTask = function (callback) {\n if (!trigger) {\n var toggle_1 = 0;\n var el_1 = document.createTextNode('');\n var config = { characterData: true };\n new MutationObserver(function () { return notify(); }).observe(el_1, config);\n trigger = function () { el_1.textContent = \"\".concat(toggle_1 ? toggle_1-- : toggle_1++); };\n }\n callbacks.push(callback);\n trigger();\n};\nexport { queueMicroTask };\n","import { freeze } from './utils/freeze';\nvar ResizeObserverSize = (function () {\n function ResizeObserverSize(inlineSize, blockSize) {\n this.inlineSize = inlineSize;\n this.blockSize = blockSize;\n freeze(this);\n }\n return ResizeObserverSize;\n}());\nexport { ResizeObserverSize };\n","import { freeze } from './utils/freeze';\nvar DOMRectReadOnly = (function () {\n function DOMRectReadOnly(x, y, width, height) {\n this.x = x;\n this.y = y;\n this.width = width;\n this.height = height;\n this.top = this.y;\n this.left = this.x;\n this.bottom = this.top + this.height;\n this.right = this.left + this.width;\n return freeze(this);\n }\n DOMRectReadOnly.prototype.toJSON = function () {\n var _a = this, x = _a.x, y = _a.y, top = _a.top, right = _a.right, bottom = _a.bottom, left = _a.left, width = _a.width, height = _a.height;\n return { x: x, y: y, top: top, right: right, bottom: bottom, left: left, width: width, height: height };\n };\n DOMRectReadOnly.fromRect = function (rectangle) {\n return new DOMRectReadOnly(rectangle.x, rectangle.y, rectangle.width, rectangle.height);\n };\n return DOMRectReadOnly;\n}());\nexport { DOMRectReadOnly };\n","var isSVG = function (target) { return target instanceof SVGElement && 'getBBox' in target; };\nvar isHidden = function (target) {\n if (isSVG(target)) {\n var _a = target.getBBox(), width = _a.width, height = _a.height;\n return !width && !height;\n }\n var _b = target, offsetWidth = _b.offsetWidth, offsetHeight = _b.offsetHeight;\n return !(offsetWidth || offsetHeight || target.getClientRects().length);\n};\nvar isElement = function (obj) {\n var _a;\n if (obj instanceof Element) {\n return true;\n }\n var scope = (_a = obj === null || obj === void 0 ? void 0 : obj.ownerDocument) === null || _a === void 0 ? void 0 : _a.defaultView;\n return !!(scope && obj instanceof scope.Element);\n};\nvar isReplacedElement = function (target) {\n switch (target.tagName) {\n case 'INPUT':\n if (target.type !== 'image') {\n break;\n }\n case 'VIDEO':\n case 'AUDIO':\n case 'EMBED':\n case 'OBJECT':\n case 'CANVAS':\n case 'IFRAME':\n case 'IMG':\n return true;\n }\n return false;\n};\nexport { isSVG, isHidden, isElement, isReplacedElement };\n","export var global = typeof window !== 'undefined' ? window : {};\n","import { ResizeObserverBoxOptions } from '../ResizeObserverBoxOptions';\nimport { ResizeObserverSize } from '../ResizeObserverSize';\nimport { DOMRectReadOnly } from '../DOMRectReadOnly';\nimport { isSVG, isHidden } from '../utils/element';\nimport { freeze } from '../utils/freeze';\nimport { global } from '../utils/global';\nvar cache = new WeakMap();\nvar scrollRegexp = /auto|scroll/;\nvar verticalRegexp = /^tb|vertical/;\nvar IE = (/msie|trident/i).test(global.navigator && global.navigator.userAgent);\nvar parseDimension = function (pixel) { return parseFloat(pixel || '0'); };\nvar size = function (inlineSize, blockSize, switchSizes) {\n if (inlineSize === void 0) { inlineSize = 0; }\n if (blockSize === void 0) { blockSize = 0; }\n if (switchSizes === void 0) { switchSizes = false; }\n return new ResizeObserverSize((switchSizes ? blockSize : inlineSize) || 0, (switchSizes ? inlineSize : blockSize) || 0);\n};\nvar zeroBoxes = freeze({\n devicePixelContentBoxSize: size(),\n borderBoxSize: size(),\n contentBoxSize: size(),\n contentRect: new DOMRectReadOnly(0, 0, 0, 0)\n});\nvar calculateBoxSizes = function (target, forceRecalculation) {\n if (forceRecalculation === void 0) { forceRecalculation = false; }\n if (cache.has(target) && !forceRecalculation) {\n return cache.get(target);\n }\n if (isHidden(target)) {\n cache.set(target, zeroBoxes);\n return zeroBoxes;\n }\n var cs = getComputedStyle(target);\n var svg = isSVG(target) && target.ownerSVGElement && target.getBBox();\n var removePadding = !IE && cs.boxSizing === 'border-box';\n var switchSizes = verticalRegexp.test(cs.writingMode || '');\n var canScrollVertically = !svg && scrollRegexp.test(cs.overflowY || '');\n var canScrollHorizontally = !svg && scrollRegexp.test(cs.overflowX || '');\n var paddingTop = svg ? 0 : parseDimension(cs.paddingTop);\n var paddingRight = svg ? 0 : parseDimension(cs.paddingRight);\n var paddingBottom = svg ? 0 : parseDimension(cs.paddingBottom);\n var paddingLeft = svg ? 0 : parseDimension(cs.paddingLeft);\n var borderTop = svg ? 0 : parseDimension(cs.borderTopWidth);\n var borderRight = svg ? 0 : parseDimension(cs.borderRightWidth);\n var borderBottom = svg ? 0 : parseDimension(cs.borderBottomWidth);\n var borderLeft = svg ? 0 : parseDimension(cs.borderLeftWidth);\n var horizontalPadding = paddingLeft + paddingRight;\n var verticalPadding = paddingTop + paddingBottom;\n var horizontalBorderArea = borderLeft + borderRight;\n var verticalBorderArea = borderTop + borderBottom;\n var horizontalScrollbarThickness = !canScrollHorizontally ? 0 : target.offsetHeight - verticalBorderArea - target.clientHeight;\n var verticalScrollbarThickness = !canScrollVertically ? 0 : target.offsetWidth - horizontalBorderArea - target.clientWidth;\n var widthReduction = removePadding ? horizontalPadding + horizontalBorderArea : 0;\n var heightReduction = removePadding ? verticalPadding + verticalBorderArea : 0;\n var contentWidth = svg ? svg.width : parseDimension(cs.width) - widthReduction - verticalScrollbarThickness;\n var contentHeight = svg ? svg.height : parseDimension(cs.height) - heightReduction - horizontalScrollbarThickness;\n var borderBoxWidth = contentWidth + horizontalPadding + verticalScrollbarThickness + horizontalBorderArea;\n var borderBoxHeight = contentHeight + verticalPadding + horizontalScrollbarThickness + verticalBorderArea;\n var boxes = freeze({\n devicePixelContentBoxSize: size(Math.round(contentWidth * devicePixelRatio), Math.round(contentHeight * devicePixelRatio), switchSizes),\n borderBoxSize: size(borderBoxWidth, borderBoxHeight, switchSizes),\n contentBoxSize: size(contentWidth, contentHeight, switchSizes),\n contentRect: new DOMRectReadOnly(paddingLeft, paddingTop, contentWidth, contentHeight)\n });\n cache.set(target, boxes);\n return boxes;\n};\nvar calculateBoxSize = function (target, observedBox, forceRecalculation) {\n var _a = calculateBoxSizes(target, forceRecalculation), borderBoxSize = _a.borderBoxSize, contentBoxSize = _a.contentBoxSize, devicePixelContentBoxSize = _a.devicePixelContentBoxSize;\n switch (observedBox) {\n case ResizeObserverBoxOptions.DEVICE_PIXEL_CONTENT_BOX:\n return devicePixelContentBoxSize;\n case ResizeObserverBoxOptions.BORDER_BOX:\n return borderBoxSize;\n default:\n return contentBoxSize;\n }\n};\nexport { calculateBoxSize, calculateBoxSizes };\n","import { calculateBoxSizes } from './algorithms/calculateBoxSize';\nimport { freeze } from './utils/freeze';\nvar ResizeObserverEntry = (function () {\n function ResizeObserverEntry(target) {\n var boxes = calculateBoxSizes(target);\n this.target = target;\n this.contentRect = boxes.contentRect;\n this.borderBoxSize = freeze([boxes.borderBoxSize]);\n this.contentBoxSize = freeze([boxes.contentBoxSize]);\n this.devicePixelContentBoxSize = freeze([boxes.devicePixelContentBoxSize]);\n }\n return ResizeObserverEntry;\n}());\nexport { ResizeObserverEntry };\n","import { isHidden } from '../utils/element';\nvar calculateDepthForNode = function (node) {\n if (isHidden(node)) {\n return Infinity;\n }\n var depth = 0;\n var parent = node.parentNode;\n while (parent) {\n depth += 1;\n parent = parent.parentNode;\n }\n return depth;\n};\nexport { calculateDepthForNode };\n","import { resizeObservers } from '../utils/resizeObservers';\nimport { ResizeObserverEntry } from '../ResizeObserverEntry';\nimport { calculateDepthForNode } from './calculateDepthForNode';\nimport { calculateBoxSize } from './calculateBoxSize';\nvar broadcastActiveObservations = function () {\n var shallowestDepth = Infinity;\n var callbacks = [];\n resizeObservers.forEach(function processObserver(ro) {\n if (ro.activeTargets.length === 0) {\n return;\n }\n var entries = [];\n ro.activeTargets.forEach(function processTarget(ot) {\n var entry = new ResizeObserverEntry(ot.target);\n var targetDepth = calculateDepthForNode(ot.target);\n entries.push(entry);\n ot.lastReportedSize = calculateBoxSize(ot.target, ot.observedBox);\n if (targetDepth < shallowestDepth) {\n shallowestDepth = targetDepth;\n }\n });\n callbacks.push(function resizeObserverCallback() {\n ro.callback.call(ro.observer, entries, ro.observer);\n });\n ro.activeTargets.splice(0, ro.activeTargets.length);\n });\n for (var _i = 0, callbacks_1 = callbacks; _i < callbacks_1.length; _i++) {\n var callback = callbacks_1[_i];\n callback();\n }\n return shallowestDepth;\n};\nexport { broadcastActiveObservations };\n","import { resizeObservers } from '../utils/resizeObservers';\nimport { calculateDepthForNode } from './calculateDepthForNode';\nvar gatherActiveObservationsAtDepth = function (depth) {\n resizeObservers.forEach(function processObserver(ro) {\n ro.activeTargets.splice(0, ro.activeTargets.length);\n ro.skippedTargets.splice(0, ro.skippedTargets.length);\n ro.observationTargets.forEach(function processTarget(ot) {\n if (ot.isActive()) {\n if (calculateDepthForNode(ot.target) > depth) {\n ro.activeTargets.push(ot);\n }\n else {\n ro.skippedTargets.push(ot);\n }\n }\n });\n });\n};\nexport { gatherActiveObservationsAtDepth };\n","import { hasActiveObservations } from '../algorithms/hasActiveObservations';\nimport { hasSkippedObservations } from '../algorithms/hasSkippedObservations';\nimport { deliverResizeLoopError } from '../algorithms/deliverResizeLoopError';\nimport { broadcastActiveObservations } from '../algorithms/broadcastActiveObservations';\nimport { gatherActiveObservationsAtDepth } from '../algorithms/gatherActiveObservationsAtDepth';\nvar process = function () {\n var depth = 0;\n gatherActiveObservationsAtDepth(depth);\n while (hasActiveObservations()) {\n depth = broadcastActiveObservations();\n gatherActiveObservationsAtDepth(depth);\n }\n if (hasSkippedObservations()) {\n deliverResizeLoopError();\n }\n return depth > 0;\n};\nexport { process };\n","import { resizeObservers } from '../utils/resizeObservers';\nvar hasActiveObservations = function () {\n return resizeObservers.some(function (ro) { return ro.activeTargets.length > 0; });\n};\nexport { hasActiveObservations };\n","import { resizeObservers } from '../utils/resizeObservers';\nvar hasSkippedObservations = function () {\n return resizeObservers.some(function (ro) { return ro.skippedTargets.length > 0; });\n};\nexport { hasSkippedObservations };\n","import { process } from './process';\nimport { global } from './global';\nimport { queueResizeObserver } from './queueResizeObserver';\nvar watching = 0;\nvar isWatching = function () { return !!watching; };\nvar CATCH_PERIOD = 250;\nvar observerConfig = { attributes: true, characterData: true, childList: true, subtree: true };\nvar events = [\n 'resize',\n 'load',\n 'transitionend',\n 'animationend',\n 'animationstart',\n 'animationiteration',\n 'keyup',\n 'keydown',\n 'mouseup',\n 'mousedown',\n 'mouseover',\n 'mouseout',\n 'blur',\n 'focus'\n];\nvar time = function (timeout) {\n if (timeout === void 0) { timeout = 0; }\n return Date.now() + timeout;\n};\nvar scheduled = false;\nvar Scheduler = (function () {\n function Scheduler() {\n var _this = this;\n this.stopped = true;\n this.listener = function () { return _this.schedule(); };\n }\n Scheduler.prototype.run = function (timeout) {\n var _this = this;\n if (timeout === void 0) { timeout = CATCH_PERIOD; }\n if (scheduled) {\n return;\n }\n scheduled = true;\n var until = time(timeout);\n queueResizeObserver(function () {\n var elementsHaveResized = false;\n try {\n elementsHaveResized = process();\n }\n finally {\n scheduled = false;\n timeout = until - time();\n if (!isWatching()) {\n return;\n }\n if (elementsHaveResized) {\n _this.run(1000);\n }\n else if (timeout > 0) {\n _this.run(timeout);\n }\n else {\n _this.start();\n }\n }\n });\n };\n Scheduler.prototype.schedule = function () {\n this.stop();\n this.run();\n };\n Scheduler.prototype.observe = function () {\n var _this = this;\n var cb = function () { return _this.observer && _this.observer.observe(document.body, observerConfig); };\n document.body ? cb() : global.addEventListener('DOMContentLoaded', cb);\n };\n Scheduler.prototype.start = function () {\n var _this = this;\n if (this.stopped) {\n this.stopped = false;\n this.observer = new MutationObserver(this.listener);\n this.observe();\n events.forEach(function (name) { return global.addEventListener(name, _this.listener, true); });\n }\n };\n Scheduler.prototype.stop = function () {\n var _this = this;\n if (!this.stopped) {\n this.observer && this.observer.disconnect();\n events.forEach(function (name) { return global.removeEventListener(name, _this.listener, true); });\n this.stopped = true;\n }\n };\n return Scheduler;\n}());\nvar scheduler = new Scheduler();\nvar updateCount = function (n) {\n !watching && n > 0 && scheduler.start();\n watching += n;\n !watching && scheduler.stop();\n};\nexport { scheduler, updateCount };\n","import { queueMicroTask } from './queueMicroTask';\nvar queueResizeObserver = function (cb) {\n queueMicroTask(function ResizeObserver() {\n requestAnimationFrame(cb);\n });\n};\nexport { queueResizeObserver };\n","import { ResizeObserverBoxOptions } from './ResizeObserverBoxOptions';\nimport { calculateBoxSize } from './algorithms/calculateBoxSize';\nimport { isSVG, isReplacedElement } from './utils/element';\nvar skipNotifyOnElement = function (target) {\n return !isSVG(target)\n && !isReplacedElement(target)\n && getComputedStyle(target).display === 'inline';\n};\nvar ResizeObservation = (function () {\n function ResizeObservation(target, observedBox) {\n this.target = target;\n this.observedBox = observedBox || ResizeObserverBoxOptions.CONTENT_BOX;\n this.lastReportedSize = {\n inlineSize: 0,\n blockSize: 0\n };\n }\n ResizeObservation.prototype.isActive = function () {\n var size = calculateBoxSize(this.target, this.observedBox, true);\n if (skipNotifyOnElement(this.target)) {\n this.lastReportedSize = size;\n }\n if (this.lastReportedSize.inlineSize !== size.inlineSize\n || this.lastReportedSize.blockSize !== size.blockSize) {\n return true;\n }\n return false;\n };\n return ResizeObservation;\n}());\nexport { ResizeObservation };\n","var ResizeObserverDetail = (function () {\n function ResizeObserverDetail(resizeObserver, callback) {\n this.activeTargets = [];\n this.skippedTargets = [];\n this.observationTargets = [];\n this.observer = resizeObserver;\n this.callback = callback;\n }\n return ResizeObserverDetail;\n}());\nexport { ResizeObserverDetail };\n","import { scheduler, updateCount } from './utils/scheduler';\nimport { ResizeObservation } from './ResizeObservation';\nimport { ResizeObserverDetail } from './ResizeObserverDetail';\nimport { resizeObservers } from './utils/resizeObservers';\nvar observerMap = new WeakMap();\nvar getObservationIndex = function (observationTargets, target) {\n for (var i = 0; i < observationTargets.length; i += 1) {\n if (observationTargets[i].target === target) {\n return i;\n }\n }\n return -1;\n};\nvar ResizeObserverController = (function () {\n function ResizeObserverController() {\n }\n ResizeObserverController.connect = function (resizeObserver, callback) {\n var detail = new ResizeObserverDetail(resizeObserver, callback);\n observerMap.set(resizeObserver, detail);\n };\n ResizeObserverController.observe = function (resizeObserver, target, options) {\n var detail = observerMap.get(resizeObserver);\n var firstObservation = detail.observationTargets.length === 0;\n if (getObservationIndex(detail.observationTargets, target) < 0) {\n firstObservation && resizeObservers.push(detail);\n detail.observationTargets.push(new ResizeObservation(target, options && options.box));\n updateCount(1);\n scheduler.schedule();\n }\n };\n ResizeObserverController.unobserve = function (resizeObserver, target) {\n var detail = observerMap.get(resizeObserver);\n var index = getObservationIndex(detail.observationTargets, target);\n var lastObservation = detail.observationTargets.length === 1;\n if (index >= 0) {\n lastObservation && resizeObservers.splice(resizeObservers.indexOf(detail), 1);\n detail.observationTargets.splice(index, 1);\n updateCount(-1);\n }\n };\n ResizeObserverController.disconnect = function (resizeObserver) {\n var _this = this;\n var detail = observerMap.get(resizeObserver);\n detail.observationTargets.slice().forEach(function (ot) { return _this.unobserve(resizeObserver, ot.target); });\n detail.activeTargets.splice(0, detail.activeTargets.length);\n };\n return ResizeObserverController;\n}());\nexport { ResizeObserverController };\n","import { ResizeObserverController } from './ResizeObserverController';\nimport { isElement } from './utils/element';\nvar ResizeObserver = (function () {\n function ResizeObserver(callback) {\n if (arguments.length === 0) {\n throw new TypeError(\"Failed to construct 'ResizeObserver': 1 argument required, but only 0 present.\");\n }\n if (typeof callback !== 'function') {\n throw new TypeError(\"Failed to construct 'ResizeObserver': The callback provided as parameter 1 is not a function.\");\n }\n ResizeObserverController.connect(this, callback);\n }\n ResizeObserver.prototype.observe = function (target, options) {\n if (arguments.length === 0) {\n throw new TypeError(\"Failed to execute 'observe' on 'ResizeObserver': 1 argument required, but only 0 present.\");\n }\n if (!isElement(target)) {\n throw new TypeError(\"Failed to execute 'observe' on 'ResizeObserver': parameter 1 is not of type 'Element\");\n }\n ResizeObserverController.observe(this, target, options);\n };\n ResizeObserver.prototype.unobserve = function (target) {\n if (arguments.length === 0) {\n throw new TypeError(\"Failed to execute 'unobserve' on 'ResizeObserver': 1 argument required, but only 0 present.\");\n }\n if (!isElement(target)) {\n throw new TypeError(\"Failed to execute 'unobserve' on 'ResizeObserver': parameter 1 is not of type 'Element\");\n }\n ResizeObserverController.unobserve(this, target);\n };\n ResizeObserver.prototype.disconnect = function () {\n ResizeObserverController.disconnect(this);\n };\n ResizeObserver.toString = function () {\n return 'function ResizeObserver () { [polyfill code] }';\n };\n return ResizeObserver;\n}());\nexport { ResizeObserver };\n","import React from 'react';\nconst usePassiveLayoutEffect = React[typeof document !== 'undefined' && document.createElement !== void 0 ? 'useLayoutEffect' : 'useEffect'];\nexport default usePassiveLayoutEffect;","import * as React from 'react';\n\nconst useLatest = current => {\n const storedValue = React.useRef(current);\n React.useEffect(() => {\n storedValue.current = current;\n });\n return storedValue;\n};\n\nexport default useLatest;","/* eslint-disable no-return-assign */\n\n/* eslint-disable no-underscore-dangle */\nimport { ResizeObserver as Polyfill } from '@juggle/resize-observer';\nimport useLayoutEffect from '@react-hook/passive-layout-effect';\nimport useLatest from '@react-hook/latest';\nconst ResizeObserver = typeof window !== 'undefined' && 'ResizeObserver' in window ? // @ts-ignore\nwindow.ResizeObserver : Polyfill;\n/**\n * A React hook that fires a callback whenever ResizeObserver detects a change to its size\n *\n * @param target A React ref created by `useRef()` or an HTML element\n * @param callback Invoked with a single `ResizeObserverEntry` any time\n * the `target` resizes\n */\n\nfunction _ref() {}\n\nfunction useResizeObserver(target, callback) {\n const resizeObserver = getResizeObserver();\n const storedCallback = useLatest(callback);\n useLayoutEffect(() => {\n let didUnsubscribe = false;\n const targetEl = target && 'current' in target ? target.current : target;\n if (!targetEl) return _ref;\n\n function cb(entry, observer) {\n if (didUnsubscribe) return;\n storedCallback.current(entry, observer);\n }\n\n resizeObserver.subscribe(targetEl, cb);\n return () => {\n didUnsubscribe = true;\n resizeObserver.unsubscribe(targetEl, cb);\n };\n }, [target, resizeObserver, storedCallback]);\n return resizeObserver.observer;\n}\n\nfunction createResizeObserver() {\n let ticking = false;\n let allEntries = [];\n const callbacks = new Map();\n const observer = new ResizeObserver((entries, obs) => {\n allEntries = allEntries.concat(entries);\n\n function _ref2() {\n const triggered = new Set();\n\n for (let i = 0; i < allEntries.length; i++) {\n if (triggered.has(allEntries[i].target)) continue;\n triggered.add(allEntries[i].target);\n const cbs = callbacks.get(allEntries[i].target);\n cbs === null || cbs === void 0 ? void 0 : cbs.forEach(cb => cb(allEntries[i], obs));\n }\n\n allEntries = [];\n ticking = false;\n }\n\n if (!ticking) {\n window.requestAnimationFrame(_ref2);\n }\n\n ticking = true;\n });\n return {\n observer,\n\n subscribe(target, callback) {\n var _callbacks$get;\n\n observer.observe(target);\n const cbs = (_callbacks$get = callbacks.get(target)) !== null && _callbacks$get !== void 0 ? _callbacks$get : [];\n cbs.push(callback);\n callbacks.set(target, cbs);\n },\n\n unsubscribe(target, callback) {\n var _callbacks$get2;\n\n const cbs = (_callbacks$get2 = callbacks.get(target)) !== null && _callbacks$get2 !== void 0 ? _callbacks$get2 : [];\n\n if (cbs.length === 1) {\n observer.unobserve(target);\n callbacks.delete(target);\n return;\n }\n\n const cbIndex = cbs.indexOf(callback);\n if (cbIndex !== -1) cbs.splice(cbIndex, 1);\n callbacks.set(target, cbs);\n }\n\n };\n}\n\nlet _resizeObserver;\n\nconst getResizeObserver = () => !_resizeObserver ? _resizeObserver = createResizeObserver() : _resizeObserver;\n\nexport default useResizeObserver;","// so it doesn't throw if no window or matchMedia\r\nvar w = typeof window !== 'undefined' ? window : { screen: {}, navigator: {} };\r\nvar matchMedia = (w.matchMedia || (function () { return ({ matches: false }); })).bind(w);\r\n// passive events test\r\n// adapted from https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md\r\nvar passiveOptionAccessed = false;\r\nvar options = {\r\n get passive() {\r\n return (passiveOptionAccessed = true);\r\n },\r\n};\r\n// have to set and remove a no-op listener instead of null\r\n// (which was used previously), because Edge v15 throws an error\r\n// when providing a null callback.\r\n// https://github.com/rafgraph/detect-passive-events/pull/3\r\n// eslint-disable-next-line @typescript-eslint/no-empty-function\r\nvar noop = function () { };\r\nw.addEventListener && w.addEventListener('p', noop, options);\r\nw.removeEventListener && w.removeEventListener('p', noop, false);\r\nvar supportsPassiveEvents = passiveOptionAccessed;\r\nvar supportsPointerEvents = 'PointerEvent' in w;\r\nvar onTouchStartInWindow = 'ontouchstart' in w;\r\nvar touchEventInWindow = 'TouchEvent' in w;\r\n// onTouchStartInWindow is the old-old-legacy way to determine a touch device\r\n// and many websites interpreted it to mean that the device is a touch only phone,\r\n// so today browsers on a desktop/laptop computer with a touch screen (primary input mouse)\r\n// have onTouchStartInWindow as false (to prevent from being confused with a\r\n// touchOnly phone) even though they support the TouchEvents API, so need to check\r\n// both onTouchStartInWindow and touchEventInWindow for TouchEvent support,\r\n// however, some browsers (chromium) support the TouchEvents API even when running on\r\n// a mouse only device (touchEventInWindow true, but onTouchStartInWindow false)\r\n// so the touchEventInWindow check needs to include an coarse pointer media query\r\nvar supportsTouchEvents = onTouchStartInWindow ||\r\n (touchEventInWindow && matchMedia('(any-pointer: coarse)').matches);\r\nvar hasTouch = (w.navigator.maxTouchPoints || 0) > 0 || supportsTouchEvents;\r\n// userAgent is used as a backup to correct for known device/browser bugs\r\n// and when the browser doesn't support interaction media queries (pointer and hover)\r\n// see https://caniuse.com/css-media-interaction\r\nvar userAgent = w.navigator.userAgent || '';\r\n// iPads now support a mouse that can hover, however the media query interaction\r\n// feature results always say iPads only have a coarse pointer that can't hover\r\n// even when a mouse is connected (anyFine and anyHover are always false),\r\n// this unfortunately indicates a touch only device but iPads should\r\n// be classified as a hybrid device, so determine if it is an iPad\r\n// to indicate it should be treated as a hybrid device with anyHover true\r\nvar isIPad = matchMedia('(pointer: coarse)').matches &&\r\n // both iPad and iPhone can \"request desktop site\", which sets the userAgent to Macintosh\r\n // so need to check both userAgents to determine if it is an iOS device\r\n // and screen size to separate iPad from iPhone\r\n /iPad|Macintosh/.test(userAgent) &&\r\n Math.min(w.screen.width || 0, w.screen.height || 0) >= 768;\r\nvar hasCoarsePrimaryPointer = (matchMedia('(pointer: coarse)').matches ||\r\n // if the pointer is not coarse and not fine then the browser doesn't support\r\n // interaction media queries (see https://caniuse.com/css-media-interaction)\r\n // so if it has onTouchStartInWindow assume it has a coarse primary pointer\r\n (!matchMedia('(pointer: fine)').matches && onTouchStartInWindow)) &&\r\n // bug in firefox (as of v81) on hybrid windows devices where the interaction media queries\r\n // always indicate a touch only device (only has a coarse pointer that can't hover)\r\n // so assume that the primary pointer is not coarse for firefox windows\r\n !/Windows.*Firefox/.test(userAgent);\r\nvar hasAnyHoverOrAnyFinePointer = matchMedia('(any-pointer: fine)').matches ||\r\n matchMedia('(any-hover: hover)').matches ||\r\n // iPads might have an input device that can hover, so assume it has anyHover\r\n isIPad ||\r\n // if no onTouchStartInWindow then the browser is indicating that it is not a touch only device\r\n // see above note for supportsTouchEvents\r\n !onTouchStartInWindow;\r\n// a hybrid device is one that both hasTouch and\r\n// any input can hover or has a fine pointer, or the primary pointer is not coarse\r\n// if it's not a hybrid, then if it hasTouch it's touchOnly, otherwise it's mouseOnly\r\nvar deviceType = hasTouch && (hasAnyHoverOrAnyFinePointer || !hasCoarsePrimaryPointer)\r\n ? 'hybrid'\r\n : hasTouch\r\n ? 'touchOnly'\r\n : 'mouseOnly';\r\nvar primaryInput = deviceType === 'mouseOnly'\r\n ? 'mouse'\r\n : deviceType === 'touchOnly'\r\n ? 'touch'\r\n : // if the device is a hybrid, then if the primary pointer is coarse\r\n // assume the primaryInput is touch, otherwise assume it's mouse\r\n hasCoarsePrimaryPointer\r\n ? 'touch'\r\n : 'mouse';\n\nexport { deviceType, primaryInput, supportsPassiveEvents, supportsPointerEvents, supportsTouchEvents };\n//# sourceMappingURL=detect-it.esm.js.map\n","import * as React from 'react';\nexport var ManagerReferenceNodeContext = React.createContext();\nexport var ManagerReferenceNodeSetterContext = React.createContext();\nexport function Manager(_ref) {\n var children = _ref.children;\n\n var _React$useState = React.useState(null),\n referenceNode = _React$useState[0],\n setReferenceNode = _React$useState[1];\n\n var hasUnmounted = React.useRef(false);\n React.useEffect(function () {\n return function () {\n hasUnmounted.current = true;\n };\n }, []);\n var handleSetReferenceNode = React.useCallback(function (node) {\n if (!hasUnmounted.current) {\n setReferenceNode(node);\n }\n }, []);\n return /*#__PURE__*/React.createElement(ManagerReferenceNodeContext.Provider, {\n value: referenceNode\n }, /*#__PURE__*/React.createElement(ManagerReferenceNodeSetterContext.Provider, {\n value: handleSetReferenceNode\n }, children));\n}","import * as React from 'react';\nimport { ManagerReferenceNodeContext } from './Manager';\nimport { unwrapArray, setRef } from './utils';\nimport { usePopper } from './usePopper';\n\nvar NOOP = function NOOP() {\n return void 0;\n};\n\nvar NOOP_PROMISE = function NOOP_PROMISE() {\n return Promise.resolve(null);\n};\n\nvar EMPTY_MODIFIERS = [];\nexport function Popper(_ref) {\n var _ref$placement = _ref.placement,\n placement = _ref$placement === void 0 ? 'bottom' : _ref$placement,\n _ref$strategy = _ref.strategy,\n strategy = _ref$strategy === void 0 ? 'absolute' : _ref$strategy,\n _ref$modifiers = _ref.modifiers,\n modifiers = _ref$modifiers === void 0 ? EMPTY_MODIFIERS : _ref$modifiers,\n referenceElement = _ref.referenceElement,\n onFirstUpdate = _ref.onFirstUpdate,\n innerRef = _ref.innerRef,\n children = _ref.children;\n var referenceNode = React.useContext(ManagerReferenceNodeContext);\n\n var _React$useState = React.useState(null),\n popperElement = _React$useState[0],\n setPopperElement = _React$useState[1];\n\n var _React$useState2 = React.useState(null),\n arrowElement = _React$useState2[0],\n setArrowElement = _React$useState2[1];\n\n React.useEffect(function () {\n setRef(innerRef, popperElement);\n }, [innerRef, popperElement]);\n var options = React.useMemo(function () {\n return {\n placement: placement,\n strategy: strategy,\n onFirstUpdate: onFirstUpdate,\n modifiers: [].concat(modifiers, [{\n name: 'arrow',\n enabled: arrowElement != null,\n options: {\n element: arrowElement\n }\n }])\n };\n }, [placement, strategy, onFirstUpdate, modifiers, arrowElement]);\n\n var _usePopper = usePopper(referenceElement || referenceNode, popperElement, options),\n state = _usePopper.state,\n styles = _usePopper.styles,\n forceUpdate = _usePopper.forceUpdate,\n update = _usePopper.update;\n\n var childrenProps = React.useMemo(function () {\n return {\n ref: setPopperElement,\n style: styles.popper,\n placement: state ? state.placement : placement,\n hasPopperEscaped: state && state.modifiersData.hide ? state.modifiersData.hide.hasPopperEscaped : null,\n isReferenceHidden: state && state.modifiersData.hide ? state.modifiersData.hide.isReferenceHidden : null,\n arrowProps: {\n style: styles.arrow,\n ref: setArrowElement\n },\n forceUpdate: forceUpdate || NOOP,\n update: update || NOOP_PROMISE\n };\n }, [setPopperElement, setArrowElement, placement, state, styles, update, forceUpdate]);\n return unwrapArray(children)(childrenProps);\n}","import * as React from 'react';\nimport warning from 'warning';\nimport { ManagerReferenceNodeSetterContext } from './Manager';\nimport { safeInvoke, unwrapArray, setRef } from './utils';\nexport function Reference(_ref) {\n var children = _ref.children,\n innerRef = _ref.innerRef;\n var setReferenceNode = React.useContext(ManagerReferenceNodeSetterContext);\n var refHandler = React.useCallback(function (node) {\n setRef(innerRef, node);\n safeInvoke(setReferenceNode, node);\n }, [innerRef, setReferenceNode]); // ran on unmount\n // eslint-disable-next-line react-hooks/exhaustive-deps\n\n React.useEffect(function () {\n return function () {\n return setRef(innerRef, null);\n };\n }, []);\n React.useEffect(function () {\n warning(Boolean(setReferenceNode), '`Reference` should not be used outside of a `Manager` component.');\n }, [setReferenceNode]);\n return unwrapArray(children)({\n ref: refHandler\n });\n}","/**\n * @license React\n * react-jsx-runtime.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var f=require(\"react\"),k=Symbol.for(\"react.element\"),l=Symbol.for(\"react.fragment\"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0};\nfunction q(c,a,g){var b,d={},e=null,h=null;void 0!==g&&(e=\"\"+g);void 0!==a.key&&(e=\"\"+a.key);void 0!==a.ref&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)void 0===d[b]&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}exports.Fragment=l;exports.jsx=q;exports.jsxs=q;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.min.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar __DEV__ = process.env.NODE_ENV !== 'production';\n\nvar warning = function() {};\n\nif (__DEV__) {\n var printWarning = function printWarning(format, args) {\n var len = arguments.length;\n args = new Array(len > 1 ? len - 1 : 0);\n for (var key = 1; key < len; key++) {\n args[key - 1] = arguments[key];\n }\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n }\n\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n if (!condition) {\n printWarning.apply(null, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n","import Symbol from './_Symbol.js';\nimport isArguments from './isArguments.js';\nimport isArray from './isArray.js';\n\n/** Built-in value references. */\nvar spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined;\n\n/**\n * Checks if `value` is a flattenable `arguments` object or array.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is flattenable, else `false`.\n */\nfunction isFlattenable(value) {\n return isArray(value) || isArguments(value) ||\n !!(spreadableSymbol && value && value[spreadableSymbol]);\n}\n\nexport default isFlattenable;\n","import arrayPush from './_arrayPush.js';\nimport isFlattenable from './_isFlattenable.js';\n\n/**\n * The base implementation of `_.flatten` with support for restricting flattening.\n *\n * @private\n * @param {Array} array The array to flatten.\n * @param {number} depth The maximum recursion depth.\n * @param {boolean} [predicate=isFlattenable] The function invoked per iteration.\n * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks.\n * @param {Array} [result=[]] The initial result value.\n * @returns {Array} Returns the new flattened array.\n */\nfunction baseFlatten(array, depth, predicate, isStrict, result) {\n var index = -1,\n length = array.length;\n\n predicate || (predicate = isFlattenable);\n result || (result = []);\n\n while (++index < length) {\n var value = array[index];\n if (depth > 0 && predicate(value)) {\n if (depth > 1) {\n // Recursively flatten arrays (susceptible to call stack limits).\n baseFlatten(value, depth - 1, predicate, isStrict, result);\n } else {\n arrayPush(result, value);\n }\n } else if (!isStrict) {\n result[result.length] = value;\n }\n }\n return result;\n}\n\nexport default baseFlatten;\n","/**\n * Creates an array with all falsey values removed. The values `false`, `null`,\n * `0`, `\"\"`, `undefined`, and `NaN` are falsey.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to compact.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.compact([0, 1, false, 2, '', 3]);\n * // => [1, 2, 3]\n */\nfunction compact(array) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (value) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nexport default compact;\n","import baseEach from './_baseEach.js';\n\n/**\n * The base implementation of `_.filter` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction baseFilter(collection, predicate) {\n var result = [];\n baseEach(collection, function(value, index, collection) {\n if (predicate(value, index, collection)) {\n result.push(value);\n }\n });\n return result;\n}\n\nexport default baseFilter;\n","import arrayFilter from './_arrayFilter.js';\nimport baseFilter from './_baseFilter.js';\nimport baseIteratee from './_baseIteratee.js';\nimport isArray from './isArray.js';\n\n/**\n * Iterates over elements of `collection`, returning an array of all elements\n * `predicate` returns truthy for. The predicate is invoked with three\n * arguments: (value, index|key, collection).\n *\n * **Note:** Unlike `_.remove`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n * @see _.reject\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': true },\n * { 'user': 'fred', 'age': 40, 'active': false }\n * ];\n *\n * _.filter(users, function(o) { return !o.active; });\n * // => objects for ['fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.filter(users, { 'age': 36, 'active': true });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.filter(users, ['active', false]);\n * // => objects for ['fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.filter(users, 'active');\n * // => objects for ['barney']\n *\n * // Combining several predicates using `_.overEvery` or `_.overSome`.\n * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]]));\n * // => objects for ['fred', 'barney']\n */\nfunction filter(collection, predicate) {\n var func = isArray(collection) ? arrayFilter : baseFilter;\n return func(collection, baseIteratee(predicate, 3));\n}\n\nexport default filter;\n","import baseFlatten from './_baseFlatten.js';\n\n/**\n * Flattens `array` a single level deep.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * _.flatten([1, [2, [3, [4]], 5]]);\n * // => [1, 2, [3, [4]], 5]\n */\nfunction flatten(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseFlatten(array, 1) : [];\n}\n\nexport default flatten;\n"],"names":["ReactImageMagnify_1","exports","ReactImageMagnify","__rest","this","s","e","t","p","Object","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","i","length","propertyIsEnumerable","__importDefault","mod","__esModule","defineProperty","value","CursorPosition","jsx_runtime_1","react_1","resize_observer_1","constants_1","utils_1","TouchActivation_1","HoverActivation_1","ClickActivation_1","TapActivation_1","PressActivation_1","RelativeCursorPositionObserver_1","getTouchActivationStrategy","interaction","onIsActiveChanged","pressDurationInMs","pressMoveThreshold","tapDurationInMs","tapMoveThreshold","touch","tap","press","INTERACTIONS","PressActivation","TapActivation","TouchActivation","Error","getMouseActivationStrategy","hoverDelayInMs","hoverOffDelayInMs","hover","click","HoverActivation","ClickActivation","getTouchEvent","touches","props","activationInteractionMouse","activationInteractionTouch","children","isEnabled","onActivationChanged","noop","onDetectedEnvironmentChanged","onOutsideClick","onPositionChanged","onPositionChangedProp","shouldStopTouchMovePropagation","style","tabIndex","useCapture","rest","observer","useRef","RelativeCursorPositionObserver","divRef","timersRef","elementDimensions","setElementDimensions","useState","width","height","shouldGuardAgainstMouseEmulationByDevices","setShouldGuardAgainstMouseEmulationByDevices","isActive","setIsActive","isPositionOutside","setIsPositionOutside","position","setPosition","x","y","default","entry","rect","getElementDimensions","contentRect","handleIsActiveChanged","event","touchActivation","setTouchActivation","mouseActivation","setMouseActivation","unsetShouldGuardAgainstMouseEmulationByDevices","current","push","name","MOUSE_EMULATION_GUARD_TIMER_NAME","id","setTimeout","setPositionState","newPosition","pos","getIsPositionOutside","onMouseDetected","isTouchDetected","isMouseDetected","onDocumentMouseClick","el","target","Node","contains","removeEventListeners","document","removeEventListener","useEffect","addEventListener","capture","subject","jsx","assign","ref","role","WebkitUserSelect","onClick","getCursorPosition","mouseClicked","undefined","onKeyDown","preventDefault","onKeyUp","onMouseEnter","mouseEntered","onMouseLeave","mouseLeft","onMouseMove","onTouchCancel","touchCanceled","onTouchEnd","touchEnded","onTouchMove","touchMoved","stopPropagation","onTouchStart","touchStarted","InPlaceMagnifyContainer","MaginfyContainer_1","computedStyle","top","left","zIndex","MagnifyContainer","inPlaceMode","imageCoordinates_1","styles_1","containerDimensions","cursorOffset","fadeDurationInMs","imageComponent","ImageComponent","imageProps","isLazyLoaded","isPortalRendered","sourceImageDimensions","isTransitionEntering","setIsTransitionEntering","isTransitionActive","setIsTransitionActive","isTransitionLeaving","setIsTransitionLeaving","setIsTransitionDone","isVisible","imageCoordinates","getInPlaceMagnifiedImageCoordinates","getLensModeMagnifiedImageCoordinates","_a","forEach","timerId","clearTimeout","window","enlargedImageStyle","useMemo","getMagnifiedImageStyle","computedContainerStyle","overflow","getMagnifyContainerStyle","getTransitionActiveStyle","computedImageStyle","getMagnifiedImageTranslationStyle","alt","onError","onLoad","MagnifyContainerPortal","react_dom_1","react_popper_1","useLazyRef_1","forwardRef","portalProps","className","placement","MagnifiedImagePosition","LEFT","strategy","onFirstUpdate","dataTestId","modifiers","horizontalOffset","verticalOffset","popperElement","setPopperElement","popper","usePopper","options","offset","randId","useLazyRef","Math","floor","random","portalRef","createElement","popperRef","useCallback","node","DEFAULT_PORTAL_ID","setAttribute","body","appendChild","removeChild","createPortal","styles","attributes","detect_it_1","MagnifyContainerPortal_1","negative_space_1","positive_space_1","DefaultHint_1","lens_1","dimensions_1","CursorPosition_1","InPlaceMagnifyContainer_1","activationInteractionHint","hintComponent","HintComponent","DefaultHint","hintProps","lensComponent","LensComponentProp","lensProps","magnifyContainerProps","magnifiedImageComponent","magnifiedImageProps","portalPropsProp","shouldUsePositiveSpaceLens","usabledImageProps","isZoomClickable","process","NODE_ENV","console","warn","imageRef","smallImage","setSmallImage","resolveSmallImage","setIsMouseDetected","primaryInput","INPUT_TYPE","mouse","setIsTouchDetected","imageLoaded","setImageLoaded","lockedByHintInteraction","setLockedByHintInteraction","OVER","AUTO","isInPlaceMode","shouldShowLens","resizeHandler","setSmallImageDimensionState","computedEnlargedImageContainerDimensions","_b","getEnlargedImageContainerDimension","DEFAULT_MAGNIFY_CONTAINER_WIDTH","offsetWidth","scale","DEFAULT_MAGNIFY_CONTAINER_HEIGHT","offsetHeight","getLensCursorOffset","imageToStrictDimensions","isFluid","onImageComplete","handleImageLoadOrComplete","HintComponentOrNull","shouldShowHint","hintTextMouse","capitalize","hintTextTouch","hintPropsStyle","hintStyle","cursor","generateHintStyle","LensComponent","PositiveSpaceLens","NegativeSpaceLens","useLayoutEffect","complete","onload","getContainerStyle","detectedInputType","jsxs","Fragment","getSmallImageStyle","UNSET_ACTIVATION_TIMER_NAME","SET_ACTIVATION_TIMER_NAME","TAP_GESTURE_TIMER_NAME","PRESS_EVENT_TIMER_NAME","doubleTap","TOP","BOTTOM","RIGHT","memo","display","justifyContent","bottom","alignItems","padding","backgroundColor","borderRadius","opacity","src","fontFamily","fontSize","color","noValue","Symbol","getInitialValue","lazyRef","Lens","parentSpecifiedStyle","transition","compositStyle","right","LensBottom","clamp_1","Lens_1","typedRef","clearLensHeight","computedHeight","maxHeight","clamp","clearLensBottom","max","displayName","LensLeft","clearLensWidth","maxWidth","LensRight","LensTop","LensTop_1","LensLeft_1","LensRight_1","LensBottom_1","userSpecifiedStyle","compositLensStyle","dataUri","textured_lens_data_uri_1","cursorOffsetX","cursorOffsetY","positionX","positionY","defaultStyle","backgroundImage","maxTop","maxLeft","priorityStyle","Activation","constructor","timers","activate","deactivate","clearTimers","toggleActivation","timer","pop","clearTimer","timerName","MouseEnvironmentActivation_1","MouseEnvironmentActivation","super","schedulActivation","scheduleDeactivation","schedule","scheduleId","Activation_1","mouseMoved","TouchEnvironmentActivation_1","TouchEnvironmentActivation","initPressEventCriteria","setPressEventTimer","setPressEventCriteria","abs","currentElTop","initialElTop","_subject","documentRelativeElementOffset","elementOffset","getDocumentRelativeElementOffset","rootEl","getRootOfEl","docLeft","docTop","getBoundingClientRect","elLeft","elTop","parentElement","getComputedElementRelativeCursorPosition","getDocumentRelativeCursorPosition","cursorX","cursorY","offsetX","offsetY","round","pageX","pageY","hasTapGestureEnded","initMoveThreshold","setTapEventTimer","setMoveThresholdCriteria","hasPassedMoveThreshold","isTapGestureActive","min","isPercentageFormat","val","test","convertPercentageToDecimal","percentage","denominator","denom","parseInt","containerDimension","smallImageDimension","imageRatio_1","getMinCoordinates","container","largeImage","clampImageCoordinates","minCoordinates","maxCoordinates","magnifiedImage","image","adjustedPosition","lensCursorOffset","getCursorPositionAdjustedForLens","ratio","getSmallToLargeImageRatio","getContainerToImageRatio","getSmallToLargeElementRatio","smallElement","largeElement","getLargeToSmallImageRatio","getLensCursorOffsetDimension","enlargedImageContainerDimensions","isFluidDimension","pointerEvents","translate","transform","WebkitTransform","msTransform","styleToCssText","fluidCheckRegexp","RegExp","result","lastIndex","smallImageProp","smallImageHeight","smallImageWidth","entries","map","k","v","replace","match","toLowerCase","join","str","charAt","toUpperCase","slice","img","naturalHeight","naturalWidth","ResizeObserverBoxOptions","resizeObservers","msg","trigger","freeze","obj","ResizeObserverSize","inlineSize","blockSize","DOMRectReadOnly","toJSON","fromRect","rectangle","isSVG","SVGElement","isHidden","getBBox","getClientRects","isElement","Element","scope","ownerDocument","defaultView","global","cache","WeakMap","scrollRegexp","verticalRegexp","IE","navigator","userAgent","parseDimension","pixel","parseFloat","size","switchSizes","zeroBoxes","devicePixelContentBoxSize","borderBoxSize","contentBoxSize","calculateBoxSizes","forceRecalculation","has","get","set","cs","getComputedStyle","svg","ownerSVGElement","removePadding","boxSizing","writingMode","canScrollVertically","overflowY","canScrollHorizontally","overflowX","paddingTop","paddingRight","paddingBottom","paddingLeft","borderTop","borderTopWidth","borderRight","borderRightWidth","borderBottom","borderBottomWidth","horizontalPadding","verticalPadding","horizontalBorderArea","borderLeftWidth","verticalBorderArea","horizontalScrollbarThickness","clientHeight","verticalScrollbarThickness","clientWidth","widthReduction","heightReduction","contentWidth","contentHeight","borderBoxWidth","borderBoxHeight","boxes","devicePixelRatio","calculateBoxSize","observedBox","DEVICE_PIXEL_CONTENT_BOX","BORDER_BOX","ResizeObserverEntry","calculateDepthForNode","Infinity","depth","parent","parentNode","broadcastActiveObservations","shallowestDepth","callbacks","ro","activeTargets","ot","targetDepth","lastReportedSize","callback","splice","_i","callbacks_1","gatherActiveObservationsAtDepth","skippedTargets","observationTargets","some","ErrorEvent","message","createEvent","initEvent","dispatchEvent","queueMicroTask","toggle_1","el_1","createTextNode","MutationObserver","cb","observe","characterData","textContent","concat","watching","observerConfig","childList","subtree","events","time","timeout","Date","now","scheduled","scheduler","Scheduler","_this","stopped","listener","run","until","elementsHaveResized","start","requestAnimationFrame","stop","disconnect","updateCount","n","ResizeObservation","CONTENT_BOX","tagName","type","isReplacedElement","ResizeObserverDetail","resizeObserver","observerMap","getObservationIndex","ResizeObserverController","connect","detail","firstObservation","box","unobserve","index","lastObservation","ResizeObserver","arguments","TypeError","toString","storedValue","_ref","_resizeObserver","getResizeObserver","ticking","allEntries","Map","obs","triggered","Set","add","cbs","subscribe","_callbacks$get","unsubscribe","_callbacks$get2","delete","cbIndex","createResizeObserver","storedCallback","didUnsubscribe","targetEl","w","screen","matchMedia","matches","bind","passiveOptionAccessed","passive","supportsPassiveEvents","supportsPointerEvents","onTouchStartInWindow","supportsTouchEvents","hasTouch","maxTouchPoints","isIPad","hasCoarsePrimaryPointer","hasAnyHoverOrAnyFinePointer","deviceType","ManagerReferenceNodeContext","ManagerReferenceNodeSetterContext","Manager","_React$useState","referenceNode","setReferenceNode","hasUnmounted","handleSetReferenceNode","Provider","NOOP","NOOP_PROMISE","Promise","resolve","EMPTY_MODIFIERS","Popper","_ref$placement","_ref$strategy","_ref$modifiers","referenceElement","innerRef","_React$useState2","arrowElement","setArrowElement","enabled","element","_usePopper","state","forceUpdate","update","childrenProps","hasPopperEscaped","modifiersData","hide","isReferenceHidden","arrowProps","arrow","Reference","refHandler","Boolean","f","for","l","m","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","ReactCurrentOwner","key","__self","__source","q","c","a","g","b","d","h","defaultProps","$$typeof","_owner","module","warning","spreadableSymbol","isConcatSpreadable","isArray","isArguments","baseFlatten","array","predicate","isStrict","resIndex","collection"],"sourceRoot":""}